From 8de09297dcc5393cc8542f29318b17f5696d4f8d Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期五, 17 七月 2026 09:28:46 +0800
Subject: [PATCH] feat:单点登录 首页及首页跳转

---
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java    |   23 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ProductService.java                   |    7 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractOutBoundQueryDTO.java             |   20 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipViewMapper.java                     |   18 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CreditSalesServiceImpl.java      |    5 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentSlipQueryDTO.java                  |   12 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/StatisticController.java           |   92 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/HistoryOverdueService.java            |    3 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ProductExcelVO.java                        |   39 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentSlipServiceImpl.java      |   18 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java     |   25 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractInvoice.java                   |    2 
 platformx-business-finance-biz/src/main/resources/mapper/HistoryOverdueMapper.xml                                          |  542 +++++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeCreditSaleVo.java                      |   37 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractMapper.java                    |    4 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CreditSalesQueryDTO.java                  |   16 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/CurrentOverdueController.java      |   16 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractInvoiceServiceImpl.java  |    7 
 platformx-boot/src/main/resources/application-dev.yml                                                                      |   13 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/HistoryOverdueMapper.java              |   16 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractService.java                  |    6 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java             |   28 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/HistoryOverdueController.java      |   17 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustBankVo.java                            |   12 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HistoryOverdueQueryDTO.java               |   14 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeInvoiceVo.java                         |   27 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BankNameVo.java                            |   12 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/StatisticService.java                 |   21 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/CurrentOverdueService.java            |    3 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractInvoiceQueryDTO.java              |   16 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipBanklViewMapper.java                |   14 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractInvoiceService.java           |    4 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractOutBoundServiceImpl.java |    7 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractOutBoundMapper.java            |   19 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java          |  137 +
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/StatisticServiceImpl.java        |  378 +++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HomeQueryDTO.java                         |   33 
 platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml                                                |  598 +++++
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CurrentOverdueServiceImpl.java   |    7 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZbjtVo.java                            |  155 +
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueStaVo.java                      |   19 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractOutBoundController.java    |   17 
 platformx-business-finance-biz/src/main/resources/mapper/PaymentSlipMapper.xml                                             |  503 ++++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContracQueryDTO.java                      |    7 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java |   59 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/OutBoundQueryDTO.java                     |   26 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/OutBoundController.java            |   13 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/PaymentSlipController.java         |   51 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZgsVo.java                             |  175 +
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractServiceImpl.java         |    6 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java   |   22 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractInvoiceMapper.java             |   12 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/CurrentOverdueMapper.java              |   16 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractQueryDTO.java                     |   18 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ProductAddDTO.java                        |   19 
 platformx-business-finance-biz/src/main/resources/mapper/ContractInvoiceMapper.xml                                         |  592 +++++
 platformx-business-finance-biz/src/main/resources/mapper/CurrentOverdueMapper.xml                                          |  542 +++++
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/HistoryOverdueServiceImpl.java   |    7 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractOutBoundService.java          |    3 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustInfoVo.java                            |   17 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java                  |   12 
 /dev/null                                                                                                                  |   24 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOutBoundVo.java                        |   30 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/PaymentSlipMapper.java                 |   13 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/AESCFBUtils.java                        |    4 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/BusinessCustomerService.java          |    2 
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/PaymentSlipService.java               |   10 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CurrentOverdueQueryDTO.java               |    6 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BusinessCustomerSelectVo.java              |   13 
 platformx-business-finance-biz/src/main/resources/mapper/ContractOutBoundMapper.xml                                        | 1370 +++++++++++++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueVo.java                         |   27 
 platformx-boot/src/main/resources/application.yml                                                                          |    2 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractOutBound.java                  |    2 
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomePaymentSlipVo.java                     |   23 
 74 files changed, 5,918 insertions(+), 167 deletions(-)

diff --git a/platformx-boot/src/main/resources/application-dev.yml b/platformx-boot/src/main/resources/application-dev.yml
index 9290cc8..3b2897a 100644
--- a/platformx-boot/src/main/resources/application-dev.yml
+++ b/platformx-boot/src/main/resources/application-dev.yml
@@ -11,6 +11,19 @@
       username: root
       password: root
       driver-class-name: com.mysql.cj.jdbc.Driver
+    dynamic:
+      datasource:
+        druid_bip_view:
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          username: ${MYSQL-USER:tra_in_mdm@masterdata_mysql#ob_prod_phy_x86_04fa}
+          password: ${MYSQL-PWD:L2fbf%2ETRA}
+          url: jdbc:mysql://${MYSQL-HOST:10.116.44.42}:${MYSQL-PORT:3306}/${MYSQL-DB:mdm_send}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true
+        druid_bip_bank_view:
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          username: ${MYSQL-USER:tra_in_mdm@masterdata_mysql#ob_prod_phy_x86_04fa}
+          password: ${MYSQL-PWD:L2fbf%2ETRA}
+          url: jdbc:mysql://${MYSQL-HOST:10.116.44.42}:${MYSQL-PORT:3306}/${MYSQL-DB:tenant_5}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true
+
   jpa:
     # 鑷姩鐢熸垚琛ㄧ粨鏋�
     hibernate:
diff --git a/platformx-boot/src/main/resources/application.yml b/platformx-boot/src/main/resources/application.yml
index 542ceed..646092d 100644
--- a/platformx-boot/src/main/resources/application.yml
+++ b/platformx-boot/src/main/resources/application.yml
@@ -1,4 +1,4 @@
-server:
+. server:
   port: 8899    # 椤圭洰绔彛
   servlet:
     context-path: /business  # 椤圭洰璁块棶璺緞
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContracQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContracQueryDTO.java
index be08520..109334a 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContracQueryDTO.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContracQueryDTO.java
@@ -1,10 +1,14 @@
 package com.by4cloud.platformx.business.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
 
 @Data
-public class ContracQueryDTO {
+public class ContracQueryDTO extends HomeQueryDTO{
 
 	@Schema(description = "鍚堝悓鍚嶇О")
 	private String contractName;
@@ -14,4 +18,5 @@
 
 	@Schema(description = "鐘舵��")
 	private String contractStatus;
+
 }
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractInvoiceQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractInvoiceQueryDTO.java
new file mode 100644
index 0000000..698c8ff
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractInvoiceQueryDTO.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.business.dto;
+
+import lombok.Data;
+
+@Data
+public class ContractInvoiceQueryDTO extends HomeQueryDTO{
+
+	private String contractNo;
+
+	private String partyA;
+
+	/**
+	 *  1/钃� 2/绾�
+	 */
+	private String invoiceCategory;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractOutBoundQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractOutBoundQueryDTO.java
new file mode 100644
index 0000000..68bb18b
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractOutBoundQueryDTO.java
@@ -0,0 +1,20 @@
+package com.by4cloud.platformx.business.dto;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+@Data
+public class ContractOutBoundQueryDTO extends HomeQueryDTO{
+
+	private String contractNo;
+
+	@Schema(description = "瀹㈠晢鍚嶇О")
+	private String busGuestName;
+
+	@Schema(description = "鏍囩殑鐗╁悕绉�")
+	private String subjectMatterName;
+
+	@Schema(description = "鏍囩殑鐗╃紪鐮�")
+	private String subjectMatterCode;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractQueryDTO.java
new file mode 100644
index 0000000..aaffd87
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ContractQueryDTO.java
@@ -0,0 +1,18 @@
+package com.by4cloud.platformx.business.dto;
+
+import lombok.Data;
+
+@Data
+public class ContractQueryDTO {
+
+	private String contractName;
+
+	private String partyA;
+
+	private String billingStatus;
+
+	/**
+	 * 1 鏄� 0 鍚�
+	 */
+	private String invoiceType;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CreditSalesQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CreditSalesQueryDTO.java
index 7e8daeb..f79249a 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CreditSalesQueryDTO.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CreditSalesQueryDTO.java
@@ -1,17 +1,19 @@
 package com.by4cloud.platformx.business.dto;
 
+import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
 @Data
-public class CreditSalesQueryDTO {
+public class CreditSalesQueryDTO extends HomeQueryDTO{
 
-	private String contractName;
+	private String contractNo;
 
-	private String partyA;
+	@Schema(description = "瀹㈠晢鍚嶇О")
+	private String busGuestName;
 
-	private String productNames;
+	@Schema(description = "鏍囩殑鐗╁悕绉�")
+	private String subjectMatterName;
 
-	private String sortFiled;
-
-	private String sortMethod;
+	@Schema(description = "鏍囩殑鐗╃紪鐮�")
+	private String subjectMatterCode;
 }
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CurrentOverdueQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CurrentOverdueQueryDTO.java
index 38c7d8b..190585f 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CurrentOverdueQueryDTO.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/CurrentOverdueQueryDTO.java
@@ -3,10 +3,12 @@
 import lombok.Data;
 
 @Data
-public class CurrentOverdueQueryDTO {
+public class CurrentOverdueQueryDTO extends HomeQueryDTO{
 
-	private String contractName;
+	private String contractNo;
 
 	private String busGuestName;
 
+	private String scheduleName;
+
 }
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HistoryOverdueQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HistoryOverdueQueryDTO.java
new file mode 100644
index 0000000..89152ca
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HistoryOverdueQueryDTO.java
@@ -0,0 +1,14 @@
+package com.by4cloud.platformx.business.dto;
+
+import lombok.Data;
+
+@Data
+public class HistoryOverdueQueryDTO extends HomeQueryDTO{
+
+	private String contractNo;
+
+	private String busGuestName;
+
+	private String scheduleName;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HomeQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HomeQueryDTO.java
new file mode 100644
index 0000000..b54c666
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/HomeQueryDTO.java
@@ -0,0 +1,33 @@
+package com.by4cloud.platformx.business.dto;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+@Data
+public class HomeQueryDTO {
+
+	private Long queryCompId;
+
+	/**
+	 * 1 鏈棩 2 鏈湀 3 鏈勾
+	 */
+	private String queryType;
+
+	/**
+	 * 1 涓滃寳 2 鍗庡寳 3 鍗庝笢 4 涓崡 5 瑗垮崡 6 瑗垮寳
+	 */
+	private String queryArea;
+
+	/**
+	 * 1 鍐呴攢 2 娴峰 3 澶栭攢
+	 */
+	private String queryServiceAttr;
+
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date startTime;
+
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date endTime;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/OutBoundQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/OutBoundQueryDTO.java
new file mode 100644
index 0000000..cd50fe0
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/OutBoundQueryDTO.java
@@ -0,0 +1,26 @@
+package com.by4cloud.platformx.business.dto;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+@Data
+public class OutBoundQueryDTO {
+
+	@Schema(description = "鍑哄簱鎵规鍙�")
+	private String batchNumber;
+
+	@Schema(description = "瀹㈠晢鍚嶇О")
+	private String busGuestName;
+
+	@Schema(description = "鏍囩殑鐗╁悕绉�")
+	private String subjectMatterName;
+
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date startTime;
+
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date endTime;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentSlipQueryDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentSlipQueryDTO.java
new file mode 100644
index 0000000..59711a9
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentSlipQueryDTO.java
@@ -0,0 +1,12 @@
+package com.by4cloud.platformx.business.dto;
+
+import lombok.Data;
+
+@Data
+public class PaymentSlipQueryDTO extends HomeQueryDTO{
+
+	private String contractNo;
+
+	private String partyA;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ProductAddDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ProductAddDTO.java
new file mode 100644
index 0000000..501261c
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/ProductAddDTO.java
@@ -0,0 +1,19 @@
+package com.by4cloud.platformx.business.dto;
+
+import lombok.Data;
+
+@Data
+public class ProductAddDTO {
+
+	private String erpTypeCode;
+
+	private String erpTypeName;
+
+	private String erpCode;
+
+	private String erpName;
+
+	private String specification;
+
+	private String taxCode;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BipTaxEconomicMatters.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BipTaxEconomicMatters.java
deleted file mode 100644
index fed9a33..0000000
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BipTaxEconomicMatters.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.by4cloud.platformx.business.entity;
-
-import com.by4cloud.platformx.common.data.mybatis.BaseModel;
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import lombok.Data;
-import org.hibernate.annotations.Comment;
-import org.hibernate.annotations.Table;
-
-@Data
-@Entity
-@jakarta.persistence.Table(name = "bip_tax_economic_matters")
-@Table(appliesTo = "bip_tax_economic_matters")
-@Comment("bip缁忔祹浜嬮」鍏宠仈绋庢敹鍒嗙被")
-public class BipTaxEconomicMatters extends BaseModel<BipTaxEconomicMatters> {
-
-	@Comment("绋庢敹鍒嗙被缂栫爜")
-	@Column(name="taxCode",length = 64)
-	private String taxCode;
-
-	@Comment("缁忔祹浜嬮」")
-	@Column(name="economicMatters",length = 64)
-	private String economicMatters;
-}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java
index 6288c78..3e1f04e 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java
@@ -32,7 +32,7 @@
 //    private String companyType;
 
     @Schema(description = "娉曞畾浠h〃浜�")
-    @Column(columnDefinition = "VARCHAR(20) comment '娉曞畾浠h〃浜�'")
+    @Column(columnDefinition = "VARCHAR(128) comment '娉曞畾浠h〃浜�'")
     private String legalPerson;
 
 /*    @Schema(description = "娉ㄥ唽璧勬湰")
@@ -43,9 +43,7 @@
     @Column(columnDefinition = "VARCHAR(20) comment '鎴愮珛鏃ユ湡'")
     private String establishDate;
 
-    @Schema(description = "娉ㄥ唽鍦板潃")
-    @Column(columnDefinition = "VARCHAR(200) comment '娉ㄥ唽鍦板潃'")
-    private String address;
+
 
     @Schema(description = "缁忚惀鑼冨洿")
     @Column(columnDefinition = "TEXT comment '缁忚惀鑼冨洿'")
@@ -62,6 +60,10 @@
 /*    @Schema(description = "鐘舵��")
     @Column(columnDefinition = "VARCHAR(20) default '姝e父' comment '鐘舵��'")
     private String status;*/
+
+	@Schema(description = "娉ㄥ唽鍦板潃")
+	@Column(columnDefinition = "VARCHAR(400) comment '娉ㄥ唽鍦板潃'")
+	private String address;
 
     @Schema(description = "琛屼笟Id")
     @Column(columnDefinition = "VARCHAR(50) comment '琛屼笟Id'")
@@ -86,7 +88,7 @@
     private String bankAccount;
 
     @Schema(description = "鑱旂郴鐢佃瘽")
-    @Column(columnDefinition = "VARCHAR(20) comment '鑱旂郴鐢佃瘽'")
+    @Column(columnDefinition = "VARCHAR(40) comment '鑱旂郴鐢佃瘽'")
     private String contactPhone;
 
 /*    @Schema(description = "閭")
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractInvoice.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractInvoice.java
index 8b7d88d..4c8a4f1 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractInvoice.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractInvoice.java
@@ -30,7 +30,7 @@
 	private String invoiceCategory;
 
 	@Schema(description = "寮�绁ㄩ噾棰濓紙涓嶅惈绋庯級")
-	@Column(columnDefinition="decimal(10,2) comment '寮�绁ㄩ噾棰濓紙鍚◣'")
+	@Column(columnDefinition="decimal(10,2) comment '寮�绁ㄩ噾棰濓紙涓嶅惈绋�'")
 	private BigDecimal invoiceTotalPrice;
 
 	@Schema(description = "寮�绁ㄧ◣棰�")
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractOutBound.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractOutBound.java
index 23e92ef..1f3bb7e 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractOutBound.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractOutBound.java
@@ -23,7 +23,7 @@
 
 	@Schema(description = "Erp鍑哄簱Id")
 	@Column(columnDefinition = "bigint comment 'Erp鍑哄簱Id'")
-	private Long OutBoundId;
+	private Long outBoundId;
 
 	@Schema(description = "鍏宠仈鍚堝悓ID")
 	@Column(columnDefinition = "bigint not null comment '鍏宠仈鍚堝悓ID'")
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BankNameVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BankNameVo.java
new file mode 100644
index 0000000..154b6ca
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BankNameVo.java
@@ -0,0 +1,12 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+
+@Data
+public class BankNameVo {
+
+	private String bankNameCode;
+
+	private String bankNameName;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BusinessCustomerSelectVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BusinessCustomerSelectVo.java
new file mode 100644
index 0000000..6717f27
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/BusinessCustomerSelectVo.java
@@ -0,0 +1,13 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+
+@Data
+public class BusinessCustomerSelectVo {
+
+	private Long id;
+
+	private String companyName;
+
+	private String registerName;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustBankVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustBankVo.java
new file mode 100644
index 0000000..9f91b40
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustBankVo.java
@@ -0,0 +1,12 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+
+@Data
+public class CustBankVo {
+
+	private String bankAccount;
+
+	private String bankName;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustInfoVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustInfoVo.java
new file mode 100644
index 0000000..b175619
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/CustInfoVo.java
@@ -0,0 +1,17 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+
+@Data
+public class CustInfoVo {
+
+	private String certificateId;
+
+	private String custName;
+
+	private String legalGerson;
+
+	private String registrationAddress;
+}
+
+
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeCreditSaleVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeCreditSaleVo.java
new file mode 100644
index 0000000..1d2dbbb
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeCreditSaleVo.java
@@ -0,0 +1,37 @@
+package com.by4cloud.platformx.business.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class HomeCreditSaleVo {
+
+	private Long id;
+
+	@Schema(description = "鍚堝悓鍚嶇О")
+	private String contractNo;
+
+	@Schema(description = "鐢叉柟鍚嶇О")
+	private String busGuestName;
+
+	private String subjectMatterName;
+
+	private String subjectMatterCode;
+
+	@Schema(description = "鍗曚环")
+	private BigDecimal unitPrice;
+
+	@Schema(description = "鍑哄簱鏁伴噺")
+	private BigDecimal outBoundNum;
+
+	@Schema(description = "鍑哄簱鏃堕棿")
+	@DateTimeFormat(pattern = "yyyy-MM-DD HH:mm:ss")
+	private Date outBoundTime;
+
+	@Schema(description = "寮�绁ㄦ暟閲�")
+	private BigDecimal invoiceNum;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeInvoiceVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeInvoiceVo.java
new file mode 100644
index 0000000..14ad91f
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeInvoiceVo.java
@@ -0,0 +1,27 @@
+package com.by4cloud.platformx.business.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class HomeInvoiceVo {
+
+	private Long id;
+
+	private String busGuestName;
+
+	private String invoiceCategory;
+
+	private String contractNo;
+
+	private String partyB;
+
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date invoiceTime;
+
+	private BigDecimal invoiceTotalPriceTax;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOutBoundVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOutBoundVo.java
new file mode 100644
index 0000000..baadeb9
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOutBoundVo.java
@@ -0,0 +1,30 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class HomeOutBoundVo {
+
+	private Long id;
+
+	private String busGuestName;
+
+	private String contractNo;
+
+	private String subjectMatterName;
+
+	private String subjectMatterCode;
+
+	private BigDecimal outBoundNum;
+
+	@DateTimeFormat(pattern = "yyyy-MM-DD HH:mm:ss")
+	private Date outBoundTime;
+
+	private BigDecimal unitPrice;
+
+	private BigDecimal invoiceNum;
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueStaVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueStaVo.java
new file mode 100644
index 0000000..8f5442a
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueStaVo.java
@@ -0,0 +1,19 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class HomeOverdueStaVo {
+
+	/**
+	 * 1 褰撳墠 2 鍘嗗彶
+	 */
+	private String overdueType;
+
+	private BigDecimal receivableAmount;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueVo.java
new file mode 100644
index 0000000..fd661b3
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeOverdueVo.java
@@ -0,0 +1,27 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class HomeOverdueVo {
+
+	private Long id;
+
+	private String busGuestName;
+
+	private String contractNo;
+
+	private String scheduleName;
+
+	@DateTimeFormat(pattern = "yyyy-MM-DD")
+	private Date contractExpirTime;
+
+	private BigDecimal receivableAmount;
+
+	private BigDecimal overdueDuration;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomePaymentSlipVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomePaymentSlipVo.java
new file mode 100644
index 0000000..c4d5633
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomePaymentSlipVo.java
@@ -0,0 +1,23 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class HomePaymentSlipVo {
+
+	private Long id;
+
+	private String busGuestName;
+
+	private String contractNo;
+
+	@DateTimeFormat(pattern = "yyyy-MM-DD HH:mm:ss")
+	private Date paymentTime;
+
+	private BigDecimal paymentAmount;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZbjtVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZbjtVo.java
new file mode 100644
index 0000000..fbd2ab5
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZbjtVo.java
@@ -0,0 +1,155 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class HomeZbjtVo {
+
+	private BigDecimal sgbbr;
+
+	private BigDecimal sgbby;
+
+	private BigDecimal sgbbn;
+
+	private BigDecimal smjbr;
+
+	private BigDecimal smjby;
+
+	private BigDecimal smjbn;
+
+	private BigDecimal jxcbr;
+
+	private BigDecimal jxcby;
+
+	private BigDecimal jxcbn;
+
+	private BigDecimal tfbr;
+
+	private BigDecimal tfby;
+
+	private BigDecimal tfbn;
+
+	private BigDecimal ymjbr;
+
+	private BigDecimal ymjby;
+
+	private BigDecimal ymjbn;
+
+	/**
+	 * 褰撳墠瀵硅薄鍑忓幓鍙︿竴涓悓绫诲瀷瀵硅薄鐨勬墍鏈� BigDecimal 瀛楁
+	 * @param other 琚噺鏁板璞�
+	 * @return 鏂扮殑 HomeZbjtVo 瀵硅薄锛屽寘鍚浉鍑忓悗鐨勭粨鏋�
+	 */
+	public HomeZbjtVo subtract(HomeZbjtVo other) {
+		if (other == null) {
+			// 濡傛灉鍑忔暟涓虹┖锛岃繑鍥炲綋鍓嶅璞$殑鍓湰锛堟垨鏍规嵁涓氬姟閫昏緫杩斿洖褰撳墠瀵硅薄锛�
+			return this.copy();
+		}
+
+		HomeZbjtVo result = new HomeZbjtVo();
+
+		// 瀵规瘡涓瓧娈垫墽琛屽噺娉曡繍绠�
+		// 娉ㄦ剰锛氬鐞� null 鍊硷紝闃叉 NullPointerException
+		result.setSgbbr(safeSubtract(this.sgbbr, other.sgbbr));
+		result.setSgbby(safeSubtract(this.sgbby, other.sgbby));
+		result.setSgbbn(safeSubtract(this.sgbbn, other.sgbbn));
+		result.setSmjbr(safeSubtract(this.smjbr, other.smjbr));
+		result.setSmjby(safeSubtract(this.smjby, other.smjby));
+		result.setSmjbn(safeSubtract(this.smjbn, other.smjbn));
+		result.setJxcbr(safeSubtract(this.jxcbr, other.jxcbr));
+		result.setJxcby(safeSubtract(this.jxcby, other.jxcby));
+		result.setJxcbn(safeSubtract(this.jxcbn, other.jxcbn));
+		result.setTfbr(safeSubtract(this.tfbr, other.tfbr));
+		result.setTfby(safeSubtract(this.tfby, other.tfby));
+		result.setTfbn(safeSubtract(this.tfbn, other.tfbn));
+		result.setYmjbr(safeSubtract(this.ymjbr, other.ymjbr));
+		result.setYmjby(safeSubtract(this.ymjby, other.ymjby));
+		result.setYmjbn(safeSubtract(this.ymjby, other.ymjby));
+		// ... 瀵瑰叾浠栨墍鏈� BigDecimal 瀛楁鎵ц鐩稿悓鎿嶄綔
+
+		return result;
+	}
+
+	/**
+	 * 瀹夊叏鍑忔硶宸ュ叿鏂规硶锛氬鐞� null 鍊兼儏鍐�
+	 * 瑙勫垯锛歯ull 瑙嗕负 0
+	 */
+	private BigDecimal safeSubtract(BigDecimal minuend, BigDecimal subtrahend) {
+		BigDecimal val1 = minuend == null ? BigDecimal.ZERO : minuend;
+		BigDecimal val2 = subtrahend == null ? BigDecimal.ZERO : subtrahend;
+		return val1.subtract(val2);
+	}
+
+	/**
+	 * 杈呭姪鏂规硶锛氬鍒跺綋鍓嶅璞★紙鐢ㄤ簬鍑忔暟涓簄ull鏃剁殑杩斿洖锛�
+	 */
+	public HomeZbjtVo copy() {
+		HomeZbjtVo copy = new HomeZbjtVo();
+		copy.setSgbbr(this.sgbbr);
+		copy.setSgbby(this.sgbby);
+		copy.setSgbbn(this.sgbbn);
+		copy.setSmjbr(this.smjbr);
+		copy.setSmjby(this.smjby);
+		copy.setSmjbn(this.smjbn);
+		copy.setJxcbr(this.jxcbr);
+		copy.setJxcby(this.jxcby);
+		copy.setJxcbn(this.jxcbn);
+		copy.setTfbr(this.tfbr);
+		copy.setTfby(this.tfby);
+		copy.setTfbn(this.tfbn);
+		copy.setYmjbr(this.ymjbr);
+		copy.setYmjby(this.ymjby);
+		copy.setYmjbn(this.ymjby);
+		// ... 澶嶅埗鍏朵粬瀛楁
+		return copy;
+	}
+
+
+	/**
+	 * 褰撳墠瀵硅薄鍑忓幓鍙︿竴涓悓绫诲瀷瀵硅薄鐨勬墍鏈� BigDecimal 瀛楁
+	 * @param other 琚噺鏁板璞�
+	 * @return 鏂扮殑 HomeZbjtVo 瀵硅薄锛屽寘鍚浉鍑忓悗鐨勭粨鏋�
+	 */
+	public HomeZbjtVo add(HomeZbjtVo other) {
+		if (other == null) {
+			// 濡傛灉鍑忔暟涓虹┖锛岃繑鍥炲綋鍓嶅璞$殑鍓湰锛堟垨鏍规嵁涓氬姟閫昏緫杩斿洖褰撳墠瀵硅薄锛�
+			return this.copy();
+		}
+
+		HomeZbjtVo result = new HomeZbjtVo();
+
+		// 瀵规瘡涓瓧娈垫墽琛屽噺娉曡繍绠�
+		// 娉ㄦ剰锛氬鐞� null 鍊硷紝闃叉 NullPointerException
+		result.setSgbbr(safeAdd(this.sgbbr, other.sgbbr));
+		result.setSgbby(safeAdd(this.sgbby, other.sgbby));
+		result.setSgbbn(safeAdd(this.sgbbn, other.sgbbn));
+		result.setSmjbr(safeAdd(this.smjbr, other.smjbr));
+		result.setSmjby(safeAdd(this.smjby, other.smjby));
+		result.setSmjbn(safeAdd(this.smjbn, other.smjbn));
+		result.setJxcbr(safeAdd(this.jxcbr, other.jxcbr));
+		result.setJxcby(safeAdd(this.jxcby, other.jxcby));
+		result.setJxcbn(safeAdd(this.jxcbn, other.jxcbn));
+		result.setTfbr(safeAdd(this.tfbr, other.tfbr));
+		result.setTfby(safeAdd(this.tfby, other.tfby));
+		result.setTfbn(safeAdd(this.tfbn, other.tfbn));
+		result.setYmjbr(safeAdd(this.ymjbr, other.ymjbr));
+		result.setYmjby(safeAdd(this.ymjby, other.ymjby));
+		result.setYmjbn(safeAdd(this.ymjby, other.ymjby));
+		// ... 瀵瑰叾浠栨墍鏈� BigDecimal 瀛楁鎵ц鐩稿悓鎿嶄綔
+
+		return result;
+	}
+
+	/**
+	 * 瀹夊叏鍑忔硶宸ュ叿鏂规硶锛氬鐞� null 鍊兼儏鍐�
+	 * 瑙勫垯锛歯ull 瑙嗕负 0
+	 */
+	private BigDecimal safeAdd(BigDecimal minuend, BigDecimal subtrahend) {
+		BigDecimal val1 = minuend == null ? BigDecimal.ZERO : minuend;
+		BigDecimal val2 = subtrahend == null ? BigDecimal.ZERO : subtrahend;
+		return val1.add(val2);
+	}
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZgsVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZgsVo.java
new file mode 100644
index 0000000..03a2d1b
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/HomeZgsVo.java
@@ -0,0 +1,175 @@
+package com.by4cloud.platformx.business.vo;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class HomeZgsVo {
+
+	private BigDecimal hbbr;
+
+	private BigDecimal hbby;
+
+	private BigDecimal hbbn;
+
+	private BigDecimal xbbr;
+
+	private BigDecimal xbby;
+
+	private BigDecimal xbbn;
+
+	private BigDecimal dbbr;
+
+	private BigDecimal dbby;
+
+	private BigDecimal dbbn;
+
+	private BigDecimal hdbr;
+
+	private BigDecimal hdby;
+
+	private BigDecimal hdbn;
+
+	private BigDecimal xnbr;
+
+	private BigDecimal xnby;
+
+	private BigDecimal xnbn;
+
+	private BigDecimal znbr;
+
+	private BigDecimal znby;
+
+	private BigDecimal znbn;
+
+	private BigDecimal hwbr;
+
+	private BigDecimal hwby;
+
+	private BigDecimal hwbn;
+
+	/**
+	 * 褰撳墠瀵硅薄鍑忓幓鍙︿竴涓悓绫诲瀷瀵硅薄鐨勬墍鏈� BigDecimal 瀛楁
+	 * @param other 琚噺鏁板璞�
+	 * @return 鏂扮殑 HomeZbjtVo 瀵硅薄锛屽寘鍚浉鍑忓悗鐨勭粨鏋�
+	 */
+	public HomeZgsVo subtract(HomeZgsVo other) {
+		if (other == null) {
+			// 濡傛灉鍑忔暟涓虹┖锛岃繑鍥炲綋鍓嶅璞$殑鍓湰锛堟垨鏍规嵁涓氬姟閫昏緫杩斿洖褰撳墠瀵硅薄锛�
+			return this.copy();
+		}
+
+		HomeZgsVo result = new HomeZgsVo();
+
+		// 瀵规瘡涓瓧娈垫墽琛屽噺娉曡繍绠�
+		// 娉ㄦ剰锛氬鐞� null 鍊硷紝闃叉 NullPointerException
+		result.setHbbr(safeSubtract(this.hbbr,other.hbbr));
+		result.setHbby(safeSubtract(this.hbby,other.hbby));
+		result.setHbbn(safeSubtract(this.hbbn,other.hbbn));
+		result.setXbbr(safeSubtract(this.xbbr,other.xbbr));
+		result.setXbby(safeSubtract(this.xbby,other.xbby));
+		result.setXbbn(safeSubtract(this.xbbn,other.xbbn));
+		result.setDbbr(safeSubtract(this.dbbr,other.dbbr));
+		result.setDbby(safeSubtract(this.dbby,other.dbby));
+		result.setDbbn(safeSubtract(this.dbbn,other.dbbn));
+		result.setHwbr(safeSubtract(this.hwbr,other.hwbr));
+		result.setHwby(safeSubtract(this.hwby,other.hwby));
+		result.setHwbn(safeSubtract(this.hwbn,other.hwbn));
+		// ... 瀵瑰叾浠栨墍鏈� BigDecimal 瀛楁鎵ц鐩稿悓鎿嶄綔
+
+		return result;
+	}
+
+	/**
+	 * 瀹夊叏鍑忔硶宸ュ叿鏂规硶锛氬鐞� null 鍊兼儏鍐�
+	 * 瑙勫垯锛歯ull 瑙嗕负 0
+	 */
+	private BigDecimal safeSubtract(BigDecimal minuend, BigDecimal subtrahend) {
+		BigDecimal val1 = minuend == null ? BigDecimal.ZERO : minuend;
+		BigDecimal val2 = subtrahend == null ? BigDecimal.ZERO : subtrahend;
+		return val1.subtract(val2);
+	}
+
+	/**
+	 * 杈呭姪鏂规硶锛氬鍒跺綋鍓嶅璞★紙鐢ㄤ簬鍑忔暟涓簄ull鏃剁殑杩斿洖锛�
+	 */
+	public HomeZgsVo copy() {
+		HomeZgsVo copy = new HomeZgsVo();
+		copy.setHbbr(this.hbbr);
+		copy.setHbby(this.hbby);
+		copy.setHbbn(this.hbbn);
+		copy.setXbbr(this.xbbr);
+		copy.setXbby(this.xbby);
+		copy.setXbbn(this.xbby);
+		copy.setDbbr(this.dbbr);
+		copy.setDbby(this.dbby);
+		copy.setDbbn(this.dbbn);
+		copy.setHwbr(this.hwbr);
+		copy.setHwby(this.hwby);
+		copy.setHwbn(this.hwbn);
+		copy.setHdbr(this.hdbr);
+		copy.setHdby(this.hdby);
+		copy.setHdbn(this.hdbn);
+		copy.setXnbr(this.xnbr);
+		copy.setXnby(this.xnby);
+		copy.setXnbn(this.xnbr);
+		copy.setZnbr(this.znbr);
+		copy.setZnby(this.znby);
+		copy.setZnbn(this.znbn);
+		// ... 澶嶅埗鍏朵粬瀛楁
+		return copy;
+	}
+
+	/**
+	 * 褰撳墠瀵硅薄鍑忓幓鍙︿竴涓悓绫诲瀷瀵硅薄鐨勬墍鏈� BigDecimal 瀛楁
+	 * @param other 琚噺鏁板璞�
+	 * @return 鏂扮殑 HomeZbjtVo 瀵硅薄锛屽寘鍚浉鍑忓悗鐨勭粨鏋�
+	 */
+	public HomeZgsVo add(HomeZgsVo other) {
+		if (other == null) {
+			// 濡傛灉鍑忔暟涓虹┖锛岃繑鍥炲綋鍓嶅璞$殑鍓湰锛堟垨鏍规嵁涓氬姟閫昏緫杩斿洖褰撳墠瀵硅薄锛�
+			return this.copy();
+		}
+
+		HomeZgsVo result = new HomeZgsVo();
+
+		// 瀵规瘡涓瓧娈垫墽琛屽噺娉曡繍绠�
+		// 娉ㄦ剰锛氬鐞� null 鍊硷紝闃叉 NullPointerException
+		result.setHbbr(safeAdd(this.hbbr,other.hbbr));
+		result.setHbby(safeAdd(this.hbby,other.hbby));
+		result.setHbbn(safeAdd(this.hbbn,other.hbbn));
+		result.setXbbr(safeAdd(this.xbbr,other.xbbr));
+		result.setXbby(safeAdd(this.xbby,other.xbby));
+		result.setXbbn(safeAdd(this.xbbn,other.xbbn));
+		result.setDbbr(safeAdd(this.dbbr,other.dbbr));
+		result.setDbby(safeAdd(this.dbby,other.dbby));
+		result.setDbbn(safeAdd(this.dbbn,other.dbbn));
+		result.setHwbr(safeAdd(this.hwbr,other.hwbr));
+		result.setHwby(safeAdd(this.hwby,other.hwby));
+		result.setHwbn(safeAdd(this.hwbn,other.hwbn));
+		result.setHdbr(safeAdd(this.hdbr,other.hdbr));
+		result.setHdby(safeAdd(this.hdby,other.hdby));
+		result.setHdbn(safeAdd(this.hdbn,other.hdbn));
+		result.setXnbr(safeAdd(this.xnbr,other.xnbr));
+		result.setXnby(safeAdd(this.xnby,other.xnby));
+		result.setXnbn(safeAdd(this.xnbn,other.xnbn));
+		result.setZnbr(safeAdd(this.znbr,other.znbr));
+		result.setZnby(safeAdd(this.znby,other.znby));
+		result.setZnbn(safeAdd(this.znbn,other.znbn));
+		// ... 瀵瑰叾浠栨墍鏈� BigDecimal 瀛楁鎵ц鐩稿悓鎿嶄綔
+
+		return result;
+	}
+
+	/**
+	 * 瀹夊叏鍑忔硶宸ュ叿鏂规硶锛氬鐞� null 鍊兼儏鍐�
+	 * 瑙勫垯锛歯ull 瑙嗕负 0
+	 */
+	private BigDecimal safeAdd(BigDecimal minuend, BigDecimal subtrahend) {
+		BigDecimal val1 = minuend == null ? BigDecimal.ZERO : minuend;
+		BigDecimal val2 = subtrahend == null ? BigDecimal.ZERO : subtrahend;
+		return val1.add(val2);
+	}
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ProductExcelVO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ProductExcelVO.java
new file mode 100644
index 0000000..6f4e16f
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ProductExcelVO.java
@@ -0,0 +1,39 @@
+package com.by4cloud.platformx.business.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.by4cloud.platformx.common.excel.annotation.ExcelLine;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+@Data
+public class ProductExcelVO {
+
+	/**
+	 * 瀵煎叆鏃跺�欏洖鏄捐鍙�
+	 */
+	@ExcelLine
+	@ExcelIgnore
+	private Long lineNum;
+
+	@ExcelProperty("erp鍒嗙被缂栫爜")
+	private String erpTypeCode;
+
+	@ExcelProperty("erp鍒嗙被鍚嶇О")
+	private String erpTypeName;
+
+	@NotBlank(message = "erp缂栫爜涓嶈兘涓虹┖")
+	@ExcelProperty("erp缂栫爜")
+	private String erpCode;
+
+	@NotBlank(message = "erp鍚嶇О涓嶈兘涓虹┖")
+	@ExcelProperty("erp鍚嶇О")
+	private String erpName;
+
+	@ExcelProperty("瑙勬牸")
+	private String specification;
+
+	@NotBlank(message = "绋庢敹缂栫爜涓嶈兘涓虹┖")
+	@ExcelProperty("绋庢敹缂栫爜")
+	private String taxCode;
+}
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java
index c79e738..25f50c3 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java
@@ -1,15 +1,18 @@
 package com.by4cloud.platformx.business.controller;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.vo.BusinessCustomerSelectVo;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.log.annotation.SysLog;
 import com.by4cloud.platformx.business.entity.BusinessCustomer;
 import com.by4cloud.platformx.business.service.BusinessCustomerService;
+import com.by4cloud.platformx.common.security.annotation.Inner;
 import org.springframework.security.access.prepost.PreAuthorize;
 import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
 import io.swagger.v3.oas.annotations.security.SecurityRequirement;
@@ -67,7 +70,15 @@
     public R getBusinessCustomerList(@ParameterObject BusinessCustomer businessCustomer) {
         LambdaQueryWrapper<BusinessCustomer> wrapper = Wrappers.lambdaQuery();
         wrapper.like(StrUtil.isNotEmpty(businessCustomer.getCompanyName()),BusinessCustomer::getCompanyName,businessCustomer.getCompanyName());
-        return R.ok(businessCustomerService.listByScope(wrapper));
+		List<BusinessCustomer> businessCustomerList = businessCustomerService.listByScope(wrapper);
+		if (ArrayUtil.isNotEmpty(businessCustomerList.toArray())){
+			List<BusinessCustomerSelectVo> voList = BeanUtil.copyToList(businessCustomerList, BusinessCustomerSelectVo.class);
+			if (voList.size()>1000){
+				return R.ok(voList.subList(0,1000));
+			}
+			return R.ok(voList);
+		}
+		return R.ok();
     }
 
     /**
@@ -134,4 +145,14 @@
     public List<BusinessCustomer> export(BusinessCustomer businessCustomer,Long[] ids) {
         return businessCustomerService.list(Wrappers.lambdaQuery(businessCustomer).in(ArrayUtil.isNotEmpty(ids), BusinessCustomer::getId, ids));
     }
+
+	/**
+	 * 鍚屾涓绘暟鎹� 浼佷笟鍚嶇О 娉曚汉 涓夊悎涓�鐮� 閾惰淇℃伅
+	 * @return R
+	 */
+	@Inner(value = false)
+	@GetMapping("/syncMainBusCus" )
+	public R syncMainBusCus() {
+		return R.ok(businessCustomerService.syncMainBusCus());
+	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java
index 8f9f36c..4296f4a 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java
@@ -4,6 +4,8 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.ContractInvoiceQueryDTO;
+import com.by4cloud.platformx.business.dto.ContractQueryDTO;
 import com.by4cloud.platformx.business.dto.GenInvoiceInfoDTO;
 import com.by4cloud.platformx.business.entity.Contract;
 import com.by4cloud.platformx.business.service.ContractInvoiceService;
@@ -40,17 +42,23 @@
 	/**
 	 * 鍒嗛〉鏌ヨ
 	 * @param page 鍒嗛〉瀵硅薄
-	 * @param contract 鍚堝悓绠$悊
+	 * @param queryDTO 鍚堝悓绠$悊
 	 * @return
 	 */
 	@Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
 	@GetMapping("/page" )
-	public R getContractPage(@ParameterObject Page page, @ParameterObject Contract contract) {
+	public R getContractPage(@ParameterObject Page page, @ParameterObject ContractQueryDTO queryDTO) {
 		LambdaQueryWrapper<Contract> wrapper = Wrappers.lambdaQuery();
-		wrapper.like(StringUtils.isNotBlank(contract.getContractName()),Contract::getContractName,contract.getContractName());
-		wrapper.like(StringUtils.isNotBlank(contract.getPartyA()),Contract::getPartyA,contract.getPartyA());
-		wrapper.eq(Contract::getBillingStatus,contract.getBillingStatus());
-		if (StrUtil.equals(contract.getBillingStatus(),"1")){
+		wrapper.like(StringUtils.isNotBlank(queryDTO.getContractName()),Contract::getContractName,queryDTO.getContractName());
+		wrapper.like(StringUtils.isNotBlank(queryDTO.getPartyA()),Contract::getPartyA,queryDTO.getPartyA());
+		wrapper.eq(Contract::getBillingStatus,queryDTO.getBillingStatus());
+		if (StrUtil.equals(queryDTO.getInvoiceType(),"1")){
+			wrapper.eqSql(Contract::getBillingAmout,"(select sum(delivered_quantity*unit_price) from contract_subject_matter csm where csm.contract_id = contract.id)");
+		}else if (StrUtil.equals(queryDTO.getInvoiceType(),"0")){
+			wrapper.ltSql(Contract::getBillingAmout,"(select sum(delivered_quantity*unit_price) from contract_subject_matter csm where csm.contract_id = contract.id)");
+		}
+
+		if (StrUtil.equals(queryDTO.getBillingStatus(),"1")){
 			wrapper.orderByDesc(BaseModel::getCreateTime);
 		}else {
 			wrapper.orderByAsc(BaseModel::getCreateTime);
@@ -123,4 +131,9 @@
 	public R queryRedInvoice() {
 		return contractInvoiceService.queryRedInvoice();
 	}
+
+	@GetMapping("/pageInvoice")
+	public R pageInvoice(@ParameterObject Page page, @ParameterObject ContractInvoiceQueryDTO queryDTO) {
+		return R.ok(contractInvoiceService.pageInvoice(page, queryDTO));
+	}
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractOutBoundController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractOutBoundController.java
index a9a8854..2f4ba09 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractOutBoundController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractOutBoundController.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.ContractOutBoundQueryDTO;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.log.annotation.SysLog;
 import com.by4cloud.platformx.business.entity.ContractOutBound;
@@ -41,19 +42,19 @@
     /**
      * 鍒嗛〉鏌ヨ
      * @param page 鍒嗛〉瀵硅薄
-     * @param contractOutBound 鍚堝悓鍑哄簱
+     * @param queryDTO 鍚堝悓鍑哄簱
      * @return
      */
     @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
     @GetMapping("/page" )
     @PreAuthorize("@pms.hasPermission('business_contractOutBound_view')" )
-    public R getContractOutBoundPage(@ParameterObject Page page, @ParameterObject ContractOutBound contractOutBound) {
-        LambdaQueryWrapper<ContractOutBound> wrapper = Wrappers.lambdaQuery();
-		wrapper.like(StrUtil.isNotBlank(contractOutBound.getBusGuestName()),ContractOutBound::getBusGuestName,contractOutBound.getBusGuestName());
-		wrapper.like(StrUtil.isNotBlank(contractOutBound.getContractName()),ContractOutBound::getContractName,contractOutBound.getContractName());
-		wrapper.like(StrUtil.isNotBlank(contractOutBound.getSubjectMatterName()),ContractOutBound::getSubjectMatterName,contractOutBound.getSubjectMatterName());
-        wrapper.orderByDesc(ContractOutBound::getCreateTime);
-		return R.ok(contractOutBoundService.pageByScope(page, wrapper));
+    public R getContractOutBoundPage(@ParameterObject Page page, @ParameterObject ContractOutBoundQueryDTO queryDTO) {
+//        LambdaQueryWrapper<ContractOutBound> wrapper = Wrappers.lambdaQuery();
+//		wrapper.like(StrUtil.isNotBlank(contractOutBound.getBusGuestName()),ContractOutBound::getBusGuestName,contractOutBound.getBusGuestName());
+//		wrapper.like(StrUtil.isNotBlank(contractOutBound.getContractName()),ContractOutBound::getContractName,contractOutBound.getContractName());
+//		wrapper.like(StrUtil.isNotBlank(contractOutBound.getSubjectMatterName()),ContractOutBound::getSubjectMatterName,contractOutBound.getSubjectMatterName());
+//        wrapper.orderByDesc(ContractOutBound::getCreateTime);
+		return R.ok(contractOutBoundService.pageScope(page, queryDTO));
     }
 
 
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/CurrentOverdueController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/CurrentOverdueController.java
index 3e359ad..811a2c4 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/CurrentOverdueController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/CurrentOverdueController.java
@@ -43,19 +43,19 @@
     /**
      * 鍒嗛〉鏌ヨ
      * @param page 鍒嗛〉瀵硅薄
-     * @param currentOverdue 鏈叧闂悎鍚�(褰撳墠閫炬湡)
+     * @param queryDTO 鏈叧闂悎鍚�(褰撳墠閫炬湡)
      * @return
      */
     @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
     @GetMapping("/page" )
     @PreAuthorize("@pms.hasPermission('business_currentOverdue_view')" )
-    public R getCurrentOverduePage(@ParameterObject Page page, @ParameterObject CurrentOverdue currentOverdue) {
-		LambdaQueryWrapper<CurrentOverdue> wrapper = Wrappers.lambdaQuery();
-		wrapper.like(StrUtil.isNotBlank(currentOverdue.getBusGuestName()),CurrentOverdue::getBusGuestName,currentOverdue.getBusGuestName());
-		wrapper.like(StrUtil.isNotBlank(currentOverdue.getContractName()),CurrentOverdue::getContractName,currentOverdue.getContractName());
-		wrapper.like(StrUtil.isNotBlank(currentOverdue.getScheduleName()),CurrentOverdue::getScheduleName,currentOverdue.getScheduleName());
-		wrapper.orderByDesc(CurrentOverdue::getCreateTime);
-        return R.ok(currentOverdueService.pageByScope(page, wrapper));
+    public R getCurrentOverduePage(@ParameterObject Page page, @ParameterObject CurrentOverdueQueryDTO queryDTO) {
+//		LambdaQueryWrapper<CurrentOverdue> wrapper = Wrappers.lambdaQuery();
+//		wrapper.like(StrUtil.isNotBlank(currentOverdue.getBusGuestName()),CurrentOverdue::getBusGuestName,currentOverdue.getBusGuestName());
+//		wrapper.like(StrUtil.isNotBlank(currentOverdue.getContractName()),CurrentOverdue::getContractName,currentOverdue.getContractName());
+//		wrapper.like(StrUtil.isNotBlank(currentOverdue.getScheduleName()),CurrentOverdue::getScheduleName,currentOverdue.getScheduleName());
+//		wrapper.orderByDesc(CurrentOverdue::getCreateTime);
+        return R.ok(currentOverdueService.pageScope(page, queryDTO));
     }
 
 
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/HistoryOverdueController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/HistoryOverdueController.java
index 9d68fc4..fec09d7 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/HistoryOverdueController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/HistoryOverdueController.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.HistoryOverdueQueryDTO;
 import com.by4cloud.platformx.business.entity.CurrentOverdue;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.log.annotation.SysLog;
@@ -42,19 +43,19 @@
     /**
      * 鍒嗛〉鏌ヨ
      * @param page 鍒嗛〉瀵硅薄
-     * @param historyOverdue 鍘嗗彶閫炬湡
+     * @param queryDTO 鍘嗗彶閫炬湡
      * @return
      */
     @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
     @GetMapping("/page" )
     @PreAuthorize("@pms.hasPermission('business_historyOverdue_view')" )
-    public R getHistoryOverduePage(@ParameterObject Page page, @ParameterObject HistoryOverdue historyOverdue) {
-        LambdaQueryWrapper<HistoryOverdue> wrapper = Wrappers.lambdaQuery();
-		wrapper.like(StrUtil.isNotBlank(historyOverdue.getBusGuestName()),HistoryOverdue::getBusGuestName,historyOverdue.getBusGuestName());
-		wrapper.like(StrUtil.isNotBlank(historyOverdue.getContractName()),HistoryOverdue::getContractName,historyOverdue.getContractName());
-		wrapper.like(StrUtil.isNotBlank(historyOverdue.getScheduleName()), HistoryOverdue::getScheduleName,historyOverdue.getScheduleName());
-		wrapper.orderByDesc(HistoryOverdue::getCreateTime);
-        return R.ok(historyOverdueService.pageByScope(page, wrapper));
+    public R getHistoryOverduePage(@ParameterObject Page page, @ParameterObject HistoryOverdueQueryDTO queryDTO) {
+//        LambdaQueryWrapper<HistoryOverdue> wrapper = Wrappers.lambdaQuery();
+//		wrapper.like(StrUtil.isNotBlank(historyOverdue.getBusGuestName()),HistoryOverdue::getBusGuestName,historyOverdue.getBusGuestName());
+//		wrapper.like(StrUtil.isNotBlank(historyOverdue.getContractName()),HistoryOverdue::getContractName,historyOverdue.getContractName());
+//		wrapper.like(StrUtil.isNotBlank(historyOverdue.getScheduleName()), HistoryOverdue::getScheduleName,historyOverdue.getScheduleName());
+//		wrapper.orderByDesc(HistoryOverdue::getCreateTime);
+        return R.ok(historyOverdueService.pageScope(page, queryDTO));
     }
 
 
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/OutBoundController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/OutBoundController.java
index 0e2103b..3b692ef 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/OutBoundController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/OutBoundController.java
@@ -1,5 +1,6 @@
 package com.by4cloud.platformx.business.controller;
 
+import cn.hutool.core.util.ObjUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.collection.CollUtil;
@@ -7,6 +8,7 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.by4cloud.platformx.business.dto.OutBoundAddDTO;
+import com.by4cloud.platformx.business.dto.OutBoundQueryDTO;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.log.annotation.SysLog;
 import com.by4cloud.platformx.business.entity.OutBound;
@@ -42,16 +44,19 @@
     /**
      * 鍒嗛〉鏌ヨ
      * @param page 鍒嗛〉瀵硅薄
-     * @param outBound EPR鍑哄簱璁板綍
+     * @param queryDTO EPR鍑哄簱璁板綍
      * @return
      */
     @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
     @GetMapping("/page" )
     @PreAuthorize("@pms.hasPermission('business_outBound_view')" )
-    public R getOutBoundPage(@ParameterObject Page page, @ParameterObject OutBound outBound) {
+    public R getOutBoundPage(@ParameterObject Page page, @ParameterObject OutBoundQueryDTO queryDTO) {
         LambdaQueryWrapper<OutBound> wrapper = Wrappers.lambdaQuery();
-		wrapper.like(StrUtil.isNotBlank(outBound.getBusGuestName()),OutBound::getBusGuestName,outBound.getBusGuestName());
-		wrapper.like(StrUtil.isNotBlank(outBound.getSubjectMatterName()),OutBound::getSubjectMatterName,outBound.getSubjectMatterName());
+		wrapper.like(StrUtil.isNotBlank(queryDTO.getBusGuestName()),OutBound::getBusGuestName,queryDTO.getBusGuestName());
+		wrapper.like(StrUtil.isNotBlank(queryDTO.getSubjectMatterName()),OutBound::getSubjectMatterName,queryDTO.getSubjectMatterName());
+		wrapper.like(StrUtil.isNotBlank(queryDTO.getBatchNumber()),OutBound::getBatchNumber,queryDTO.getBatchNumber());
+		wrapper.ge(ObjUtil.isNotNull(queryDTO.getStartTime()),OutBound::getOutBoundTime,queryDTO.getStartTime());
+		wrapper.le(ObjUtil.isNotNull(queryDTO.getEndTime()),OutBound::getOutBoundTime,queryDTO.getEndTime());
 		wrapper.orderByDesc(OutBound::getCreateTime);
         return R.ok(outBoundService.pageByScope(page, wrapper));
     }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/PaymentSlipController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/PaymentSlipController.java
new file mode 100644
index 0000000..ed1e80f
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/PaymentSlipController.java
@@ -0,0 +1,51 @@
+package com.by4cloud.platformx.business.controller;
+
+import cn.hutool.core.util.ObjUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.PaymentConfirmQueryDTO;
+import com.by4cloud.platformx.business.dto.PaymentSlipQueryDTO;
+import com.by4cloud.platformx.business.entity.PaymentConfirm;
+import com.by4cloud.platformx.business.entity.PaymentSlip;
+import com.by4cloud.platformx.business.service.PaymentSlipService;
+import com.by4cloud.platformx.common.core.util.R;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 鏀舵鍗�
+ *
+ * @author syt
+ * @date 2026骞�7鏈�16鏃� 15:03:33
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/paymentSlip" )
+@Tag(description = "paymentSlip" , name = "鏀舵鍗�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class PaymentSlipController {
+
+	private final PaymentSlipService paymentSlipService;
+
+	/**
+	 * 鍒嗛〉鏌ヨ
+	 * @param page 鍒嗛〉瀵硅薄
+	 * @param queryDTO 鏀舵鍗�
+	 * @return
+	 */
+	@GetMapping("/page" )
+	public R getPaymentConfirmPage(@ParameterObject Page page, @ParameterObject PaymentSlipQueryDTO queryDTO) {
+		return R.ok(paymentSlipService.pageScope(page, queryDTO));
+	}
+
+}
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java
index bcea39f..47f7e8e 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java
@@ -8,9 +8,13 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.admin.api.vo.DeptExcelVO;
+import com.by4cloud.platformx.business.dto.ProductAddDTO;
 import com.by4cloud.platformx.business.dto.ProductQueryDTO;
+import com.by4cloud.platformx.business.vo.ProductExcelVO;
 import com.by4cloud.platformx.business.vo.ProductTreeVo;
 import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.excel.annotation.RequestExcel;
 import com.by4cloud.platformx.common.log.annotation.SysLog;
 import com.by4cloud.platformx.business.entity.Product;
 import com.by4cloud.platformx.business.service.ProductService;
@@ -23,6 +27,7 @@
 import io.swagger.v3.oas.annotations.tags.Tag;
 import io.swagger.v3.oas.annotations.Operation;
 import lombok.RequiredArgsConstructor;
+import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.ArrayList;
@@ -186,4 +191,27 @@
     public List<Product> export(Product product,Long[] ids) {
         return productService.list(Wrappers.lambdaQuery(product).in(ArrayUtil.isNotEmpty(ids), Product::getId, ids));
     }
+
+	/**
+	 * 鏂板浜у搧淇℃伅
+	 * @param addDTOS 浜у搧淇℃伅
+	 * @return R
+	 */
+	@Operation(summary = "鍚勫叕鍙告柊澧炰骇鍝佷俊鎭�" , description = "鍚勫叕鍙告柊澧炰骇鍝佷俊鎭�" )
+	@SysLog("鍚勫叕鍙告柊澧炰骇鍝佷俊鎭�" )
+	@PostMapping("/saveErpProduct")
+	public R saveErpProduct(@RequestBody List<ProductAddDTO> addDTOS) {
+		return productService.saveErpProduct(addDTOS);
+	}
+
+	/**
+	 * 瀵煎叆閮ㄩ棬
+	 * @param excelVOList
+	 * @param bindingResult
+	 * @return
+	 */
+	@PostMapping("/importProduct")
+	public R importProduct(@RequestExcel List<ProductExcelVO> excelVOList, BindingResult bindingResult) {
+		return productService.importProduct(excelVOList, bindingResult);
+	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/StatisticController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/StatisticController.java
index 52aff9c..6656b89 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/StatisticController.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/StatisticController.java
@@ -1,6 +1,7 @@
 package com.by4cloud.platformx.business.controller;
 
 import com.by4cloud.platformx.business.dto.AnalysisCommonDTO;
+import com.by4cloud.platformx.business.dto.HomeQueryDTO;
 import com.by4cloud.platformx.business.entity.SalesMan;
 import com.by4cloud.platformx.business.service.StatisticService;
 import com.by4cloud.platformx.common.core.util.R;
@@ -165,4 +166,95 @@
 	public R agingAnalysisTotalScale(@RequestBody AnalysisCommonDTO commonDTO) {
 		return statisticService.agingAnalysisTotalScale(commonDTO);
 	}
+
+	/**
+	 * 瑁呭闆嗗洟瑙掕壊鍒ゆ柇
+	 * @return R
+	 */
+	@PostMapping("/homeZbjtFlag")
+	public R homeZbjtFlag() {
+		return statisticService.homeZbjtFlag();
+	}
+
+	/**
+	 * 瑁呭闆嗗洟棣栭〉
+	 * @return R
+	 */
+	@PostMapping("/homeZbjt")
+	public R homeZbjt() {
+		return statisticService.homeZbjt();
+	}
+
+	/**
+	 * 瀛愬叕鍙搁椤�
+	 * @return R
+	 */
+	@PostMapping("/homeZgs")
+	public R homeZgs() {
+		return statisticService.homeZgs();
+	}
+
+	/**
+	 * 鍚堝悓绛捐棣栭〉绌块��
+	 * @return R
+	 */
+	@PostMapping("/homeContract")
+	public R homeContract(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homeContract(queryDTO);
+	}
+
+	/**
+	 * 鍥炴棣栭〉绌块��
+	 * @return R
+	 */
+	@PostMapping("/homePaymentSlip")
+	public R homePaymentSlip(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homePaymentSlip(queryDTO);
+	}
+
+	/**
+	 * 鍑鸿揣棣栭〉绌块��
+	 * @return R
+	 */
+	@PostMapping("/homeOutBound")
+	public R homeOutBound(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homeOutBound(queryDTO);
+	}
+
+	/**
+	 * 寮�绁ㄩ椤电┛閫�
+	 * @return R
+	 */
+	@PostMapping("/homeInvoice")
+	public R homeInvoice(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homeInvoice(queryDTO);
+	}
+
+	/**
+	 * 璧婇攢棣栭〉绌块��
+	 * @return R
+	 */
+	@PostMapping("/homeCreditSale")
+	public R homeCreditSale(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homeCreditSale(queryDTO);
+	}
+
+
+	/**
+	 * 閫炬湡棣栭〉绌块��
+	 * @return R
+	 */
+	@PostMapping("/homeOverdue")
+	public R homeOverdue(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homeOverdue(queryDTO);
+	}
+
+	/**
+	 * 閫炬湡鍘嗗彶棣栭〉绌块��
+	 * @return R
+	 */
+	@PostMapping("/homeOverdueHis")
+	public R homeOverdueHis(@RequestBody HomeQueryDTO queryDTO) {
+		return statisticService.homeOverdueHis(queryDTO);
+	}
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipBanklViewMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipBanklViewMapper.java
new file mode 100644
index 0000000..c372edf
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipBanklViewMapper.java
@@ -0,0 +1,14 @@
+package com.by4cloud.platformx.business.mapper;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.by4cloud.platformx.business.vo.BankNameVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+@Mapper
+@DS("druid_bip_bank_view")
+public interface BipBanklViewMapper {
+
+	@Select("SELECT bnts.bank_name_code,bnts.bank_name_name FROM tenant_5.bank_name_tra_send AS bnts WHERE bnts.bank_name_code = #{bankName}")
+	BankNameVo selectBankByCode(String bankName);
+}
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipViewMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipViewMapper.java
new file mode 100644
index 0000000..8e8f2d0
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/BipViewMapper.java
@@ -0,0 +1,18 @@
+package com.by4cloud.platformx.business.mapper;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.by4cloud.platformx.business.vo.CustBankVo;
+import com.by4cloud.platformx.business.vo.CustInfoVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+@Mapper
+@DS("druid_bip_view")
+public interface BipViewMapper {
+
+	@Select("select  certificate_id, cust_name,legal_person,registration_address from mdm_send.mdm_cust_base_info_tra_send WHERE cust_name = #{companyName}")
+	CustInfoVo selectBaseInfoByCustName(String companyName);
+
+	@Select("SELECT mcbats.bank_account,mcbats.bank_name FROM mdm_send.mdm_cust_bank_account_tra_send AS mcbats  WHERE holder_name = #{companyName}")
+	CustBankVo selectBankByCustName(String companyName);
+}
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractInvoiceMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractInvoiceMapper.java
index 0b07b08..02b0fd4 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractInvoiceMapper.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractInvoiceMapper.java
@@ -1,9 +1,21 @@
 package com.by4cloud.platformx.business.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.ContractInvoiceQueryDTO;
 import com.by4cloud.platformx.business.entity.ContractInvoice;
+import com.by4cloud.platformx.business.vo.HomeInvoiceVo;
+import com.by4cloud.platformx.business.vo.HomeZbjtVo;
+import com.by4cloud.platformx.business.vo.HomeZgsVo;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 @Mapper
 public interface ContractInvoiceMapper extends PlatformxBaseMapper<ContractInvoice> {
+    HomeZbjtVo homeZbjt();
+
+    HomeZgsVo homeZgs(@Param("compId") Long compId);
+
+    Page<HomeInvoiceVo> pageInvoice(Page page,@Param("queryDTO") ContractInvoiceQueryDTO queryDTO, DataScope comp_id);
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractMapper.java
index 9ec6689..a52f5b5 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractMapper.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractMapper.java
@@ -62,4 +62,8 @@
 																		 @Param("tfCompId") Long tfgs,@Param("ymjCompId") Long ymj);
 
     Page<ContractPageVo> pageScope(Page page,@Param("queryDTO") ContracQueryDTO queryDTO, DataScope comp_id);
+
+    HomeZbjtVo homeZbjt();
+
+	HomeZgsVo homeZgs(@Param("compId") Long compId);
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractOutBoundMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractOutBoundMapper.java
index 37ea42f..c59901e 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractOutBoundMapper.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/ContractOutBoundMapper.java
@@ -1,11 +1,30 @@
 package com.by4cloud.platformx.business.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.ContractOutBoundQueryDTO;
+import com.by4cloud.platformx.business.dto.CreditSalesQueryDTO;
+import com.by4cloud.platformx.business.vo.HomeOutBoundVo;
+import com.by4cloud.platformx.business.vo.HomeZbjtVo;
+import com.by4cloud.platformx.business.vo.HomeZgsVo;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
 import com.by4cloud.platformx.business.entity.ContractOutBound;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 @Mapper
 public interface ContractOutBoundMapper extends PlatformxBaseMapper<ContractOutBound> {
 
 
+    HomeZbjtVo homeZbjt();
+
+	HomeZbjtVo homeZbjtSX();
+
+    HomeZgsVo homeZgs(@Param("compId") Long compId);
+
+	HomeZgsVo homeZgsSX(@Param("compId")Long compId);
+
+    Page<HomeOutBoundVo> pageScope(Page page, @Param("queryDTO") ContractOutBoundQueryDTO queryDTO, DataScope comp_id);
+
+    Page<HomeOutBoundVo> pageByCredit(Page page,@Param("queryDTO")  CreditSalesQueryDTO queryDTO, DataScope comp_id);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/CurrentOverdueMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/CurrentOverdueMapper.java
index 3375bcd..1b19b91 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/CurrentOverdueMapper.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/CurrentOverdueMapper.java
@@ -1,11 +1,27 @@
 package com.by4cloud.platformx.business.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.CurrentOverdueQueryDTO;
+import com.by4cloud.platformx.business.dto.HomeQueryDTO;
+import com.by4cloud.platformx.business.vo.HomeOverdueStaVo;
+import com.by4cloud.platformx.business.vo.HomeOverdueVo;
+import com.by4cloud.platformx.business.vo.HomeZbjtVo;
+import com.by4cloud.platformx.business.vo.HomeZgsVo;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
 import com.by4cloud.platformx.business.entity.CurrentOverdue;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 @Mapper
 public interface CurrentOverdueMapper extends PlatformxBaseMapper<CurrentOverdue> {
 
 
+    HomeZbjtVo homeZbjt();
+
+    HomeZgsVo homeZgs(@Param("compId") Long compId);
+
+    Page<HomeOverdueVo> pageScope(Page page, @Param("queryDTO") CurrentOverdueQueryDTO queryDTO, DataScope comp_id);
+
+	HomeOverdueStaVo selectCurrentOverdue(@Param("queryDTO")HomeQueryDTO queryDTO);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/HistoryOverdueMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/HistoryOverdueMapper.java
index 47c6e11..e834a3e 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/HistoryOverdueMapper.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/HistoryOverdueMapper.java
@@ -1,11 +1,27 @@
 package com.by4cloud.platformx.business.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.HistoryOverdueQueryDTO;
+import com.by4cloud.platformx.business.dto.HomeQueryDTO;
+import com.by4cloud.platformx.business.vo.HomeOverdueStaVo;
+import com.by4cloud.platformx.business.vo.HomeOverdueVo;
+import com.by4cloud.platformx.business.vo.HomeZbjtVo;
+import com.by4cloud.platformx.business.vo.HomeZgsVo;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
 import com.by4cloud.platformx.business.entity.HistoryOverdue;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 @Mapper
 public interface HistoryOverdueMapper extends PlatformxBaseMapper<HistoryOverdue> {
 
 
+    HomeZbjtVo homeZbjt();
+
+	HomeZgsVo homeZgs(@Param("compId") Long compId);
+
+    HomeOverdueStaVo selectHistoryOverdue(@Param("queryDTO")HomeQueryDTO queryDTO);
+
+	Page<HomeOverdueVo> pageScope(Page page, @Param("queryDTO") HistoryOverdueQueryDTO queryDTO, DataScope comp_id);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/PaymentSlipMapper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/PaymentSlipMapper.java
index 8eee3dc..e5513ed 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/PaymentSlipMapper.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/PaymentSlipMapper.java
@@ -1,12 +1,25 @@
 package com.by4cloud.platformx.business.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.PaymentSlipQueryDTO;
 import com.by4cloud.platformx.business.entity.PaymentSlip;
 
+import com.by4cloud.platformx.business.vo.HomeOutBoundVo;
+import com.by4cloud.platformx.business.vo.HomePaymentSlipVo;
+import com.by4cloud.platformx.business.vo.HomeZbjtVo;
+import com.by4cloud.platformx.business.vo.HomeZgsVo;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 @Mapper
 public interface PaymentSlipMapper extends PlatformxBaseMapper<PaymentSlip> {
 
 
+    HomeZbjtVo homeZbjt();
+
+    HomeZgsVo homeZgs(@Param("compId") Long compId);
+
+    Page<HomePaymentSlipVo> pageScope(Page page, @Param("queryDTO") PaymentSlipQueryDTO queryDTO, DataScope comp_id);
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/BusinessCustomerService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/BusinessCustomerService.java
index 9c974fa..3655cd2 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/BusinessCustomerService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/BusinessCustomerService.java
@@ -2,8 +2,10 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.by4cloud.platformx.business.entity.BusinessCustomer;
+import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.data.mybatis.IIService;
 
 public interface BusinessCustomerService extends IIService<BusinessCustomer> {
 
+    R syncMainBusCus();
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractInvoiceService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractInvoiceService.java
index 9338f0a..b84be6d 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractInvoiceService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractInvoiceService.java
@@ -1,5 +1,7 @@
 package com.by4cloud.platformx.business.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.ContractInvoiceQueryDTO;
 import com.by4cloud.platformx.business.dto.GenInvoiceInfoDTO;
 import com.by4cloud.platformx.common.core.util.R;
 
@@ -21,4 +23,6 @@
 	void takeEffect(Long id);
 
 	void refuseApproval(Long id);
+
+    Page pageInvoice(Page page, ContractInvoiceQueryDTO queryDTO);
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractOutBoundService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractOutBoundService.java
index 2e91cc5..3894189 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractOutBoundService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractOutBoundService.java
@@ -1,8 +1,11 @@
 package com.by4cloud.platformx.business.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.ContractOutBoundQueryDTO;
 import com.by4cloud.platformx.business.entity.ContractOutBound;
 import com.by4cloud.platformx.common.data.mybatis.IIService;
 
 public interface ContractOutBoundService extends IIService<ContractOutBound> {
 
+    Page pageScope(Page page, ContractOutBoundQueryDTO queryDTO);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractService.java
index a6e9752..6fc6316 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ContractService.java
@@ -2,10 +2,7 @@
 
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.by4cloud.platformx.business.dto.ContracQueryDTO;
-import com.by4cloud.platformx.business.dto.ContractAddDTO;
-import com.by4cloud.platformx.business.dto.ContractUpdateDTO;
-import com.by4cloud.platformx.business.dto.DelayOutApprovalDTO;
+import com.by4cloud.platformx.business.dto.*;
 import com.by4cloud.platformx.business.entity.Contract;
 import com.by4cloud.platformx.business.vo.ContractDetailVo;
 import com.by4cloud.platformx.common.core.util.R;
@@ -57,4 +54,5 @@
 	R addContractSgb(ContractAddDTO addDTO);
 
 	R updateContractSgb(ContractUpdateDTO addDTO);
+
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/CurrentOverdueService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/CurrentOverdueService.java
index f50f017..b6841f4 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/CurrentOverdueService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/CurrentOverdueService.java
@@ -1,8 +1,11 @@
 package com.by4cloud.platformx.business.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.CurrentOverdueQueryDTO;
 import com.by4cloud.platformx.business.entity.CurrentOverdue;
 import com.by4cloud.platformx.common.data.mybatis.IIService;
 
 public interface CurrentOverdueService extends IIService<CurrentOverdue> {
 
+    Page pageScope(Page page, CurrentOverdueQueryDTO queryDTO);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/HistoryOverdueService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/HistoryOverdueService.java
index 4e576e1..6c6d263 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/HistoryOverdueService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/HistoryOverdueService.java
@@ -1,8 +1,11 @@
 package com.by4cloud.platformx.business.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.HistoryOverdueQueryDTO;
 import com.by4cloud.platformx.business.entity.HistoryOverdue;
 import com.by4cloud.platformx.common.data.mybatis.IIService;
 
 public interface HistoryOverdueService extends IIService<HistoryOverdue> {
 
+    Page pageScope(Page page, HistoryOverdueQueryDTO queryDTO);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/PaymentSlipService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/PaymentSlipService.java
new file mode 100644
index 0000000..c3719cf
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/PaymentSlipService.java
@@ -0,0 +1,10 @@
+package com.by4cloud.platformx.business.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.PaymentSlipQueryDTO;
+import com.by4cloud.platformx.business.entity.PaymentSlip;
+import com.by4cloud.platformx.common.data.mybatis.IIService;
+
+public interface PaymentSlipService extends IIService<PaymentSlip> {
+	Page pageScope(Page page, PaymentSlipQueryDTO queryDTO);
+}
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ProductService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ProductService.java
index 0081475..1e39d92 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ProductService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ProductService.java
@@ -1,12 +1,15 @@
 package com.by4cloud.platformx.business.service;
 
 import cn.hutool.core.lang.tree.Tree;
+import com.by4cloud.platformx.business.dto.ProductAddDTO;
 import com.by4cloud.platformx.business.dto.ProductQueryDTO;
 import com.by4cloud.platformx.business.entity.Product;
+import com.by4cloud.platformx.business.vo.ProductExcelVO;
 import com.by4cloud.platformx.business.vo.ProductSelectVo;
 import com.by4cloud.platformx.business.vo.ProductTreeVo;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.data.mybatis.IIService;
+import org.springframework.validation.BindingResult;
 
 import java.util.List;
 
@@ -17,4 +20,8 @@
 	List<ProductSelectVo> getProductList(Product product);
 
 	R getProductListByParentId(ProductQueryDTO queryDTO);
+
+    R saveErpProduct(List<ProductAddDTO> addDTOS);
+
+	R importProduct(List<ProductExcelVO> excelVOList, BindingResult bindingResult);
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/StatisticService.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/StatisticService.java
index 11ca185..f3fe005 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/StatisticService.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/StatisticService.java
@@ -1,6 +1,7 @@
 package com.by4cloud.platformx.business.service;
 
 import com.by4cloud.platformx.business.dto.AnalysisCommonDTO;
+import com.by4cloud.platformx.business.dto.HomeQueryDTO;
 import com.by4cloud.platformx.common.core.util.R;
 
 public interface StatisticService {
@@ -33,4 +34,24 @@
 	R agingAnalysisByMarket(AnalysisCommonDTO commonDTO);
 
 	R agingAnalysisTotalScale(AnalysisCommonDTO commonDTO);
+
+    R homeZbjt();
+
+	R homeZgs();
+
+    R homeZbjtFlag();
+
+	R homeContract(HomeQueryDTO queryDTO);
+
+	R homePaymentSlip(HomeQueryDTO queryDTO);
+
+	R homeOutBound(HomeQueryDTO queryDTO);
+
+	R homeInvoice(HomeQueryDTO queryDTO);
+
+	R homeCreditSale(HomeQueryDTO queryDTO);
+
+	R homeOverdue(HomeQueryDTO queryDTO);
+
+	R homeOverdueHis(HomeQueryDTO queryDTO);
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java
index 55db786..fcdd569 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java
@@ -1,16 +1,75 @@
 package com.by4cloud.platformx.business.service.impl;
 
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.util.ObjUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.by4cloud.platformx.business.entity.BusinessCustomer;
+import com.by4cloud.platformx.business.mapper.BipBanklViewMapper;
+import com.by4cloud.platformx.business.mapper.BipViewMapper;
 import com.by4cloud.platformx.business.mapper.BusinessCustomerMapper;
 import com.by4cloud.platformx.business.service.BusinessCustomerService;
+import com.by4cloud.platformx.business.vo.BankNameVo;
+import com.by4cloud.platformx.business.vo.CustBankVo;
+import com.by4cloud.platformx.business.vo.CustInfoVo;
+import com.by4cloud.platformx.common.core.util.R;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+
+import java.util.List;
+
 /**
  * 瀹㈠晢淇℃伅
  *
  * @author platformx
  * @date 2026-05-07 10:13:22
  */
+@Slf4j
+@RequiredArgsConstructor
 @Service
 public class BusinessCustomerServiceImpl extends ServiceImpl<BusinessCustomerMapper, BusinessCustomer> implements BusinessCustomerService {
+
+	private final BipViewMapper bipViewMapper;
+	private final BipBanklViewMapper bipBanklViewMapper;
+
+	@Override
+	public R syncMainBusCus() {
+		List<BusinessCustomer> bcList = baseMapper.selectList(Wrappers.<BusinessCustomer>lambdaQuery().isNull(BusinessCustomer::getCreditCode)
+				.or().isNull(BusinessCustomer::getLegalPerson).or().isNull(BusinessCustomer::getLegalPerson)
+				.or().isNull(BusinessCustomer::getBankName).or().isNull(BusinessCustomer::getBankAccount)
+				.or().isNull(BusinessCustomer::getRegisterName));
+		if (ArrayUtil.isNotEmpty(bcList.toArray())){
+			for (BusinessCustomer bc:bcList
+				 ) {
+				log.info("寮�濮嬪悓姝}淇℃伅",bc.getCompanyName());
+				CustInfoVo custInfo = bipViewMapper.selectBaseInfoByCustName(bc.getCompanyName());
+				if (ObjUtil.isNotNull(custInfo)){
+					bc.setCreditCode(custInfo.getCertificateId());
+					bc.setRegisterName(custInfo.getCustName());
+					bc.setLegalPerson(custInfo.getLegalGerson());
+					bc.setAddress(custInfo.getRegistrationAddress());
+					baseMapper.updateById(bc);
+					log.info("{}鍚屾鍚嶇О銆佹硶浜恒�佸湴鍧�銆佷俊鐢ㄧ爜淇℃伅鎴愬姛",bc.getCompanyName());
+				}
+				CustBankVo bankVo = bipViewMapper.selectBankByCustName(bc.getCompanyName());
+				if (ObjUtil.isNotNull(bankVo)){
+					if (StrUtil.isEmpty(bc.getBankAccount())){
+						bc.setBankAccount(bankVo.getBankAccount());
+						baseMapper.updateById(bc);
+						log.info("{}鍚屾閾惰鍗″彿淇℃伅鎴愬姛",bc.getCompanyName());
+					}
+					BankNameVo bankNameVo = bipBanklViewMapper.selectBankByCode(bankVo.getBankName());
+					if (ObjUtil.isNotNull(bankVo)){
+						bc.setBankName(bankNameVo.getBankNameName());
+						baseMapper.updateById(bc);
+						log.info("{}鍚屾閾惰鍚嶇О淇℃伅鎴愬姛",bc.getCompanyName());
+					}
+				}
+
+			}
+		}
+		return R.ok();
+	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractInvoiceServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractInvoiceServiceImpl.java
index b3e084a..5916741 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractInvoiceServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractInvoiceServiceImpl.java
@@ -20,6 +20,7 @@
 import com.by4cloud.platformx.admin.api.feign.RemoteDeptService;
 import com.by4cloud.platformx.business.api.feign.RemoteFlowProcessService;
 import com.by4cloud.platformx.business.constant.FlowNameEnum;
+import com.by4cloud.platformx.business.dto.ContractInvoiceQueryDTO;
 import com.by4cloud.platformx.business.dto.GenInvoiceInfoDTO;
 import com.by4cloud.platformx.business.entity.*;
 import com.by4cloud.platformx.business.mapper.*;
@@ -27,6 +28,7 @@
 import com.by4cloud.platformx.business.service.PaymentConfirmService;
 import com.by4cloud.platformx.business.vo.*;
 import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.data.mybatis.BaseModel;
 import com.by4cloud.platformx.common.security.util.SecurityUtils;
 import com.by4cloud.platformx.flow.task.dto.ProcessInstanceParamDto;
@@ -674,4 +676,9 @@
 			baseMapper.updateById(blueInvoice);
 		}
 	}
+
+	@Override
+	public Page pageInvoice(Page page, ContractInvoiceQueryDTO queryDTO) {
+		return baseMapper.pageInvoice(page,queryDTO, DataScope.of("comp_id"));
+	}
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractOutBoundServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractOutBoundServiceImpl.java
index f4132a6..1dbc17c 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractOutBoundServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractOutBoundServiceImpl.java
@@ -1,9 +1,12 @@
 package com.by4cloud.platformx.business.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.business.dto.ContractOutBoundQueryDTO;
 import com.by4cloud.platformx.business.entity.ContractOutBound;
 import com.by4cloud.platformx.business.mapper.ContractOutBoundMapper;
 import com.by4cloud.platformx.business.service.ContractOutBoundService;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import org.springframework.stereotype.Service;
 /**
  * 鍚堝悓鍑哄簱
@@ -13,4 +16,8 @@
  */
 @Service
 public class ContractOutBoundServiceImpl extends ServiceImpl<ContractOutBoundMapper, ContractOutBound> implements ContractOutBoundService {
+	@Override
+	public Page pageScope(Page page, ContractOutBoundQueryDTO queryDTO) {
+		return baseMapper.pageScope(page,queryDTO, DataScope.of("comp_id"));
+	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractServiceImpl.java
index 568ae38..b0c589d 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractServiceImpl.java
@@ -113,6 +113,12 @@
 		Contract contract = BeanUtil.copyProperties(addDTO, Contract.class);
 		contract.setPartyBId(SecurityUtils.getUser().getCompId());
 		contract.setPartyB(SecurityUtils.getUser().getCompName());
+		if (StrUtil.isEmpty(addDTO.getPartyA())){
+			BusinessCustomer bc = businessCustomerMapper.selectById(addDTO.getPartyAId());
+			if (ObjUtil.isNotNull(bc)){
+				contract.setPartyA(bc.getCompanyName());
+			}
+		}
 
 		contract.setPaidAmount(new BigDecimal("0"));
 		contract.setBillingStatus("0");
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CreditSalesServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CreditSalesServiceImpl.java
index 465302a..ea79060 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CreditSalesServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CreditSalesServiceImpl.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.by4cloud.platformx.business.dto.CreditSalesQueryDTO;
 import com.by4cloud.platformx.business.mapper.ContractMapper;
+import com.by4cloud.platformx.business.mapper.ContractOutBoundMapper;
 import com.by4cloud.platformx.business.service.CreditSalesService;
 import com.by4cloud.platformx.common.data.datascope.DataScope;
 import lombok.RequiredArgsConstructor;
@@ -18,10 +19,10 @@
 @RequiredArgsConstructor
 public class CreditSalesServiceImpl implements CreditSalesService {
 
-	private final ContractMapper contractMapper;
+	private final ContractOutBoundMapper contractOutBoundMapper;
 
 	@Override
 	public Page page(Page page, CreditSalesQueryDTO queryDTO) {
-		return contractMapper.pageByCredit(page, queryDTO, DataScope.of("comp_id"));
+		return contractOutBoundMapper.pageByCredit(page, queryDTO, DataScope.of("comp_id"));
 	}
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CurrentOverdueServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CurrentOverdueServiceImpl.java
index cbbe6c1..fb99d62 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CurrentOverdueServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/CurrentOverdueServiceImpl.java
@@ -3,10 +3,13 @@
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.business.dto.CurrentOverdueQueryDTO;
 import com.by4cloud.platformx.business.entity.CurrentOverdue;
 import com.by4cloud.platformx.business.mapper.CurrentOverdueMapper;
 import com.by4cloud.platformx.business.service.CurrentOverdueService;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import org.springframework.stereotype.Service;
 /**
  * 鏈叧闂悎鍚�(褰撳墠閫炬湡)
@@ -18,7 +21,7 @@
 public class CurrentOverdueServiceImpl extends ServiceImpl<CurrentOverdueMapper, CurrentOverdue> implements CurrentOverdueService {
 
 	@Override
-	public boolean save(CurrentOverdue entity) {
-		return super.save(entity);
+	public Page pageScope(Page page, CurrentOverdueQueryDTO queryDTO) {
+		return baseMapper.pageScope(page,queryDTO, DataScope.of("comp_id"));
 	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/HistoryOverdueServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/HistoryOverdueServiceImpl.java
index 2da2444..db2144c 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/HistoryOverdueServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/HistoryOverdueServiceImpl.java
@@ -1,9 +1,12 @@
 package com.by4cloud.platformx.business.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.business.dto.HistoryOverdueQueryDTO;
 import com.by4cloud.platformx.business.entity.HistoryOverdue;
 import com.by4cloud.platformx.business.mapper.HistoryOverdueMapper;
 import com.by4cloud.platformx.business.service.HistoryOverdueService;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
 import org.springframework.stereotype.Service;
 /**
  * 鍘嗗彶閫炬湡
@@ -13,4 +16,8 @@
  */
 @Service
 public class HistoryOverdueServiceImpl extends ServiceImpl<HistoryOverdueMapper, HistoryOverdue> implements HistoryOverdueService {
+	@Override
+	public Page pageScope(Page page, HistoryOverdueQueryDTO queryDTO) {
+		return baseMapper.pageScope(page,queryDTO, DataScope.of("comp_id"));
+	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
index 675784b..b8d58e8 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
@@ -84,9 +84,7 @@
 			if (ObjUtil.isNull(contract)) {
 				return R.failed("鍚堝悓鏌ヨ澶辫触锛岃妫�鏌ュ悎鍚岀紪鍙�");
 			}
-			BusinessCustomer customer = businessCustomerService.getOne(Wrappers.<BusinessCustomer>lambdaQuery()
-					.eq(StrUtil.isNotBlank(addDTO.getBusGuestName()), BusinessCustomer::getRegisterName, addDTO.getBusGuestName())
-					.eq(StrUtil.isNotBlank(addDTO.getBusGuestId()), BusinessCustomer::getId, addDTO.getBusGuestId()));
+			BusinessCustomer customer = businessCustomerService.getById(contract.getPartyAId());
 			if (ObjUtil.isNull(customer)) {
 				return R.failed("瀹㈠晢鏌ヨ澶辫触锛岃妫�鏌ュ鍟�");
 			}
@@ -98,8 +96,21 @@
 				lastTotal = lastConfirm.getTotalAmount();
 			}
 
+
 			//杞叆
 			if (StrUtil.equals(addDTO.getInOrOut(), "1")) {
+
+
+				//鏂板浠樻鍗�
+				PaymentSlip slip = new PaymentSlip();
+				slip.setBusGuestId(customer.getId());
+				slip.setBusGuestName(customer.getRegisterName());
+				slip.setPayeeCompId(SecurityUtils.getUser().getCompId());
+				slip.setPaymentTime(addDTO.getConfirmTime());
+				slip.setPaymentAmount(addDTO.getTransationAmount());
+				slip.setPayType(addDTO.getPayType());
+				paymentSlipMapper.insert(slip);
+
 				BigDecimal newtotal = addDTO.getTransationAmount().add(lastTotal);
 				PaymentConfirm entity = new PaymentConfirm();
 				entity.setContractId(contract.getId());
@@ -173,11 +184,8 @@
 								historyOverdue.setPaymentTime(addDTO.getConfirmTime());
 								historyOverdue.setCompId(schedule.getCompId());
 								historyOverdueMapper.insert(historyOverdue);
-								//鏌ヨ鍘嗗彶宸蹭粯閫炬湡閲戦
-								List<HistoryOverdue> historyOverdueList = historyOverdueMapper.selectList(Wrappers.<HistoryOverdue>lambdaQuery().eq(HistoryOverdue::getScheduleId, currentOverdue.getScheduleId()));
-								BigDecimal hisTotal = historyOverdueList.stream().map(item -> item.getReceivableAmount()).reduce(BigDecimal.ZERO, BigDecimal::add);
 								//鏇存柊褰撳墠閫炬湡
-								currentOverdue.setReceivableAmount(schedule.getPlannedAmount().subtract(hisTotal));
+								currentOverdue.setReceivableAmount(schedule.getPlannedAmount().subtract(schedule.getActualAmount()));
 								currentOverdueMapper.updateById(currentOverdue);
 							}
 							break;
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentSlipServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentSlipServiceImpl.java
new file mode 100644
index 0000000..c20cbf0
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentSlipServiceImpl.java
@@ -0,0 +1,18 @@
+package com.by4cloud.platformx.business.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.business.dto.PaymentSlipQueryDTO;
+import com.by4cloud.platformx.business.entity.PaymentSlip;
+import com.by4cloud.platformx.business.mapper.PaymentSlipMapper;
+import com.by4cloud.platformx.business.service.PaymentSlipService;
+import com.by4cloud.platformx.common.data.datascope.DataScope;
+import org.springframework.stereotype.Service;
+
+@Service
+public class PaymentSlipServiceImpl extends ServiceImpl<PaymentSlipMapper, PaymentSlip> implements PaymentSlipService {
+	@Override
+	public Page pageScope(Page page, PaymentSlipQueryDTO queryDTO) {
+		return baseMapper.pageScope(page,queryDTO, DataScope.of("comp_id"));
+	}
+}
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java
index 72ead27..7e8d4a8 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java
@@ -1,25 +1,37 @@
 package com.by4cloud.platformx.business.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.lang.tree.Tree;
 import cn.hutool.core.lang.tree.TreeNode;
 import cn.hutool.core.lang.tree.TreeUtil;
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.util.ObjUtil;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.admin.api.entity.SysDept;
+import com.by4cloud.platformx.business.dto.ProductAddDTO;
 import com.by4cloud.platformx.business.dto.ProductQueryDTO;
 import com.by4cloud.platformx.business.entity.Product;
+import com.by4cloud.platformx.business.entity.TaxCode;
 import com.by4cloud.platformx.business.mapper.ProductMapper;
+import com.by4cloud.platformx.business.mapper.TaxCodeMapper;
 import com.by4cloud.platformx.business.service.ProductService;
+import com.by4cloud.platformx.business.vo.ProductExcelVO;
 import com.by4cloud.platformx.business.vo.ProductSelectVo;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.data.datascope.DataScope;
+import com.by4cloud.platformx.common.excel.vo.ErrorMessage;
 import jakarta.validation.constraints.NotNull;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
+import org.springframework.validation.BindingResult;
 
 
-import java.util.Arrays;
-import java.util.List;
+import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
+import java.util.stream.IntStream;
 
 /**
  * 浜у搧淇℃伅
@@ -28,7 +40,11 @@
  * @date 2026-05-07 10:17:52
  */
 @Service
+@RequiredArgsConstructor
 public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> implements ProductService {
+
+	private final TaxCodeMapper taxCodeMapper;
+
     @Override
     public List<Tree<Long>> treeList() {
         List<TreeNode<Long>> collect = baseMapper
@@ -88,7 +104,7 @@
 
 	@Override
 	public R getProductListByParentId(ProductQueryDTO queryDTO) {
-		String[] erpCodes = new String[]{"鎴跨绉熻祦","dianli","water"};
+		String[] erpCodes = new String[]{"house_rental","electricity_bill","water_bill"};
 //		MPJLambdaWrapper<Product> wrapper = new MPJLambdaWrapper<Product>()
 //				.selectAs("( SELECT count(1) FROM product t1 WHERE t1.parent_id = t.id )",Product::getChildNum)
 //				.selectAll(Product.class)
@@ -102,4 +118,119 @@
 		}
 		return R.ok(selectVos);
 	}
+
+	@Override
+	public R saveErpProduct(List<ProductAddDTO> addDTOS) {
+		if (ArrayUtil.isNotEmpty(addDTOS.toArray())){
+			for (ProductAddDTO addDTO:addDTOS
+				 ) {
+				List<Product> classPro = baseMapper.selectListByScope(Wrappers.<Product>lambdaQuery()
+								.eq(StrUtil.isNotEmpty(addDTO.getErpTypeCode()),Product::getErpCode,addDTO.getErpTypeCode())
+								.eq(StrUtil.isNotEmpty(addDTO.getErpTypeName()),Product::getProductName,addDTO.getErpTypeName())
+						, DataScope.of("comp_id"));
+				if (ArrayUtil.isEmpty(classPro.toArray())){
+					Product product = new Product();
+					product.setProductName(addDTO.getErpTypeName());
+					product.setProductType(addDTO.getSpecification());
+					product.setParentId(0L);
+					product.setParentName("鏍圭骇浜у搧");
+					product.setErpCode(addDTO.getErpTypeCode());
+					TaxCode taxCode = taxCodeMapper.selectOne(Wrappers.<TaxCode>lambdaQuery().eq(TaxCode::getBm,addDTO.getTaxCode()).last("limit 1"));
+					if (ObjUtil.isNotNull(taxCode)){
+						product.setTaxClass(taxCode.getMc());
+						product.setTaxRate(Double.valueOf(taxCode.getSl().replace("%","")));
+					}
+					baseMapper.insert(product);
+					classPro.add(product);
+				}
+				Product product = new Product();
+				product.setProductName(addDTO.getErpName());
+				product.setProductType(addDTO.getSpecification());
+				product.setParentId(classPro.get(0).getId());
+				product.setParentName(classPro.get(0).getProductName());
+				product.setErpCode(addDTO.getErpCode());
+				TaxCode taxCode = taxCodeMapper.selectOne(Wrappers.<TaxCode>lambdaQuery().eq(TaxCode::getBm,addDTO.getTaxCode()).last("limit 1"));
+				if (ObjUtil.isNotNull(taxCode)){
+					product.setTaxClass(taxCode.getMc());
+					product.setTaxRate(Double.valueOf(taxCode.getSl().replace("%","")));
+				}
+				baseMapper.insert(product);
+			}
+		}
+		return R.ok();
+	}
+
+	@Override
+	public R importProduct(List<ProductExcelVO> excelVOList, BindingResult bindingResult) {
+		List<ErrorMessage> errorMessageList = (List<ErrorMessage>) bindingResult.getTarget();
+		if (ArrayUtil.isNotEmpty(excelVOList.toArray())) {
+			List<List<ProductExcelVO>> groups = splitList(excelVOList, 5000);
+			groups.stream().forEach(group->{
+				for (ProductExcelVO addDTO:group
+					 ) {
+					Set<String> errorMsg = new HashSet<>();
+
+					if (StrUtil.isEmpty(addDTO.getErpTypeCode())&&StrUtil.isEmpty(addDTO.getErpTypeName())) {
+						errorMsg.add("浜у搧鍒嗙被淇℃伅娌℃湁");
+					}
+					List<Product> one = this.listByScope(Wrappers.<Product>lambdaQuery().eq(Product::getErpCode, addDTO.getErpCode()));
+					if (ArrayUtil.isNotEmpty(one.toArray())){
+						errorMsg.add("浜у搧erp缂栫爜宸插瓨鍦�");
+					}
+					if (CollUtil.isEmpty(errorMsg)){
+						List<Product> classPro = baseMapper.selectListByScope(Wrappers.<Product>lambdaQuery()
+										.eq(StrUtil.isNotEmpty(addDTO.getErpTypeCode()),Product::getErpCode,addDTO.getErpTypeCode())
+										.eq(StrUtil.isNotEmpty(addDTO.getErpTypeName()),Product::getProductName,addDTO.getErpTypeName())
+								, DataScope.of("comp_id"));
+						if (ArrayUtil.isEmpty(classPro.toArray())){
+							Product product = new Product();
+							product.setProductName(addDTO.getErpTypeName());
+							product.setProductType(addDTO.getSpecification());
+							product.setParentId(0L);
+							product.setParentName("鏍圭骇浜у搧");
+							product.setErpCode(addDTO.getErpTypeCode());
+							TaxCode taxCode = taxCodeMapper.selectOne(Wrappers.<TaxCode>lambdaQuery().eq(TaxCode::getBm,addDTO.getTaxCode()).last("limit 1"));
+							if (ObjUtil.isNotNull(taxCode)){
+								product.setTaxClass(taxCode.getMc());
+								product.setTaxRate(Double.valueOf(taxCode.getSl().replace("%","")));
+							}
+							baseMapper.insert(product);
+							classPro.add(product);
+						}
+						Product product = new Product();
+						product.setProductName(addDTO.getErpName());
+						product.setProductType(addDTO.getSpecification());
+						product.setParentId(classPro.get(0).getId());
+						product.setParentName(classPro.get(0).getProductName());
+						product.setErpCode(addDTO.getErpCode());
+						TaxCode taxCode = taxCodeMapper.selectOne(Wrappers.<TaxCode>lambdaQuery().eq(TaxCode::getBm,addDTO.getTaxCode()).last("limit 1"));
+						if (ObjUtil.isNotNull(taxCode)){
+							product.setTaxClass(taxCode.getMc());
+							product.setTaxRate(Double.valueOf(taxCode.getSl().replace("%","")));
+						}
+						baseMapper.insert(product);
+					}
+				}
+			});
+		}
+		if (CollUtil.isNotEmpty(errorMessageList)) {
+			return R.failed(errorMessageList);
+		}
+		return R.ok();
+	}
+
+	public static <T> List<List<T>> splitList(List<T> list, int batchSize) {
+		if (list == null || list.isEmpty()) {
+			return Collections.emptyList();
+		}
+
+		int totalSize = list.size();
+		// 璁$畻闇�瑕佸垎鎴愬灏戠粍
+		int batchCount = (totalSize + batchSize - 1) / batchSize;
+
+		return IntStream.range(0, batchCount)
+				.mapToObj(i -> list.subList(i * batchSize,
+						Math.min((i + 1) * batchSize, totalSize)))
+				.collect(Collectors.toList());
+	}
 }
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/StatisticServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/StatisticServiceImpl.java
index f6e8736..0956a6f 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/StatisticServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/StatisticServiceImpl.java
@@ -1,28 +1,34 @@
 package com.by4cloud.platformx.business.service.impl;
 
 import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.util.ObjUtil;
 import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.by4cloud.platformx.admin.api.entity.SysDept;
 import com.by4cloud.platformx.admin.api.entity.SysDictItem;
 import com.by4cloud.platformx.admin.api.feign.RemoteDeptService;
 import com.by4cloud.platformx.admin.api.feign.RemoteDictService;
 import com.by4cloud.platformx.business.dto.AgingQueryDTO;
 import com.by4cloud.platformx.business.dto.AnalysisCommonDTO;
-import com.by4cloud.platformx.business.entity.BusinessCustomer;
-import com.by4cloud.platformx.business.mapper.BusinessCustomerMapper;
-import com.by4cloud.platformx.business.mapper.ContractMapper;
-import com.by4cloud.platformx.business.mapper.ContractPaymentScheduleMapper;
+import com.by4cloud.platformx.business.dto.HomeQueryDTO;
+import com.by4cloud.platformx.business.entity.*;
+import com.by4cloud.platformx.business.mapper.*;
 import com.by4cloud.platformx.business.service.StatisticService;
 import com.by4cloud.platformx.business.vo.*;
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.data.datascope.DataScope;
 import com.by4cloud.platformx.common.security.util.SecurityUtils;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.LocalTime;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -35,6 +41,11 @@
 	private final ContractMapper contractMapper;
 	private final ContractPaymentScheduleMapper contractPaymentScheduleMapper;
 	private final BusinessCustomerMapper businessCustomerMapper;
+	private final PaymentSlipMapper paymentSlipMapper;
+	private final ContractOutBoundMapper contractOutBoundMapper;
+	private final ContractInvoiceMapper contractInvoiceMapper;
+	private final CurrentOverdueMapper currentOverdueMapper;
+	private final HistoryOverdueMapper historyOverdueMapper;
 	private final RemoteDeptService remoteDeptService;
 	private final RemoteDictService remoteDictService;
 
@@ -890,4 +901,363 @@
 		result.add(agingAnalysisVo);
 		return R.ok(result);
 	}
+
+	@Override
+	public R homeZbjt() {
+		List<HomeZbjtVo> homeZbjtVoList = new ArrayList<>();
+		//鍚堝悓绛捐 sgb smj jxc tfgs ymj
+		HomeZbjtVo htqd = contractMapper.homeZbjt();
+		homeZbjtVoList.add(htqd);
+		//鍥炴
+		HomeZbjtVo hk = paymentSlipMapper.homeZbjt();
+		homeZbjtVoList.add(hk);
+		//鍑鸿揣
+		HomeZbjtVo ch = contractOutBoundMapper.homeZbjt();
+		homeZbjtVoList.add(ch);
+		//寮�绁�
+		HomeZbjtVo kp = contractInvoiceMapper.homeZbjt();
+		homeZbjtVoList.add(kp);
+		//璧婇攢浜х敓鍊� 浠婂ぉ鍙戣揣鍔犱粖澶╁紑绁ㄩ
+//		if (ObjUtil.isNotNull(ch)&&ObjUtil.isNotNull(kp)){
+//			HomeZbjtVo sxsy = ch.add(kp);
+//			homeZbjtVoList.add(sxsy);
+//		}else if (ObjUtil.isNotNull(ch)&&ObjUtil.isNull(kp)){
+			homeZbjtVoList.add(ch);
+//		}else if (ObjUtil.isNull(ch)&&ObjUtil.isNotNull(kp)){
+//			homeZbjtVoList.add(kp);
+//		}else {
+//			homeZbjtVoList.add(new HomeZbjtVo());
+//		}
+		//璧婇攢绱鍓╀綑鍊� 浠婃棩鍙戣揣涓旀病寮�绁ㄧ殑鍑鸿揣
+		HomeZbjtVo sx = contractOutBoundMapper.homeZbjtSX();
+		homeZbjtVoList.add(sx);
+		HomeZbjtVo yq = currentOverdueMapper.homeZbjt();
+		//閫炬湡绱鍓╀綑 浠婃棩浜х敓閫炬湡 鍚巻鍙�
+		HomeZbjtVo ls = historyOverdueMapper.homeZbjt();
+		if (ObjUtil.isNotNull(ls)&&ObjUtil.isNotNull(yq)){
+			homeZbjtVoList.add(yq.add(ls));
+		}else if (ObjUtil.isNotNull(ls)&&ObjUtil.isNull(yq)){
+			homeZbjtVoList.add(ls);
+		}else if (ObjUtil.isNull(ls)&&ObjUtil.isNotNull(yq)){
+			homeZbjtVoList.add(yq);
+		}else {
+			homeZbjtVoList.add(new HomeZbjtVo());
+		}
+		//閫炬湡浜х敓鍊� 浠婂ぉ浜х敓-浠婂ぉ宸蹭粯
+
+		homeZbjtVoList.add(yq);
+		return R.ok(homeZbjtVoList);
+	}
+
+	@Override
+	public R homeZgs() {
+		List<HomeZgsVo> homeZbjtVoList = new ArrayList<>();
+		//鍚堝悓绛捐 鍗庡寳  瑗垮寳  涓滃寳  娴峰
+		HomeZgsVo htqd = contractMapper.homeZgs(SecurityUtils.getUser().getCompId());
+		homeZbjtVoList.add(htqd);
+		//鍥炴
+		HomeZgsVo hk = paymentSlipMapper.homeZgs(SecurityUtils.getUser().getCompId());
+		homeZbjtVoList.add(hk);
+		//鍑鸿揣
+		HomeZgsVo ch = contractOutBoundMapper.homeZgs(SecurityUtils.getUser().getCompId());
+		homeZbjtVoList.add(ch);
+		//寮�绁�
+		HomeZgsVo kp = contractInvoiceMapper.homeZgs(SecurityUtils.getUser().getCompId());
+		homeZbjtVoList.add(kp);
+		//璧婇攢浜х敓鍊�
+//		if (ObjUtil.isNotNull(ch)&&ObjUtil.isNotNull(kp)){
+//			HomeZgsVo sxsy = ch.add(kp);
+//			homeZbjtVoList.add(sxsy);
+//		}else if (ObjUtil.isNotNull(ch)&&ObjUtil.isNull(kp)){
+			homeZbjtVoList.add(ch);
+//		}else if (ObjUtil.isNull(ch)&&ObjUtil.isNotNull(kp)){
+//			homeZbjtVoList.add(kp);
+//		}else {
+//			homeZbjtVoList.add(new HomeZgsVo());
+//		}
+		//璧婇攢绱鍓╀綑鍊�
+		HomeZgsVo sx = contractOutBoundMapper.homeZgsSX(SecurityUtils.getUser().getCompId());
+		homeZbjtVoList.add(sx);
+
+		HomeZgsVo yq = currentOverdueMapper.homeZgs(SecurityUtils.getUser().getCompId());
+
+		//閫炬湡浜х敓鍊�
+		HomeZgsVo ls = historyOverdueMapper.homeZgs(SecurityUtils.getUser().getCompId());
+		if (ObjUtil.isNotNull(ls)&&ObjUtil.isNotNull(yq)){
+			homeZbjtVoList.add(yq.add(ls));
+		}else if (ObjUtil.isNotNull(ls)&&ObjUtil.isNull(yq)){
+			homeZbjtVoList.add(ls);
+		}else if (ObjUtil.isNull(ls)&&ObjUtil.isNotNull(yq)){
+			homeZbjtVoList.add(yq);
+		}else {
+			homeZbjtVoList.add(new HomeZgsVo());
+		}
+		//閫炬湡绱鍓╀綑
+		homeZbjtVoList.add(yq);
+		return R.ok(homeZbjtVoList);
+	}
+
+	@Override
+	public R homeZbjtFlag() {
+		Long userId = SecurityUtils.getUser().getCompId();
+		List<Long> compIds = new ArrayList<>();
+		compIds.add(Long.valueOf(sgb));
+		compIds.add(Long.valueOf(smj));
+		compIds.add(Long.valueOf(tfgs));
+		compIds.add(Long.valueOf(ymj));
+		compIds.add(Long.valueOf(jxc));
+		if (compIds.contains(userId)){
+			return R.ok(false);
+		};
+		return R.ok(true);
+	}
+
+	@Override
+	public R homeContract(HomeQueryDTO queryDTO) {
+		LocalDateTime now = LocalDateTime.now();
+		LocalDate today = now.toLocalDate();
+		// 寮�濮嬫椂闂达細浠婂ぉ 00:00:00
+		LocalDateTime startOfDay = today.atStartOfDay();
+		// 缁撴潫鏃堕棿锛氫粖澶� 23:59:59.999999999 (鎴栬�呬娇鐢� nextDay 00:00:00 閰嶅悎 lt)
+		LocalDateTime endOfDay = today.atTime(LocalTime.MAX);
+		// --- 鍦烘櫙浜岋細鏌ヨ褰撴湀鏁版嵁 ---
+		// 寮�濮嬫椂闂达細褰撴湀1鍙� 00:00:00
+		LocalDateTime startOfMonth = today.withDayOfMonth(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋鏈堟渶鍚庝竴澶� 23:59:59
+		LocalDateTime endOfMonth = today.withDayOfMonth(today.lengthOfMonth()).atTime(LocalTime.MAX);
+
+		// 寮�濮嬫椂闂达細褰撳勾1鏈�1鍙� 00:00:00
+		LocalDateTime startOfYear = today.withDayOfYear(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋骞�12鏈�31鍙� 23:59:59
+		LocalDateTime endOfYear = today.withDayOfYear(today.lengthOfYear()).atTime(LocalTime.MAX);
+
+		MPJLambdaWrapper<Contract> wrapper = new MPJLambdaWrapper<Contract>()
+		.selectAll(Contract.class)
+				.leftJoin(BusinessCustomer.class,BusinessCustomer::getId,Contract::getPartyAId)
+				.eq(ObjUtil.isNotNull(queryDTO.getQueryCompId()),Contract::getCompId,queryDTO.getQueryCompId())
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),Contract::getSignDate,startOfDay)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),Contract::getSignDate,endOfDay)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),Contract::getSignDate,startOfMonth)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),Contract::getSignDate,endOfMonth)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),Contract::getSignDate,startOfYear)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),Contract::getSignDate,endOfYear)
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryArea()),BusinessCustomer::getAreaId,queryDTO.getQueryArea())
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryServiceAttr()),BusinessCustomer::getExportServiceAttr,queryDTO.getQueryServiceAttr())
+				.orderByDesc(Contract::getCreateTime)
+				;
+		return R.ok(contractMapper.selectList(wrapper));
+	}
+
+	@Override
+	public R homePaymentSlip(HomeQueryDTO queryDTO) {
+		LocalDateTime now = LocalDateTime.now();
+		LocalDate today = now.toLocalDate();
+		// 寮�濮嬫椂闂达細浠婂ぉ 00:00:00
+		LocalDateTime startOfDay = today.atStartOfDay();
+		// 缁撴潫鏃堕棿锛氫粖澶� 23:59:59.999999999 (鎴栬�呬娇鐢� nextDay 00:00:00 閰嶅悎 lt)
+		LocalDateTime endOfDay = today.atTime(LocalTime.MAX);
+		// --- 鍦烘櫙浜岋細鏌ヨ褰撴湀鏁版嵁 ---
+		// 寮�濮嬫椂闂达細褰撴湀1鍙� 00:00:00
+		LocalDateTime startOfMonth = today.withDayOfMonth(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋鏈堟渶鍚庝竴澶� 23:59:59
+		LocalDateTime endOfMonth = today.withDayOfMonth(today.lengthOfMonth()).atTime(LocalTime.MAX);
+
+		// 寮�濮嬫椂闂达細褰撳勾1鏈�1鍙� 00:00:00
+		LocalDateTime startOfYear = today.withDayOfYear(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋骞�12鏈�31鍙� 23:59:59
+		LocalDateTime endOfYear = today.withDayOfYear(today.lengthOfYear()).atTime(LocalTime.MAX);
+		MPJLambdaWrapper<PaymentSlip> wrapper = new MPJLambdaWrapper<PaymentSlip>()
+				.selectAll(PaymentSlip.class)
+				.leftJoin(BusinessCustomer.class,BusinessCustomer::getId,PaymentSlip::getBusGuestId)
+				.eq(ObjUtil.isNotNull(queryDTO.getQueryCompId()),Contract::getCompId,queryDTO.getQueryCompId())
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),PaymentSlip::getPaymentTime,startOfDay)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),PaymentSlip::getPaymentTime,endOfDay)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),PaymentSlip::getPaymentTime,startOfMonth)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),PaymentSlip::getPaymentTime,endOfMonth)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),PaymentSlip::getPaymentTime,startOfYear)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),PaymentSlip::getPaymentTime,endOfYear)
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryArea()),BusinessCustomer::getAreaId,queryDTO.getQueryArea())
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryServiceAttr()),BusinessCustomer::getExportServiceAttr,queryDTO.getQueryServiceAttr())
+				.orderByDesc(PaymentSlip::getCreateTime)
+				;
+		return R.ok(paymentSlipMapper.selectList(wrapper));
+	}
+
+	@Override
+	public R homeOutBound(HomeQueryDTO queryDTO) {
+		LocalDateTime now = LocalDateTime.now();
+		LocalDate today = now.toLocalDate();
+		// 寮�濮嬫椂闂达細浠婂ぉ 00:00:00
+		LocalDateTime startOfDay = today.atStartOfDay();
+		// 缁撴潫鏃堕棿锛氫粖澶� 23:59:59.999999999 (鎴栬�呬娇鐢� nextDay 00:00:00 閰嶅悎 lt)
+		LocalDateTime endOfDay = today.atTime(LocalTime.MAX);
+		// --- 鍦烘櫙浜岋細鏌ヨ褰撴湀鏁版嵁 ---
+		// 寮�濮嬫椂闂达細褰撴湀1鍙� 00:00:00
+		LocalDateTime startOfMonth = today.withDayOfMonth(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋鏈堟渶鍚庝竴澶� 23:59:59
+		LocalDateTime endOfMonth = today.withDayOfMonth(today.lengthOfMonth()).atTime(LocalTime.MAX);
+
+		// 寮�濮嬫椂闂达細褰撳勾1鏈�1鍙� 00:00:00
+		LocalDateTime startOfYear = today.withDayOfYear(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋骞�12鏈�31鍙� 23:59:59
+		LocalDateTime endOfYear = today.withDayOfYear(today.lengthOfYear()).atTime(LocalTime.MAX);
+		MPJLambdaWrapper<ContractOutBound> wrapper = new MPJLambdaWrapper<ContractOutBound>()
+				.selectAll(ContractOutBound.class)
+				.select(Contract::getContractNo)
+				.selectAs(BusinessCustomer::getCompanyName,"busGuestName")
+				.select(ContractSubjectMatter::getUnitPrice)
+				.leftJoin(Contract.class,Contract::getId,ContractOutBound::getContractId)
+				.leftJoin(BusinessCustomer.class,BusinessCustomer::getId,ContractOutBound::getBusGuestId)
+				.leftJoin(ContractSubjectMatter.class, on->
+						on.eq(ContractSubjectMatter::getContractId,ContractOutBound::getContractId)
+								.eq(ContractSubjectMatter::getMaterialCode,ContractOutBound::getSubjectMatterCode)
+				)
+				.eq(ObjUtil.isNotNull(queryDTO.getQueryCompId()),Contract::getCompId,queryDTO.getQueryCompId())
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),ContractOutBound::getOutBoundTime,startOfDay)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),ContractOutBound::getOutBoundTime,endOfDay)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),ContractOutBound::getOutBoundTime,startOfMonth)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),ContractOutBound::getOutBoundTime,endOfMonth)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),ContractOutBound::getOutBoundTime,startOfYear)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),ContractOutBound::getOutBoundTime,endOfYear)
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryArea()),BusinessCustomer::getAreaId,queryDTO.getQueryArea())
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryServiceAttr()),BusinessCustomer::getExportServiceAttr,queryDTO.getQueryServiceAttr())
+				.orderByDesc(ContractOutBound::getCreateTime)
+				;
+		return R.ok(contractOutBoundMapper.selectJoinList(HomeOutBoundVo.class,wrapper));
+	}
+
+	@Override
+	public R homeInvoice(HomeQueryDTO queryDTO) {
+		LocalDateTime now = LocalDateTime.now();
+		LocalDate today = now.toLocalDate();
+		// 寮�濮嬫椂闂达細浠婂ぉ 00:00:00
+		LocalDateTime startOfDay = today.atStartOfDay();
+		// 缁撴潫鏃堕棿锛氫粖澶� 23:59:59.999999999 (鎴栬�呬娇鐢� nextDay 00:00:00 閰嶅悎 lt)
+		LocalDateTime endOfDay = today.atTime(LocalTime.MAX);
+		// --- 鍦烘櫙浜岋細鏌ヨ褰撴湀鏁版嵁 ---
+		// 寮�濮嬫椂闂达細褰撴湀1鍙� 00:00:00
+		LocalDateTime startOfMonth = today.withDayOfMonth(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋鏈堟渶鍚庝竴澶� 23:59:59
+		LocalDateTime endOfMonth = today.withDayOfMonth(today.lengthOfMonth()).atTime(LocalTime.MAX);
+
+		// 寮�濮嬫椂闂达細褰撳勾1鏈�1鍙� 00:00:00
+		LocalDateTime startOfYear = today.withDayOfYear(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋骞�12鏈�31鍙� 23:59:59
+		LocalDateTime endOfYear = today.withDayOfYear(today.lengthOfYear()).atTime(LocalTime.MAX);
+		MPJLambdaWrapper<ContractInvoice> wrapper = new MPJLambdaWrapper<ContractInvoice>()
+				.selectAll(ContractInvoice.class)
+				.select(Contract::getContractNo)
+				.selectAs(BusinessCustomer::getCompanyName,"busGuestName")
+				.leftJoin(Contract.class,Contract::getId,ContractInvoice::getContractId)
+				.leftJoin(BusinessCustomer.class,BusinessCustomer::getId,Contract::getPartyAId)
+				.eq(ObjUtil.isNotNull(queryDTO.getQueryCompId()),Contract::getCompId,queryDTO.getQueryCompId())
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),ContractInvoice::getInvoiceTime,startOfDay)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),ContractInvoice::getInvoiceTime,endOfDay)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),ContractInvoice::getInvoiceTime,startOfMonth)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),ContractInvoice::getInvoiceTime,endOfMonth)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),ContractInvoice::getInvoiceTime,startOfYear)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),ContractInvoice::getInvoiceTime,endOfYear)
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryArea()),BusinessCustomer::getAreaId,queryDTO.getQueryArea())
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryServiceAttr()),BusinessCustomer::getExportServiceAttr,queryDTO.getQueryServiceAttr())
+				.orderByDesc(ContractInvoice::getCreateTime)
+				;
+		return R.ok(contractInvoiceMapper.selectJoinList(HomeInvoiceVo.class,wrapper));
+	}
+
+	@Override
+	public R homeCreditSale(HomeQueryDTO queryDTO) {
+		LocalDateTime now = LocalDateTime.now();
+		LocalDate today = now.toLocalDate();
+		// 寮�濮嬫椂闂达細浠婂ぉ 00:00:00
+		LocalDateTime startOfDay = today.atStartOfDay();
+		// 缁撴潫鏃堕棿锛氫粖澶� 23:59:59.999999999 (鎴栬�呬娇鐢� nextDay 00:00:00 閰嶅悎 lt)
+		LocalDateTime endOfDay = today.atTime(LocalTime.MAX);
+		// --- 鍦烘櫙浜岋細鏌ヨ褰撴湀鏁版嵁 ---
+		// 寮�濮嬫椂闂达細褰撴湀1鍙� 00:00:00
+		LocalDateTime startOfMonth = today.withDayOfMonth(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋鏈堟渶鍚庝竴澶� 23:59:59
+		LocalDateTime endOfMonth = today.withDayOfMonth(today.lengthOfMonth()).atTime(LocalTime.MAX);
+
+		// 寮�濮嬫椂闂达細褰撳勾1鏈�1鍙� 00:00:00
+		LocalDateTime startOfYear = today.withDayOfYear(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋骞�12鏈�31鍙� 23:59:59
+		LocalDateTime endOfYear = today.withDayOfYear(today.lengthOfYear()).atTime(LocalTime.MAX);
+		MPJLambdaWrapper<ContractOutBound> wrapper = new MPJLambdaWrapper<ContractOutBound>()
+				.selectAll(ContractOutBound.class)
+				.select(Contract::getContractNo)
+				.selectAs(BusinessCustomer::getCompanyName,"busGuestName")
+				.select(ContractSubjectMatter::getUnitPrice)
+				.leftJoin(Contract.class,Contract::getId,ContractOutBound::getContractId)
+				.leftJoin(BusinessCustomer.class,BusinessCustomer::getId,Contract::getPartyAId)
+				.leftJoin(ContractSubjectMatter.class, on->
+						on.eq(ContractSubjectMatter::getContractId,ContractOutBound::getContractId)
+						.eq(ContractSubjectMatter::getMaterialCode,ContractOutBound::getSubjectMatterCode)
+				)
+				.eq(ObjUtil.isNotNull(queryDTO.getQueryCompId()),Contract::getCompId,queryDTO.getQueryCompId())
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),ContractOutBound::getOutBoundTime,startOfDay)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),ContractOutBound::getOutBoundTime,endOfDay)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),ContractOutBound::getOutBoundTime,startOfMonth)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),ContractOutBound::getOutBoundTime,endOfMonth)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),ContractOutBound::getOutBoundTime,startOfYear)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),ContractOutBound::getOutBoundTime,endOfYear)
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryArea()),BusinessCustomer::getAreaId,queryDTO.getQueryArea())
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryServiceAttr()),BusinessCustomer::getExportServiceAttr,queryDTO.getQueryServiceAttr())
+				.orderByDesc(ContractOutBound::getCreateTime)
+				;
+		return R.ok(contractOutBoundMapper.selectJoinList(HomeCreditSaleVo.class,wrapper));
+	}
+
+	@Override
+	public R homeOverdue(HomeQueryDTO queryDTO) {
+		LocalDateTime now = LocalDateTime.now();
+		LocalDate today = now.toLocalDate();
+		// 寮�濮嬫椂闂达細浠婂ぉ 00:00:00
+		LocalDateTime startOfDay = today.atStartOfDay();
+		// 缁撴潫鏃堕棿锛氫粖澶� 23:59:59.999999999 (鎴栬�呬娇鐢� nextDay 00:00:00 閰嶅悎 lt)
+		LocalDateTime endOfDay = today.atTime(LocalTime.MAX);
+		// --- 鍦烘櫙浜岋細鏌ヨ褰撴湀鏁版嵁 ---
+		// 寮�濮嬫椂闂达細褰撴湀1鍙� 00:00:00
+		LocalDateTime startOfMonth = today.withDayOfMonth(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋鏈堟渶鍚庝竴澶� 23:59:59
+		LocalDateTime endOfMonth = today.withDayOfMonth(today.lengthOfMonth()).atTime(LocalTime.MAX);
+
+		// 寮�濮嬫椂闂达細褰撳勾1鏈�1鍙� 00:00:00
+		LocalDateTime startOfYear = today.withDayOfYear(1).atStartOfDay();
+		// 缁撴潫鏃堕棿锛氬綋骞�12鏈�31鍙� 23:59:59
+		LocalDateTime endOfYear = today.withDayOfYear(today.lengthOfYear()).atTime(LocalTime.MAX);
+		MPJLambdaWrapper<CurrentOverdue> wrapper = new MPJLambdaWrapper<CurrentOverdue>()
+				.selectAll(CurrentOverdue.class)
+				.select(Contract::getContractNo)
+				.selectAs(BusinessCustomer::getCompanyName,"busGuestName")
+				.leftJoin(BusinessCustomer.class,BusinessCustomer::getId,CurrentOverdue::getBusGuestId)
+				.leftJoin(Contract.class,Contract::getId,CurrentOverdue::getContractId)
+				.eq(ObjUtil.isNotNull(queryDTO.getQueryCompId()),Contract::getCompId,queryDTO.getQueryCompId())
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),CurrentOverdue::getContractExpirTime,startOfDay)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"1"),CurrentOverdue::getContractExpirTime,endOfDay)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),CurrentOverdue::getContractExpirTime,startOfMonth)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"2"),CurrentOverdue::getContractExpirTime,endOfMonth)
+				.ge(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),CurrentOverdue::getContractExpirTime,startOfYear)
+				.le(StrUtil.isNotEmpty(queryDTO.getQueryType())&&StrUtil.equals(queryDTO.getQueryType(),"3"),CurrentOverdue::getContractExpirTime,endOfYear)
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryArea()),BusinessCustomer::getAreaId,queryDTO.getQueryArea())
+				.eq(StrUtil.isNotEmpty(queryDTO.getQueryServiceAttr()),BusinessCustomer::getExportServiceAttr,queryDTO.getQueryServiceAttr())
+				.orderByDesc(CurrentOverdue::getCreateTime)
+				;
+		return R.ok(currentOverdueMapper.selectJoinList(HomeOverdueVo.class,wrapper));
+	}
+
+	@Override
+	public R homeOverdueHis(HomeQueryDTO queryDTO) {
+		List<HomeOverdueStaVo> homeOverdueVos = new ArrayList<>();
+		HomeOverdueStaVo current = currentOverdueMapper.selectCurrentOverdue(queryDTO);
+		if (ObjUtil.isNotNull(current)){
+			current.setOverdueType("褰撳墠");
+			homeOverdueVos.add(current);
+		}
+		HomeOverdueStaVo history = historyOverdueMapper.selectHistoryOverdue(queryDTO);
+		if (ObjUtil.isNotNull(history)){
+			history.setOverdueType("鍘嗗彶");
+			homeOverdueVos.add(history);
+		}
+		return R.ok(homeOverdueVos);
+	}
 }
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/AESCFBUtils.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/AESCFBUtils.java
index 4a93c66..ee483bb 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/AESCFBUtils.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/AESCFBUtils.java
@@ -41,10 +41,10 @@
 	}
 
 	public static void main(String[] args) throws Exception {
-//		System.out.println(encrypt("123456","pigxpigxpigxpigx"));
+//		System.out.println(encrypt("admin12!@","pigxpigxpigxpigx"));
 		// 鎴栬�呰嚜瀹氫箟 WorkerId 鍜� DataCenterId
 		Snowflake snowflake = IdUtil.createSnowflake(1, 1);
-		for (int i = 0; i < 1150; i++) {
+		for (int i = 0; i < 13; i++) {
 			System.out.println(snowflake.nextId());
 		}
 	}
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/ContractInvoiceMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/ContractInvoiceMapper.xml
index 248b9e0..a1eecf0 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/ContractInvoiceMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/ContractInvoiceMapper.xml
@@ -7,7 +7,7 @@
         <id property="id" column="id"/>
         <result property="compId" column="comp_id"/>
         <result property="contractId" column="contract_id"/>
-        <result property="invoicePrice" column="invoice_price"/>
+        <result property="invoicePrice" column="invoice_total_price_tax"/>
         <result property="invoiceTime" column="invoice_time"/>
         <result property="invoicePath" column="invoice_path"/>
 	  	<result property="invoiceCategory" column="invoice_category"/>
@@ -18,4 +18,594 @@
         <result property="updateTime" column="update_time"/>
         <result property="delFlag" column="del_flag"/>
   </resultMap>
+    <select id="homeZbjt" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) sgbbr,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) smjbr,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) jxcbr,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) tfbr,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) ymjbr,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+		(
+		SELECT
+		sum(ci.invoice_total_price_tax)
+		FROM
+		contract_invoice ci
+		WHERE
+		ci.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+    <select id="homeZgs" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hbbr,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '6'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xbbr,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '6'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '1'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) dbbr,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '1'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '1'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '3'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= CURDATE()
+			  AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hdbr,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '3'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '3'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '4'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= CURDATE()
+			  AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) znbr,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '4'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '4'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '5'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= CURDATE()
+			  AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xnbr,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '5'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+		(
+			SELECT
+				sum( ci.invoice_total_price_tax )
+			FROM
+				contract_invoice ci,
+				contract c,
+				business_customer bc
+			WHERE
+				ci.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND c.del_flag = '0'
+			  AND ci.contract_id = c.id
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '5'
+			  AND ci.comp_id = #{compId}
+			  AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.export_service_attr = '2'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= CURDATE()
+		AND ci.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hwbr,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.export_service_attr = '2'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+		(
+		SELECT
+		sum( ci.invoice_total_price_tax )
+		FROM
+		contract_invoice ci,
+		contract c,
+		business_customer bc
+		WHERE
+		ci.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND ci.contract_id = c.id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		  AND ci.comp_id = #{compId}
+		AND ci.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ci.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
+	</select>
+    <select id="pageInvoice" resultType="com.by4cloud.platformx.business.vo.HomeInvoiceVo">
+		SELECT
+		t.id,
+		t.contract_id,
+		t.invoice_category,
+		t.invoice_total_price,
+		t.invoice_total_tax,
+		t.invoice_total_price_tax,
+		t.invoice_time,
+		t.invoice_status,
+		t.invoice_path,
+		t.out_bound_id,
+		t.invoice_preview_param,
+		t.red_reversal,
+		t.invoice_no,
+		t.serial_no,
+		t.tex_no,
+		t.seller_tax_name,
+		t.buyer_tax_name,
+		t.invoice_preview,
+		t.approval_status,
+		t.blue_invoice_id,
+		t.bip_push,
+		t.bip_id,
+		t.bip_body,
+		t.create_by,
+		t.update_by,
+		t.create_time,
+		t.update_time,
+		t.del_flag,
+		t.comp_id,
+		t1.contract_no,
+		t2.company_name AS busGuestName,
+		t1.partyB
+		FROM
+		contract_invoice t
+		LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+		LEFT JOIN business_customer t2 ON ( t2.id = t1.party_a_id AND t2.del_flag = '0' )
+		WHERE
+		t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.invoiceCategory !=null and queryDTO.invoiceCategory !=''">
+			AND t.invoice_category =  #{queryDTO.invoiceCategory}
+		</if>
+		<if test="queryDTO.contractNo !=null and queryDTO.contractNo !=''">
+			AND t1.contract_no LIKE CONCAT('%', #{queryDTO.contractNo}, '%')
+		</if>
+		<if test="queryDTO.partyA !=null and queryDTO.partyA !=''">
+			AND t2.company_name LIKE CONCAT('%', #{queryDTO.partyA}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.invoice_time &gt;= CURDATE()
+			AND  t.invoice_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.invoice_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.invoice_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.invoice_time &gt;=  #{queryDTO.startTime}
+			AND  t.invoice_time &lt;=  #{queryDTO.endTime}
+		</if>
+		ORDER BY
+		t.create_time DESC
+	</select>
 </mapper>
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
index f21b81e..12793f6 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
@@ -57,6 +57,7 @@
 		) - IFNULL( t.billing_amout, 0 )) creditAmount
 		FROM
 		contract t
+		LEFT JOIN business_customer t1 ON ( t1.id = t.bus_guest_id AND t1.del_flag = '0' )
 		WHERE
 		(
 		IFNULL( t.billing_amout, 0 )&lt;(
@@ -72,6 +73,28 @@
 		</if>
 		<if test="queryDTO.partyA !=null and queryDTO.partyA !=''">
 			and t.party_a LIKE CONCAT('%', #{queryDTO.partyA}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t1.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t1.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.payment_time &gt;= CURDATE()
+			AND  t.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.payment_time &gt;=  #{queryDTO.startTime}
+			AND  t.payment_time &lt;=  #{queryDTO.endTime}
 		</if>
 		<if test="queryDTO.productNames !=null and queryDTO.productNames !=''">
 			and (SELECT GROUP_CONCAT(DISTINCT t1.material_internal_name) from contract_subject_matter t1 WHERE t1.contract_id = t.id) LIKE CONCAT('%', #{queryDTO.productNames}, '%')
@@ -1010,71 +1033,45 @@
 	</select>
     <select id="pageScope" resultType="com.by4cloud.platformx.business.vo.ContractPageVo">
 		SELECT
-			id,
-			contract_no,
-			contract_name,
-			party_a_id,
-			party_a,
-			party_b_id,
-			party_b,
-			amount,
-			currency,
-			contract_type,
-			supply_attribute,
-			contract_status,
-			contract_attribute,
-			sign_date,
-			sign_place,
-			effective_date,
-			delivery_cycle,
-			expiration_date,
-			attachment_url,
-			remark,
-			parent_id,
-			approve_time,
-			arrival_schedule_id,
-			accept_schedule_id,
-			erp_push_flag,
-			billing_status,
-			billing_amout,
-			next_schedule_name,
-			template_id,
-			sales_model,
-			paid_amount,
-			contract_category,
-			exec_frequency,
-			exec_times,
-			exec_day,
-			environment,
-			standard,
-			use_month,
-			after_ship_month,
-			ship_method,
-			ship_address,
-			packaging,
-			repair_period,
-			repair_breach_amount,
-			goods_short,
-			goods_short_breach_amount,
-			overdue_breach_amount,
-			terminate_contract,
-			court,
-			contract_attchment,
-			city,
-			region,
-			invoice_notice,
-			contract_tax,
-			create_by,
-			update_by,
-			create_time,
-			update_time,
-			del_flag,
-			comp_id,
+			c.id,
+			c.contract_no,
+			c.contract_name,
+			c.party_a_id,
+			c.party_a,
+			c.party_b_id,
+			c.party_b,
+			c.amount,
+			c.contract_type,
+			c.supply_attribute,
+			c.contract_status,
+			c.contract_attribute,
+			c.sign_date,
+			c.sign_place,
+			c.effective_date,
+			c.delivery_cycle,
+			c.expiration_date,
+			c.attachment_url,
+			c.remark,
+			c.parent_id,
+			c.approve_time,
+			c.arrival_schedule_id,
+			c.accept_schedule_id,
+			c.billing_status,
+			c.billing_amout,
+			c.template_id,
+			c.sales_model,
+			c.paid_amount,
+			c.contract_category,
+			c.exec_frequency,
+			c.comp_id,
 			(select sum(delivered_quantity*unit_price) from contract_subject_matter csm where csm.contract_id = c.id) outAmount
 			FROM
-		contract c
+		contract c,
+		business_customer bc
 		WHERE
-			del_flag = '0'
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
 		<if test="queryDTO.contractName !=null and queryDTO.contractName !=''">
 			AND contract_name LIKE CONCAT('%', #{queryDTO.contractName}, '%')
 		</if>
@@ -1084,7 +1081,482 @@
 		<if test="queryDTO.contractStatus !=null and queryDTO.contractStatus !=''">
 			AND contract_status =  #{queryDTO.contractStatus}
 		</if>
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND c.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND bc.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND bc.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND c.sign_date &gt;= CURDATE()
+			AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND c.sign_date &gt;=  #{queryDTO.startTime}
+			AND c.sign_date &lt;=  #{queryDTO.endTime}
+		</if>
 		ORDER BY
-			create_time DESC
+			c.create_time DESC
+	</select>
+    <select id="homeZbjt" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND c.sign_date &gt;= CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) sgbbr,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND c.sign_date &gt;= CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) smjbr,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND c.sign_date &gt;=CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) jxcbr,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND c.sign_date &gt;=CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) tfbr,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND c.sign_date &gt;=CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) ymjbr,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+		(
+		SELECT
+		sum( c.amount )
+		FROM
+		contract c
+		WHERE
+		c.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND c.sign_date &gt;=DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+    <select id="homeZgs" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hbbr,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '6'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xbbr,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '6'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '6'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '1'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) dbbr,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '1'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '1'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '5'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= CURDATE()
+			  AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xnbr,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '5'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '5'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '4'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= CURDATE()
+			  AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) znbr,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '4'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '4'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '3'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= CURDATE()
+			  AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hdbr,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '3'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+		(
+			SELECT
+				sum(c.amount)
+			FROM
+				contract c,
+				business_customer bc
+			WHERE
+				c.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = c.party_a_id
+			  AND bc.area_id = '3'
+			  AND c.comp_id = #{compId}
+			  AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.export_service_attr = '2'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= CURDATE()
+		AND c.sign_date &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hwbr,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.export_service_attr = '2'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+		(
+		SELECT
+		sum(c.amount)
+		FROM
+		contract c,
+		business_customer bc
+		WHERE
+		c.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = c.party_a_id
+		AND bc.export_service_attr = '2'
+	  	AND c.comp_id = #{compId}
+		AND c.sign_date &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND c.sign_date &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
 	</select>
 </mapper>
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/ContractOutBoundMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/ContractOutBoundMapper.xml
index f50d5db..113390f 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/ContractOutBoundMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/ContractOutBoundMapper.xml
@@ -23,4 +23,1374 @@
         <result property="updateTime" column="update_time"/>
         <result property="delFlag" column="del_flag"/>
   </resultMap>
+    <select id="homeZbjt" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556196124250113
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) sgbbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556196124250113
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556196124250113
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056555602756063234
+		 <!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) smjbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056555602756063234
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056555602756063234
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556317461270529
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) jxcbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556317461270529
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556317461270529
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556421857497090
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) tfbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556421857497090
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556421857497090
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556535640576002
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) ymjbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556535640576002
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556535640576002
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+    <select id="homeZbjtSX" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+		(
+		SELECT
+		SUM(
+		csm.unit_price * ( cob.out_bound_num - cob.invoice_num ))
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556196124250113
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) sgbbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556196124250113
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556196124250113
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056555602756063234
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) smjbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056555602756063234
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056555602756063234
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556317461270529
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) jxcbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556317461270529
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556317461270529
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556421857497090
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) tfbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556421857497090
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556421857497090
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556535640576002
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) ymjbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556535640576002
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm
+		WHERE
+		cob.del_flag = '0'
+		AND csm.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = 2056556535640576002
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+    <select id="homeZgs" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		AND cob.subject_matter_code = csm.material_code
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) hbbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		AND cob.subject_matter_code = csm.material_code
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND bc.area_id = '2'
+		AND cob.subject_matter_code = csm.material_code
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '6'
+		  AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) xbbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '6'
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '6'
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '1'
+		  AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) dbbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '1'
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '1'
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '3'
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) hdbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '3'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '3'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '4'
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) znbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '4'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '4'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '5'
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) xnbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '5'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '5'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.export_service_attr = '2'
+		  AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) hwbr,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.export_service_attr = '2'
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+		(
+		SELECT
+		sum( csm.unit_price * cob.out_bound_num )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.export_service_attr = '2'
+		  AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
+	</select>
+	<select id="homeZgsSX" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND bc.area_id = '2'
+				  AND cob.subject_matter_code = csm.material_code
+				  AND cob.comp_id = #{compId}
+				  <!--  AND cob.out_bound_time &gt;= CURDATE() -->
+				  AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) hbbr,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND bc.area_id = '2'
+				  AND cob.subject_matter_code = csm.material_code
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND bc.area_id = '2'
+				  AND cob.subject_matter_code = csm.material_code
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.area_id = '6'
+				  AND cob.comp_id = #{compId}
+				  <!--  AND cob.out_bound_time &gt;= CURDATE() -->
+				  AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) xbbr,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.area_id = '6'
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.area_id = '6'
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.area_id = '1'
+				  AND cob.comp_id = #{compId}
+				  <!--  AND cob.out_bound_time &gt;= CURDATE() -->
+				  AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) dbbr,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.area_id = '1'
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ))
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.area_id = '1'
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '3'
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) hdbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '3'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ))
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '3'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '4'
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) znbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '4'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ))
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '4'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '5'
+		AND cob.comp_id = #{compId}
+		<!--  AND cob.out_bound_time &gt;= CURDATE() -->
+		AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) xnbr,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '5'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+		(
+		SELECT
+		sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ))
+		FROM
+		contract_out_bound cob,
+		contract_subject_matter csm,
+		contract c,
+		business_customer bc
+		WHERE
+		cob.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND c.del_flag = '0'
+		AND cob.contract_id = csm.contract_id
+		AND bc.id = c.party_a_id
+		AND cob.subject_matter_code = csm.material_code
+		AND bc.area_id = '5'
+		AND cob.comp_id = #{compId}
+		AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.export_service_attr = '2'
+				  AND cob.comp_id = #{compId}
+				  <!--  AND cob.out_bound_time &gt;= CURDATE() -->
+				  AND cob.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )) hwbr,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.export_service_attr = '2'
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+			(
+				SELECT
+					sum( csm.unit_price * ( cob.out_bound_num - cob.invoice_num ) )
+				FROM
+					contract_out_bound cob,
+					contract_subject_matter csm,
+					contract c,
+					business_customer bc
+				WHERE
+					cob.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND c.del_flag = '0'
+				  AND cob.contract_id = csm.contract_id
+				  AND bc.id = c.party_a_id
+				  AND cob.subject_matter_code = csm.material_code
+				  AND bc.export_service_attr = '2'
+				  AND cob.comp_id = #{compId}
+				  AND cob.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND cob.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
+	</select>
+    <select id="pageScope" resultType="com.by4cloud.platformx.business.vo.HomeOutBoundVo">
+		SELECT
+		t.id,
+		t.out_bound_id,
+		t.contract_id,
+		t.contract_name,
+		t.bus_guest_name,
+		t.bus_guest_id,
+		t.subject_matter_name,
+		t.subject_matter_code,
+		t.out_bound_num,
+		t.out_bound_time,
+		t.out_bound_att_names,
+		t.out_bound_att_paths,
+		t.arrival_time,
+		t.arrival_att_names,
+		t.arrival_att_paths,
+		t.invoice_status,
+		t.invoice_num,
+		t.create_by,
+		t.update_by,
+		t.create_time,
+		t.update_time,
+		t.del_flag,
+		t.comp_id,
+		t1.contract_no,
+		t2.company_name AS busGuestName,
+		t3.unit_price
+		FROM
+		contract_out_bound t
+		LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+		LEFT JOIN business_customer t2 ON ( t2.id = t.bus_guest_id AND t2.del_flag = '0' )
+		LEFT JOIN contract_subject_matter t3 ON t3.contract_id = t.contract_id
+		AND t3.material_code = t.subject_matter_code
+		AND t3.del_flag = '0'
+		WHERE
+		t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.contractNo !=null and queryDTO.contractNo !=''">
+			AND t1.contract_no LIKE CONCAT('%', #{queryDTO.contractNo}, '%')
+		</if>
+		<if test="queryDTO.busGuestName !=null and queryDTO.busGuestName !=''">
+			AND t2.company_name LIKE CONCAT('%', #{queryDTO.busGuestName}, '%')
+		</if>
+		<if test="queryDTO.subjectMatterCode !=null and queryDTO.subjectMatterCode !=''">
+			AND t2.subject_matter_code LIKE CONCAT('%', #{queryDTO.subjectMatterCode}, '%')
+		</if>
+		<if test="queryDTO.subjectMatterName !=null and queryDTO.subjectMatterName !=''">
+			AND t.subject_matter_name LIKE CONCAT('%', #{queryDTO.subjectMatterName}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.out_bound_time &gt;= CURDATE()
+			AND  t.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.out_bound_time &gt;=  #{queryDTO.startTime}
+			AND  t.out_bound_time &lt;=  #{queryDTO.endTime}
+		</if>
+		ORDER BY
+		t.create_time DESC
+	</select>
+    <select id="pageByCredit" resultType="com.by4cloud.platformx.business.vo.HomeOutBoundVo">
+		SELECT
+		t.id,
+		t.out_bound_id,
+		t.contract_id,
+		t.contract_name,
+		t.bus_guest_name,
+		t.bus_guest_id,
+		t.subject_matter_name,
+		t.subject_matter_code,
+		t.out_bound_num,
+		t.out_bound_time,
+		t.out_bound_att_names,
+		t.out_bound_att_paths,
+		t.arrival_time,
+		t.arrival_att_names,
+		t.arrival_att_paths,
+		t.invoice_status,
+		t.invoice_num,
+		t.create_by,
+		t.update_by,
+		t.create_time,
+		t.update_time,
+		t.del_flag,
+		t.comp_id,
+		t1.contract_no,
+		t2.company_name AS busGuestName,
+		t3.unit_price
+		FROM
+		contract_out_bound t
+		LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+		LEFT JOIN business_customer t2 ON ( t2.id = t.bus_guest_id AND t2.del_flag = '0' )
+		LEFT JOIN contract_subject_matter t3 ON t3.contract_id = t.contract_id
+		AND t3.material_code = t.subject_matter_code
+		AND t3.del_flag = '0'
+		WHERE
+		t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.contractNo !=null and queryDTO.contractNo !=''">
+			AND t1.contract_no LIKE CONCAT('%', #{queryDTO.contractNo}, '%')
+		</if>
+		<if test="queryDTO.busGuestName !=null and queryDTO.busGuestName !=''">
+			AND t2.company_name LIKE CONCAT('%', #{queryDTO.busGuestName}, '%')
+		</if>
+		<if test="queryDTO.subjectMatterCode !=null and queryDTO.subjectMatterCode !=''">
+			AND t2.subject_matter_code LIKE CONCAT('%', #{queryDTO.subjectMatterCode}, '%')
+		</if>
+		<if test="queryDTO.subjectMatterName !=null and queryDTO.subjectMatterName !=''">
+			AND t.subject_matter_name LIKE CONCAT('%', #{queryDTO.subjectMatterName}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.out_bound_time &gt;= CURDATE()
+			AND  t.out_bound_time &lt; DATE_ADD( CURDATE(), INTERVAL -6 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.out_bound_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.out_bound_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.out_bound_time &gt;=  #{queryDTO.startTime}
+			AND  t.out_bound_time &lt;=  #{queryDTO.endTime}
+		</if>
+		ORDER BY
+		t.create_time DESC
+	</select>
 </mapper>
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/CurrentOverdueMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/CurrentOverdueMapper.xml
index c867ffc..5b1cfc1 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/CurrentOverdueMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/CurrentOverdueMapper.xml
@@ -8,7 +8,7 @@
         <result property="compId" column="comp_id"/>
         <result property="busGuestId" column="bus_guest_id"/>
         <result property="busGuestName" column="bus_guest_name"/>
-        <result property="contractExpirTime" column="contract_expir_time"/>
+        <result property="contractExpirTime" column="create_time"/>
         <result property="contractId" column="contract_id"/>
         <result property="contractName" column="contract_name"/>
         <result property="overdueDuration" column="overdue_duration"/>
@@ -19,4 +19,544 @@
         <result property="updateTime" column="update_time"/>
         <result property="delFlag" column="del_flag"/>
   </resultMap>
+    <select id="homeZbjt" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) sgbbr,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) smjbr,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) jxcbr,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) tfbr,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) ymjbr,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+		(
+		SELECT
+		sum(co.receivable_amount)
+		FROM
+		current_overdue co
+		WHERE
+		co.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+    <select id="homeZgs" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '2'
+		AND co.comp_id = #{compId}
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hbbr,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '2'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '2'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '6'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xbbr,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '6'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '6'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '1'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) dbbr,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '1'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.area_id = '1'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '3'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= CURDATE()
+			  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hdbr,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '3'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '3'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '4'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= CURDATE()
+			  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) znbr,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '4'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '4'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '5'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= CURDATE()
+			  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xnbr,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '5'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+		(
+			SELECT
+				sum( co.receivable_amount )
+			FROM
+				current_overdue co,
+				business_customer bc
+			WHERE
+				co.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = co.bus_guest_id
+			  AND bc.area_id = '5'
+			  AND co.comp_id = #{compId}
+			  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.export_service_attr = '2'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= CURDATE()
+		AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hwbr,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.export_service_attr = '2'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+		(
+		SELECT
+		sum( co.receivable_amount )
+		FROM
+		current_overdue co,
+		business_customer bc
+		WHERE
+		co.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = co.bus_guest_id
+		AND bc.export_service_attr = '2'
+		  AND co.comp_id = #{compId}
+		AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
+	</select>
+    <select id="pageScope" resultType="com.by4cloud.platformx.business.vo.HomeOverdueVo">
+		SELECT
+			t.id,
+			t.bus_guest_name,
+			t.bus_guest_id,
+			t.contract_name,
+			t.contract_id,
+			t.receivable_amount,
+			t.schedule_id,
+			t.schedule_name,
+			t.contract_expir_time,
+			t.overdue_duration,
+		    t1.contract_no,
+			t.comp_id
+		FROM
+			current_overdue t
+				LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+				LEFT JOIN business_customer t2 ON ( t2.id = t.bus_guest_id AND t2.del_flag = '0' )
+		WHERE
+			t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.contractNo !=null and queryDTO.contractNo !=''">
+			AND t1.contract_no LIKE CONCAT('%', #{queryDTO.contractNo}, '%')
+		</if>
+		<if test="queryDTO.busGuestName !=null and queryDTO.busGuestName !=''">
+			AND t2.company_name LIKE CONCAT('%', #{queryDTO.busGuestName}, '%')
+		</if>
+		<if test="queryDTO.scheduleName !=null and queryDTO.scheduleName !=''">
+			AND t.schedule_name LIKE CONCAT('%', #{queryDTO.scheduleName}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.create_time &gt;= CURDATE()
+			AND  t.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.create_time &gt;=  #{queryDTO.startTime}
+			AND  t.create_time &lt;=  #{queryDTO.endTime}
+		</if>
+		ORDER BY
+			t.create_time DESC
+	</select>
+    <select id="selectCurrentOverdue" resultType="com.by4cloud.platformx.business.vo.HomeOverdueStaVo">
+		SELECT
+			sum( receivable_amount ) receivable_amount
+		FROM
+			current_overdue t
+		LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+		LEFT JOIN business_customer t2 ON ( t2.id = t.bus_guest_id AND t2.del_flag = '0' )
+		WHERE
+		t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.create_time &gt;= CURDATE()
+			AND  t.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		GROUP BY
+			t.comp_id
+	</select>
 </mapper>
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/HistoryOverdueMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/HistoryOverdueMapper.xml
index 0e83b69..6b35c69 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/HistoryOverdueMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/HistoryOverdueMapper.xml
@@ -8,7 +8,7 @@
         <result property="compId" column="comp_id"/>
         <result property="busGuestId" column="bus_guest_id"/>
         <result property="busGuestName" column="bus_guest_name"/>
-        <result property="contractExpirTime" column="contract_expir_time"/>
+        <result property="contractExpirTime" column="create_time"/>
         <result property="contractId" column="contract_id"/>
         <result property="contractName" column="contract_name"/>
         <result property="overdueDuration" column="overdue_duration"/>
@@ -20,4 +20,544 @@
         <result property="updateTime" column="update_time"/>
         <result property="delFlag" column="del_flag"/>
   </resultMap>
+    <select id="homeZbjt" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556196124250113
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) sgbbr,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556196124250113
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556196124250113
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056555602756063234
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) smjbr,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056555602756063234
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056555602756063234
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556317461270529
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) jxcbr,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556317461270529
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556317461270529
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556421857497090
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) tfbr,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556421857497090
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556421857497090
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556535640576002
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) ymjbr,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556535640576002
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+			(
+				SELECT
+					sum(co.receivable_amount)
+				FROM
+					history_overdue co
+				WHERE
+					co.del_flag = '0'
+				  AND comp_id = 2056556535640576002
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+	<select id="homeZgs" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '2'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hbbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '2'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '2'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '6'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xbbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '6'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '6'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '1'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) dbbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '1'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '1'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '3'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hdbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '3'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '3'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '4'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) znbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '4'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '4'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '5'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xnbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '5'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.area_id = '5'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.export_service_attr = '2'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= CURDATE()
+				  AND co.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hwbr,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.export_service_attr = '2'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+			(
+				SELECT
+					sum( co.receivable_amount )
+				FROM
+					history_overdue co,
+					business_customer bc
+				WHERE
+					co.del_flag = '0'
+				  AND bc.del_flag = '0'
+				  AND bc.id = co.bus_guest_id
+				  AND bc.export_service_attr = '2'
+				  AND co.comp_id = #{compId}
+				  AND co.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+				  AND co.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
+	</select>
+    <select id="selectHistoryOverdue" resultType="com.by4cloud.platformx.business.vo.HomeOverdueStaVo">
+		SELECT
+		sum( receivable_amount ) receivable_amount
+		FROM
+		history_overdue t
+		LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+		LEFT JOIN business_customer t2 ON ( t2.id = t.bus_guest_id AND t2.del_flag = '0' )
+		WHERE
+		t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.create_time &gt;= CURDATE()
+			AND  t.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		GROUP BY
+		t.comp_id
+	</select>
+	<select id="pageScope" resultType="com.by4cloud.platformx.business.vo.HomeOverdueVo">
+		SELECT
+		t.id,
+		t.bus_guest_name,
+		t.bus_guest_id,
+		t.contract_name,
+		t.contract_id,
+		t.receivable_amount,
+		t.schedule_id,
+		t.schedule_name,
+		t.contract_expir_time,
+		t.overdue_duration,
+		t1.contract_no,
+		t.comp_id
+		FROM
+		history_overdue t
+		LEFT JOIN contract t1 ON ( t1.id = t.contract_id AND t1.del_flag = '0' )
+		LEFT JOIN business_customer t2 ON ( t2.id = t.bus_guest_id AND t2.del_flag = '0' )
+		WHERE
+		t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.contractNo !=null and queryDTO.contractNo !=''">
+			AND t1.contract_no LIKE CONCAT('%', #{queryDTO.contractNo}, '%')
+		</if>
+		<if test="queryDTO.busGuestName !=null and queryDTO.busGuestName !=''">
+			AND t2.company_name LIKE CONCAT('%', #{queryDTO.busGuestName}, '%')
+		</if>
+		<if test="queryDTO.scheduleName !=null and queryDTO.scheduleName !=''">
+			AND t.schedule_name LIKE CONCAT('%', #{queryDTO.scheduleName}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t2.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t2.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.create_time &gt;= CURDATE()
+			AND  t.create_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.create_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.create_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.create_time &gt;=  #{queryDTO.startTime}
+			AND  t.create_time &lt;=  #{queryDTO.endTime}
+		</if>
+		ORDER BY
+		t.create_time DESC
+	</select>
 </mapper>
\ No newline at end of file
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/PaymentSlipMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/PaymentSlipMapper.xml
index 0568405..e74a144 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/PaymentSlipMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/PaymentSlipMapper.xml
@@ -21,4 +21,507 @@
 		<result property="updateTime" column="update_time"/>
 		<result property="delFlag" column="del_flag"/>
 	</resultMap>
+    <select id="homeZbjt" resultType="com.by4cloud.platformx.business.vo.HomeZbjtVo">
+		SELECT
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) sgbbr,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) sgbby,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556196124250113
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) sgbbn,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) smjbr,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) smjby,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056555602756063234
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) smjbn,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) jxcbr,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) jxcby,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556317461270529
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) jxcbn,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) tfbr,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) tfby,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556421857497090
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) tfbn,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) ymjbr,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) ymjby,
+		(
+		SELECT
+		sum( ps.payment_amount )
+		FROM
+		payment_slip ps
+		WHERE
+		ps.del_flag = '0'
+		AND comp_id = 2056556535640576002
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) ymjbn
+	</select>
+    <select id="homeZgs" resultType="com.by4cloud.platformx.business.vo.HomeZgsVo">
+		SELECT
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '2'
+		AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hbbr,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '2'
+	 	AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hbby,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '2'
+	  	AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hbbn,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '6'
+	  	AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xbbr,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '6'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xbby,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '6'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xbbn,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '1'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) dbbr,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '1'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) dbby,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.area_id = '1'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) dbbn,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '3'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= CURDATE()
+			  AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hdbr,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '3'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hdby,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '3'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hdbn,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '4'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= CURDATE()
+			  AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) znbr,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '4'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) znby,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '4'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) znbn,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '5'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= CURDATE()
+			  AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) xnbr,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '5'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+			  AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) xnby,
+		(
+			SELECT
+				sum(ps.payment_amount)
+			FROM
+				payment_slip ps,
+				business_customer bc
+			WHERE
+				ps.del_flag = '0'
+			  AND bc.del_flag = '0'
+			  AND bc.id = ps.bus_guest_id
+			  AND bc.area_id = '5'
+			  AND ps.comp_id = #{compId}
+			  AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			  AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) xnbn,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.export_service_attr = '2'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= CURDATE()
+		AND ps.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )) hwbr,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.export_service_attr = '2'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-%m-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 MONTH ), '%Y-%m-01' )) hwby,
+		(
+		SELECT
+		sum(ps.payment_amount)
+		FROM
+		payment_slip ps,
+		business_customer bc
+		WHERE
+		ps.del_flag = '0'
+		AND bc.del_flag = '0'
+		AND bc.id = ps.bus_guest_id
+		AND bc.export_service_attr = '2'
+		  AND ps.comp_id = #{compId}
+		AND ps.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+		AND ps.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )) hwbn
+	</select>
+	<select id="pageScope" resultType="com.by4cloud.platformx.business.vo.HomePaymentSlipVo">
+		SELECT
+			t.id,
+			t.bus_guest_name,
+			t.bus_guest_id,
+			t.payee,
+			t.payee_comp_id,
+			t.payment_time,
+			t.payment_amount,
+			t.payment_number,
+			t.pay_type,
+			t.create_by,
+			t.update_by,
+			t.create_time,
+			t.update_time,
+			t.del_flag,
+			t.comp_id
+		FROM
+			payment_slip t
+		LEFT JOIN business_customer t1 ON ( t1.id = t.bus_guest_id AND t1.del_flag = '0' )
+		WHERE
+			t.del_flag = '0'
+		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
+			AND t.comp_id =  #{queryDTO.queryCompId}
+		</if>
+		<if test="queryDTO.partyA !=null and queryDTO.partyA !=''">
+			AND t.bus_guest_name LIKE CONCAT('%', #{queryDTO.partyA}, '%')
+		</if>
+		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
+			AND t1.class_id =  #{queryDTO.queryArea}
+		</if>
+		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
+			AND t1.export_service_attr =  #{queryDTO.queryServiceAttr}
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='1'.toString()">
+			AND  t.payment_time &gt;= CURDATE()
+			AND  t.payment_time &lt; DATE_ADD( CURDATE(), INTERVAL 1 DAY )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='2'.toString()">
+			AND  t.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.queryType !=null and queryDTO.queryType !='' and queryDTO.queryType =='3'.toString()">
+			AND  t.payment_time &gt;= DATE_FORMAT( CURDATE(), '%Y-01-01' )
+			AND  t.payment_time &lt; DATE_FORMAT( DATE_ADD( CURDATE(), INTERVAL 1 YEAR ), '%Y-01-01' )
+		</if>
+		<if test="queryDTO.startTime !=null and queryDTO.endTime !=null">
+			AND  t.payment_time &gt;=  #{queryDTO.startTime}
+			AND  t.payment_time &lt;=  #{queryDTO.endTime}
+		</if>
+		ORDER BY
+		t.create_time DESC
+	</select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1