diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleBillMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleBillMapper.java index de451f371..6cb257246 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleBillMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleBillMapper.java @@ -52,6 +52,16 @@ public interface EmisSettleBillMapper extends BaseMapper @Param("settleBillNoList") List settleBillNoList); + /** + * 批量查询 + * + * @param settleBillNoList 结算账单号列表 + * @return 结算账单列表 + */ + public List selectSimpleBillsByNos( + @Param("settleBillNoList") List settleBillNoList); + + /** * 获取统计数据 * @param emisSettleBill diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleInvoiceRecordMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleInvoiceRecordMapper.java index 6fc6d5ac2..74d47e9c8 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleInvoiceRecordMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettleInvoiceRecordMapper.java @@ -110,4 +110,14 @@ public interface EmisSettleInvoiceRecordMapper extends BaseMapper selectInvoiceRecordListByBillCodes(@Param("billCodes") List billCodes); + /** + * 查询开票记录列表(简化版,不包含association查询) + * 用于导出等场景,只查询必要的字段 + * + * @param emisSettleInvoiceRecord + * @return 集合 + */ + public List selectSimpleInvoiceRecordList( + EmisSettleInvoiceRecord emisSettleInvoiceRecord); + } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayBillRelMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayBillRelMapper.java index 4a52ea8a6..11af08188 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayBillRelMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayBillRelMapper.java @@ -13,6 +13,7 @@ package com.xdadan.erp.emis.mapper; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xdadan.erp.emis.domain.EmisSettlePayBillRel; +import org.apache.ibatis.annotations.Param; /** * @ClassName EmisSettlePayBillRelMapper * @Description

付款账单关联表 Mapper 接口

@@ -36,6 +37,15 @@ public interface EmisSettlePayBillRelMapper extends BaseMapper selectEmisSettlePayBillRelList(EmisSettlePayBillRel emisSettlePayBillRel); + /** + * 根据结算账单号列表查询支付账单关联记录 + * + * @param settleBillNoList 结算账单号列表 + * @return 支付账单关联记录列表 + */ + public List selectEmisSettlePayBillRelListBySettleBillNos( + @Param("settleBillNoList") List settleBillNoList); + /** * 检查是否重复 diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java index 658b47ae1..8c7a3f161 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java @@ -340,6 +340,14 @@ public interface EmisWaybillMapper extends BaseMapper */ List selectEmisWaybillListByBillCodes(@Param("billCodes") List billCodes); + /** + * 只查询运单表数据 + * + * @param billCodes 运单号列表 + * @return 运单列表 + */ + List selectWaybillsByBillCodes(@Param("billCodes") List billCodes); + /** * * @param offset diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleInvoiceRecordServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleInvoiceRecordServiceImpl.java index 71f916662..899a8b4bf 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleInvoiceRecordServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleInvoiceRecordServiceImpl.java @@ -405,7 +405,7 @@ public class EmisSettleInvoiceRecordServiceImpl extends EmisBaseService implemen EmisSettleInvoiceRecord emisSettleInvoiceRecord) { // 查询开票记录列表 List invoiceRecordList = emisSettleInvoiceRecordMapper - .selectEmisSettleInvoiceRecordList(emisSettleInvoiceRecord); + .selectSimpleInvoiceRecordList(emisSettleInvoiceRecord); if (CollectionUtils.isEmpty(invoiceRecordList)) { return new ArrayList<>(); @@ -453,12 +453,11 @@ public class EmisSettleInvoiceRecordServiceImpl extends EmisBaseService implemen } // 查询 payId 到 settleBillNo 的映射关系 - if (!allPayIdSet.isEmpty()) { - // 查询所有相关的支付账单关联记录(只查询del_flag='0'的记录) - EmisSettlePayBillRel queryPayBillRel = new EmisSettlePayBillRel(); - queryPayBillRel.setDelFlag("0"); + if (!allPayIdSet.isEmpty() && !allSettleBillNoSet.isEmpty()) { + // 根据allSettleBillNoSet批量查询相关的支付账单关联记录 + List settleBillNoList = new ArrayList<>(allSettleBillNoSet); List payBillRelList = emisSettlePayBillRelMapper - .selectEmisSettlePayBillRelList(queryPayBillRel); + .selectEmisSettlePayBillRelListBySettleBillNos(settleBillNoList); // 建立 payId -> Set 的映射(只处理相关的payId和settleBillNo) for (EmisSettlePayBillRel payBillRel : payBillRelList) { @@ -515,7 +514,7 @@ public class EmisSettleInvoiceRecordServiceImpl extends EmisBaseService implemen if (!allSettleBillNoSet.isEmpty()) { List settleBillNoList = new ArrayList<>(allSettleBillNoSet); List settleBillList = emisSettleBillMapper - .selectSettleBillBySettleBillNoList(settleBillNoList); + .selectSimpleBillsByNos(settleBillNoList); for (EmisSettleBill settleBill : settleBillList) { if (StringUtils.isNotBlank(settleBill.getSettleBillNo())) { settleBillMap.put(settleBill.getSettleBillNo(), settleBill); @@ -541,7 +540,7 @@ public class EmisSettleInvoiceRecordServiceImpl extends EmisBaseService implemen Map waybillMap = new HashMap<>(); if (!allBillNoSet.isEmpty()) { List billNoList = new ArrayList<>(allBillNoSet); - List waybillList = emisWaybillMapper.selectEmisWaybillListByBillCodes(billNoList); + List waybillList = emisWaybillMapper.selectWaybillsByBillCodes(billNoList); for (EmisWaybill waybill : waybillList) { if (StringUtils.isNotBlank(waybill.getBillCode())) { waybillMap.put(waybill.getBillCode(), waybill); diff --git a/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml b/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml index 56b66fa5a..d1e658bee 100644 --- a/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml @@ -66,6 +66,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1029,6 +1084,15 @@ + + insert into emis_settle_bill @@ -1227,4 +1291,4 @@ #{id} - \ No newline at end of file + diff --git a/emis-biz/src/main/resources/mapper/EmisSettleInvoiceRecordMapper.xml b/emis-biz/src/main/resources/mapper/EmisSettleInvoiceRecordMapper.xml index d2f24d126..633392810 100644 --- a/emis-biz/src/main/resources/mapper/EmisSettleInvoiceRecordMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisSettleInvoiceRecordMapper.xml @@ -65,6 +65,28 @@ + + + + + + + + + + + + + + + + + + + + + + select id, apply_seq_no, apply_date, apply_man_code, apply_site_code, customer_code, customer_name, settle_bill_no, settle_bill_name, apply_money, invoice_type, openbill_scope, company_name, company_tax_no, company_tel, company_address, invioce_remark, bank_name, bank_acc_no, contact, phone, real_tax_type, orig_open_money, add_tax_rate, add_open_money, open_money_max, open_money, invoice_no, reced_money, payment_status, invoice_status, invoice_status_desc, recieve_address, email, file_path, remark, bl_audit, audit_date, audit_man_code, audit_site_code, audit_note, op_man_code, op_date, op_site_code, open_ch_id, open_ch_status, open_ch_status_desc, open_com_code, del_flag, create_by, create_time, update_by, update_time, create_site, update_site from emis_settle_invoice_record @@ -216,6 +238,129 @@ order by a.create_time desc + + + + + +