From 5bf2fd3f39c415703b153698ae5d95ed5c288aae Mon Sep 17 00:00:00 2001
From: sen <sen@qq.com>
Date: 星期三, 17 十二月 2025 15:23:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cwxt_master' into cwxt_master

---
 service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableFeeManagementServiceImpl.java |  182 ++++
 service/src/main/java/com/ruoyi/cwgl/service/IPayableFeeManagementService.java            |  102 ++
 service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableFeeManagementMapper.java            |   87 ++
 ui/admin-ui3/src/api/cwgl/payableFeeManagement.ts                                         |   67 +
 service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeManagement.java                     |  160 ++++
 service/src/main/java/com/ruoyi/cwgl/service/IReceivableFeeManagementService.java         |  102 ++
 service/src/main/java/com/ruoyi/cwgl/controller/ReceivableFeeManagementController.java    |  108 ++
 ui/admin-ui3/src/views/cwgl/payableFeeManagement/index.vue                                |  221 +++++
 service/src/main/java/com/ruoyi/cwgl/domain/ReceivableFeeManagement.java                  |  160 ++++
 service/src/main/java/com/ruoyi/cwgl/mapper/PayableFeeManagementMapper.java               |   87 ++
 service/src/main/resources/mapper/cwgl/PayableFeeManagementMapper.xml                     |  206 +++++
 service/src/main/java/com/ruoyi/cwgl/service/impl/PayableFeeManagementServiceImpl.java    |  182 ++++
 service/src/main/java/com/ruoyi/cwgl/controller/PayableFeeManagementController.java       |  108 ++
 ui/admin-ui3/src/views/cwgl/receivableFeeManagement/index.vue                             |  221 +++++
 service/src/main/resources/mapper/cwgl/ReceivableFeeManagementMapper.xml                  |  206 +++++
 .idea/$CACHE_FILE$                                                                        |    0 
 ui/admin-ui3/src/api/cwgl/receivableFeeManagement.ts                                      |   67 +
 17 files changed, 2,266 insertions(+), 0 deletions(-)

diff --git a/.idea/$CACHE_FILE$ b/.idea/$CACHE_FILE$
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.idea/$CACHE_FILE$
diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/PayableFeeManagementController.java b/service/src/main/java/com/ruoyi/cwgl/controller/PayableFeeManagementController.java
new file mode 100644
index 0000000..4b697a7
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/PayableFeeManagementController.java
@@ -0,0 +1,108 @@
+package com.ruoyi.cwgl.controller;
+
+import java.util.List;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.utils.file.DownloadExportUtil;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.cwgl.domain.PayableFeeManagement;
+import com.ruoyi.cwgl.service.IPayableFeeManagementService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 搴斾粯璐圭敤绠$悊Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@RestController
+@RequestMapping("/cwgl/payableFeeManagement")
+public class PayableFeeManagementController extends BaseController
+{
+    @Autowired
+    private IPayableFeeManagementService payableFeeManagementService;
+
+
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:payableFeeManagement:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(PayableFeeManagement payableFeeManagement)
+    {
+        startPage();
+        List<PayableFeeManagement> list = payableFeeManagementService.selectPayableFeeManagementList(payableFeeManagement);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭搴斾粯璐圭敤绠$悊鍒楄〃
+     * @param payableFeeManagement 鏌ヨ鏉′欢瀵硅薄
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:payableFeeManagement:export')")
+    @Log(title = "搴斾粯璐圭敤绠$悊", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult export(PayableFeeManagement payableFeeManagement,String exportKey)
+    {
+        payableFeeManagementService.export(payableFeeManagement,exportKey);
+        return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!");
+    }
+
+
+
+    /**
+     * 鑾峰彇搴斾粯璐圭敤绠$悊璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:payableFeeManagement:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Integer id)
+    {
+        return AjaxResult.success(payableFeeManagementService.selectPayableFeeManagementById(id));
+    }
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:payableFeeManagement:add')")
+    @Log(title = "搴斾粯璐圭敤绠$悊", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody PayableFeeManagement payableFeeManagement)
+    {
+        return toAjax(payableFeeManagementService.insertPayableFeeManagement(payableFeeManagement));
+    }
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:payableFeeManagement:edit')")
+    @Log(title = "搴斾粯璐圭敤绠$悊", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody PayableFeeManagement payableFeeManagement)
+    {
+        return toAjax(payableFeeManagementService.updatePayableFeeManagement(payableFeeManagement));
+    }
+
+    /**
+     * 鍒犻櫎搴斾粯璐圭敤绠$悊
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:payableFeeManagement:remove')")
+    @Log(title = "搴斾粯璐圭敤绠$悊", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Integer[] ids)
+    {
+        return toAjax(payableFeeManagementService.deletePayableFeeManagementByIds(ids));
+    }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableFeeManagementController.java b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableFeeManagementController.java
new file mode 100644
index 0000000..70cf7ba
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableFeeManagementController.java
@@ -0,0 +1,108 @@
+package com.ruoyi.cwgl.controller;
+
+import java.util.List;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.utils.file.DownloadExportUtil;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.cwgl.domain.ReceivableFeeManagement;
+import com.ruoyi.cwgl.service.IReceivableFeeManagementService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 搴旀敹璐圭敤绠$悊Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@RestController
+@RequestMapping("/cwgl/receivableFeeManagement")
+public class ReceivableFeeManagementController extends BaseController
+{
+    @Autowired
+    private IReceivableFeeManagementService receivableFeeManagementService;
+
+
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableFeeManagement:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(ReceivableFeeManagement receivableFeeManagement)
+    {
+        startPage();
+        List<ReceivableFeeManagement> list = receivableFeeManagementService.selectReceivableFeeManagementList(receivableFeeManagement);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭搴旀敹璐圭敤绠$悊鍒楄〃
+     * @param receivableFeeManagement 鏌ヨ鏉′欢瀵硅薄
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableFeeManagement:export')")
+    @Log(title = "搴旀敹璐圭敤绠$悊", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult export(ReceivableFeeManagement receivableFeeManagement,String exportKey)
+    {
+        receivableFeeManagementService.export(receivableFeeManagement,exportKey);
+        return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!");
+    }
+
+
+
+    /**
+     * 鑾峰彇搴旀敹璐圭敤绠$悊璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableFeeManagement:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Integer id)
+    {
+        return AjaxResult.success(receivableFeeManagementService.selectReceivableFeeManagementById(id));
+    }
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableFeeManagement:add')")
+    @Log(title = "搴旀敹璐圭敤绠$悊", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ReceivableFeeManagement receivableFeeManagement)
+    {
+        return toAjax(receivableFeeManagementService.insertReceivableFeeManagement(receivableFeeManagement));
+    }
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableFeeManagement:edit')")
+    @Log(title = "搴旀敹璐圭敤绠$悊", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ReceivableFeeManagement receivableFeeManagement)
+    {
+        return toAjax(receivableFeeManagementService.updateReceivableFeeManagement(receivableFeeManagement));
+    }
+
+    /**
+     * 鍒犻櫎搴旀敹璐圭敤绠$悊
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableFeeManagement:remove')")
+    @Log(title = "搴旀敹璐圭敤绠$悊", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Integer[] ids)
+    {
+        return toAjax(receivableFeeManagementService.deleteReceivableFeeManagementByIds(ids));
+    }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeManagement.java b/service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeManagement.java
new file mode 100644
index 0000000..7e00c10
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeManagement.java
@@ -0,0 +1,160 @@
+package com.ruoyi.cwgl.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.util.Date;
+import lombok.Data;
+/**
+ * 搴斾粯璐圭敤绠$悊瀵硅薄 payable_fee_management
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Data
+public class PayableFeeManagement{
+
+
+    /** ID */
+        @TableField("id")
+    private Integer id;
+
+
+    /** 绯荤粺缂栧彿 */
+    @Excel(name = "绯荤粺缂栧彿")
+
+        @TableField("system_no")
+    private String systemNo;
+
+
+    /** 鍏宠仈璐﹀崟缂栧彿 */
+    @Excel(name = "鍏宠仈璐﹀崟缂栧彿")
+
+        @TableField("related_bill_no")
+    private String relatedBillNo;
+
+
+    /** 鏉ユ簮绯荤粺 */
+    @Excel(name = "鏉ユ簮绯荤粺")
+
+        @TableField("source_system")
+    private String sourceSystem;
+
+
+    /** 涓氬姟鏉垮潡 */
+    @Excel(name = "涓氬姟鏉垮潡")
+
+        @TableField("business_sector")
+    private String businessSector;
+
+
+    /** 鍗曟嵁绫诲瀷 */
+    @Excel(name = "鍗曟嵁绫诲瀷")
+
+        @TableField("document_type")
+    private String documentType;
+
+
+    /** 鍗曟嵁缂栧彿 */
+    @Excel(name = "鍗曟嵁缂栧彿")
+
+        @TableField("document_no")
+    private String documentNo;
+
+
+    /** 鏄惁鍐呴儴缁撶畻 */
+    @Excel(name = "鏄惁鍐呴儴缁撶畻")
+
+        @TableField("is_internal_settlement")
+    private String isInternalSettlement;
+
+
+    /** 鍐呴儴缁撶畻鍗曚綅 */
+    @Excel(name = "鍐呴儴缁撶畻鍗曚綅")
+
+        @TableField("internal_settlement_unit")
+    private String internalSettlementUnit;
+
+
+    /** 渚涘簲鍟嗗悕绉� */
+    @Excel(name = "渚涘簲鍟嗗悕绉�")
+
+        @TableField("supplier_name")
+    private String supplierName;
+
+
+    /** 椤圭洰鍚嶇О */
+    @Excel(name = "椤圭洰鍚嶇О")
+
+        @TableField("project_name")
+    private String projectName;
+
+
+    /** 涓氬姟鍙戠敓鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "涓氬姟鍙戠敓鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd")
+
+        @TableField("business_time")
+    private Date businessTime;
+
+
+    /** 搴斾粯纭鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "搴斾粯纭鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd")
+     @TableField("payable_confirm_time")
+    private Date payableConfirmTime;
+
+
+    /** 搴斾粯閲戦 */
+    @Excel(name = "搴斾粯閲戦")
+
+        @TableField("payable_amount")
+    private BigDecimal payableAmount;
+
+
+    /** 鐘舵�� */
+    @Excel(name = "鐘舵��")
+
+        @TableField("status")
+    private String status;
+
+
+    /** 澶囨敞 */
+    @Excel(name = "澶囨敞")
+
+        @TableField("remark")
+    private String remark;
+
+
+    /** 鍒涘缓浜� */
+        @TableField("create_by")
+    private String createBy;
+
+
+    /** 鍒涘缓鏃堕棿 */
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @TableField("create_time")
+    private Date createTime;
+
+
+    /** 鏇存柊浜� */
+        @TableField("update_by")
+    private String updateBy;
+
+
+    /** 鏇存柊鏃堕棿 */
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @TableField("update_time")
+    private Date updateTime;
+
+
+    /** 鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎) */
+    @Excel(name = "鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎)")
+
+        @TableField("deleted")
+    private Integer deleted;
+
+
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableFeeManagement.java b/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableFeeManagement.java
new file mode 100644
index 0000000..9f15bad
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableFeeManagement.java
@@ -0,0 +1,160 @@
+package com.ruoyi.cwgl.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.util.Date;
+import lombok.Data;
+/**
+ * 搴旀敹璐圭敤绠$悊瀵硅薄 receivable_fee_management
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Data
+public class ReceivableFeeManagement{
+
+
+    /** ID */
+        @TableField("id")
+    private Integer id;
+
+
+    /** 绯荤粺缂栧彿 */
+    @Excel(name = "绯荤粺缂栧彿")
+
+        @TableField("system_no")
+    private String systemNo;
+
+
+    /** 鍏宠仈璐﹀崟缂栧彿 */
+    @Excel(name = "鍏宠仈璐﹀崟缂栧彿")
+
+        @TableField("related_bill_no")
+    private String relatedBillNo;
+
+
+    /** 鏉ユ簮绯荤粺 */
+    @Excel(name = "鏉ユ簮绯荤粺")
+
+        @TableField("source_system")
+    private String sourceSystem;
+
+
+    /** 涓氬姟鏉垮潡 */
+    @Excel(name = "涓氬姟鏉垮潡")
+
+        @TableField("business_sector")
+    private String businessSector;
+
+
+    /** 鍗曟嵁绫诲瀷 */
+    @Excel(name = "鍗曟嵁绫诲瀷")
+
+        @TableField("document_type")
+    private String documentType;
+
+
+    /** 鍗曟嵁缂栧彿 */
+    @Excel(name = "鍗曟嵁缂栧彿")
+
+        @TableField("document_no")
+    private String documentNo;
+
+
+    /** 鏄惁鍐呴儴缁撶畻 */
+    @Excel(name = "鏄惁鍐呴儴缁撶畻")
+
+        @TableField("is_internal_settlement")
+    private String isInternalSettlement;
+
+
+    /** 鍐呴儴缁撶畻鍗曚綅 */
+    @Excel(name = "鍐呴儴缁撶畻鍗曚綅")
+
+        @TableField("internal_settlement_unit")
+    private String internalSettlementUnit;
+
+
+    /** 瀹㈡埛鍚嶇О */
+    @Excel(name = "瀹㈡埛鍚嶇О")
+
+        @TableField("customer_name")
+    private String customerName;
+
+
+    /** 椤圭洰鍚嶇О */
+    @Excel(name = "椤圭洰鍚嶇О")
+
+        @TableField("project_name")
+    private String projectName;
+
+
+    /** 涓氬姟鍙戠敓鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "涓氬姟鍙戠敓鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd")
+
+    @TableField("business_time")
+    private Date businessTime;
+
+
+    /** 搴旀敹纭鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "搴旀敹纭鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd")
+    @TableField("receivable_confirm_time")
+    private Date receivableConfirmTime;
+
+
+    /** 搴旀敹閲戦 */
+    @Excel(name = "搴旀敹閲戦")
+
+        @TableField("receivable_amount")
+    private BigDecimal receivableAmount;
+
+
+    /** 鐘舵�� */
+    @Excel(name = "鐘舵��")
+
+        @TableField("status")
+    private String status;
+
+
+    /** 澶囨敞 */
+    @Excel(name = "澶囨敞")
+
+        @TableField("remark")
+    private String remark;
+
+
+    /** 鍒涘缓浜� */
+        @TableField("create_by")
+    private String createBy;
+
+
+    /** 鍒涘缓鏃堕棿 */
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @TableField("create_time")
+    private Date createTime;
+
+
+    /** 鏇存柊浜� */
+        @TableField("update_by")
+    private String updateBy;
+
+
+    /** 鏇存柊鏃堕棿 */
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @TableField("update_time")
+    private Date updateTime;
+
+
+    /** 鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎) */
+    @Excel(name = "鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎)")
+
+        @TableField("deleted")
+    private Integer deleted;
+
+
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/mapper/PayableFeeManagementMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/PayableFeeManagementMapper.java
new file mode 100644
index 0000000..32d3c89
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/mapper/PayableFeeManagementMapper.java
@@ -0,0 +1,87 @@
+package com.ruoyi.cwgl.mapper;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.PayableFeeManagement;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 搴斾粯璐圭敤绠$悊Mapper鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface PayableFeeManagementMapper  extends BaseMapper<PayableFeeManagement>
+{
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊
+     * 
+     * @param id 搴斾粯璐圭敤绠$悊ID
+     * @return 搴斾粯璐圭敤绠$悊
+     */
+    public PayableFeeManagement selectPayableFeeManagementById(Integer id);
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊 璁板綍鏁�
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    public int selectPayableFeeManagementCount(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃
+     * 
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    public List<PayableFeeManagement> selectPayableFeeManagementList(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊
+     * 
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertPayableFeeManagement(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊[鎵归噺]
+     *
+     * @param payableFeeManagements 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertPayableFeeManagementBatch(List<PayableFeeManagement> payableFeeManagements);
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊
+     * 
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updatePayableFeeManagement(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊[鎵归噺]
+     *
+     * @param payableFeeManagements 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updatePayableFeeManagementBatch(List<PayableFeeManagement> payableFeeManagements);
+
+    /**
+     * 鍒犻櫎搴斾粯璐圭敤绠$悊
+     * 
+     * @param id 搴斾粯璐圭敤绠$悊ID
+     * @return 缁撴灉
+     */
+    public int deletePayableFeeManagementById(Integer id);
+
+    /**
+     * 鎵归噺鍒犻櫎搴斾粯璐圭敤绠$悊
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    public int deletePayableFeeManagementByIds(Integer[] ids);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableFeeManagementMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableFeeManagementMapper.java
new file mode 100644
index 0000000..809b4ce
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableFeeManagementMapper.java
@@ -0,0 +1,87 @@
+package com.ruoyi.cwgl.mapper;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.ReceivableFeeManagement;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 搴旀敹璐圭敤绠$悊Mapper鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface ReceivableFeeManagementMapper  extends BaseMapper<ReceivableFeeManagement>
+{
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊
+     * 
+     * @param id 搴旀敹璐圭敤绠$悊ID
+     * @return 搴旀敹璐圭敤绠$悊
+     */
+    public ReceivableFeeManagement selectReceivableFeeManagementById(Integer id);
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊 璁板綍鏁�
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    public int selectReceivableFeeManagementCount(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃
+     * 
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    public List<ReceivableFeeManagement> selectReceivableFeeManagementList(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊
+     * 
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊[鎵归噺]
+     *
+     * @param receivableFeeManagements 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements);
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊
+     * 
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updateReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊[鎵归噺]
+     *
+     * @param receivableFeeManagements 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updateReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements);
+
+    /**
+     * 鍒犻櫎搴旀敹璐圭敤绠$悊
+     * 
+     * @param id 搴旀敹璐圭敤绠$悊ID
+     * @return 缁撴灉
+     */
+    public int deleteReceivableFeeManagementById(Integer id);
+
+    /**
+     * 鎵归噺鍒犻櫎搴旀敹璐圭敤绠$悊
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    public int deleteReceivableFeeManagementByIds(Integer[] ids);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IPayableFeeManagementService.java b/service/src/main/java/com/ruoyi/cwgl/service/IPayableFeeManagementService.java
new file mode 100644
index 0000000..320e952
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/IPayableFeeManagementService.java
@@ -0,0 +1,102 @@
+package com.ruoyi.cwgl.service;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.PayableFeeManagement;
+import com.baomidou.mybatisplus.extension.service.IService;
+/**
+ * 搴斾粯璐圭敤绠$悊Service鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface IPayableFeeManagementService extends IService<PayableFeeManagement>
+{
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊
+     * 
+     * @param id 搴斾粯璐圭敤绠$悊ID
+     * @return 搴斾粯璐圭敤绠$悊
+     */
+    public PayableFeeManagement selectPayableFeeManagementById(Integer id);
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊 璁板綍鏁�
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    public int selectPayableFeeManagementCount(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃
+     * 
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    public List<PayableFeeManagement> selectPayableFeeManagementList(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃 寮傛 瀵煎嚭
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    public void export(PayableFeeManagement payableFeeManagement, String exportKey) ;
+
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊
+     * 
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertPayableFeeManagement(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊[鎵归噺]
+     *
+     * @param payableFeeManagements 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertPayableFeeManagementBatch(List<PayableFeeManagement> payableFeeManagements);
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊
+     * 
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updatePayableFeeManagement(PayableFeeManagement payableFeeManagement);
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊[鎵归噺]
+     *
+     * @param payableFeeManagements 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updatePayableFeeManagementBatch(List<PayableFeeManagement> payableFeeManagements);
+    /**
+     * 鎵归噺鍒犻櫎搴斾粯璐圭敤绠$悊
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    public int deletePayableFeeManagementByIds(String ids);
+
+    /**
+     * 鎵归噺鍒犻櫎搴斾粯璐圭敤绠$悊
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    public int deletePayableFeeManagementByIds(Integer[] ids);
+
+    /**
+     * 鍒犻櫎搴斾粯璐圭敤绠$悊淇℃伅
+     * 
+     * @param id 搴斾粯璐圭敤绠$悊ID
+     * @return 缁撴灉
+     */
+    public int deletePayableFeeManagementById(Integer id);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IReceivableFeeManagementService.java b/service/src/main/java/com/ruoyi/cwgl/service/IReceivableFeeManagementService.java
new file mode 100644
index 0000000..29edf26
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/IReceivableFeeManagementService.java
@@ -0,0 +1,102 @@
+package com.ruoyi.cwgl.service;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.ReceivableFeeManagement;
+import com.baomidou.mybatisplus.extension.service.IService;
+/**
+ * 搴旀敹璐圭敤绠$悊Service鎺ュ彛
+ * 
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface IReceivableFeeManagementService extends IService<ReceivableFeeManagement>
+{
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊
+     * 
+     * @param id 搴旀敹璐圭敤绠$悊ID
+     * @return 搴旀敹璐圭敤绠$悊
+     */
+    public ReceivableFeeManagement selectReceivableFeeManagementById(Integer id);
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊 璁板綍鏁�
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    public int selectReceivableFeeManagementCount(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃
+     * 
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    public List<ReceivableFeeManagement> selectReceivableFeeManagementList(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃 寮傛 瀵煎嚭
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    public void export(ReceivableFeeManagement receivableFeeManagement, String exportKey) ;
+
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊
+     * 
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊[鎵归噺]
+     *
+     * @param receivableFeeManagements 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int insertReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements);
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊
+     * 
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updateReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement);
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊[鎵归噺]
+     *
+     * @param receivableFeeManagements 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    public int updateReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements);
+    /**
+     * 鎵归噺鍒犻櫎搴旀敹璐圭敤绠$悊
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    public int deleteReceivableFeeManagementByIds(String ids);
+
+    /**
+     * 鎵归噺鍒犻櫎搴旀敹璐圭敤绠$悊
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    public int deleteReceivableFeeManagementByIds(Integer[] ids);
+
+    /**
+     * 鍒犻櫎搴旀敹璐圭敤绠$悊淇℃伅
+     * 
+     * @param id 搴旀敹璐圭敤绠$悊ID
+     * @return 缁撴灉
+     */
+    public int deleteReceivableFeeManagementById(Integer id);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableFeeManagementServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableFeeManagementServiceImpl.java
new file mode 100644
index 0000000..713e5a8
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableFeeManagementServiceImpl.java
@@ -0,0 +1,182 @@
+package com.ruoyi.cwgl.service.impl;
+
+import java.util.List;
+
+import com.ruoyi.common.utils.DateUtils;
+import javax.annotation.Resource;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.stereotype.Service;
+import org.springframework.scheduling.annotation.Async;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.annotation.DataSource;
+import com.ruoyi.common.enums.DataSourceType;
+import com.ruoyi.common.core.service.BaseService;
+
+import com.ruoyi.cwgl.mapper.PayableFeeManagementMapper;
+import com.ruoyi.cwgl.domain.PayableFeeManagement;
+import com.ruoyi.cwgl.service.IPayableFeeManagementService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 搴斾粯璐圭敤绠$悊Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class PayableFeeManagementServiceImpl  extends BaseService<PayableFeeManagementMapper, PayableFeeManagement> implements IPayableFeeManagementService
+{
+    protected final Logger logger = LoggerFactory.getLogger(getClass());
+    @Resource
+    private PayableFeeManagementMapper payableFeeManagementMapper;
+
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊
+     *
+     * @param id 搴斾粯璐圭敤绠$悊ID
+     * @return 搴斾粯璐圭敤绠$悊
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Override
+    public PayableFeeManagement selectPayableFeeManagementById(Integer id)
+    {
+        return payableFeeManagementMapper.selectPayableFeeManagementById(id);
+    }
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊 璁板綍鏁�
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Override
+    public int selectPayableFeeManagementCount(PayableFeeManagement payableFeeManagement)
+    {
+        return payableFeeManagementMapper.selectPayableFeeManagementCount(payableFeeManagement);
+    }
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 搴斾粯璐圭敤绠$悊
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Override
+    public List<PayableFeeManagement> selectPayableFeeManagementList(PayableFeeManagement payableFeeManagement)
+    {
+        return payableFeeManagementMapper.selectPayableFeeManagementList(payableFeeManagement);
+    }
+
+    /**
+     * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃 寮傛 瀵煎嚭
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+     * @return 搴斾粯璐圭敤绠$悊闆嗗悎
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Async
+    @Override
+    public void export(PayableFeeManagement payableFeeManagement,String exportKey) {
+
+        super.export(PayableFeeManagement.class,exportKey,"payableFeeManagementData",(pageNum)->{
+            PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
+            return selectPayableFeeManagementList(payableFeeManagement);
+        });
+    }
+
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertPayableFeeManagement(PayableFeeManagement payableFeeManagement)
+    {
+        payableFeeManagement.setCreateTime(DateUtils.getNowDate());
+        return payableFeeManagementMapper.insertPayableFeeManagement(payableFeeManagement);
+    }
+
+    /**
+     * 鏂板搴斾粯璐圭敤绠$悊[鎵归噺]
+     *
+     * @param payableFeeManagements 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertPayableFeeManagementBatch(List<PayableFeeManagement> payableFeeManagements)
+    {
+        int rows = payableFeeManagementMapper.insertPayableFeeManagementBatch(payableFeeManagements);
+        return rows;
+    }
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊
+     *
+     * @param payableFeeManagement 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int updatePayableFeeManagement(PayableFeeManagement payableFeeManagement)
+    {
+        payableFeeManagement.setUpdateTime(DateUtils.getNowDate());
+        return payableFeeManagementMapper.updatePayableFeeManagement(payableFeeManagement);
+    }
+
+    /**
+     * 淇敼搴斾粯璐圭敤绠$悊[鎵归噺]
+     *
+     * @param payableFeeManagements 搴斾粯璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int updatePayableFeeManagementBatch(List<PayableFeeManagement> payableFeeManagements){
+        return payableFeeManagementMapper.updatePayableFeeManagementBatch(payableFeeManagements);
+    }
+
+    /**
+     * 鍒犻櫎搴斾粯璐圭敤绠$悊瀵硅薄
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePayableFeeManagementByIds(String ids)
+    {
+        return deletePayableFeeManagementByIds(Convert.toIntArray(ids));
+    }
+
+    /**
+     * 鍒犻櫎搴斾粯璐圭敤绠$悊瀵硅薄
+     *
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePayableFeeManagementByIds(Integer[] ids)
+    {
+        return payableFeeManagementMapper.deletePayableFeeManagementByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎搴斾粯璐圭敤绠$悊淇℃伅
+     *
+     * @param id 搴斾粯璐圭敤绠$悊ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePayableFeeManagementById(Integer id)
+    {
+        return payableFeeManagementMapper.deletePayableFeeManagementById(id);
+    }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableFeeManagementServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableFeeManagementServiceImpl.java
new file mode 100644
index 0000000..73ced5b
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableFeeManagementServiceImpl.java
@@ -0,0 +1,182 @@
+package com.ruoyi.cwgl.service.impl;
+
+import java.util.List;
+
+import com.ruoyi.common.utils.DateUtils;
+import javax.annotation.Resource;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.stereotype.Service;
+import org.springframework.scheduling.annotation.Async;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.annotation.DataSource;
+import com.ruoyi.common.enums.DataSourceType;
+import com.ruoyi.common.core.service.BaseService;
+
+import com.ruoyi.cwgl.mapper.ReceivableFeeManagementMapper;
+import com.ruoyi.cwgl.domain.ReceivableFeeManagement;
+import com.ruoyi.cwgl.service.IReceivableFeeManagementService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 搴旀敹璐圭敤绠$悊Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class ReceivableFeeManagementServiceImpl  extends BaseService<ReceivableFeeManagementMapper, ReceivableFeeManagement> implements IReceivableFeeManagementService
+{
+    protected final Logger logger = LoggerFactory.getLogger(getClass());
+    @Resource
+    private ReceivableFeeManagementMapper receivableFeeManagementMapper;
+
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊
+     *
+     * @param id 搴旀敹璐圭敤绠$悊ID
+     * @return 搴旀敹璐圭敤绠$悊
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Override
+    public ReceivableFeeManagement selectReceivableFeeManagementById(Integer id)
+    {
+        return receivableFeeManagementMapper.selectReceivableFeeManagementById(id);
+    }
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊 璁板綍鏁�
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Override
+    public int selectReceivableFeeManagementCount(ReceivableFeeManagement receivableFeeManagement)
+    {
+        return receivableFeeManagementMapper.selectReceivableFeeManagementCount(receivableFeeManagement);
+    }
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 搴旀敹璐圭敤绠$悊
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Override
+    public List<ReceivableFeeManagement> selectReceivableFeeManagementList(ReceivableFeeManagement receivableFeeManagement)
+    {
+        return receivableFeeManagementMapper.selectReceivableFeeManagementList(receivableFeeManagement);
+    }
+
+    /**
+     * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃 寮傛 瀵煎嚭
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+     * @return 搴旀敹璐圭敤绠$悊闆嗗悎
+     */
+    @DataSource(DataSourceType.SLAVE)
+    @Async
+    @Override
+    public void export(ReceivableFeeManagement receivableFeeManagement,String exportKey) {
+
+        super.export(ReceivableFeeManagement.class,exportKey,"receivableFeeManagementData",(pageNum)->{
+            PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
+            return selectReceivableFeeManagementList(receivableFeeManagement);
+        });
+    }
+
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement)
+    {
+        receivableFeeManagement.setCreateTime(DateUtils.getNowDate());
+        return receivableFeeManagementMapper.insertReceivableFeeManagement(receivableFeeManagement);
+    }
+
+    /**
+     * 鏂板搴旀敹璐圭敤绠$悊[鎵归噺]
+     *
+     * @param receivableFeeManagements 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements)
+    {
+        int rows = receivableFeeManagementMapper.insertReceivableFeeManagementBatch(receivableFeeManagements);
+        return rows;
+    }
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊
+     *
+     * @param receivableFeeManagement 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement)
+    {
+        receivableFeeManagement.setUpdateTime(DateUtils.getNowDate());
+        return receivableFeeManagementMapper.updateReceivableFeeManagement(receivableFeeManagement);
+    }
+
+    /**
+     * 淇敼搴旀敹璐圭敤绠$悊[鎵归噺]
+     *
+     * @param receivableFeeManagements 搴旀敹璐圭敤绠$悊
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements){
+        return receivableFeeManagementMapper.updateReceivableFeeManagementBatch(receivableFeeManagements);
+    }
+
+    /**
+     * 鍒犻櫎搴旀敹璐圭敤绠$悊瀵硅薄
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteReceivableFeeManagementByIds(String ids)
+    {
+        return deleteReceivableFeeManagementByIds(Convert.toIntArray(ids));
+    }
+
+    /**
+     * 鍒犻櫎搴旀敹璐圭敤绠$悊瀵硅薄
+     *
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteReceivableFeeManagementByIds(Integer[] ids)
+    {
+        return receivableFeeManagementMapper.deleteReceivableFeeManagementByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎搴旀敹璐圭敤绠$悊淇℃伅
+     *
+     * @param id 搴旀敹璐圭敤绠$悊ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteReceivableFeeManagementById(Integer id)
+    {
+        return receivableFeeManagementMapper.deleteReceivableFeeManagementById(id);
+    }
+}
diff --git a/service/src/main/resources/mapper/cwgl/PayableFeeManagementMapper.xml b/service/src/main/resources/mapper/cwgl/PayableFeeManagementMapper.xml
new file mode 100644
index 0000000..d101da4
--- /dev/null
+++ b/service/src/main/resources/mapper/cwgl/PayableFeeManagementMapper.xml
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.cwgl.mapper.PayableFeeManagementMapper">
+
+    <resultMap type="com.ruoyi.cwgl.domain.PayableFeeManagement" id="PayableFeeManagementResult">
+        <result property="id"    column="id"    />
+        <result property="systemNo"    column="system_no"    />
+        <result property="relatedBillNo"    column="related_bill_no"    />
+        <result property="sourceSystem"    column="source_system"    />
+        <result property="businessSector"    column="business_sector"    />
+        <result property="documentType"    column="document_type"    />
+        <result property="documentNo"    column="document_no"    />
+        <result property="isInternalSettlement"    column="is_internal_settlement"    />
+        <result property="internalSettlementUnit"    column="internal_settlement_unit"    />
+        <result property="supplierName"    column="supplier_name"    />
+        <result property="projectName"    column="project_name"    />
+        <result property="businessTime"    column="business_time"    />
+        <result property="payableConfirmTime"    column="payable_confirm_time"    />
+        <result property="payableAmount"    column="payable_amount"    />
+        <result property="status"    column="status"    />
+        <result property="remark"    column="remark"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="deleted"    column="deleted"    />
+    </resultMap>
+
+    <sql id="selectPayableFeeManagementVo">
+        select thisTab.id, thisTab.system_no, thisTab.related_bill_no, thisTab.source_system, thisTab.business_sector, thisTab.document_type, thisTab.document_no, thisTab.is_internal_settlement, thisTab.internal_settlement_unit, thisTab.supplier_name, thisTab.project_name, thisTab.business_time, thisTab.payable_confirm_time, thisTab.payable_amount, thisTab.status, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.deleted from payable_fee_management AS thisTab
+    </sql>
+    <sql id="selectPayableFeeManagementVoCount">
+        select count(0) from payable_fee_management as thisTab
+    </sql>
+
+    <sql id="whereCondition">
+        <if test="systemNo != null  and systemNo != ''"> and thisTab.system_no = #{systemNo}</if>
+        <if test="relatedBillNo != null  and relatedBillNo != ''"> and thisTab.related_bill_no = #{relatedBillNo}</if>
+        <if test="sourceSystem != null  and sourceSystem != ''"> and thisTab.source_system = #{sourceSystem}</if>
+        <if test="businessSector != null  and businessSector != ''"> and thisTab.business_sector = #{businessSector}</if>
+        <if test="documentType != null  and documentType != ''"> and thisTab.document_type = #{documentType}</if>
+        <if test="documentNo != null  and documentNo != ''"> and thisTab.document_no = #{documentNo}</if>
+        <if test="isInternalSettlement != null  and isInternalSettlement != ''"> and thisTab.is_internal_settlement = #{isInternalSettlement}</if>
+        <if test="internalSettlementUnit != null  and internalSettlementUnit != ''"> and thisTab.internal_settlement_unit = #{internalSettlementUnit}</if>
+        <if test="supplierName != null  and supplierName != ''"> and  thisTab.supplier_name like concat('%', #{supplierName}, '%')</if>
+        <if test="projectName != null  and projectName != ''"> and  thisTab.project_name like concat('%', #{projectName}, '%')</if>
+        <if test="businessTime != null "> and thisTab.business_time = #{businessTime}</if>
+        <if test="payableConfirmTime != null "> and thisTab.payable_confirm_time = #{payableConfirmTime}</if>
+        <if test="payableAmount != null "> and thisTab.payable_amount = #{payableAmount}</if>
+        <if test="status != null  and status != ''"> and thisTab.status = #{status}</if>
+        <if test="deleted != null "> and thisTab.deleted = #{deleted}</if>
+    </sql>
+
+    <!--鏌ヨ-->
+    <select id="selectPayableFeeManagementById" parameterType="Integer" resultMap="PayableFeeManagementResult">
+        <include refid="selectPayableFeeManagementVo"/>
+        where id = #{id}
+    </select>
+
+    <select id="selectPayableFeeManagementCount" parameterType="com.ruoyi.cwgl.domain.PayableFeeManagement" resultType="int">
+        <include refid="selectPayableFeeManagementVoCount"/>
+        <where>
+            <include refid="whereCondition"/>
+        </where>
+    </select>
+
+    <select id="selectPayableFeeManagementList" parameterType="com.ruoyi.cwgl.domain.PayableFeeManagement" resultMap="PayableFeeManagementResult">
+        <include refid="selectPayableFeeManagementVo"/>
+        <where>
+            <include refid="whereCondition"/>
+        </where>
+        order by thisTab.id desc
+    </select>
+
+    <!-- 鏂板 -->
+    <insert id="insertPayableFeeManagement" parameterType="com.ruoyi.cwgl.domain.PayableFeeManagement"  useGeneratedKeys="true" keyProperty="id">
+        insert into payable_fee_management
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="systemNo != null and systemNo != ''">system_no,</if>
+            <if test="relatedBillNo != null and relatedBillNo != ''">related_bill_no,</if>
+            <if test="sourceSystem != null and sourceSystem != ''">source_system,</if>
+            <if test="businessSector != null and businessSector != ''">business_sector,</if>
+            <if test="documentType != null and documentType != ''">document_type,</if>
+            <if test="documentNo != null and documentNo != ''">document_no,</if>
+            <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement,</if>
+            <if test="internalSettlementUnit != null">internal_settlement_unit,</if>
+            <if test="supplierName != null and supplierName != ''">supplier_name,</if>
+            <if test="projectName != null">project_name,</if>
+            <if test="businessTime != null">business_time,</if>
+            <if test="payableConfirmTime != null">payable_confirm_time,</if>
+            <if test="payableAmount != null">payable_amount,</if>
+            <if test="status != null">status,</if>
+            <if test="remark != null">remark,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="deleted != null">deleted,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="systemNo != null and systemNo != ''">#{systemNo},</if>
+            <if test="relatedBillNo != null and relatedBillNo != ''">#{relatedBillNo},</if>
+            <if test="sourceSystem != null and sourceSystem != ''">#{sourceSystem},</if>
+            <if test="businessSector != null and businessSector != ''">#{businessSector},</if>
+            <if test="documentType != null and documentType != ''">#{documentType},</if>
+            <if test="documentNo != null and documentNo != ''">#{documentNo},</if>
+            <if test="isInternalSettlement != null and isInternalSettlement != ''">#{isInternalSettlement},</if>
+            <if test="internalSettlementUnit != null">#{internalSettlementUnit},</if>
+            <if test="supplierName != null and supplierName != ''">#{supplierName},</if>
+            <if test="projectName != null">#{projectName},</if>
+            <if test="businessTime != null">#{businessTime},</if>
+            <if test="payableConfirmTime != null">#{payableConfirmTime},</if>
+            <if test="payableAmount != null">#{payableAmount},</if>
+            <if test="status != null">#{status},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="deleted != null">#{deleted},</if>
+         </trim>
+    </insert>
+
+    <insert id="insertPayableFeeManagementBatch" parameterType="java.util.List"  useGeneratedKeys="true" keyProperty="id">
+        insert into payable_fee_management
+        <trim prefix="(" suffix=") values" suffixOverrides=",">
+            id,system_no,related_bill_no,source_system,business_sector,document_type,document_no,is_internal_settlement,internal_settlement_unit,supplier_name,project_name,business_time,payable_confirm_time,payable_amount,status,remark,create_by,create_time,update_by,update_time,deleted,
+        </trim>
+        <foreach item="item" index="index" collection="list" separator=",">
+            <trim prefix="(" suffix=") " suffixOverrides=",">
+                #{item.id},#{item.systemNo},#{item.relatedBillNo},#{item.sourceSystem},#{item.businessSector},#{item.documentType},#{item.documentNo},#{item.isInternalSettlement},#{item.internalSettlementUnit},#{item.supplierName},#{item.projectName},#{item.businessTime},#{item.payableConfirmTime},#{item.payableAmount},#{item.status},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.deleted},
+            </trim>
+        </foreach>
+    </insert>
+
+    <!-- 淇敼 -->
+    <update id="updatePayableFeeManagement" parameterType="com.ruoyi.cwgl.domain.PayableFeeManagement">
+        update payable_fee_management
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="systemNo != null and systemNo != ''">system_no = #{systemNo},</if>
+            <if test="relatedBillNo != null and relatedBillNo != ''">related_bill_no = #{relatedBillNo},</if>
+            <if test="sourceSystem != null and sourceSystem != ''">source_system = #{sourceSystem},</if>
+            <if test="businessSector != null and businessSector != ''">business_sector = #{businessSector},</if>
+            <if test="documentType != null and documentType != ''">document_type = #{documentType},</if>
+            <if test="documentNo != null and documentNo != ''">document_no = #{documentNo},</if>
+            <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement = #{isInternalSettlement},</if>
+            <if test="internalSettlementUnit != null">internal_settlement_unit = #{internalSettlementUnit},</if>
+            <if test="supplierName != null and supplierName != ''">supplier_name = #{supplierName},</if>
+            <if test="projectName != null">project_name = #{projectName},</if>
+            <if test="businessTime != null">business_time = #{businessTime},</if>
+            <if test="payableConfirmTime != null">payable_confirm_time = #{payableConfirmTime},</if>
+            <if test="payableAmount != null">payable_amount = #{payableAmount},</if>
+            <if test="status != null">status = #{status},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="deleted != null">deleted = #{deleted},</if>
+        </trim>
+        where id = #{id}
+    </update>
+    <!-- 淇敼 -->
+    <update id="updatePayableFeeManagementBatch" parameterType="java.util.List">
+        <foreach collection="list" item="item" index="index" separator=";">
+            update payable_fee_management
+            <trim prefix="SET" suffixOverrides=",">
+                <if test="item.systemNo != null and item.systemNo != ''">system_no = #{item.systemNo},</if>
+                <if test="item.relatedBillNo != null and item.relatedBillNo != ''">related_bill_no = #{item.relatedBillNo},</if>
+                <if test="item.sourceSystem != null and item.sourceSystem != ''">source_system = #{item.sourceSystem},</if>
+                <if test="item.businessSector != null and item.businessSector != ''">business_sector = #{item.businessSector},</if>
+                <if test="item.documentType != null and item.documentType != ''">document_type = #{item.documentType},</if>
+                <if test="item.documentNo != null and item.documentNo != ''">document_no = #{item.documentNo},</if>
+                <if test="item.isInternalSettlement != null and item.isInternalSettlement != ''">is_internal_settlement = #{item.isInternalSettlement},</if>
+                <if test="item.internalSettlementUnit != null">internal_settlement_unit = #{item.internalSettlementUnit},</if>
+                <if test="item.supplierName != null and item.supplierName != ''">supplier_name = #{item.supplierName},</if>
+                <if test="item.projectName != null">project_name = #{item.projectName},</if>
+                <if test="item.businessTime != null">business_time = #{item.businessTime},</if>
+                <if test="item.payableConfirmTime != null">payable_confirm_time = #{item.payableConfirmTime},</if>
+                <if test="item.payableAmount != null">payable_amount = #{item.payableAmount},</if>
+                <if test="item.status != null">status = #{item.status},</if>
+                <if test="item.remark != null">remark = #{item.remark},</if>
+                <if test="item.createBy != null">create_by = #{item.createBy},</if>
+                <if test="item.createTime != null">create_time = #{item.createTime},</if>
+                <if test="item.updateBy != null">update_by = #{item.updateBy},</if>
+                <if test="item.updateTime != null">update_time = #{item.updateTime},</if>
+                <if test="item.deleted != null">deleted = #{item.deleted},</if>
+            </trim>
+        where id = #{item.id}
+        </foreach>
+    </update>
+
+    <!--鍒犻櫎-->
+    <delete id="deletePayableFeeManagementById" parameterType="Integer">
+        delete from payable_fee_management where id = #{id}
+    </delete>
+    <delete id="deletePayableFeeManagementByIds" parameterType="Integer">
+        delete from payable_fee_management where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
+</mapper>
\ No newline at end of file
diff --git a/service/src/main/resources/mapper/cwgl/ReceivableFeeManagementMapper.xml b/service/src/main/resources/mapper/cwgl/ReceivableFeeManagementMapper.xml
new file mode 100644
index 0000000..fe51739
--- /dev/null
+++ b/service/src/main/resources/mapper/cwgl/ReceivableFeeManagementMapper.xml
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.cwgl.mapper.ReceivableFeeManagementMapper">
+
+    <resultMap type="com.ruoyi.cwgl.domain.ReceivableFeeManagement" id="ReceivableFeeManagementResult">
+        <result property="id"    column="id"    />
+        <result property="systemNo"    column="system_no"    />
+        <result property="relatedBillNo"    column="related_bill_no"    />
+        <result property="sourceSystem"    column="source_system"    />
+        <result property="businessSector"    column="business_sector"    />
+        <result property="documentType"    column="document_type"    />
+        <result property="documentNo"    column="document_no"    />
+        <result property="isInternalSettlement"    column="is_internal_settlement"    />
+        <result property="internalSettlementUnit"    column="internal_settlement_unit"    />
+        <result property="customerName"    column="customer_name"    />
+        <result property="projectName"    column="project_name"    />
+        <result property="businessTime"    column="business_time"    />
+        <result property="receivableConfirmTime"    column="receivable_confirm_time"    />
+        <result property="receivableAmount"    column="receivable_amount"    />
+        <result property="status"    column="status"    />
+        <result property="remark"    column="remark"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="deleted"    column="deleted"    />
+    </resultMap>
+
+    <sql id="selectReceivableFeeManagementVo">
+        select thisTab.id, thisTab.system_no, thisTab.related_bill_no, thisTab.source_system, thisTab.business_sector, thisTab.document_type, thisTab.document_no, thisTab.is_internal_settlement, thisTab.internal_settlement_unit, thisTab.customer_name, thisTab.project_name, thisTab.business_time, thisTab.receivable_confirm_time, thisTab.receivable_amount, thisTab.status, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.deleted from receivable_fee_management AS thisTab
+    </sql>
+    <sql id="selectReceivableFeeManagementVoCount">
+        select count(0) from receivable_fee_management as thisTab
+    </sql>
+
+    <sql id="whereCondition">
+        <if test="systemNo != null  and systemNo != ''"> and thisTab.system_no = #{systemNo}</if>
+        <if test="relatedBillNo != null  and relatedBillNo != ''"> and thisTab.related_bill_no = #{relatedBillNo}</if>
+        <if test="sourceSystem != null  and sourceSystem != ''"> and thisTab.source_system = #{sourceSystem}</if>
+        <if test="businessSector != null  and businessSector != ''"> and thisTab.business_sector = #{businessSector}</if>
+        <if test="documentType != null  and documentType != ''"> and thisTab.document_type = #{documentType}</if>
+        <if test="documentNo != null  and documentNo != ''"> and thisTab.document_no = #{documentNo}</if>
+        <if test="isInternalSettlement != null  and isInternalSettlement != ''"> and thisTab.is_internal_settlement = #{isInternalSettlement}</if>
+        <if test="internalSettlementUnit != null  and internalSettlementUnit != ''"> and thisTab.internal_settlement_unit = #{internalSettlementUnit}</if>
+        <if test="customerName != null  and customerName != ''"> and  thisTab.customer_name like concat('%', #{customerName}, '%')</if>
+        <if test="projectName != null  and projectName != ''"> and  thisTab.project_name like concat('%', #{projectName}, '%')</if>
+        <if test="businessTime != null "> and thisTab.business_time = #{businessTime}</if>
+        <if test="receivableConfirmTime != null "> and thisTab.receivable_confirm_time = #{receivableConfirmTime}</if>
+        <if test="receivableAmount != null "> and thisTab.receivable_amount = #{receivableAmount}</if>
+        <if test="status != null  and status != ''"> and thisTab.status = #{status}</if>
+        <if test="deleted != null "> and thisTab.deleted = #{deleted}</if>
+    </sql>
+
+    <!--鏌ヨ-->
+    <select id="selectReceivableFeeManagementById" parameterType="Integer" resultMap="ReceivableFeeManagementResult">
+        <include refid="selectReceivableFeeManagementVo"/>
+        where id = #{id}
+    </select>
+
+    <select id="selectReceivableFeeManagementCount" parameterType="com.ruoyi.cwgl.domain.ReceivableFeeManagement" resultType="int">
+        <include refid="selectReceivableFeeManagementVoCount"/>
+        <where>
+            <include refid="whereCondition"/>
+        </where>
+    </select>
+
+    <select id="selectReceivableFeeManagementList" parameterType="com.ruoyi.cwgl.domain.ReceivableFeeManagement" resultMap="ReceivableFeeManagementResult">
+        <include refid="selectReceivableFeeManagementVo"/>
+        <where>
+            <include refid="whereCondition"/>
+        </where>
+        order by thisTab.id desc
+    </select>
+
+    <!-- 鏂板 -->
+    <insert id="insertReceivableFeeManagement" parameterType="com.ruoyi.cwgl.domain.ReceivableFeeManagement"  useGeneratedKeys="true" keyProperty="id">
+        insert into receivable_fee_management
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="systemNo != null and systemNo != ''">system_no,</if>
+            <if test="relatedBillNo != null and relatedBillNo != ''">related_bill_no,</if>
+            <if test="sourceSystem != null and sourceSystem != ''">source_system,</if>
+            <if test="businessSector != null and businessSector != ''">business_sector,</if>
+            <if test="documentType != null and documentType != ''">document_type,</if>
+            <if test="documentNo != null and documentNo != ''">document_no,</if>
+            <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement,</if>
+            <if test="internalSettlementUnit != null">internal_settlement_unit,</if>
+            <if test="customerName != null and customerName != ''">customer_name,</if>
+            <if test="projectName != null">project_name,</if>
+            <if test="businessTime != null">business_time,</if>
+            <if test="receivableConfirmTime != null">receivable_confirm_time,</if>
+            <if test="receivableAmount != null">receivable_amount,</if>
+            <if test="status != null">status,</if>
+            <if test="remark != null">remark,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="deleted != null">deleted,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="systemNo != null and systemNo != ''">#{systemNo},</if>
+            <if test="relatedBillNo != null and relatedBillNo != ''">#{relatedBillNo},</if>
+            <if test="sourceSystem != null and sourceSystem != ''">#{sourceSystem},</if>
+            <if test="businessSector != null and businessSector != ''">#{businessSector},</if>
+            <if test="documentType != null and documentType != ''">#{documentType},</if>
+            <if test="documentNo != null and documentNo != ''">#{documentNo},</if>
+            <if test="isInternalSettlement != null and isInternalSettlement != ''">#{isInternalSettlement},</if>
+            <if test="internalSettlementUnit != null">#{internalSettlementUnit},</if>
+            <if test="customerName != null and customerName != ''">#{customerName},</if>
+            <if test="projectName != null">#{projectName},</if>
+            <if test="businessTime != null">#{businessTime},</if>
+            <if test="receivableConfirmTime != null">#{receivableConfirmTime},</if>
+            <if test="receivableAmount != null">#{receivableAmount},</if>
+            <if test="status != null">#{status},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="deleted != null">#{deleted},</if>
+         </trim>
+    </insert>
+
+    <insert id="insertReceivableFeeManagementBatch" parameterType="java.util.List"  useGeneratedKeys="true" keyProperty="id">
+        insert into receivable_fee_management
+        <trim prefix="(" suffix=") values" suffixOverrides=",">
+            id,system_no,related_bill_no,source_system,business_sector,document_type,document_no,is_internal_settlement,internal_settlement_unit,customer_name,project_name,business_time,receivable_confirm_time,receivable_amount,status,remark,create_by,create_time,update_by,update_time,deleted,
+        </trim>
+        <foreach item="item" index="index" collection="list" separator=",">
+            <trim prefix="(" suffix=") " suffixOverrides=",">
+                #{item.id},#{item.systemNo},#{item.relatedBillNo},#{item.sourceSystem},#{item.businessSector},#{item.documentType},#{item.documentNo},#{item.isInternalSettlement},#{item.internalSettlementUnit},#{item.customerName},#{item.projectName},#{item.businessTime},#{item.receivableConfirmTime},#{item.receivableAmount},#{item.status},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.deleted},
+            </trim>
+        </foreach>
+    </insert>
+
+    <!-- 淇敼 -->
+    <update id="updateReceivableFeeManagement" parameterType="com.ruoyi.cwgl.domain.ReceivableFeeManagement">
+        update receivable_fee_management
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="systemNo != null and systemNo != ''">system_no = #{systemNo},</if>
+            <if test="relatedBillNo != null and relatedBillNo != ''">related_bill_no = #{relatedBillNo},</if>
+            <if test="sourceSystem != null and sourceSystem != ''">source_system = #{sourceSystem},</if>
+            <if test="businessSector != null and businessSector != ''">business_sector = #{businessSector},</if>
+            <if test="documentType != null and documentType != ''">document_type = #{documentType},</if>
+            <if test="documentNo != null and documentNo != ''">document_no = #{documentNo},</if>
+            <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement = #{isInternalSettlement},</if>
+            <if test="internalSettlementUnit != null">internal_settlement_unit = #{internalSettlementUnit},</if>
+            <if test="customerName != null and customerName != ''">customer_name = #{customerName},</if>
+            <if test="projectName != null">project_name = #{projectName},</if>
+            <if test="businessTime != null">business_time = #{businessTime},</if>
+            <if test="receivableConfirmTime != null">receivable_confirm_time = #{receivableConfirmTime},</if>
+            <if test="receivableAmount != null">receivable_amount = #{receivableAmount},</if>
+            <if test="status != null">status = #{status},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="deleted != null">deleted = #{deleted},</if>
+        </trim>
+        where id = #{id}
+    </update>
+    <!-- 淇敼 -->
+    <update id="updateReceivableFeeManagementBatch" parameterType="java.util.List">
+        <foreach collection="list" item="item" index="index" separator=";">
+            update receivable_fee_management
+            <trim prefix="SET" suffixOverrides=",">
+                <if test="item.systemNo != null and item.systemNo != ''">system_no = #{item.systemNo},</if>
+                <if test="item.relatedBillNo != null and item.relatedBillNo != ''">related_bill_no = #{item.relatedBillNo},</if>
+                <if test="item.sourceSystem != null and item.sourceSystem != ''">source_system = #{item.sourceSystem},</if>
+                <if test="item.businessSector != null and item.businessSector != ''">business_sector = #{item.businessSector},</if>
+                <if test="item.documentType != null and item.documentType != ''">document_type = #{item.documentType},</if>
+                <if test="item.documentNo != null and item.documentNo != ''">document_no = #{item.documentNo},</if>
+                <if test="item.isInternalSettlement != null and item.isInternalSettlement != ''">is_internal_settlement = #{item.isInternalSettlement},</if>
+                <if test="item.internalSettlementUnit != null">internal_settlement_unit = #{item.internalSettlementUnit},</if>
+                <if test="item.customerName != null and item.customerName != ''">customer_name = #{item.customerName},</if>
+                <if test="item.projectName != null">project_name = #{item.projectName},</if>
+                <if test="item.businessTime != null">business_time = #{item.businessTime},</if>
+                <if test="item.receivableConfirmTime != null">receivable_confirm_time = #{item.receivableConfirmTime},</if>
+                <if test="item.receivableAmount != null">receivable_amount = #{item.receivableAmount},</if>
+                <if test="item.status != null">status = #{item.status},</if>
+                <if test="item.remark != null">remark = #{item.remark},</if>
+                <if test="item.createBy != null">create_by = #{item.createBy},</if>
+                <if test="item.createTime != null">create_time = #{item.createTime},</if>
+                <if test="item.updateBy != null">update_by = #{item.updateBy},</if>
+                <if test="item.updateTime != null">update_time = #{item.updateTime},</if>
+                <if test="item.deleted != null">deleted = #{item.deleted},</if>
+            </trim>
+        where id = #{item.id}
+        </foreach>
+    </update>
+
+    <!--鍒犻櫎-->
+    <delete id="deleteReceivableFeeManagementById" parameterType="Integer">
+        delete from receivable_fee_management where id = #{id}
+    </delete>
+    <delete id="deleteReceivableFeeManagementByIds" parameterType="Integer">
+        delete from receivable_fee_management where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
+</mapper>
\ No newline at end of file
diff --git a/ui/admin-ui3/src/api/cwgl/payableFeeManagement.ts b/ui/admin-ui3/src/api/cwgl/payableFeeManagement.ts
new file mode 100644
index 0000000..3b63c0b
--- /dev/null
+++ b/ui/admin-ui3/src/api/cwgl/payableFeeManagement.ts
@@ -0,0 +1,67 @@
+import request,{download,requestType} from "@/utils/request";
+import {BaseEntityInterface} from "@/utils/globalInterface";
+export interface PayableFeeManagementI extends BaseEntityInterface{
+            id ?:  number   ,            systemNo ?:  string   ,            relatedBillNo ?:  string   ,            sourceSystem ?:  string   ,            businessSector ?:  string   ,            documentType ?:  string   ,            documentNo ?:  string   ,            isInternalSettlement ?:  string   ,            internalSettlementUnit ?:  string   ,            supplierName ?:  string   ,            projectName ?:  string   ,            businessTime ?:  string   ,            payableConfirmTime ?:  string   ,            payableAmount ?:  string   ,            status ?:  string   ,            remark ?:  string   ,            createBy ?:  string   ,            createTime ?:  string   ,            updateBy ?:  string   ,            updateTime ?:  string   ,            deleted ?:  number       }
+
+
+/**
+ * 鏌ヨ搴斾粯璐圭敤绠$悊鍒楄〃
+ */
+export const listPayableFeeManagement:requestType = (query) => {
+    return request({
+        url: '/cwgl/payableFeeManagement/list',
+        method:'get',
+        params:query
+    })
+}
+/**
+ * 鏌ヨ搴斾粯璐圭敤绠$悊璇︾粏
+ */
+export const getPayableFeeManagement:requestType = (id) => {
+    return request({
+        url: '/cwgl/payableFeeManagement/' + id,
+        method:'get'
+    })
+}
+
+/**
+ * 鏂板搴斾粯璐圭敤绠$悊
+ */
+export const addPayableFeeManagement:requestType = (data) => {
+    return request({
+        url: '/cwgl/payableFeeManagement',
+        method: 'post',
+        data
+    })
+}
+
+/**
+ * 淇敼搴斾粯璐圭敤绠$悊
+ */
+export const updatePayableFeeManagement:requestType = (data) => {
+    return request({
+        url: '/cwgl/payableFeeManagement',
+        method: 'put',
+        data
+    })
+}
+
+/**
+ * 鍒犻櫎搴斾粯璐圭敤绠$悊
+ */
+export const delPayableFeeManagement:requestType = (id) => {
+    return request({
+        url: '/cwgl/payableFeeManagement/' + id,
+        method: 'delete'
+    })
+}
+
+
+/**
+ * 瀵煎嚭搴斾粯璐圭敤绠$悊
+ */
+export const exportPayableFeeManagement:requestType = (query) => {
+    return new Promise<any>(()=>{
+        download('/cwgl/payableFeeManagement/export',query);
+    })
+}
diff --git a/ui/admin-ui3/src/api/cwgl/receivableFeeManagement.ts b/ui/admin-ui3/src/api/cwgl/receivableFeeManagement.ts
new file mode 100644
index 0000000..60506f6
--- /dev/null
+++ b/ui/admin-ui3/src/api/cwgl/receivableFeeManagement.ts
@@ -0,0 +1,67 @@
+import request,{download,requestType} from "@/utils/request";
+import {BaseEntityInterface} from "@/utils/globalInterface";
+export interface ReceivableFeeManagementI extends BaseEntityInterface{
+            id ?:  number   ,            systemNo ?:  string   ,            relatedBillNo ?:  string   ,            sourceSystem ?:  string   ,            businessSector ?:  string   ,            documentType ?:  string   ,            documentNo ?:  string   ,            isInternalSettlement ?:  string   ,            internalSettlementUnit ?:  string   ,            customerName ?:  string   ,            projectName ?:  string   ,            businessTime ?:  string   ,            receivableConfirmTime ?:  string   ,            receivableAmount ?:  string   ,            status ?:  string   ,            remark ?:  string   ,            createBy ?:  string   ,            createTime ?:  string   ,            updateBy ?:  string   ,            updateTime ?:  string   ,            deleted ?:  number       }
+
+
+/**
+ * 鏌ヨ搴旀敹璐圭敤绠$悊鍒楄〃
+ */
+export const listReceivableFeeManagement:requestType = (query) => {
+    return request({
+        url: '/cwgl/receivableFeeManagement/list',
+        method:'get',
+        params:query
+    })
+}
+/**
+ * 鏌ヨ搴旀敹璐圭敤绠$悊璇︾粏
+ */
+export const getReceivableFeeManagement:requestType = (id) => {
+    return request({
+        url: '/cwgl/receivableFeeManagement/' + id,
+        method:'get'
+    })
+}
+
+/**
+ * 鏂板搴旀敹璐圭敤绠$悊
+ */
+export const addReceivableFeeManagement:requestType = (data) => {
+    return request({
+        url: '/cwgl/receivableFeeManagement',
+        method: 'post',
+        data
+    })
+}
+
+/**
+ * 淇敼搴旀敹璐圭敤绠$悊
+ */
+export const updateReceivableFeeManagement:requestType = (data) => {
+    return request({
+        url: '/cwgl/receivableFeeManagement',
+        method: 'put',
+        data
+    })
+}
+
+/**
+ * 鍒犻櫎搴旀敹璐圭敤绠$悊
+ */
+export const delReceivableFeeManagement:requestType = (id) => {
+    return request({
+        url: '/cwgl/receivableFeeManagement/' + id,
+        method: 'delete'
+    })
+}
+
+
+/**
+ * 瀵煎嚭搴旀敹璐圭敤绠$悊
+ */
+export const exportReceivableFeeManagement:requestType = (query) => {
+    return new Promise<any>(()=>{
+        download('/cwgl/receivableFeeManagement/export',query);
+    })
+}
diff --git a/ui/admin-ui3/src/views/cwgl/payableFeeManagement/index.vue b/ui/admin-ui3/src/views/cwgl/payableFeeManagement/index.vue
new file mode 100644
index 0000000..5216549
--- /dev/null
+++ b/ui/admin-ui3/src/views/cwgl/payableFeeManagement/index.vue
@@ -0,0 +1,221 @@
+<template>
+  <basicContainer >
+    <avue-crud
+        :option="option"
+        :table-loading="pageF.loading"
+        :data="tableData"
+        :page="page"
+        :permission="permissionList"
+        :before-open="beforeOpen"
+        v-model="form"
+        ref="crudRef"
+        @row-update="rowUpdate"
+        @row-save="rowSave"
+        @refresh-change="refreshChange"
+        @row-del="rowDel"
+        @search-change="searchChange"
+        @search-reset="searchReset"
+        @selection-change="selectionChange"
+        @current-change="currentChange"
+        @size-change="sizeChange"
+        @on-load="onLoad"
+    >
+      <template #menu-left>
+        <el-button
+            type="success"
+            icon="Edit"
+            :disabled="pageF.single"
+            v-hasPermi="['cwgl:payableFeeManagement:edit']"
+            @click="handleUpdate">淇敼
+        </el-button>
+        <el-button
+            type="danger"
+            icon="Delete"
+            :disabled="pageF.multiple"
+            @click="handleDelete"
+            v-hasPermi="['cwgl:payableFeeManagement:remove']"
+        >鍒犻櫎
+        </el-button>
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            v-hasPermi="['cwgl:payableFeeManagement:export']"
+        >瀵煎嚭
+        </el-button>
+      </template>
+    </avue-crud>
+  </basicContainer>
+</template>
+
+<script setup name="payableFeeManagement" lang="ts">
+  import {PayableFeeManagementI,addPayableFeeManagement, delPayableFeeManagement, exportPayableFeeManagement, getPayableFeeManagement, listPayableFeeManagement, updatePayableFeeManagement} from "@/api/cwgl/payableFeeManagement";
+  import useCurrentInstance from "@/utils/useCurrentInstance";
+  import {computed,reactive, ref, toRefs} from "vue";
+  import {PagesInterface, PageQueryInterface} from "@/utils/globalInterface";
+  import {usePagePlus} from "@/hooks/usePagePlus";
+  import {hasPermission} from "@/utils/permissionUtils";
+
+  const { proxy } = useCurrentInstance();
+  const crudRef = ref();
+
+  const permissionList = computed(()=>{
+    return {
+      addBtn: hasPermission(["cwgl:payableFeeManagement:add"]),
+      delBtn: hasPermission(["cwgl:payableFeeManagement:remove"]),
+      editBtn: hasPermission(["cwgl:payableFeeManagement:edit"]),
+      viewBtn: hasPermission(["cwgl:payableFeeManagement:query"]),
+    }
+  })
+
+  const data = reactive({
+    form:<PayableFeeManagementI>{},
+    queryParams:<PayableFeeManagementI&PageQueryInterface>{},
+    page: <PagesInterface>{
+      pageSize: 10,
+      total: 0,
+      currentPage: 1,
+    },
+    selectionList:[],
+  })
+  const {queryParams,form,page,selectionList} = toRefs(data);
+  const option = ref({
+    pageKey: 'PayableFeeManagement',
+    rowKey: 'id',
+    column: {
+                                id: {
+          label: 'ID',
+                            },
+                                systemNo: {
+          label: '绯荤粺缂栧彿',
+                                rules: [
+              {
+                required: true,
+                message: "绯荤粺缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                relatedBillNo: {
+          label: '鍏宠仈璐﹀崟缂栧彿',
+                                rules: [
+              {
+                required: true,
+                message: "鍏宠仈璐﹀崟缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                sourceSystem: {
+          label: '鏉ユ簮绯荤粺',
+                                rules: [
+              {
+                required: true,
+                message: "鏉ユ簮绯荤粺涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                businessSector: {
+          label: '涓氬姟鏉垮潡',
+                                rules: [
+              {
+                required: true,
+                message: "涓氬姟鏉垮潡涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                documentType: {
+          label: '鍗曟嵁绫诲瀷',
+                                rules: [
+              {
+                required: true,
+                message: "鍗曟嵁绫诲瀷涓嶈兘涓虹┖", trigger: "change"
+                 }
+            ],                  },
+                                documentNo: {
+          label: '鍗曟嵁缂栧彿',
+                                rules: [
+              {
+                required: true,
+                message: "鍗曟嵁缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                isInternalSettlement: {
+          label: '鏄惁鍐呴儴缁撶畻',
+                                rules: [
+              {
+                required: true,
+                message: "鏄惁鍐呴儴缁撶畻涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                internalSettlementUnit: {
+          label: '鍐呴儴缁撶畻鍗曚綅',
+                            },
+                                supplierName: {
+          label: '渚涘簲鍟嗗悕绉�',
+                                rules: [
+              {
+                required: true,
+                message: "渚涘簲鍟嗗悕绉颁笉鑳戒负绌�", trigger: "blur" }
+            ],                  },
+                                projectName: {
+          label: '椤圭洰鍚嶇О',
+                            },
+                                businessTime: {
+          label: '涓氬姟鍙戠敓鏃堕棿',
+                                rules: [
+              {
+                required: true,
+                message: "涓氬姟鍙戠敓鏃堕棿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                payableConfirmTime: {
+          label: '搴斾粯纭鏃堕棿',
+                                rules: [
+              {
+                required: true,
+                message: "搴斾粯纭鏃堕棿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                payableAmount: {
+          label: '搴斾粯閲戦',
+                                rules: [
+              {
+                required: true,
+                message: "搴斾粯閲戦涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                status: {
+          label: '鐘舵��',
+                            },
+                                remark: {
+          label: '澶囨敞',
+                      type: 'textarea', minRows: 3, maxRows: 5,
+                            },
+                                createBy: {
+          label: '鍒涘缓浜�',
+                            },
+                                createTime: {
+          label: '鍒涘缓鏃堕棿',
+                            },
+                                updateBy: {
+          label: '鏇存柊浜�',
+                            },
+                                updateTime: {
+          label: '鏇存柊鏃堕棿',
+                            },
+                                deleted: {
+          label: '鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎)',
+                            },
+          }
+  })
+
+  const { tableData,pageF,rowSave,rowUpdate,rowDel,beforeOpen,searchChange,
+    searchReset,selectionChange,onLoad,currentChange,sizeChange,handleDelete,handleExport,handleUpdate,refreshChange} = usePagePlus({
+    form:form,
+    option:option,
+    queryParams:queryParams,
+    idKey:'id',
+    page:page.value,
+    getListApi:listPayableFeeManagement,
+    getDetailApi:getPayableFeeManagement,
+    exportApi:exportPayableFeeManagement,
+    deleteApi:delPayableFeeManagement,
+    addApi:addPayableFeeManagement,
+    updateApi:updatePayableFeeManagement,
+    handleUpdateFunc:()=>{
+      crudRef.value.rowEdit(selectionList.value[0]);
+    },
+    handleSelectionChangeFunc:(selection:any)=>{
+      selectionList.value = selection;
+    }
+  })
+
+
+</script>
diff --git a/ui/admin-ui3/src/views/cwgl/receivableFeeManagement/index.vue b/ui/admin-ui3/src/views/cwgl/receivableFeeManagement/index.vue
new file mode 100644
index 0000000..3d180e5
--- /dev/null
+++ b/ui/admin-ui3/src/views/cwgl/receivableFeeManagement/index.vue
@@ -0,0 +1,221 @@
+<template>
+  <basicContainer >
+    <avue-crud
+        :option="option"
+        :table-loading="pageF.loading"
+        :data="tableData"
+        :page="page"
+        :permission="permissionList"
+        :before-open="beforeOpen"
+        v-model="form"
+        ref="crudRef"
+        @row-update="rowUpdate"
+        @row-save="rowSave"
+        @refresh-change="refreshChange"
+        @row-del="rowDel"
+        @search-change="searchChange"
+        @search-reset="searchReset"
+        @selection-change="selectionChange"
+        @current-change="currentChange"
+        @size-change="sizeChange"
+        @on-load="onLoad"
+    >
+      <template #menu-left>
+        <el-button
+            type="success"
+            icon="Edit"
+            :disabled="pageF.single"
+            v-hasPermi="['cwgl:receivableFeeManagement:edit']"
+            @click="handleUpdate">淇敼
+        </el-button>
+        <el-button
+            type="danger"
+            icon="Delete"
+            :disabled="pageF.multiple"
+            @click="handleDelete"
+            v-hasPermi="['cwgl:receivableFeeManagement:remove']"
+        >鍒犻櫎
+        </el-button>
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            v-hasPermi="['cwgl:receivableFeeManagement:export']"
+        >瀵煎嚭
+        </el-button>
+      </template>
+    </avue-crud>
+  </basicContainer>
+</template>
+
+<script setup name="receivableFeeManagement" lang="ts">
+  import {ReceivableFeeManagementI,addReceivableFeeManagement, delReceivableFeeManagement, exportReceivableFeeManagement, getReceivableFeeManagement, listReceivableFeeManagement, updateReceivableFeeManagement} from "@/api/cwgl/receivableFeeManagement";
+  import useCurrentInstance from "@/utils/useCurrentInstance";
+  import {computed,reactive, ref, toRefs} from "vue";
+  import {PagesInterface, PageQueryInterface} from "@/utils/globalInterface";
+  import {usePagePlus} from "@/hooks/usePagePlus";
+  import {hasPermission} from "@/utils/permissionUtils";
+
+  const { proxy } = useCurrentInstance();
+  const crudRef = ref();
+
+  const permissionList = computed(()=>{
+    return {
+      addBtn: hasPermission(["cwgl:receivableFeeManagement:add"]),
+      delBtn: hasPermission(["cwgl:receivableFeeManagement:remove"]),
+      editBtn: hasPermission(["cwgl:receivableFeeManagement:edit"]),
+      viewBtn: hasPermission(["cwgl:receivableFeeManagement:query"]),
+    }
+  })
+
+  const data = reactive({
+    form:<ReceivableFeeManagementI>{},
+    queryParams:<ReceivableFeeManagementI&PageQueryInterface>{},
+    page: <PagesInterface>{
+      pageSize: 10,
+      total: 0,
+      currentPage: 1,
+    },
+    selectionList:[],
+  })
+  const {queryParams,form,page,selectionList} = toRefs(data);
+  const option = ref({
+    pageKey: 'ReceivableFeeManagement',
+    rowKey: 'id',
+    column: {
+                                id: {
+          label: 'ID',
+                            },
+                                systemNo: {
+          label: '绯荤粺缂栧彿',
+                                rules: [
+              {
+                required: true,
+                message: "绯荤粺缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                relatedBillNo: {
+          label: '鍏宠仈璐﹀崟缂栧彿',
+                                rules: [
+              {
+                required: true,
+                message: "鍏宠仈璐﹀崟缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                sourceSystem: {
+          label: '鏉ユ簮绯荤粺',
+                                rules: [
+              {
+                required: true,
+                message: "鏉ユ簮绯荤粺涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                businessSector: {
+          label: '涓氬姟鏉垮潡',
+                                rules: [
+              {
+                required: true,
+                message: "涓氬姟鏉垮潡涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                documentType: {
+          label: '鍗曟嵁绫诲瀷',
+                                rules: [
+              {
+                required: true,
+                message: "鍗曟嵁绫诲瀷涓嶈兘涓虹┖", trigger: "change"
+                 }
+            ],                  },
+                                documentNo: {
+          label: '鍗曟嵁缂栧彿',
+                                rules: [
+              {
+                required: true,
+                message: "鍗曟嵁缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                isInternalSettlement: {
+          label: '鏄惁鍐呴儴缁撶畻',
+                                rules: [
+              {
+                required: true,
+                message: "鏄惁鍐呴儴缁撶畻涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                internalSettlementUnit: {
+          label: '鍐呴儴缁撶畻鍗曚綅',
+                            },
+                                customerName: {
+          label: '瀹㈡埛鍚嶇О',
+                                rules: [
+              {
+                required: true,
+                message: "瀹㈡埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                projectName: {
+          label: '椤圭洰鍚嶇О',
+                            },
+                                businessTime: {
+          label: '涓氬姟鍙戠敓鏃堕棿',
+                                rules: [
+              {
+                required: true,
+                message: "涓氬姟鍙戠敓鏃堕棿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                receivableConfirmTime: {
+          label: '搴旀敹纭鏃堕棿',
+                                rules: [
+              {
+                required: true,
+                message: "搴旀敹纭鏃堕棿涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                receivableAmount: {
+          label: '搴旀敹閲戦',
+                                rules: [
+              {
+                required: true,
+                message: "搴旀敹閲戦涓嶈兘涓虹┖", trigger: "blur" }
+            ],                  },
+                                status: {
+          label: '鐘舵��',
+                            },
+                                remark: {
+          label: '澶囨敞',
+                      type: 'textarea', minRows: 3, maxRows: 5,
+                            },
+                                createBy: {
+          label: '鍒涘缓浜�',
+                            },
+                                createTime: {
+          label: '鍒涘缓鏃堕棿',
+                            },
+                                updateBy: {
+          label: '鏇存柊浜�',
+                            },
+                                updateTime: {
+          label: '鏇存柊鏃堕棿',
+                            },
+                                deleted: {
+          label: '鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎)',
+                            },
+          }
+  })
+
+  const { tableData,pageF,rowSave,rowUpdate,rowDel,beforeOpen,searchChange,
+    searchReset,selectionChange,onLoad,currentChange,sizeChange,handleDelete,handleExport,handleUpdate,refreshChange} = usePagePlus({
+    form:form,
+    option:option,
+    queryParams:queryParams,
+    idKey:'id',
+    page:page.value,
+    getListApi:listReceivableFeeManagement,
+    getDetailApi:getReceivableFeeManagement,
+    exportApi:exportReceivableFeeManagement,
+    deleteApi:delReceivableFeeManagement,
+    addApi:addReceivableFeeManagement,
+    updateApi:updateReceivableFeeManagement,
+    handleUpdateFunc:()=>{
+      crudRef.value.rowEdit(selectionList.value[0]);
+    },
+    handleSelectionChangeFunc:(selection:any)=>{
+      selectionList.value = selection;
+    }
+  })
+
+
+</script>

--
Gitblit v1.8.0