diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java index 67631bb95..ef163a3c8 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java @@ -36,6 +36,7 @@ import com.xdadan.erp.emis.domain.EmisExchangeRate; import com.xdadan.erp.emis.domain.EmisSettleSubBill; import com.xdadan.erp.emis.domain.EmisSettleSubBillFeeitem; import com.xdadan.erp.emis.domain.exception.EmisBizError; +import com.xdadan.erp.emis.domain.stat.BillPayStatInfo; import com.xdadan.erp.emis.domain.vo.scan.ScanResult; import com.xdadan.erp.emis.service.EmisBaseService; import com.xdadan.erp.emis.service.IEmisExchangeRateService; @@ -93,6 +94,18 @@ public class EmisSettleBillController extends BaseController private IEmisExchangeRateService emisExchangeRateService; + + @GetMapping("/queryBillPayStatInfoList") + public TableDataInfo queryBillPayStatInfoList(EmisSettleBill emisSettleBill) + { + startPage(); + + setPrivParams(emisSettleBill); + + List list = emisSettleBillService.selectBillPayStatInfoList(emisSettleBill); + return getDataTable(list); + } + /** * 查询结算总账单列表 */ diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleBill.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleBill.java index 69e327c51..f8fa39f44 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleBill.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleBill.java @@ -33,7 +33,7 @@ import lombok.Data; * @date 2024-07-03 18:54:51 */ @Data - @DataAuditTable(tableName ="emis_settle_bill",tableComment = "客户账单表") + @DataAuditTable(tableName ="emis_settle_bill",tableComment = "客户账单表",bizKey="settleBillNo") public class EmisSettleBill extends BaseEntity { private static final long serialVersionUID = 1L; diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleSubBill.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleSubBill.java index f5b4ef578..f068d8d98 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleSubBill.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisSettleSubBill.java @@ -33,7 +33,7 @@ import lombok.Data; * @date 2024-07-03 18:54:52 */ @Data - @DataAuditTable(tableName ="emis_settle_sub_bill",tableComment = "运单出账表") + @DataAuditTable(tableName ="emis_settle_sub_bill",tableComment = "运单出账表" ,bizKey="billCode") public class EmisSettleSubBill extends BaseEntity { diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/stat/BillPayStatInfo.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/stat/BillPayStatInfo.java new file mode 100644 index 000000000..0049a4a52 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/stat/BillPayStatInfo.java @@ -0,0 +1,46 @@ +package com.xdadan.erp.emis.domain.stat; + +import com.xdadan.erp.emis.domain.EmisWaybill; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 账单回款统计明细 + */ +@Data +public class BillPayStatInfo implements Serializable { + private static final long serialVersionUID = 1L; + + // 销售联系人 + private String salesmen; + + private String billMonth; + + // 应收金额 + private BigDecimal recPayMoney; + // 账单总数量 + private Integer totalBillCount; + // 已收款账单数量 + private Integer hasPayBillCount; + // 部分收款账单数量 + private Integer somePayBillCount; + // 未收款账单数量 + private Integer noPayBillCount; + + // 账期内已收金额/未收金额 + private BigDecimal recdPayMoney; + private BigDecimal noRecdPayMoney; + + // 超期已收金额/未收金额 + private BigDecimal expiredRecdPayMoney; + private BigDecimal expiredNoRecdPayMoney; + + // 账期内回款率 + private BigDecimal billPayRate; + // 超期回款率/未回款率 + private BigDecimal expireBillPayRate; + private BigDecimal expireBillNoPayRate; + +} 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 bef97d6b9..ee299a607 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 @@ -15,6 +15,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xdadan.erp.common.annotation.audit.DataAuditLog; import com.xdadan.erp.common.annotation.audit.OperateType; import com.xdadan.erp.emis.domain.EmisSettleBill; +import com.xdadan.erp.emis.domain.stat.BillPayStatInfo; import com.xdadan.erp.emis.service.impl.EmisSettleBillServiceImpl; import com.xdadan.erp.emis.service.impl.EmisSettleSubBillServiceImpl; @@ -37,6 +38,13 @@ public interface EmisSettleBillMapper extends BaseMapper public EmisSettleBill selectSettleBillBySettleBillNo(String settleBillNo); + /** + * 获取统计数据 + * @param emisSettleBill + * @return + */ + public List selectBillPayStatInfoList(EmisSettleBill emisSettleBill); + /** * 查询列表 * diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java index b7e5da729..e30f6fc44 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java @@ -14,6 +14,7 @@ import java.util.List; import com.xdadan.erp.common.core.audit.IDataAuditService; import com.xdadan.erp.emis.domain.EmisSettleBill; import com.xdadan.erp.emis.domain.exception.EmisBizError; +import com.xdadan.erp.emis.domain.stat.BillPayStatInfo; /** * @ClassName EmisSettleBillService @@ -34,6 +35,14 @@ public interface IEmisSettleBillService extends IDataAuditService public EmisSettleBill selectEmisSettleBillBySettleBillNo(String settleBillNo); + /** + * 获取统计数据 + * @param emisSettleBill + * @return + */ + public List selectBillPayStatInfoList(EmisSettleBill emisSettleBill); + + /** * 查询结算总账单列表 * diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java index d277619ad..6935ad831 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java @@ -25,6 +25,7 @@ import com.xdadan.erp.emis.domain.EmisSettleInvoiceRel; import com.xdadan.erp.emis.domain.EmisSettleSubBill; import com.xdadan.erp.emis.domain.enumtype.EmisBizErrorType; import com.xdadan.erp.emis.domain.exception.EmisBizError; +import com.xdadan.erp.emis.domain.stat.BillPayStatInfo; import com.xdadan.erp.emis.mapper.EmisSettleSubBillMapper; import com.xdadan.erp.emis.service.EmisBaseService; import com.xdadan.erp.emis.utils.WaybillHelper; @@ -73,14 +74,23 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS } + /** + * 获取统计数据 + * @param emisSettleBill + * @return + */ @Override - public EmisSettleBill selectEmisSettleBillBySettleBillNo(String settleBillNo) + public List selectBillPayStatInfoList(EmisSettleBill emisSettleBill) { - return emisSettleBillMapper.selectSettleBillBySettleBillNo(settleBillNo); + return emisSettleBillMapper.selectBillPayStatInfoList(emisSettleBill); } - + @Override + public List selectEmisSettleBillList(EmisSettleBill emisSettleBill) + { + return emisSettleBillMapper.selectEmisSettleBillList(emisSettleBill); + } /** * 查询结算总账单列表 diff --git a/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml b/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml index c03a4b18c..9638c0664 100644 --- a/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisSettleBillMapper.xml @@ -67,6 +67,59 @@ + + + + + + + + + + + + + + + + + + + + + + + select id, settle_bill_no, settle_bill_name, settle_type, settle_start_date, settle_end_date, bill_month, rec_money, reced_money, invoiced_money, cust_no, cust_name, customer_code, customer_name, site_code, site_name, satisfy_money, allowance_money, deduction_money, other_money, satisfy_reason, allowance_reason, deduction_reason, other_reason, open_bill_status, payment_status, charge_status, send_piece_sum, piece_number, fee_weight, uncollected_amount, send_money_sum, refund_amount, refund_money, payee, salesmen, credit_period, credit_period_type, settle_day, payment_due_date, bl_send_oms, bl_confirm_center, confirm_center_date, confirm_center_note, confirm_center_man_code, confirm_center_code, bl_confirm_site, confirm_site_date, confirm_site_man_code, confirm_site_note, confirm_site_code, remark, del_flag, create_by, create_time, update_by, update_time, create_site, update_site from emis_settle_bill a