From 594f8a604564a3ebefe99cb32e63e647aa9b14bd Mon Sep 17 00:00:00 2001
From: sen <sen@qq.com>
Date: 星期三, 17 十二月 2025 17:50:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cwxt_master' into cwxt_master
---
ui/admin-ui3/src/api/cwgl/receivableBillManagement.ts | 67
service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillSettlementDetailMapper.java | 87 +
service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeDetail.java | 4
service/src/main/resources/mapper/cwgl/ReceivableBillManagementMapper.xml | 254 +++
ui/admin-ui3/src/api/cwgl/receivableBillSettlementDetail.ts | 67
ui/admin-ui3/src/views/cwgl/payableBillSettlementDetail/index.vue | 177 ++
service/src/main/java/com/ruoyi/cwgl/domain/PayableBillSettlementDetail.java | 125 +
service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillManagement.java | 222 ++
service/src/main/java/com/ruoyi/cwgl/controller/PayableBillSettlementDetailController.java | 108 +
service/src/main/java/com/ruoyi/cwgl/service/IPayableBillManagementService.java | 102 +
service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillManagementService.java | 102 +
service/src/main/resources/mapper/cwgl/PayableBillManagementMapper.xml | 254 +++
service/src/main/resources/mapper/cwgl/ReceivableBillSettlementDetailMapper.xml | 176 ++
ui/admin-ui3/src/views/cwgl/payableBillManagement/index.vue | 245 +++
service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillSettlementDetail.java | 124 +
service/src/main/resources/mapper/cwgl/PayableBillSettlementDetailMapper.xml | 176 ++
service/src/main/java/com/ruoyi/cwgl/service/IPayableBillSettlementDetailService.java | 102 +
service/src/main/java/com/ruoyi/cwgl/domain/PayableBillManagement.java | 222 ++
service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java | 108 +
ui/admin-ui3/src/api/cwgl/payableBillManagement.ts | 67
service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillSettlementDetailController.java | 108 +
service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillSettlementDetailService.java | 102 +
service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillManagementServiceImpl.java | 182 ++
service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillSettlementDetailServiceImpl.java | 182 ++
service/src/main/java/com/ruoyi/cwgl/controller/PayableBillManagementController.java | 108 +
service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillManagementMapper.java | 87 +
service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillSettlementDetailServiceImpl.java | 182 ++
ui/admin-ui3/src/api/cwgl/payableBillSettlementDetail.ts | 67
service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillManagementServiceImpl.java | 182 ++
service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillSettlementDetailMapper.java | 87 +
ui/admin-ui3/src/views/cwgl/receivableBillSettlementDetail/index.vue | 177 ++
service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillManagementMapper.java | 87 +
ui/admin-ui3/src/views/cwgl/receivableBillManagement/index.vue | 245 +++
33 files changed, 4,583 insertions(+), 2 deletions(-)
diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/PayableBillManagementController.java b/service/src/main/java/com/ruoyi/cwgl/controller/PayableBillManagementController.java
new file mode 100644
index 0000000..2916ee3
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/PayableBillManagementController.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.PayableBillManagement;
+import com.ruoyi.cwgl.service.IPayableBillManagementService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 搴斾粯璐﹀崟绠$悊Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@RestController
+@RequestMapping("/cwgl/payableBillManagement")
+public class PayableBillManagementController extends BaseController
+{
+ @Autowired
+ private IPayableBillManagementService payableBillManagementService;
+
+
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillManagement:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(PayableBillManagement payableBillManagement)
+ {
+ startPage();
+ List<PayableBillManagement> list = payableBillManagementService.selectPayableBillManagementList(payableBillManagement);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭搴斾粯璐﹀崟绠$悊鍒楄〃
+ * @param payableBillManagement 鏌ヨ鏉′欢瀵硅薄
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillManagement:export')")
+ @Log(title = "搴斾粯璐﹀崟绠$悊", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(PayableBillManagement payableBillManagement,String exportKey)
+ {
+ payableBillManagementService.export(payableBillManagement,exportKey);
+ return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!");
+ }
+
+
+
+ /**
+ * 鑾峰彇搴斾粯璐﹀崟绠$悊璇︾粏淇℃伅
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillManagement:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Integer id)
+ {
+ return AjaxResult.success(payableBillManagementService.selectPayableBillManagementById(id));
+ }
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillManagement:add')")
+ @Log(title = "搴斾粯璐﹀崟绠$悊", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody PayableBillManagement payableBillManagement)
+ {
+ return toAjax(payableBillManagementService.insertPayableBillManagement(payableBillManagement));
+ }
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillManagement:edit')")
+ @Log(title = "搴斾粯璐﹀崟绠$悊", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody PayableBillManagement payableBillManagement)
+ {
+ return toAjax(payableBillManagementService.updatePayableBillManagement(payableBillManagement));
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillManagement:remove')")
+ @Log(title = "搴斾粯璐﹀崟绠$悊", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Integer[] ids)
+ {
+ return toAjax(payableBillManagementService.deletePayableBillManagementByIds(ids));
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/PayableBillSettlementDetailController.java b/service/src/main/java/com/ruoyi/cwgl/controller/PayableBillSettlementDetailController.java
new file mode 100644
index 0000000..12918c1
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/PayableBillSettlementDetailController.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.PayableBillSettlementDetail;
+import com.ruoyi.cwgl.service.IPayableBillSettlementDetailService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 搴斾粯璐﹀崟缁撶畻鏄庣粏Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@RestController
+@RequestMapping("/cwgl/payableBillSettlementDetail")
+public class PayableBillSettlementDetailController extends BaseController
+{
+ @Autowired
+ private IPayableBillSettlementDetailService payableBillSettlementDetailService;
+
+
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillSettlementDetail:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ startPage();
+ List<PayableBillSettlementDetail> list = payableBillSettlementDetailService.selectPayableBillSettlementDetailList(payableBillSettlementDetail);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ * @param payableBillSettlementDetail 鏌ヨ鏉′欢瀵硅薄
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillSettlementDetail:export')")
+ @Log(title = "搴斾粯璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(PayableBillSettlementDetail payableBillSettlementDetail,String exportKey)
+ {
+ payableBillSettlementDetailService.export(payableBillSettlementDetail,exportKey);
+ return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!");
+ }
+
+
+
+ /**
+ * 鑾峰彇搴斾粯璐﹀崟缁撶畻鏄庣粏璇︾粏淇℃伅
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillSettlementDetail:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Integer id)
+ {
+ return AjaxResult.success(payableBillSettlementDetailService.selectPayableBillSettlementDetailById(id));
+ }
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillSettlementDetail:add')")
+ @Log(title = "搴斾粯璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ return toAjax(payableBillSettlementDetailService.insertPayableBillSettlementDetail(payableBillSettlementDetail));
+ }
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillSettlementDetail:edit')")
+ @Log(title = "搴斾粯璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ return toAjax(payableBillSettlementDetailService.updatePayableBillSettlementDetail(payableBillSettlementDetail));
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:payableBillSettlementDetail:remove')")
+ @Log(title = "搴斾粯璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Integer[] ids)
+ {
+ return toAjax(payableBillSettlementDetailService.deletePayableBillSettlementDetailByIds(ids));
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java
new file mode 100644
index 0000000..61dc87c
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.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.ReceivableBillManagement;
+import com.ruoyi.cwgl.service.IReceivableBillManagementService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 搴旀敹璐﹀崟绠$悊Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@RestController
+@RequestMapping("/cwgl/receivableBillManagement")
+public class ReceivableBillManagementController extends BaseController
+{
+ @Autowired
+ private IReceivableBillManagementService receivableBillManagementService;
+
+
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(ReceivableBillManagement receivableBillManagement)
+ {
+ startPage();
+ List<ReceivableBillManagement> list = receivableBillManagementService.selectReceivableBillManagementList(receivableBillManagement);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭搴旀敹璐﹀崟绠$悊鍒楄〃
+ * @param receivableBillManagement 鏌ヨ鏉′欢瀵硅薄
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:export')")
+ @Log(title = "搴旀敹璐﹀崟绠$悊", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ReceivableBillManagement receivableBillManagement,String exportKey)
+ {
+ receivableBillManagementService.export(receivableBillManagement,exportKey);
+ return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!");
+ }
+
+
+
+ /**
+ * 鑾峰彇搴旀敹璐﹀崟绠$悊璇︾粏淇℃伅
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Integer id)
+ {
+ return AjaxResult.success(receivableBillManagementService.selectReceivableBillManagementById(id));
+ }
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:add')")
+ @Log(title = "搴旀敹璐﹀崟绠$悊", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ReceivableBillManagement receivableBillManagement)
+ {
+ return toAjax(receivableBillManagementService.insertReceivableBillManagement(receivableBillManagement));
+ }
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:edit')")
+ @Log(title = "搴旀敹璐﹀崟绠$悊", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ReceivableBillManagement receivableBillManagement)
+ {
+ return toAjax(receivableBillManagementService.updateReceivableBillManagement(receivableBillManagement));
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:remove')")
+ @Log(title = "搴旀敹璐﹀崟绠$悊", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Integer[] ids)
+ {
+ return toAjax(receivableBillManagementService.deleteReceivableBillManagementByIds(ids));
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillSettlementDetailController.java b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillSettlementDetailController.java
new file mode 100644
index 0000000..e5e755e
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillSettlementDetailController.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.ReceivableBillSettlementDetail;
+import com.ruoyi.cwgl.service.IReceivableBillSettlementDetailService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 搴旀敹璐﹀崟缁撶畻鏄庣粏Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@RestController
+@RequestMapping("/cwgl/receivableBillSettlementDetail")
+public class ReceivableBillSettlementDetailController extends BaseController
+{
+ @Autowired
+ private IReceivableBillSettlementDetailService receivableBillSettlementDetailService;
+
+
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillSettlementDetail:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ startPage();
+ List<ReceivableBillSettlementDetail> list = receivableBillSettlementDetailService.selectReceivableBillSettlementDetailList(receivableBillSettlementDetail);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ * @param receivableBillSettlementDetail 鏌ヨ鏉′欢瀵硅薄
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillSettlementDetail:export')")
+ @Log(title = "搴旀敹璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ReceivableBillSettlementDetail receivableBillSettlementDetail,String exportKey)
+ {
+ receivableBillSettlementDetailService.export(receivableBillSettlementDetail,exportKey);
+ return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!");
+ }
+
+
+
+ /**
+ * 鑾峰彇搴旀敹璐﹀崟缁撶畻鏄庣粏璇︾粏淇℃伅
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillSettlementDetail:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Integer id)
+ {
+ return AjaxResult.success(receivableBillSettlementDetailService.selectReceivableBillSettlementDetailById(id));
+ }
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillSettlementDetail:add')")
+ @Log(title = "搴旀敹璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ return toAjax(receivableBillSettlementDetailService.insertReceivableBillSettlementDetail(receivableBillSettlementDetail));
+ }
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillSettlementDetail:edit')")
+ @Log(title = "搴旀敹璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ return toAjax(receivableBillSettlementDetailService.updateReceivableBillSettlementDetail(receivableBillSettlementDetail));
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ @PreAuthorize("@ss.hasPermi('cwgl:receivableBillSettlementDetail:remove')")
+ @Log(title = "搴旀敹璐﹀崟缁撶畻鏄庣粏", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Integer[] ids)
+ {
+ return toAjax(receivableBillSettlementDetailService.deleteReceivableBillSettlementDetailByIds(ids));
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/PayableBillManagement.java b/service/src/main/java/com/ruoyi/cwgl/domain/PayableBillManagement.java
new file mode 100644
index 0000000..457e706
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/PayableBillManagement.java
@@ -0,0 +1,222 @@
+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_bill_management
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Data
+public class PayableBillManagement{
+
+
+ /** ID */
+ @TableField("id")
+ private Integer id;
+
+
+ /** 绯荤粺缂栧彿 */
+ @Excel(name = "绯荤粺缂栧彿")
+
+ @TableField("system_no")
+ private String systemNo;
+
+
+ /** 璐﹀崟鍚嶇О */
+ @Excel(name = "璐﹀崟鍚嶇О")
+
+ @TableField("bill_name")
+ private String billName;
+
+
+ /** 渚涘簲鍟嗗悕绉� */
+ @Excel(name = "渚涘簲鍟嗗悕绉�")
+
+ @TableField("supplier_name")
+ private String supplierName;
+
+
+ /** 鏄惁鍐呴儴缁撶畻 */
+ @Excel(name = "鏄惁鍐呴儴缁撶畻")
+
+ @TableField("is_internal_settlement")
+ private String isInternalSettlement;
+
+
+ /** 鍐呴儴缁撶畻鍗曚綅 */
+ @Excel(name = "鍐呴儴缁撶畻鍗曚綅")
+
+ @TableField("internal_settlement_unit")
+ private String internalSettlementUnit;
+
+
+ /** 鍗曟嵁鏁伴噺 */
+ @Excel(name = "鍗曟嵁鏁伴噺")
+
+ @TableField("document_count")
+ private Integer documentCount;
+
+
+ /** 搴旂粨绠楅噾棰� */
+ @Excel(name = "搴旂粨绠楅噾棰�")
+
+ @TableField("total_amount")
+ private BigDecimal totalAmount;
+
+
+ /** 甯佸埗 */
+ @Excel(name = "甯佸埗")
+
+ @TableField("currency")
+ private String currency;
+
+
+ /** 鍑忓厤閲戦 */
+ @Excel(name = "鍑忓厤閲戦")
+
+ @TableField("discount_amount")
+ private BigDecimal discountAmount;
+
+
+ /** 宸蹭粯閲戦 */
+ @Excel(name = "宸蹭粯閲戦")
+
+ @TableField("paid_amount")
+ private BigDecimal paidAmount;
+
+
+ /** 寰呬粯閲戦 */
+ @Excel(name = "寰呬粯閲戦")
+
+ @TableField("pending_amount")
+ private BigDecimal pendingAmount;
+
+
+ /** 姹囩巼锛堟腐甯佸厬浜烘皯甯侊級 */
+ @Excel(name = "姹囩巼", readConverterExp = "娓�=甯佸厬浜烘皯甯�")
+
+ @TableField("exchange_rate")
+ private BigDecimal exchangeRate;
+
+
+ /** 浜烘皯甯侀噾棰� */
+ @Excel(name = "浜烘皯甯侀噾棰�")
+
+ @TableField("cny_amount")
+ private BigDecimal cnyAmount;
+
+
+ /** 鍛ㄦ湡绫诲瀷 */
+ @Excel(name = "鍛ㄦ湡绫诲瀷")
+
+ @TableField("period_type")
+ private String periodType;
+
+
+ /** 涓氬姟鏈熼棿寮�濮嬫棩鏈� */
+ @Excel(name = "涓氬姟鏈熼棿寮�濮嬫棩鏈�", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("business_start_date")
+ private Date businessStartDate;
+
+
+ /** 涓氬姟鏈熼棿缁撴潫鏃ユ湡 */
+ @Excel(name = "涓氬姟鏈熼棿缁撴潫鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("business_end_date")
+ private Date businessEndDate;
+
+
+ /** 璐︽湡寮�濮嬫棩鏈� */
+ @Excel(name = "璐︽湡寮�濮嬫棩鏈�", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("billing_start_date")
+ private Date billingStartDate;
+
+
+ /** 璐︽湡缁撴潫鏃ユ湡 */
+ @Excel(name = "璐︽湡缁撴潫鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("billing_end_date")
+ private Date billingEndDate;
+
+
+ /** 璐﹀崟鐢熸垚鏃ユ湡 */
+ @Excel(name = "璐﹀崟鐢熸垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("bill_generate_date")
+ private Date billGenerateDate;
+
+
+ /** 璐﹀崟鍙戦�佹棩鏈� */
+ @Excel(name = "璐﹀崟鍙戦�佹棩鏈�", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("bill_send_date")
+ private Date billSendDate;
+
+
+ /** 璐﹀崟鍒版湡鏃ユ湡 */
+ @Excel(name = "璐﹀崟鍒版湡鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("bill_due_date")
+ private Date billDueDate;
+
+
+ /** 鐘舵�� */
+ @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 HH:mm:ss")
+ @TableField("create_time")
+ private Date createTime;
+
+
+ /** 鏇存柊浜� */
+ @TableField("update_by")
+ private String updateBy;
+
+
+ /** 鏇存柊鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @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/PayableBillSettlementDetail.java b/service/src/main/java/com/ruoyi/cwgl/domain/PayableBillSettlementDetail.java
new file mode 100644
index 0000000..798fda3
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/PayableBillSettlementDetail.java
@@ -0,0 +1,125 @@
+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_bill_settlement_detail
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Data
+public class PayableBillSettlementDetail{
+
+
+ /** ID */
+ @TableField("id")
+ private Integer id;
+
+
+ /** 搴斾粯璐﹀崟ID */
+ @Excel(name = "搴斾粯璐﹀崟ID")
+
+ @TableField("bill_id")
+ private Integer billId;
+
+
+ /** 缁撶畻鏂瑰紡 */
+ @Excel(name = "缁撶畻鏂瑰紡")
+
+ @TableField("settlement_method")
+ private String settlementMethod;
+
+
+ /** 浠樻璐︽埛寮�鎴疯 */
+ @Excel(name = "浠樻璐︽埛寮�鎴疯")
+
+ @TableField("payment_bank")
+ private String paymentBank;
+
+
+ /** 浠樻璐︽埛閾惰璐﹀彿 */
+ @Excel(name = "浠樻璐︽埛閾惰璐﹀彿")
+
+ @TableField("payment_bank_account")
+ private String paymentBankAccount;
+
+
+ /** 渚涘簲鍟嗘敹娆鹃摱琛岃处鎴� */
+ @Excel(name = "渚涘簲鍟嗘敹娆鹃摱琛岃处鎴�")
+
+ @TableField("supplier_receiving_account")
+ private String supplierReceivingAccount;
+
+
+ /** 渚涘簲鍟嗘敹娆捐处鎴峰紑鎴疯 */
+ @Excel(name = "渚涘簲鍟嗘敹娆捐处鎴峰紑鎴疯")
+
+ @TableField("supplier_receiving_bank")
+ private String supplierReceivingBank;
+
+
+ /** 浠樻鏃ユ湡 */
+ @Excel(name = "浠樻鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("payment_date")
+ private Date paymentDate;
+
+
+ /** 浠樻閲戦 */
+ @Excel(name = "浠樻閲戦")
+
+ @TableField("payment_amount")
+ private BigDecimal paymentAmount;
+
+
+ /** 浠樻鍚庡緟浠橀噾棰� */
+ @Excel(name = "浠樻鍚庡緟浠橀噾棰�")
+
+ @TableField("remaining_pending_amount")
+ private BigDecimal remainingPendingAmount;
+
+
+ /** 澶囨敞 */
+ @Excel(name = "澶囨敞")
+
+ @TableField("remark")
+ private String remark;
+
+
+ /** 鍒涘缓浜� */
+ @TableField("create_by")
+ private String createBy;
+
+
+ /** 鍒涘缓鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("create_time")
+ private Date createTime;
+
+
+ /** 鏇存柊浜� */
+ @TableField("update_by")
+ private String updateBy;
+
+
+ /** 鏇存柊鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @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/PayableFeeDetail.java b/service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeDetail.java
index bb827b5..8a91aee 100644
--- a/service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeDetail.java
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/PayableFeeDetail.java
@@ -105,7 +105,7 @@
/** 鍒涘缓鏃堕棿 */
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("create_time")
private Date createTime;
@@ -116,7 +116,7 @@
/** 鏇存柊鏃堕棿 */
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("update_time")
private Date updateTime;
diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillManagement.java b/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillManagement.java
new file mode 100644
index 0000000..47ef144
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillManagement.java
@@ -0,0 +1,222 @@
+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_bill_management
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Data
+public class ReceivableBillManagement{
+
+
+ /** ID */
+ @TableField("id")
+ private Integer id;
+
+
+ /** 绯荤粺缂栧彿 */
+ @Excel(name = "绯荤粺缂栧彿")
+
+ @TableField("system_no")
+ private String systemNo;
+
+
+ /** 璐﹀崟鍚嶇О */
+ @Excel(name = "璐﹀崟鍚嶇О")
+
+ @TableField("bill_name")
+ private String billName;
+
+
+ /** 瀹㈡埛鍚嶇О */
+ @Excel(name = "瀹㈡埛鍚嶇О")
+
+ @TableField("customer_name")
+ private String customerName;
+
+
+ /** 鏄惁鍐呴儴缁撶畻 */
+ @Excel(name = "鏄惁鍐呴儴缁撶畻")
+
+ @TableField("is_internal_settlement")
+ private String isInternalSettlement;
+
+
+ /** 鍐呴儴缁撶畻鍗曚綅 */
+ @Excel(name = "鍐呴儴缁撶畻鍗曚綅")
+
+ @TableField("internal_settlement_unit")
+ private String internalSettlementUnit;
+
+
+ /** 鍗曟嵁鏁伴噺 */
+ @Excel(name = "鍗曟嵁鏁伴噺")
+
+ @TableField("document_count")
+ private Integer documentCount;
+
+
+ /** 搴旂粨绠楅噾棰� */
+ @Excel(name = "搴旂粨绠楅噾棰�")
+
+ @TableField("total_amount")
+ private BigDecimal totalAmount;
+
+
+ /** 甯佸埗 */
+ @Excel(name = "甯佸埗")
+
+ @TableField("currency")
+ private String currency;
+
+
+ /** 鍑忓厤閲戦 */
+ @Excel(name = "鍑忓厤閲戦")
+
+ @TableField("discount_amount")
+ private BigDecimal discountAmount;
+
+
+ /** 宸叉敹閲戦 */
+ @Excel(name = "宸叉敹閲戦")
+
+ @TableField("received_amount")
+ private BigDecimal receivedAmount;
+
+
+ /** 寰呮敹閲戦 */
+ @Excel(name = "寰呮敹閲戦")
+
+ @TableField("pending_amount")
+ private BigDecimal pendingAmount;
+
+
+ /** 姹囩巼锛堟腐甯佸厬浜烘皯甯侊級 */
+ @Excel(name = "姹囩巼", readConverterExp = "娓�=甯佸厬浜烘皯甯�")
+
+ @TableField("exchange_rate")
+ private BigDecimal exchangeRate;
+
+
+ /** 浜烘皯甯侀噾棰� */
+ @Excel(name = "浜烘皯甯侀噾棰�")
+
+ @TableField("cny_amount")
+ private BigDecimal cnyAmount;
+
+
+ /** 鍛ㄦ湡绫诲瀷 */
+ @Excel(name = "鍛ㄦ湡绫诲瀷")
+
+ @TableField("period_type")
+ private String periodType;
+
+
+ /** 涓氬姟鏈熼棿寮�濮嬫棩鏈� */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "涓氬姟鏈熼棿寮�濮嬫棩鏈�", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @TableField("business_start_date")
+ private Date businessStartDate;
+
+
+ /** 涓氬姟鏈熼棿缁撴潫鏃ユ湡 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "涓氬姟鏈熼棿缁撴潫鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @TableField("business_end_date")
+ private Date businessEndDate;
+
+
+ /** 璐︽湡寮�濮嬫棩鏈� */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "璐︽湡寮�濮嬫棩鏈�", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @TableField("billing_start_date")
+ private Date billingStartDate;
+
+
+ /** 璐︽湡缁撴潫鏃ユ湡 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "璐︽湡缁撴潫鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @TableField("billing_end_date")
+ private Date billingEndDate;
+
+
+ /** 璐﹀崟鐢熸垚鏃ユ湡 */
+ @Excel(name = "璐﹀崟鐢熸垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("bill_generate_date")
+ private Date billGenerateDate;
+
+
+ /** 璐﹀崟鍙戦�佹棩鏈� */
+ @Excel(name = "璐﹀崟鍙戦�佹棩鏈�", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("bill_send_date")
+ private Date billSendDate;
+
+
+ /** 璐﹀崟鍒版湡鏃ユ湡 */
+ @Excel(name = "璐﹀崟鍒版湡鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("bill_due_date")
+ private Date billDueDate;
+
+
+ /** 鐘舵��(draft:鑽夌;generated:宸茬敓鎴�;sent:宸插彂閫�;partial_paid:閮ㄥ垎鏀舵;paid:宸叉敹娆�;cancelled:宸插彇娑�) */
+ @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 HH:mm:ss")
+ @TableField("create_time")
+ private Date createTime;
+
+
+ /** 鏇存柊浜� */
+ @TableField("update_by")
+ private String updateBy;
+
+
+ /** 鏇存柊鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @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/ReceivableBillSettlementDetail.java b/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillSettlementDetail.java
new file mode 100644
index 0000000..d530c3b
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/ReceivableBillSettlementDetail.java
@@ -0,0 +1,124 @@
+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_bill_settlement_detail
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Data
+public class ReceivableBillSettlementDetail{
+
+
+ /** ID */
+ @TableField("id")
+ private Integer id;
+
+
+ /** 搴旀敹璐﹀崟ID */
+ @Excel(name = "搴旀敹璐﹀崟ID")
+
+ @TableField("bill_id")
+ private Integer billId;
+
+
+ /** 缁撶畻鏂瑰紡 */
+ @Excel(name = "缁撶畻鏂瑰紡")
+
+ @TableField("settlement_method")
+ private String settlementMethod;
+
+
+ /** 瀹㈡埛寮�鎴疯 */
+ @Excel(name = "瀹㈡埛寮�鎴疯")
+
+ @TableField("customer_bank")
+ private String customerBank;
+
+
+ /** 瀹㈡埛閾惰璐﹀彿 */
+ @Excel(name = "瀹㈡埛閾惰璐﹀彿")
+
+ @TableField("customer_bank_account")
+ private String customerBankAccount;
+
+
+ /** 鏀舵閾惰璐︽埛 */
+ @Excel(name = "鏀舵閾惰璐︽埛")
+
+ @TableField("receiving_bank_account")
+ private String receivingBankAccount;
+
+
+ /** 鏀舵璐︽埛寮�鎴疯 */
+ @Excel(name = "鏀舵璐︽埛寮�鎴疯")
+
+ @TableField("receiving_bank")
+ private String receivingBank;
+
+
+ /** 鏀舵鏃ユ湡 */
+ @Excel(name = "鏀舵鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField("receipt_date")
+ private Date receiptDate;
+
+
+ /** 鏀舵閲戦 */
+ @Excel(name = "鏀舵閲戦")
+
+ @TableField("receipt_amount")
+ private BigDecimal receiptAmount;
+
+
+ /** 鏀舵鍚庡緟鏀堕噾棰� */
+ @Excel(name = "鏀舵鍚庡緟鏀堕噾棰�")
+
+ @TableField("remaining_pending_amount")
+ private BigDecimal remainingPendingAmount;
+
+
+ /** 澶囨敞 */
+ @Excel(name = "澶囨敞")
+
+ @TableField("remark")
+ private String remark;
+
+
+ /** 鍒涘缓浜� */
+ @TableField("create_by")
+ private String createBy;
+
+
+ /** 鍒涘缓鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("create_time")
+ private Date createTime;
+
+
+ /** 鏇存柊浜� */
+ @TableField("update_by")
+ private String updateBy;
+
+
+ /** 鏇存柊鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @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/PayableBillManagementMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillManagementMapper.java
new file mode 100644
index 0000000..353067f
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillManagementMapper.java
@@ -0,0 +1,87 @@
+package com.ruoyi.cwgl.mapper;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.PayableBillManagement;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 搴斾粯璐﹀崟绠$悊Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface PayableBillManagementMapper extends BaseMapper<PayableBillManagement>
+{
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊
+ *
+ * @param id 搴斾粯璐﹀崟绠$悊ID
+ * @return 搴斾粯璐﹀崟绠$悊
+ */
+ public PayableBillManagement selectPayableBillManagementById(Integer id);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊 璁板綍鏁�
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ public int selectPayableBillManagementCount(PayableBillManagement payableBillManagement);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ public List<PayableBillManagement> selectPayableBillManagementList(PayableBillManagement payableBillManagement);
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertPayableBillManagement(PayableBillManagement payableBillManagement);
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param payableBillManagements 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertPayableBillManagementBatch(List<PayableBillManagement> payableBillManagements);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updatePayableBillManagement(PayableBillManagement payableBillManagement);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param payableBillManagements 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updatePayableBillManagementBatch(List<PayableBillManagement> payableBillManagements);
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊
+ *
+ * @param id 搴斾粯璐﹀崟绠$悊ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillManagementById(Integer id);
+
+ /**
+ * 鎵归噺鍒犻櫎搴斾粯璐﹀崟绠$悊
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillManagementByIds(Integer[] ids);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillSettlementDetailMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillSettlementDetailMapper.java
new file mode 100644
index 0000000..b6a3fa0
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/mapper/PayableBillSettlementDetailMapper.java
@@ -0,0 +1,87 @@
+package com.ruoyi.cwgl.mapper;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.PayableBillSettlementDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 搴斾粯璐﹀崟缁撶畻鏄庣粏Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface PayableBillSettlementDetailMapper extends BaseMapper<PayableBillSettlementDetail>
+{
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴斾粯璐﹀崟缁撶畻鏄庣粏ID
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ public PayableBillSettlementDetail selectPayableBillSettlementDetailById(Integer id);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏 璁板綍鏁�
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public int selectPayableBillSettlementDetailCount(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public List<PayableBillSettlementDetail> selectPayableBillSettlementDetailList(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertPayableBillSettlementDetail(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param payableBillSettlementDetails 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertPayableBillSettlementDetailBatch(List<PayableBillSettlementDetail> payableBillSettlementDetails);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updatePayableBillSettlementDetail(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param payableBillSettlementDetails 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updatePayableBillSettlementDetailBatch(List<PayableBillSettlementDetail> payableBillSettlementDetails);
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴斾粯璐﹀崟缁撶畻鏄庣粏ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillSettlementDetailById(Integer id);
+
+ /**
+ * 鎵归噺鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillSettlementDetailByIds(Integer[] ids);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillManagementMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillManagementMapper.java
new file mode 100644
index 0000000..5525c5b
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillManagementMapper.java
@@ -0,0 +1,87 @@
+package com.ruoyi.cwgl.mapper;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.ReceivableBillManagement;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 搴旀敹璐﹀崟绠$悊Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface ReceivableBillManagementMapper extends BaseMapper<ReceivableBillManagement>
+{
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊
+ *
+ * @param id 搴旀敹璐﹀崟绠$悊ID
+ * @return 搴旀敹璐﹀崟绠$悊
+ */
+ public ReceivableBillManagement selectReceivableBillManagementById(Integer id);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊 璁板綍鏁�
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ public int selectReceivableBillManagementCount(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ public List<ReceivableBillManagement> selectReceivableBillManagementList(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillManagement(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param receivableBillManagements 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillManagement(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param receivableBillManagements 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements);
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊
+ *
+ * @param id 搴旀敹璐﹀崟绠$悊ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillManagementById(Integer id);
+
+ /**
+ * 鎵归噺鍒犻櫎搴旀敹璐﹀崟绠$悊
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillManagementByIds(Integer[] ids);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillSettlementDetailMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillSettlementDetailMapper.java
new file mode 100644
index 0000000..7e1be51
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/mapper/ReceivableBillSettlementDetailMapper.java
@@ -0,0 +1,87 @@
+package com.ruoyi.cwgl.mapper;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 搴旀敹璐﹀崟缁撶畻鏄庣粏Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface ReceivableBillSettlementDetailMapper extends BaseMapper<ReceivableBillSettlementDetail>
+{
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴旀敹璐﹀崟缁撶畻鏄庣粏ID
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ public ReceivableBillSettlementDetail selectReceivableBillSettlementDetailById(Integer id);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏 璁板綍鏁�
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public int selectReceivableBillSettlementDetailCount(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public List<ReceivableBillSettlementDetail> selectReceivableBillSettlementDetailList(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillSettlementDetail(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param receivableBillSettlementDetails 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillSettlementDetailBatch(List<ReceivableBillSettlementDetail> receivableBillSettlementDetails);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillSettlementDetail(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param receivableBillSettlementDetails 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillSettlementDetailBatch(List<ReceivableBillSettlementDetail> receivableBillSettlementDetails);
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴旀敹璐﹀崟缁撶畻鏄庣粏ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillSettlementDetailById(Integer id);
+
+ /**
+ * 鎵归噺鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillSettlementDetailByIds(Integer[] ids);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IPayableBillManagementService.java b/service/src/main/java/com/ruoyi/cwgl/service/IPayableBillManagementService.java
new file mode 100644
index 0000000..f51e471
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/IPayableBillManagementService.java
@@ -0,0 +1,102 @@
+package com.ruoyi.cwgl.service;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.PayableBillManagement;
+import com.baomidou.mybatisplus.extension.service.IService;
+/**
+ * 搴斾粯璐﹀崟绠$悊Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface IPayableBillManagementService extends IService<PayableBillManagement>
+{
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊
+ *
+ * @param id 搴斾粯璐﹀崟绠$悊ID
+ * @return 搴斾粯璐﹀崟绠$悊
+ */
+ public PayableBillManagement selectPayableBillManagementById(Integer id);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊 璁板綍鏁�
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ public int selectPayableBillManagementCount(PayableBillManagement payableBillManagement);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ public List<PayableBillManagement> selectPayableBillManagementList(PayableBillManagement payableBillManagement);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ public void export(PayableBillManagement payableBillManagement, String exportKey) ;
+
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertPayableBillManagement(PayableBillManagement payableBillManagement);
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param payableBillManagements 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertPayableBillManagementBatch(List<PayableBillManagement> payableBillManagements);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updatePayableBillManagement(PayableBillManagement payableBillManagement);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param payableBillManagements 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updatePayableBillManagementBatch(List<PayableBillManagement> payableBillManagements);
+ /**
+ * 鎵归噺鍒犻櫎搴斾粯璐﹀崟绠$悊
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillManagementByIds(String ids);
+
+ /**
+ * 鎵归噺鍒犻櫎搴斾粯璐﹀崟绠$悊
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillManagementByIds(Integer[] ids);
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊淇℃伅
+ *
+ * @param id 搴斾粯璐﹀崟绠$悊ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillManagementById(Integer id);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IPayableBillSettlementDetailService.java b/service/src/main/java/com/ruoyi/cwgl/service/IPayableBillSettlementDetailService.java
new file mode 100644
index 0000000..b2080cc
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/IPayableBillSettlementDetailService.java
@@ -0,0 +1,102 @@
+package com.ruoyi.cwgl.service;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.PayableBillSettlementDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+/**
+ * 搴斾粯璐﹀崟缁撶畻鏄庣粏Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface IPayableBillSettlementDetailService extends IService<PayableBillSettlementDetail>
+{
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴斾粯璐﹀崟缁撶畻鏄庣粏ID
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ public PayableBillSettlementDetail selectPayableBillSettlementDetailById(Integer id);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏 璁板綍鏁�
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public int selectPayableBillSettlementDetailCount(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public List<PayableBillSettlementDetail> selectPayableBillSettlementDetailList(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public void export(PayableBillSettlementDetail payableBillSettlementDetail, String exportKey) ;
+
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertPayableBillSettlementDetail(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param payableBillSettlementDetails 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertPayableBillSettlementDetailBatch(List<PayableBillSettlementDetail> payableBillSettlementDetails);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updatePayableBillSettlementDetail(PayableBillSettlementDetail payableBillSettlementDetail);
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param payableBillSettlementDetails 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updatePayableBillSettlementDetailBatch(List<PayableBillSettlementDetail> payableBillSettlementDetails);
+ /**
+ * 鎵归噺鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillSettlementDetailByIds(String ids);
+
+ /**
+ * 鎵归噺鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillSettlementDetailByIds(Integer[] ids);
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏淇℃伅
+ *
+ * @param id 搴斾粯璐﹀崟缁撶畻鏄庣粏ID
+ * @return 缁撴灉
+ */
+ public int deletePayableBillSettlementDetailById(Integer id);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillManagementService.java b/service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillManagementService.java
new file mode 100644
index 0000000..5defdfa
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillManagementService.java
@@ -0,0 +1,102 @@
+package com.ruoyi.cwgl.service;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.ReceivableBillManagement;
+import com.baomidou.mybatisplus.extension.service.IService;
+/**
+ * 搴旀敹璐﹀崟绠$悊Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface IReceivableBillManagementService extends IService<ReceivableBillManagement>
+{
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊
+ *
+ * @param id 搴旀敹璐﹀崟绠$悊ID
+ * @return 搴旀敹璐﹀崟绠$悊
+ */
+ public ReceivableBillManagement selectReceivableBillManagementById(Integer id);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊 璁板綍鏁�
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ public int selectReceivableBillManagementCount(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ public List<ReceivableBillManagement> selectReceivableBillManagementList(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ public void export(ReceivableBillManagement receivableBillManagement, String exportKey) ;
+
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillManagement(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param receivableBillManagements 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillManagement(ReceivableBillManagement receivableBillManagement);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param receivableBillManagements 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements);
+ /**
+ * 鎵归噺鍒犻櫎搴旀敹璐﹀崟绠$悊
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillManagementByIds(String ids);
+
+ /**
+ * 鎵归噺鍒犻櫎搴旀敹璐﹀崟绠$悊
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillManagementByIds(Integer[] ids);
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊淇℃伅
+ *
+ * @param id 搴旀敹璐﹀崟绠$悊ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillManagementById(Integer id);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillSettlementDetailService.java b/service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillSettlementDetailService.java
new file mode 100644
index 0000000..6040be2
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/IReceivableBillSettlementDetailService.java
@@ -0,0 +1,102 @@
+package com.ruoyi.cwgl.service;
+
+import java.util.List;
+import com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+/**
+ * 搴旀敹璐﹀崟缁撶畻鏄庣粏Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+public interface IReceivableBillSettlementDetailService extends IService<ReceivableBillSettlementDetail>
+{
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴旀敹璐﹀崟缁撶畻鏄庣粏ID
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ public ReceivableBillSettlementDetail selectReceivableBillSettlementDetailById(Integer id);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏 璁板綍鏁�
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public int selectReceivableBillSettlementDetailCount(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public List<ReceivableBillSettlementDetail> selectReceivableBillSettlementDetailList(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ public void export(ReceivableBillSettlementDetail receivableBillSettlementDetail, String exportKey) ;
+
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillSettlementDetail(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param receivableBillSettlementDetails 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int insertReceivableBillSettlementDetailBatch(List<ReceivableBillSettlementDetail> receivableBillSettlementDetails);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillSettlementDetail(ReceivableBillSettlementDetail receivableBillSettlementDetail);
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param receivableBillSettlementDetails 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ public int updateReceivableBillSettlementDetailBatch(List<ReceivableBillSettlementDetail> receivableBillSettlementDetails);
+ /**
+ * 鎵归噺鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillSettlementDetailByIds(String ids);
+
+ /**
+ * 鎵归噺鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillSettlementDetailByIds(Integer[] ids);
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏淇℃伅
+ *
+ * @param id 搴旀敹璐﹀崟缁撶畻鏄庣粏ID
+ * @return 缁撴灉
+ */
+ public int deleteReceivableBillSettlementDetailById(Integer id);
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillManagementServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillManagementServiceImpl.java
new file mode 100644
index 0000000..0aa86b0
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillManagementServiceImpl.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.PayableBillManagementMapper;
+import com.ruoyi.cwgl.domain.PayableBillManagement;
+import com.ruoyi.cwgl.service.IPayableBillManagementService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 搴斾粯璐﹀崟绠$悊Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class PayableBillManagementServiceImpl extends BaseService<PayableBillManagementMapper, PayableBillManagement> implements IPayableBillManagementService
+{
+ protected final Logger logger = LoggerFactory.getLogger(getClass());
+ @Resource
+ private PayableBillManagementMapper payableBillManagementMapper;
+
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊
+ *
+ * @param id 搴斾粯璐﹀崟绠$悊ID
+ * @return 搴斾粯璐﹀崟绠$悊
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public PayableBillManagement selectPayableBillManagementById(Integer id)
+ {
+ return payableBillManagementMapper.selectPayableBillManagementById(id);
+ }
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊 璁板綍鏁�
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public int selectPayableBillManagementCount(PayableBillManagement payableBillManagement)
+ {
+ return payableBillManagementMapper.selectPayableBillManagementCount(payableBillManagement);
+ }
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 搴斾粯璐﹀崟绠$悊
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public List<PayableBillManagement> selectPayableBillManagementList(PayableBillManagement payableBillManagement)
+ {
+ return payableBillManagementMapper.selectPayableBillManagementList(payableBillManagement);
+ }
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴斾粯璐﹀崟绠$悊闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Async
+ @Override
+ public void export(PayableBillManagement payableBillManagement,String exportKey) {
+
+ super.export(PayableBillManagement.class,exportKey,"payableBillManagementData",(pageNum)->{
+ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
+ return selectPayableBillManagementList(payableBillManagement);
+ });
+ }
+
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertPayableBillManagement(PayableBillManagement payableBillManagement)
+ {
+ payableBillManagement.setCreateTime(DateUtils.getNowDate());
+ return payableBillManagementMapper.insertPayableBillManagement(payableBillManagement);
+ }
+
+ /**
+ * 鏂板搴斾粯璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param payableBillManagements 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertPayableBillManagementBatch(List<PayableBillManagement> payableBillManagements)
+ {
+ int rows = payableBillManagementMapper.insertPayableBillManagementBatch(payableBillManagements);
+ return rows;
+ }
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊
+ *
+ * @param payableBillManagement 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int updatePayableBillManagement(PayableBillManagement payableBillManagement)
+ {
+ payableBillManagement.setUpdateTime(DateUtils.getNowDate());
+ return payableBillManagementMapper.updatePayableBillManagement(payableBillManagement);
+ }
+
+ /**
+ * 淇敼搴斾粯璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param payableBillManagements 搴斾粯璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int updatePayableBillManagementBatch(List<PayableBillManagement> payableBillManagements){
+ return payableBillManagementMapper.updatePayableBillManagementBatch(payableBillManagements);
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊瀵硅薄
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deletePayableBillManagementByIds(String ids)
+ {
+ return deletePayableBillManagementByIds(Convert.toIntArray(ids));
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊瀵硅薄
+ *
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deletePayableBillManagementByIds(Integer[] ids)
+ {
+ return payableBillManagementMapper.deletePayableBillManagementByIds(ids);
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊淇℃伅
+ *
+ * @param id 搴斾粯璐﹀崟绠$悊ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deletePayableBillManagementById(Integer id)
+ {
+ return payableBillManagementMapper.deletePayableBillManagementById(id);
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillSettlementDetailServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillSettlementDetailServiceImpl.java
new file mode 100644
index 0000000..05551bd
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillSettlementDetailServiceImpl.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.PayableBillSettlementDetailMapper;
+import com.ruoyi.cwgl.domain.PayableBillSettlementDetail;
+import com.ruoyi.cwgl.service.IPayableBillSettlementDetailService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 搴斾粯璐﹀崟缁撶畻鏄庣粏Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class PayableBillSettlementDetailServiceImpl extends BaseService<PayableBillSettlementDetailMapper, PayableBillSettlementDetail> implements IPayableBillSettlementDetailService
+{
+ protected final Logger logger = LoggerFactory.getLogger(getClass());
+ @Resource
+ private PayableBillSettlementDetailMapper payableBillSettlementDetailMapper;
+
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴斾粯璐﹀崟缁撶畻鏄庣粏ID
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public PayableBillSettlementDetail selectPayableBillSettlementDetailById(Integer id)
+ {
+ return payableBillSettlementDetailMapper.selectPayableBillSettlementDetailById(id);
+ }
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏 璁板綍鏁�
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public int selectPayableBillSettlementDetailCount(PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ return payableBillSettlementDetailMapper.selectPayableBillSettlementDetailCount(payableBillSettlementDetail);
+ }
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public List<PayableBillSettlementDetail> selectPayableBillSettlementDetailList(PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ return payableBillSettlementDetailMapper.selectPayableBillSettlementDetailList(payableBillSettlementDetail);
+ }
+
+ /**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴斾粯璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Async
+ @Override
+ public void export(PayableBillSettlementDetail payableBillSettlementDetail,String exportKey) {
+
+ super.export(PayableBillSettlementDetail.class,exportKey,"payableBillSettlementDetailData",(pageNum)->{
+ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
+ return selectPayableBillSettlementDetailList(payableBillSettlementDetail);
+ });
+ }
+
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertPayableBillSettlementDetail(PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ payableBillSettlementDetail.setCreateTime(DateUtils.getNowDate());
+ return payableBillSettlementDetailMapper.insertPayableBillSettlementDetail(payableBillSettlementDetail);
+ }
+
+ /**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param payableBillSettlementDetails 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertPayableBillSettlementDetailBatch(List<PayableBillSettlementDetail> payableBillSettlementDetails)
+ {
+ int rows = payableBillSettlementDetailMapper.insertPayableBillSettlementDetailBatch(payableBillSettlementDetails);
+ return rows;
+ }
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param payableBillSettlementDetail 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int updatePayableBillSettlementDetail(PayableBillSettlementDetail payableBillSettlementDetail)
+ {
+ payableBillSettlementDetail.setUpdateTime(DateUtils.getNowDate());
+ return payableBillSettlementDetailMapper.updatePayableBillSettlementDetail(payableBillSettlementDetail);
+ }
+
+ /**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param payableBillSettlementDetails 搴斾粯璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int updatePayableBillSettlementDetailBatch(List<PayableBillSettlementDetail> payableBillSettlementDetails){
+ return payableBillSettlementDetailMapper.updatePayableBillSettlementDetailBatch(payableBillSettlementDetails);
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏瀵硅薄
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deletePayableBillSettlementDetailByIds(String ids)
+ {
+ return deletePayableBillSettlementDetailByIds(Convert.toIntArray(ids));
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏瀵硅薄
+ *
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deletePayableBillSettlementDetailByIds(Integer[] ids)
+ {
+ return payableBillSettlementDetailMapper.deletePayableBillSettlementDetailByIds(ids);
+ }
+
+ /**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏淇℃伅
+ *
+ * @param id 搴斾粯璐﹀崟缁撶畻鏄庣粏ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deletePayableBillSettlementDetailById(Integer id)
+ {
+ return payableBillSettlementDetailMapper.deletePayableBillSettlementDetailById(id);
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillManagementServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillManagementServiceImpl.java
new file mode 100644
index 0000000..60e52b3
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillManagementServiceImpl.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.ReceivableBillManagementMapper;
+import com.ruoyi.cwgl.domain.ReceivableBillManagement;
+import com.ruoyi.cwgl.service.IReceivableBillManagementService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 搴旀敹璐﹀崟绠$悊Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class ReceivableBillManagementServiceImpl extends BaseService<ReceivableBillManagementMapper, ReceivableBillManagement> implements IReceivableBillManagementService
+{
+ protected final Logger logger = LoggerFactory.getLogger(getClass());
+ @Resource
+ private ReceivableBillManagementMapper receivableBillManagementMapper;
+
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊
+ *
+ * @param id 搴旀敹璐﹀崟绠$悊ID
+ * @return 搴旀敹璐﹀崟绠$悊
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public ReceivableBillManagement selectReceivableBillManagementById(Integer id)
+ {
+ return receivableBillManagementMapper.selectReceivableBillManagementById(id);
+ }
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊 璁板綍鏁�
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public int selectReceivableBillManagementCount(ReceivableBillManagement receivableBillManagement)
+ {
+ return receivableBillManagementMapper.selectReceivableBillManagementCount(receivableBillManagement);
+ }
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 搴旀敹璐﹀崟绠$悊
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public List<ReceivableBillManagement> selectReceivableBillManagementList(ReceivableBillManagement receivableBillManagement)
+ {
+ return receivableBillManagementMapper.selectReceivableBillManagementList(receivableBillManagement);
+ }
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴旀敹璐﹀崟绠$悊闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Async
+ @Override
+ public void export(ReceivableBillManagement receivableBillManagement,String exportKey) {
+
+ super.export(ReceivableBillManagement.class,exportKey,"receivableBillManagementData",(pageNum)->{
+ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
+ return selectReceivableBillManagementList(receivableBillManagement);
+ });
+ }
+
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertReceivableBillManagement(ReceivableBillManagement receivableBillManagement)
+ {
+ receivableBillManagement.setCreateTime(DateUtils.getNowDate());
+ return receivableBillManagementMapper.insertReceivableBillManagement(receivableBillManagement);
+ }
+
+ /**
+ * 鏂板搴旀敹璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param receivableBillManagements 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements)
+ {
+ int rows = receivableBillManagementMapper.insertReceivableBillManagementBatch(receivableBillManagements);
+ return rows;
+ }
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊
+ *
+ * @param receivableBillManagement 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int updateReceivableBillManagement(ReceivableBillManagement receivableBillManagement)
+ {
+ receivableBillManagement.setUpdateTime(DateUtils.getNowDate());
+ return receivableBillManagementMapper.updateReceivableBillManagement(receivableBillManagement);
+ }
+
+ /**
+ * 淇敼搴旀敹璐﹀崟绠$悊[鎵归噺]
+ *
+ * @param receivableBillManagements 搴旀敹璐﹀崟绠$悊
+ * @return 缁撴灉
+ */
+ @Override
+ public int updateReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements){
+ return receivableBillManagementMapper.updateReceivableBillManagementBatch(receivableBillManagements);
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊瀵硅薄
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteReceivableBillManagementByIds(String ids)
+ {
+ return deleteReceivableBillManagementByIds(Convert.toIntArray(ids));
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊瀵硅薄
+ *
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteReceivableBillManagementByIds(Integer[] ids)
+ {
+ return receivableBillManagementMapper.deleteReceivableBillManagementByIds(ids);
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊淇℃伅
+ *
+ * @param id 搴旀敹璐﹀崟绠$悊ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteReceivableBillManagementById(Integer id)
+ {
+ return receivableBillManagementMapper.deleteReceivableBillManagementById(id);
+ }
+}
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillSettlementDetailServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillSettlementDetailServiceImpl.java
new file mode 100644
index 0000000..75188ca
--- /dev/null
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillSettlementDetailServiceImpl.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.ReceivableBillSettlementDetailMapper;
+import com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail;
+import com.ruoyi.cwgl.service.IReceivableBillSettlementDetailService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 搴旀敹璐﹀崟缁撶畻鏄庣粏Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-17
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class ReceivableBillSettlementDetailServiceImpl extends BaseService<ReceivableBillSettlementDetailMapper, ReceivableBillSettlementDetail> implements IReceivableBillSettlementDetailService
+{
+ protected final Logger logger = LoggerFactory.getLogger(getClass());
+ @Resource
+ private ReceivableBillSettlementDetailMapper receivableBillSettlementDetailMapper;
+
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param id 搴旀敹璐﹀崟缁撶畻鏄庣粏ID
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public ReceivableBillSettlementDetail selectReceivableBillSettlementDetailById(Integer id)
+ {
+ return receivableBillSettlementDetailMapper.selectReceivableBillSettlementDetailById(id);
+ }
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏 璁板綍鏁�
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public int selectReceivableBillSettlementDetailCount(ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ return receivableBillSettlementDetailMapper.selectReceivableBillSettlementDetailCount(receivableBillSettlementDetail);
+ }
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Override
+ public List<ReceivableBillSettlementDetail> selectReceivableBillSettlementDetailList(ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ return receivableBillSettlementDetailMapper.selectReceivableBillSettlementDetailList(receivableBillSettlementDetail);
+ }
+
+ /**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃 寮傛 瀵煎嚭
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑
+ * @return 搴旀敹璐﹀崟缁撶畻鏄庣粏闆嗗悎
+ */
+ @DataSource(DataSourceType.SLAVE)
+ @Async
+ @Override
+ public void export(ReceivableBillSettlementDetail receivableBillSettlementDetail,String exportKey) {
+
+ super.export(ReceivableBillSettlementDetail.class,exportKey,"receivableBillSettlementDetailData",(pageNum)->{
+ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
+ return selectReceivableBillSettlementDetailList(receivableBillSettlementDetail);
+ });
+ }
+
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertReceivableBillSettlementDetail(ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ receivableBillSettlementDetail.setCreateTime(DateUtils.getNowDate());
+ return receivableBillSettlementDetailMapper.insertReceivableBillSettlementDetail(receivableBillSettlementDetail);
+ }
+
+ /**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param receivableBillSettlementDetails 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int insertReceivableBillSettlementDetailBatch(List<ReceivableBillSettlementDetail> receivableBillSettlementDetails)
+ {
+ int rows = receivableBillSettlementDetailMapper.insertReceivableBillSettlementDetailBatch(receivableBillSettlementDetails);
+ return rows;
+ }
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏
+ *
+ * @param receivableBillSettlementDetail 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int updateReceivableBillSettlementDetail(ReceivableBillSettlementDetail receivableBillSettlementDetail)
+ {
+ receivableBillSettlementDetail.setUpdateTime(DateUtils.getNowDate());
+ return receivableBillSettlementDetailMapper.updateReceivableBillSettlementDetail(receivableBillSettlementDetail);
+ }
+
+ /**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏[鎵归噺]
+ *
+ * @param receivableBillSettlementDetails 搴旀敹璐﹀崟缁撶畻鏄庣粏
+ * @return 缁撴灉
+ */
+ @Override
+ public int updateReceivableBillSettlementDetailBatch(List<ReceivableBillSettlementDetail> receivableBillSettlementDetails){
+ return receivableBillSettlementDetailMapper.updateReceivableBillSettlementDetailBatch(receivableBillSettlementDetails);
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏瀵硅薄
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteReceivableBillSettlementDetailByIds(String ids)
+ {
+ return deleteReceivableBillSettlementDetailByIds(Convert.toIntArray(ids));
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏瀵硅薄
+ *
+ *
+ * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteReceivableBillSettlementDetailByIds(Integer[] ids)
+ {
+ return receivableBillSettlementDetailMapper.deleteReceivableBillSettlementDetailByIds(ids);
+ }
+
+ /**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏淇℃伅
+ *
+ * @param id 搴旀敹璐﹀崟缁撶畻鏄庣粏ID
+ * @return 缁撴灉
+ */
+ @Override
+ public int deleteReceivableBillSettlementDetailById(Integer id)
+ {
+ return receivableBillSettlementDetailMapper.deleteReceivableBillSettlementDetailById(id);
+ }
+}
diff --git a/service/src/main/resources/mapper/cwgl/PayableBillManagementMapper.xml b/service/src/main/resources/mapper/cwgl/PayableBillManagementMapper.xml
new file mode 100644
index 0000000..8ef03e2
--- /dev/null
+++ b/service/src/main/resources/mapper/cwgl/PayableBillManagementMapper.xml
@@ -0,0 +1,254 @@
+<?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.PayableBillManagementMapper">
+
+ <resultMap type="com.ruoyi.cwgl.domain.PayableBillManagement" id="PayableBillManagementResult">
+ <result property="id" column="id" />
+ <result property="systemNo" column="system_no" />
+ <result property="billName" column="bill_name" />
+ <result property="supplierName" column="supplier_name" />
+ <result property="isInternalSettlement" column="is_internal_settlement" />
+ <result property="internalSettlementUnit" column="internal_settlement_unit" />
+ <result property="documentCount" column="document_count" />
+ <result property="totalAmount" column="total_amount" />
+ <result property="currency" column="currency" />
+ <result property="discountAmount" column="discount_amount" />
+ <result property="paidAmount" column="paid_amount" />
+ <result property="pendingAmount" column="pending_amount" />
+ <result property="exchangeRate" column="exchange_rate" />
+ <result property="cnyAmount" column="cny_amount" />
+ <result property="periodType" column="period_type" />
+ <result property="businessStartDate" column="business_start_date" />
+ <result property="businessEndDate" column="business_end_date" />
+ <result property="billingStartDate" column="billing_start_date" />
+ <result property="billingEndDate" column="billing_end_date" />
+ <result property="billGenerateDate" column="bill_generate_date" />
+ <result property="billSendDate" column="bill_send_date" />
+ <result property="billDueDate" column="bill_due_date" />
+ <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="selectPayableBillManagementVo">
+ select thisTab.id, thisTab.system_no, thisTab.bill_name, thisTab.supplier_name, thisTab.is_internal_settlement, thisTab.internal_settlement_unit, thisTab.document_count, thisTab.total_amount, thisTab.currency, thisTab.discount_amount, thisTab.paid_amount, thisTab.pending_amount, thisTab.exchange_rate, thisTab.cny_amount, thisTab.period_type, thisTab.business_start_date, thisTab.business_end_date, thisTab.billing_start_date, thisTab.billing_end_date, thisTab.bill_generate_date, thisTab.bill_send_date, thisTab.bill_due_date, thisTab.status, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.deleted from payable_bill_management AS thisTab
+ </sql>
+ <sql id="selectPayableBillManagementVoCount">
+ select count(0) from payable_bill_management as thisTab
+ </sql>
+
+ <sql id="whereCondition">
+ <if test="systemNo != null and systemNo != ''"> and thisTab.system_no = #{systemNo}</if>
+ <if test="billName != null and billName != ''"> and thisTab.bill_name like concat('%', #{billName}, '%')</if>
+ <if test="supplierName != null and supplierName != ''"> and thisTab.supplier_name like concat('%', #{supplierName}, '%')</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="documentCount != null "> and thisTab.document_count = #{documentCount}</if>
+ <if test="totalAmount != null "> and thisTab.total_amount = #{totalAmount}</if>
+ <if test="currency != null and currency != ''"> and thisTab.currency = #{currency}</if>
+ <if test="discountAmount != null "> and thisTab.discount_amount = #{discountAmount}</if>
+ <if test="paidAmount != null "> and thisTab.paid_amount = #{paidAmount}</if>
+ <if test="pendingAmount != null "> and thisTab.pending_amount = #{pendingAmount}</if>
+ <if test="exchangeRate != null "> and thisTab.exchange_rate = #{exchangeRate}</if>
+ <if test="cnyAmount != null "> and thisTab.cny_amount = #{cnyAmount}</if>
+ <if test="periodType != null and periodType != ''"> and thisTab.period_type = #{periodType}</if>
+ <if test="businessStartDate != null "> and thisTab.business_start_date = #{businessStartDate}</if>
+ <if test="businessEndDate != null "> and thisTab.business_end_date = #{businessEndDate}</if>
+ <if test="billingStartDate != null "> and thisTab.billing_start_date = #{billingStartDate}</if>
+ <if test="billingEndDate != null "> and thisTab.billing_end_date = #{billingEndDate}</if>
+ <if test="billGenerateDate != null "> and thisTab.bill_generate_date = #{billGenerateDate}</if>
+ <if test="billSendDate != null "> and thisTab.bill_send_date = #{billSendDate}</if>
+ <if test="billDueDate != null "> and thisTab.bill_due_date = #{billDueDate}</if>
+ <if test="status != null and status != ''"> and thisTab.status = #{status}</if>
+ <if test="deleted != null "> and thisTab.deleted = #{deleted}</if>
+ </sql>
+
+ <!--鏌ヨ-->
+ <select id="selectPayableBillManagementById" parameterType="Integer" resultMap="PayableBillManagementResult">
+ <include refid="selectPayableBillManagementVo"/>
+ where id = #{id}
+ </select>
+
+ <select id="selectPayableBillManagementCount" parameterType="com.ruoyi.cwgl.domain.PayableBillManagement" resultType="int">
+ <include refid="selectPayableBillManagementVoCount"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ </select>
+
+ <select id="selectPayableBillManagementList" parameterType="com.ruoyi.cwgl.domain.PayableBillManagement" resultMap="PayableBillManagementResult">
+ <include refid="selectPayableBillManagementVo"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ order by thisTab.id desc
+ </select>
+
+ <!-- 鏂板 -->
+ <insert id="insertPayableBillManagement" parameterType="com.ruoyi.cwgl.domain.PayableBillManagement" useGeneratedKeys="true" keyProperty="id">
+ insert into payable_bill_management
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="systemNo != null and systemNo != ''">system_no,</if>
+ <if test="billName != null and billName != ''">bill_name,</if>
+ <if test="supplierName != null and supplierName != ''">supplier_name,</if>
+ <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement,</if>
+ <if test="internalSettlementUnit != null">internal_settlement_unit,</if>
+ <if test="documentCount != null">document_count,</if>
+ <if test="totalAmount != null">total_amount,</if>
+ <if test="currency != null">currency,</if>
+ <if test="discountAmount != null">discount_amount,</if>
+ <if test="paidAmount != null">paid_amount,</if>
+ <if test="pendingAmount != null">pending_amount,</if>
+ <if test="exchangeRate != null">exchange_rate,</if>
+ <if test="cnyAmount != null">cny_amount,</if>
+ <if test="periodType != null and periodType != ''">period_type,</if>
+ <if test="businessStartDate != null">business_start_date,</if>
+ <if test="businessEndDate != null">business_end_date,</if>
+ <if test="billingStartDate != null">billing_start_date,</if>
+ <if test="billingEndDate != null">billing_end_date,</if>
+ <if test="billGenerateDate != null">bill_generate_date,</if>
+ <if test="billSendDate != null">bill_send_date,</if>
+ <if test="billDueDate != null">bill_due_date,</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="billName != null and billName != ''">#{billName},</if>
+ <if test="supplierName != null and supplierName != ''">#{supplierName},</if>
+ <if test="isInternalSettlement != null and isInternalSettlement != ''">#{isInternalSettlement},</if>
+ <if test="internalSettlementUnit != null">#{internalSettlementUnit},</if>
+ <if test="documentCount != null">#{documentCount},</if>
+ <if test="totalAmount != null">#{totalAmount},</if>
+ <if test="currency != null">#{currency},</if>
+ <if test="discountAmount != null">#{discountAmount},</if>
+ <if test="paidAmount != null">#{paidAmount},</if>
+ <if test="pendingAmount != null">#{pendingAmount},</if>
+ <if test="exchangeRate != null">#{exchangeRate},</if>
+ <if test="cnyAmount != null">#{cnyAmount},</if>
+ <if test="periodType != null and periodType != ''">#{periodType},</if>
+ <if test="businessStartDate != null">#{businessStartDate},</if>
+ <if test="businessEndDate != null">#{businessEndDate},</if>
+ <if test="billingStartDate != null">#{billingStartDate},</if>
+ <if test="billingEndDate != null">#{billingEndDate},</if>
+ <if test="billGenerateDate != null">#{billGenerateDate},</if>
+ <if test="billSendDate != null">#{billSendDate},</if>
+ <if test="billDueDate != null">#{billDueDate},</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="insertPayableBillManagementBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
+ insert into payable_bill_management
+ <trim prefix="(" suffix=") values" suffixOverrides=",">
+ id,system_no,bill_name,supplier_name,is_internal_settlement,internal_settlement_unit,document_count,total_amount,currency,discount_amount,paid_amount,pending_amount,exchange_rate,cny_amount,period_type,business_start_date,business_end_date,billing_start_date,billing_end_date,bill_generate_date,bill_send_date,bill_due_date,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.billName},#{item.supplierName},#{item.isInternalSettlement},#{item.internalSettlementUnit},#{item.documentCount},#{item.totalAmount},#{item.currency},#{item.discountAmount},#{item.paidAmount},#{item.pendingAmount},#{item.exchangeRate},#{item.cnyAmount},#{item.periodType},#{item.businessStartDate},#{item.businessEndDate},#{item.billingStartDate},#{item.billingEndDate},#{item.billGenerateDate},#{item.billSendDate},#{item.billDueDate},#{item.status},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.deleted},
+ </trim>
+ </foreach>
+ </insert>
+
+ <!-- 淇敼 -->
+ <update id="updatePayableBillManagement" parameterType="com.ruoyi.cwgl.domain.PayableBillManagement">
+ update payable_bill_management
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="systemNo != null and systemNo != ''">system_no = #{systemNo},</if>
+ <if test="billName != null and billName != ''">bill_name = #{billName},</if>
+ <if test="supplierName != null and supplierName != ''">supplier_name = #{supplierName},</if>
+ <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement = #{isInternalSettlement},</if>
+ <if test="internalSettlementUnit != null">internal_settlement_unit = #{internalSettlementUnit},</if>
+ <if test="documentCount != null">document_count = #{documentCount},</if>
+ <if test="totalAmount != null">total_amount = #{totalAmount},</if>
+ <if test="currency != null">currency = #{currency},</if>
+ <if test="discountAmount != null">discount_amount = #{discountAmount},</if>
+ <if test="paidAmount != null">paid_amount = #{paidAmount},</if>
+ <if test="pendingAmount != null">pending_amount = #{pendingAmount},</if>
+ <if test="exchangeRate != null">exchange_rate = #{exchangeRate},</if>
+ <if test="cnyAmount != null">cny_amount = #{cnyAmount},</if>
+ <if test="periodType != null and periodType != ''">period_type = #{periodType},</if>
+ <if test="businessStartDate != null">business_start_date = #{businessStartDate},</if>
+ <if test="businessEndDate != null">business_end_date = #{businessEndDate},</if>
+ <if test="billingStartDate != null">billing_start_date = #{billingStartDate},</if>
+ <if test="billingEndDate != null">billing_end_date = #{billingEndDate},</if>
+ <if test="billGenerateDate != null">bill_generate_date = #{billGenerateDate},</if>
+ <if test="billSendDate != null">bill_send_date = #{billSendDate},</if>
+ <if test="billDueDate != null">bill_due_date = #{billDueDate},</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="updatePayableBillManagementBatch" parameterType="java.util.List">
+ <foreach collection="list" item="item" index="index" separator=";">
+ update payable_bill_management
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="item.systemNo != null and item.systemNo != ''">system_no = #{item.systemNo},</if>
+ <if test="item.billName != null and item.billName != ''">bill_name = #{item.billName},</if>
+ <if test="item.supplierName != null and item.supplierName != ''">supplier_name = #{item.supplierName},</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.documentCount != null">document_count = #{item.documentCount},</if>
+ <if test="item.totalAmount != null">total_amount = #{item.totalAmount},</if>
+ <if test="item.currency != null">currency = #{item.currency},</if>
+ <if test="item.discountAmount != null">discount_amount = #{item.discountAmount},</if>
+ <if test="item.paidAmount != null">paid_amount = #{item.paidAmount},</if>
+ <if test="item.pendingAmount != null">pending_amount = #{item.pendingAmount},</if>
+ <if test="item.exchangeRate != null">exchange_rate = #{item.exchangeRate},</if>
+ <if test="item.cnyAmount != null">cny_amount = #{item.cnyAmount},</if>
+ <if test="item.periodType != null and item.periodType != ''">period_type = #{item.periodType},</if>
+ <if test="item.businessStartDate != null">business_start_date = #{item.businessStartDate},</if>
+ <if test="item.businessEndDate != null">business_end_date = #{item.businessEndDate},</if>
+ <if test="item.billingStartDate != null">billing_start_date = #{item.billingStartDate},</if>
+ <if test="item.billingEndDate != null">billing_end_date = #{item.billingEndDate},</if>
+ <if test="item.billGenerateDate != null">bill_generate_date = #{item.billGenerateDate},</if>
+ <if test="item.billSendDate != null">bill_send_date = #{item.billSendDate},</if>
+ <if test="item.billDueDate != null">bill_due_date = #{item.billDueDate},</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="deletePayableBillManagementById" parameterType="Integer">
+ delete from payable_bill_management where id = #{id}
+ </delete>
+ <delete id="deletePayableBillManagementByIds" parameterType="Integer">
+ delete from payable_bill_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/PayableBillSettlementDetailMapper.xml b/service/src/main/resources/mapper/cwgl/PayableBillSettlementDetailMapper.xml
new file mode 100644
index 0000000..f0a0761
--- /dev/null
+++ b/service/src/main/resources/mapper/cwgl/PayableBillSettlementDetailMapper.xml
@@ -0,0 +1,176 @@
+<?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.PayableBillSettlementDetailMapper">
+
+ <resultMap type="com.ruoyi.cwgl.domain.PayableBillSettlementDetail" id="PayableBillSettlementDetailResult">
+ <result property="id" column="id" />
+ <result property="billId" column="bill_id" />
+ <result property="settlementMethod" column="settlement_method" />
+ <result property="paymentBank" column="payment_bank" />
+ <result property="paymentBankAccount" column="payment_bank_account" />
+ <result property="supplierReceivingAccount" column="supplier_receiving_account" />
+ <result property="supplierReceivingBank" column="supplier_receiving_bank" />
+ <result property="paymentDate" column="payment_date" />
+ <result property="paymentAmount" column="payment_amount" />
+ <result property="remainingPendingAmount" column="remaining_pending_amount" />
+ <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="selectPayableBillSettlementDetailVo">
+ select thisTab.id, thisTab.bill_id, thisTab.settlement_method, thisTab.payment_bank, thisTab.payment_bank_account, thisTab.supplier_receiving_account, thisTab.supplier_receiving_bank, thisTab.payment_date, thisTab.payment_amount, thisTab.remaining_pending_amount, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.deleted from payable_bill_settlement_detail AS thisTab
+ </sql>
+ <sql id="selectPayableBillSettlementDetailVoCount">
+ select count(0) from payable_bill_settlement_detail as thisTab
+ </sql>
+
+ <sql id="whereCondition">
+ <if test="billId != null "> and thisTab.bill_id = #{billId}</if>
+ <if test="settlementMethod != null and settlementMethod != ''"> and thisTab.settlement_method = #{settlementMethod}</if>
+ <if test="paymentBank != null and paymentBank != ''"> and thisTab.payment_bank = #{paymentBank}</if>
+ <if test="paymentBankAccount != null and paymentBankAccount != ''"> and thisTab.payment_bank_account = #{paymentBankAccount}</if>
+ <if test="supplierReceivingAccount != null and supplierReceivingAccount != ''"> and thisTab.supplier_receiving_account = #{supplierReceivingAccount}</if>
+ <if test="supplierReceivingBank != null and supplierReceivingBank != ''"> and thisTab.supplier_receiving_bank = #{supplierReceivingBank}</if>
+ <if test="paymentDate != null "> and thisTab.payment_date = #{paymentDate}</if>
+ <if test="paymentAmount != null "> and thisTab.payment_amount = #{paymentAmount}</if>
+ <if test="remainingPendingAmount != null "> and thisTab.remaining_pending_amount = #{remainingPendingAmount}</if>
+ <if test="deleted != null "> and thisTab.deleted = #{deleted}</if>
+ </sql>
+
+ <!--鏌ヨ-->
+ <select id="selectPayableBillSettlementDetailById" parameterType="Integer" resultMap="PayableBillSettlementDetailResult">
+ <include refid="selectPayableBillSettlementDetailVo"/>
+ where id = #{id}
+ </select>
+
+ <select id="selectPayableBillSettlementDetailCount" parameterType="com.ruoyi.cwgl.domain.PayableBillSettlementDetail" resultType="int">
+ <include refid="selectPayableBillSettlementDetailVoCount"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ </select>
+
+ <select id="selectPayableBillSettlementDetailList" parameterType="com.ruoyi.cwgl.domain.PayableBillSettlementDetail" resultMap="PayableBillSettlementDetailResult">
+ <include refid="selectPayableBillSettlementDetailVo"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ order by thisTab.id desc
+ </select>
+
+ <!-- 鏂板 -->
+ <insert id="insertPayableBillSettlementDetail" parameterType="com.ruoyi.cwgl.domain.PayableBillSettlementDetail" useGeneratedKeys="true" keyProperty="id">
+ insert into payable_bill_settlement_detail
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="billId != null">bill_id,</if>
+ <if test="settlementMethod != null and settlementMethod != ''">settlement_method,</if>
+ <if test="paymentBank != null">payment_bank,</if>
+ <if test="paymentBankAccount != null">payment_bank_account,</if>
+ <if test="supplierReceivingAccount != null">supplier_receiving_account,</if>
+ <if test="supplierReceivingBank != null">supplier_receiving_bank,</if>
+ <if test="paymentDate != null">payment_date,</if>
+ <if test="paymentAmount != null">payment_amount,</if>
+ <if test="remainingPendingAmount != null">remaining_pending_amount,</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="billId != null">#{billId},</if>
+ <if test="settlementMethod != null and settlementMethod != ''">#{settlementMethod},</if>
+ <if test="paymentBank != null">#{paymentBank},</if>
+ <if test="paymentBankAccount != null">#{paymentBankAccount},</if>
+ <if test="supplierReceivingAccount != null">#{supplierReceivingAccount},</if>
+ <if test="supplierReceivingBank != null">#{supplierReceivingBank},</if>
+ <if test="paymentDate != null">#{paymentDate},</if>
+ <if test="paymentAmount != null">#{paymentAmount},</if>
+ <if test="remainingPendingAmount != null">#{remainingPendingAmount},</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="insertPayableBillSettlementDetailBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
+ insert into payable_bill_settlement_detail
+ <trim prefix="(" suffix=") values" suffixOverrides=",">
+ id,bill_id,settlement_method,payment_bank,payment_bank_account,supplier_receiving_account,supplier_receiving_bank,payment_date,payment_amount,remaining_pending_amount,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.billId},#{item.settlementMethod},#{item.paymentBank},#{item.paymentBankAccount},#{item.supplierReceivingAccount},#{item.supplierReceivingBank},#{item.paymentDate},#{item.paymentAmount},#{item.remainingPendingAmount},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.deleted},
+ </trim>
+ </foreach>
+ </insert>
+
+ <!-- 淇敼 -->
+ <update id="updatePayableBillSettlementDetail" parameterType="com.ruoyi.cwgl.domain.PayableBillSettlementDetail">
+ update payable_bill_settlement_detail
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="billId != null">bill_id = #{billId},</if>
+ <if test="settlementMethod != null and settlementMethod != ''">settlement_method = #{settlementMethod},</if>
+ <if test="paymentBank != null">payment_bank = #{paymentBank},</if>
+ <if test="paymentBankAccount != null">payment_bank_account = #{paymentBankAccount},</if>
+ <if test="supplierReceivingAccount != null">supplier_receiving_account = #{supplierReceivingAccount},</if>
+ <if test="supplierReceivingBank != null">supplier_receiving_bank = #{supplierReceivingBank},</if>
+ <if test="paymentDate != null">payment_date = #{paymentDate},</if>
+ <if test="paymentAmount != null">payment_amount = #{paymentAmount},</if>
+ <if test="remainingPendingAmount != null">remaining_pending_amount = #{remainingPendingAmount},</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="updatePayableBillSettlementDetailBatch" parameterType="java.util.List">
+ <foreach collection="list" item="item" index="index" separator=";">
+ update payable_bill_settlement_detail
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="item.billId != null">bill_id = #{item.billId},</if>
+ <if test="item.settlementMethod != null and item.settlementMethod != ''">settlement_method = #{item.settlementMethod},</if>
+ <if test="item.paymentBank != null">payment_bank = #{item.paymentBank},</if>
+ <if test="item.paymentBankAccount != null">payment_bank_account = #{item.paymentBankAccount},</if>
+ <if test="item.supplierReceivingAccount != null">supplier_receiving_account = #{item.supplierReceivingAccount},</if>
+ <if test="item.supplierReceivingBank != null">supplier_receiving_bank = #{item.supplierReceivingBank},</if>
+ <if test="item.paymentDate != null">payment_date = #{item.paymentDate},</if>
+ <if test="item.paymentAmount != null">payment_amount = #{item.paymentAmount},</if>
+ <if test="item.remainingPendingAmount != null">remaining_pending_amount = #{item.remainingPendingAmount},</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="deletePayableBillSettlementDetailById" parameterType="Integer">
+ delete from payable_bill_settlement_detail where id = #{id}
+ </delete>
+ <delete id="deletePayableBillSettlementDetailByIds" parameterType="Integer">
+ delete from payable_bill_settlement_detail 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/ReceivableBillManagementMapper.xml b/service/src/main/resources/mapper/cwgl/ReceivableBillManagementMapper.xml
new file mode 100644
index 0000000..c03086b
--- /dev/null
+++ b/service/src/main/resources/mapper/cwgl/ReceivableBillManagementMapper.xml
@@ -0,0 +1,254 @@
+<?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.ReceivableBillManagementMapper">
+
+ <resultMap type="com.ruoyi.cwgl.domain.ReceivableBillManagement" id="ReceivableBillManagementResult">
+ <result property="id" column="id" />
+ <result property="systemNo" column="system_no" />
+ <result property="billName" column="bill_name" />
+ <result property="customerName" column="customer_name" />
+ <result property="isInternalSettlement" column="is_internal_settlement" />
+ <result property="internalSettlementUnit" column="internal_settlement_unit" />
+ <result property="documentCount" column="document_count" />
+ <result property="totalAmount" column="total_amount" />
+ <result property="currency" column="currency" />
+ <result property="discountAmount" column="discount_amount" />
+ <result property="receivedAmount" column="received_amount" />
+ <result property="pendingAmount" column="pending_amount" />
+ <result property="exchangeRate" column="exchange_rate" />
+ <result property="cnyAmount" column="cny_amount" />
+ <result property="periodType" column="period_type" />
+ <result property="businessStartDate" column="business_start_date" />
+ <result property="businessEndDate" column="business_end_date" />
+ <result property="billingStartDate" column="billing_start_date" />
+ <result property="billingEndDate" column="billing_end_date" />
+ <result property="billGenerateDate" column="bill_generate_date" />
+ <result property="billSendDate" column="bill_send_date" />
+ <result property="billDueDate" column="bill_due_date" />
+ <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="selectReceivableBillManagementVo">
+ select thisTab.id, thisTab.system_no, thisTab.bill_name, thisTab.customer_name, thisTab.is_internal_settlement, thisTab.internal_settlement_unit, thisTab.document_count, thisTab.total_amount, thisTab.currency, thisTab.discount_amount, thisTab.received_amount, thisTab.pending_amount, thisTab.exchange_rate, thisTab.cny_amount, thisTab.period_type, thisTab.business_start_date, thisTab.business_end_date, thisTab.billing_start_date, thisTab.billing_end_date, thisTab.bill_generate_date, thisTab.bill_send_date, thisTab.bill_due_date, thisTab.status, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.deleted from receivable_bill_management AS thisTab
+ </sql>
+ <sql id="selectReceivableBillManagementVoCount">
+ select count(0) from receivable_bill_management as thisTab
+ </sql>
+
+ <sql id="whereCondition">
+ <if test="systemNo != null and systemNo != ''"> and thisTab.system_no = #{systemNo}</if>
+ <if test="billName != null and billName != ''"> and thisTab.bill_name like concat('%', #{billName}, '%')</if>
+ <if test="customerName != null and customerName != ''"> and thisTab.customer_name like concat('%', #{customerName}, '%')</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="documentCount != null "> and thisTab.document_count = #{documentCount}</if>
+ <if test="totalAmount != null "> and thisTab.total_amount = #{totalAmount}</if>
+ <if test="currency != null and currency != ''"> and thisTab.currency = #{currency}</if>
+ <if test="discountAmount != null "> and thisTab.discount_amount = #{discountAmount}</if>
+ <if test="receivedAmount != null "> and thisTab.received_amount = #{receivedAmount}</if>
+ <if test="pendingAmount != null "> and thisTab.pending_amount = #{pendingAmount}</if>
+ <if test="exchangeRate != null "> and thisTab.exchange_rate = #{exchangeRate}</if>
+ <if test="cnyAmount != null "> and thisTab.cny_amount = #{cnyAmount}</if>
+ <if test="periodType != null and periodType != ''"> and thisTab.period_type = #{periodType}</if>
+ <if test="businessStartDate != null "> and thisTab.business_start_date = #{businessStartDate}</if>
+ <if test="businessEndDate != null "> and thisTab.business_end_date = #{businessEndDate}</if>
+ <if test="billingStartDate != null "> and thisTab.billing_start_date = #{billingStartDate}</if>
+ <if test="billingEndDate != null "> and thisTab.billing_end_date = #{billingEndDate}</if>
+ <if test="billGenerateDate != null "> and thisTab.bill_generate_date = #{billGenerateDate}</if>
+ <if test="billSendDate != null "> and thisTab.bill_send_date = #{billSendDate}</if>
+ <if test="billDueDate != null "> and thisTab.bill_due_date = #{billDueDate}</if>
+ <if test="status != null and status != ''"> and thisTab.status = #{status}</if>
+ <if test="deleted != null "> and thisTab.deleted = #{deleted}</if>
+ </sql>
+
+ <!--鏌ヨ-->
+ <select id="selectReceivableBillManagementById" parameterType="Integer" resultMap="ReceivableBillManagementResult">
+ <include refid="selectReceivableBillManagementVo"/>
+ where id = #{id}
+ </select>
+
+ <select id="selectReceivableBillManagementCount" parameterType="com.ruoyi.cwgl.domain.ReceivableBillManagement" resultType="int">
+ <include refid="selectReceivableBillManagementVoCount"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ </select>
+
+ <select id="selectReceivableBillManagementList" parameterType="com.ruoyi.cwgl.domain.ReceivableBillManagement" resultMap="ReceivableBillManagementResult">
+ <include refid="selectReceivableBillManagementVo"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ order by thisTab.id desc
+ </select>
+
+ <!-- 鏂板 -->
+ <insert id="insertReceivableBillManagement" parameterType="com.ruoyi.cwgl.domain.ReceivableBillManagement" useGeneratedKeys="true" keyProperty="id">
+ insert into receivable_bill_management
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="systemNo != null and systemNo != ''">system_no,</if>
+ <if test="billName != null and billName != ''">bill_name,</if>
+ <if test="customerName != null and customerName != ''">customer_name,</if>
+ <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement,</if>
+ <if test="internalSettlementUnit != null">internal_settlement_unit,</if>
+ <if test="documentCount != null">document_count,</if>
+ <if test="totalAmount != null">total_amount,</if>
+ <if test="currency != null">currency,</if>
+ <if test="discountAmount != null">discount_amount,</if>
+ <if test="receivedAmount != null">received_amount,</if>
+ <if test="pendingAmount != null">pending_amount,</if>
+ <if test="exchangeRate != null">exchange_rate,</if>
+ <if test="cnyAmount != null">cny_amount,</if>
+ <if test="periodType != null and periodType != ''">period_type,</if>
+ <if test="businessStartDate != null">business_start_date,</if>
+ <if test="businessEndDate != null">business_end_date,</if>
+ <if test="billingStartDate != null">billing_start_date,</if>
+ <if test="billingEndDate != null">billing_end_date,</if>
+ <if test="billGenerateDate != null">bill_generate_date,</if>
+ <if test="billSendDate != null">bill_send_date,</if>
+ <if test="billDueDate != null">bill_due_date,</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="billName != null and billName != ''">#{billName},</if>
+ <if test="customerName != null and customerName != ''">#{customerName},</if>
+ <if test="isInternalSettlement != null and isInternalSettlement != ''">#{isInternalSettlement},</if>
+ <if test="internalSettlementUnit != null">#{internalSettlementUnit},</if>
+ <if test="documentCount != null">#{documentCount},</if>
+ <if test="totalAmount != null">#{totalAmount},</if>
+ <if test="currency != null">#{currency},</if>
+ <if test="discountAmount != null">#{discountAmount},</if>
+ <if test="receivedAmount != null">#{receivedAmount},</if>
+ <if test="pendingAmount != null">#{pendingAmount},</if>
+ <if test="exchangeRate != null">#{exchangeRate},</if>
+ <if test="cnyAmount != null">#{cnyAmount},</if>
+ <if test="periodType != null and periodType != ''">#{periodType},</if>
+ <if test="businessStartDate != null">#{businessStartDate},</if>
+ <if test="businessEndDate != null">#{businessEndDate},</if>
+ <if test="billingStartDate != null">#{billingStartDate},</if>
+ <if test="billingEndDate != null">#{billingEndDate},</if>
+ <if test="billGenerateDate != null">#{billGenerateDate},</if>
+ <if test="billSendDate != null">#{billSendDate},</if>
+ <if test="billDueDate != null">#{billDueDate},</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="insertReceivableBillManagementBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
+ insert into receivable_bill_management
+ <trim prefix="(" suffix=") values" suffixOverrides=",">
+ id,system_no,bill_name,customer_name,is_internal_settlement,internal_settlement_unit,document_count,total_amount,currency,discount_amount,received_amount,pending_amount,exchange_rate,cny_amount,period_type,business_start_date,business_end_date,billing_start_date,billing_end_date,bill_generate_date,bill_send_date,bill_due_date,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.billName},#{item.customerName},#{item.isInternalSettlement},#{item.internalSettlementUnit},#{item.documentCount},#{item.totalAmount},#{item.currency},#{item.discountAmount},#{item.receivedAmount},#{item.pendingAmount},#{item.exchangeRate},#{item.cnyAmount},#{item.periodType},#{item.businessStartDate},#{item.businessEndDate},#{item.billingStartDate},#{item.billingEndDate},#{item.billGenerateDate},#{item.billSendDate},#{item.billDueDate},#{item.status},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.deleted},
+ </trim>
+ </foreach>
+ </insert>
+
+ <!-- 淇敼 -->
+ <update id="updateReceivableBillManagement" parameterType="com.ruoyi.cwgl.domain.ReceivableBillManagement">
+ update receivable_bill_management
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="systemNo != null and systemNo != ''">system_no = #{systemNo},</if>
+ <if test="billName != null and billName != ''">bill_name = #{billName},</if>
+ <if test="customerName != null and customerName != ''">customer_name = #{customerName},</if>
+ <if test="isInternalSettlement != null and isInternalSettlement != ''">is_internal_settlement = #{isInternalSettlement},</if>
+ <if test="internalSettlementUnit != null">internal_settlement_unit = #{internalSettlementUnit},</if>
+ <if test="documentCount != null">document_count = #{documentCount},</if>
+ <if test="totalAmount != null">total_amount = #{totalAmount},</if>
+ <if test="currency != null">currency = #{currency},</if>
+ <if test="discountAmount != null">discount_amount = #{discountAmount},</if>
+ <if test="receivedAmount != null">received_amount = #{receivedAmount},</if>
+ <if test="pendingAmount != null">pending_amount = #{pendingAmount},</if>
+ <if test="exchangeRate != null">exchange_rate = #{exchangeRate},</if>
+ <if test="cnyAmount != null">cny_amount = #{cnyAmount},</if>
+ <if test="periodType != null and periodType != ''">period_type = #{periodType},</if>
+ <if test="businessStartDate != null">business_start_date = #{businessStartDate},</if>
+ <if test="businessEndDate != null">business_end_date = #{businessEndDate},</if>
+ <if test="billingStartDate != null">billing_start_date = #{billingStartDate},</if>
+ <if test="billingEndDate != null">billing_end_date = #{billingEndDate},</if>
+ <if test="billGenerateDate != null">bill_generate_date = #{billGenerateDate},</if>
+ <if test="billSendDate != null">bill_send_date = #{billSendDate},</if>
+ <if test="billDueDate != null">bill_due_date = #{billDueDate},</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="updateReceivableBillManagementBatch" parameterType="java.util.List">
+ <foreach collection="list" item="item" index="index" separator=";">
+ update receivable_bill_management
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="item.systemNo != null and item.systemNo != ''">system_no = #{item.systemNo},</if>
+ <if test="item.billName != null and item.billName != ''">bill_name = #{item.billName},</if>
+ <if test="item.customerName != null and item.customerName != ''">customer_name = #{item.customerName},</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.documentCount != null">document_count = #{item.documentCount},</if>
+ <if test="item.totalAmount != null">total_amount = #{item.totalAmount},</if>
+ <if test="item.currency != null">currency = #{item.currency},</if>
+ <if test="item.discountAmount != null">discount_amount = #{item.discountAmount},</if>
+ <if test="item.receivedAmount != null">received_amount = #{item.receivedAmount},</if>
+ <if test="item.pendingAmount != null">pending_amount = #{item.pendingAmount},</if>
+ <if test="item.exchangeRate != null">exchange_rate = #{item.exchangeRate},</if>
+ <if test="item.cnyAmount != null">cny_amount = #{item.cnyAmount},</if>
+ <if test="item.periodType != null and item.periodType != ''">period_type = #{item.periodType},</if>
+ <if test="item.businessStartDate != null">business_start_date = #{item.businessStartDate},</if>
+ <if test="item.businessEndDate != null">business_end_date = #{item.businessEndDate},</if>
+ <if test="item.billingStartDate != null">billing_start_date = #{item.billingStartDate},</if>
+ <if test="item.billingEndDate != null">billing_end_date = #{item.billingEndDate},</if>
+ <if test="item.billGenerateDate != null">bill_generate_date = #{item.billGenerateDate},</if>
+ <if test="item.billSendDate != null">bill_send_date = #{item.billSendDate},</if>
+ <if test="item.billDueDate != null">bill_due_date = #{item.billDueDate},</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="deleteReceivableBillManagementById" parameterType="Integer">
+ delete from receivable_bill_management where id = #{id}
+ </delete>
+ <delete id="deleteReceivableBillManagementByIds" parameterType="Integer">
+ delete from receivable_bill_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/ReceivableBillSettlementDetailMapper.xml b/service/src/main/resources/mapper/cwgl/ReceivableBillSettlementDetailMapper.xml
new file mode 100644
index 0000000..86f3685
--- /dev/null
+++ b/service/src/main/resources/mapper/cwgl/ReceivableBillSettlementDetailMapper.xml
@@ -0,0 +1,176 @@
+<?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.ReceivableBillSettlementDetailMapper">
+
+ <resultMap type="com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail" id="ReceivableBillSettlementDetailResult">
+ <result property="id" column="id" />
+ <result property="billId" column="bill_id" />
+ <result property="settlementMethod" column="settlement_method" />
+ <result property="customerBank" column="customer_bank" />
+ <result property="customerBankAccount" column="customer_bank_account" />
+ <result property="receivingBankAccount" column="receiving_bank_account" />
+ <result property="receivingBank" column="receiving_bank" />
+ <result property="receiptDate" column="receipt_date" />
+ <result property="receiptAmount" column="receipt_amount" />
+ <result property="remainingPendingAmount" column="remaining_pending_amount" />
+ <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="selectReceivableBillSettlementDetailVo">
+ select thisTab.id, thisTab.bill_id, thisTab.settlement_method, thisTab.customer_bank, thisTab.customer_bank_account, thisTab.receiving_bank_account, thisTab.receiving_bank, thisTab.receipt_date, thisTab.receipt_amount, thisTab.remaining_pending_amount, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.deleted from receivable_bill_settlement_detail AS thisTab
+ </sql>
+ <sql id="selectReceivableBillSettlementDetailVoCount">
+ select count(0) from receivable_bill_settlement_detail as thisTab
+ </sql>
+
+ <sql id="whereCondition">
+ <if test="billId != null "> and thisTab.bill_id = #{billId}</if>
+ <if test="settlementMethod != null and settlementMethod != ''"> and thisTab.settlement_method = #{settlementMethod}</if>
+ <if test="customerBank != null and customerBank != ''"> and thisTab.customer_bank = #{customerBank}</if>
+ <if test="customerBankAccount != null and customerBankAccount != ''"> and thisTab.customer_bank_account = #{customerBankAccount}</if>
+ <if test="receivingBankAccount != null and receivingBankAccount != ''"> and thisTab.receiving_bank_account = #{receivingBankAccount}</if>
+ <if test="receivingBank != null and receivingBank != ''"> and thisTab.receiving_bank = #{receivingBank}</if>
+ <if test="receiptDate != null "> and thisTab.receipt_date = #{receiptDate}</if>
+ <if test="receiptAmount != null "> and thisTab.receipt_amount = #{receiptAmount}</if>
+ <if test="remainingPendingAmount != null "> and thisTab.remaining_pending_amount = #{remainingPendingAmount}</if>
+ <if test="deleted != null "> and thisTab.deleted = #{deleted}</if>
+ </sql>
+
+ <!--鏌ヨ-->
+ <select id="selectReceivableBillSettlementDetailById" parameterType="Integer" resultMap="ReceivableBillSettlementDetailResult">
+ <include refid="selectReceivableBillSettlementDetailVo"/>
+ where id = #{id}
+ </select>
+
+ <select id="selectReceivableBillSettlementDetailCount" parameterType="com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail" resultType="int">
+ <include refid="selectReceivableBillSettlementDetailVoCount"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ </select>
+
+ <select id="selectReceivableBillSettlementDetailList" parameterType="com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail" resultMap="ReceivableBillSettlementDetailResult">
+ <include refid="selectReceivableBillSettlementDetailVo"/>
+ <where>
+ <include refid="whereCondition"/>
+ </where>
+ order by thisTab.id desc
+ </select>
+
+ <!-- 鏂板 -->
+ <insert id="insertReceivableBillSettlementDetail" parameterType="com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail" useGeneratedKeys="true" keyProperty="id">
+ insert into receivable_bill_settlement_detail
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="billId != null">bill_id,</if>
+ <if test="settlementMethod != null and settlementMethod != ''">settlement_method,</if>
+ <if test="customerBank != null">customer_bank,</if>
+ <if test="customerBankAccount != null">customer_bank_account,</if>
+ <if test="receivingBankAccount != null">receiving_bank_account,</if>
+ <if test="receivingBank != null">receiving_bank,</if>
+ <if test="receiptDate != null">receipt_date,</if>
+ <if test="receiptAmount != null">receipt_amount,</if>
+ <if test="remainingPendingAmount != null">remaining_pending_amount,</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="billId != null">#{billId},</if>
+ <if test="settlementMethod != null and settlementMethod != ''">#{settlementMethod},</if>
+ <if test="customerBank != null">#{customerBank},</if>
+ <if test="customerBankAccount != null">#{customerBankAccount},</if>
+ <if test="receivingBankAccount != null">#{receivingBankAccount},</if>
+ <if test="receivingBank != null">#{receivingBank},</if>
+ <if test="receiptDate != null">#{receiptDate},</if>
+ <if test="receiptAmount != null">#{receiptAmount},</if>
+ <if test="remainingPendingAmount != null">#{remainingPendingAmount},</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="insertReceivableBillSettlementDetailBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
+ insert into receivable_bill_settlement_detail
+ <trim prefix="(" suffix=") values" suffixOverrides=",">
+ id,bill_id,settlement_method,customer_bank,customer_bank_account,receiving_bank_account,receiving_bank,receipt_date,receipt_amount,remaining_pending_amount,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.billId},#{item.settlementMethod},#{item.customerBank},#{item.customerBankAccount},#{item.receivingBankAccount},#{item.receivingBank},#{item.receiptDate},#{item.receiptAmount},#{item.remainingPendingAmount},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.deleted},
+ </trim>
+ </foreach>
+ </insert>
+
+ <!-- 淇敼 -->
+ <update id="updateReceivableBillSettlementDetail" parameterType="com.ruoyi.cwgl.domain.ReceivableBillSettlementDetail">
+ update receivable_bill_settlement_detail
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="billId != null">bill_id = #{billId},</if>
+ <if test="settlementMethod != null and settlementMethod != ''">settlement_method = #{settlementMethod},</if>
+ <if test="customerBank != null">customer_bank = #{customerBank},</if>
+ <if test="customerBankAccount != null">customer_bank_account = #{customerBankAccount},</if>
+ <if test="receivingBankAccount != null">receiving_bank_account = #{receivingBankAccount},</if>
+ <if test="receivingBank != null">receiving_bank = #{receivingBank},</if>
+ <if test="receiptDate != null">receipt_date = #{receiptDate},</if>
+ <if test="receiptAmount != null">receipt_amount = #{receiptAmount},</if>
+ <if test="remainingPendingAmount != null">remaining_pending_amount = #{remainingPendingAmount},</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="updateReceivableBillSettlementDetailBatch" parameterType="java.util.List">
+ <foreach collection="list" item="item" index="index" separator=";">
+ update receivable_bill_settlement_detail
+ <trim prefix="SET" suffixOverrides=",">
+ <if test="item.billId != null">bill_id = #{item.billId},</if>
+ <if test="item.settlementMethod != null and item.settlementMethod != ''">settlement_method = #{item.settlementMethod},</if>
+ <if test="item.customerBank != null">customer_bank = #{item.customerBank},</if>
+ <if test="item.customerBankAccount != null">customer_bank_account = #{item.customerBankAccount},</if>
+ <if test="item.receivingBankAccount != null">receiving_bank_account = #{item.receivingBankAccount},</if>
+ <if test="item.receivingBank != null">receiving_bank = #{item.receivingBank},</if>
+ <if test="item.receiptDate != null">receipt_date = #{item.receiptDate},</if>
+ <if test="item.receiptAmount != null">receipt_amount = #{item.receiptAmount},</if>
+ <if test="item.remainingPendingAmount != null">remaining_pending_amount = #{item.remainingPendingAmount},</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="deleteReceivableBillSettlementDetailById" parameterType="Integer">
+ delete from receivable_bill_settlement_detail where id = #{id}
+ </delete>
+ <delete id="deleteReceivableBillSettlementDetailByIds" parameterType="Integer">
+ delete from receivable_bill_settlement_detail 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/payableBillManagement.ts b/ui/admin-ui3/src/api/cwgl/payableBillManagement.ts
new file mode 100644
index 0000000..255a34d
--- /dev/null
+++ b/ui/admin-ui3/src/api/cwgl/payableBillManagement.ts
@@ -0,0 +1,67 @@
+import request,{download,requestType} from "@/utils/request";
+import {BaseEntityInterface} from "@/utils/globalInterface";
+export interface PayableBillManagementI extends BaseEntityInterface{
+ id ?: number , systemNo ?: string , billName ?: string , supplierName ?: string , isInternalSettlement ?: string , internalSettlementUnit ?: string , documentCount ?: number , totalAmount ?: string , currency ?: string , discountAmount ?: string , paidAmount ?: string , pendingAmount ?: string , exchangeRate ?: string , cnyAmount ?: string , periodType ?: string , businessStartDate ?: string , businessEndDate ?: string , billingStartDate ?: string , billingEndDate ?: string , billGenerateDate ?: string , billSendDate ?: string , billDueDate ?: string , status ?: string , remark ?: string , createBy ?: string , createTime ?: string , updateBy ?: string , updateTime ?: string , deleted ?: number }
+
+
+/**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊鍒楄〃
+ */
+export const listPayableBillManagement:requestType = (query) => {
+ return request({
+ url: '/cwgl/payableBillManagement/list',
+ method:'get',
+ params:query
+ })
+}
+/**
+ * 鏌ヨ搴斾粯璐﹀崟绠$悊璇︾粏
+ */
+export const getPayableBillManagement:requestType = (id) => {
+ return request({
+ url: '/cwgl/payableBillManagement/' + id,
+ method:'get'
+ })
+}
+
+/**
+ * 鏂板搴斾粯璐﹀崟绠$悊
+ */
+export const addPayableBillManagement:requestType = (data) => {
+ return request({
+ url: '/cwgl/payableBillManagement',
+ method: 'post',
+ data
+ })
+}
+
+/**
+ * 淇敼搴斾粯璐﹀崟绠$悊
+ */
+export const updatePayableBillManagement:requestType = (data) => {
+ return request({
+ url: '/cwgl/payableBillManagement',
+ method: 'put',
+ data
+ })
+}
+
+/**
+ * 鍒犻櫎搴斾粯璐﹀崟绠$悊
+ */
+export const delPayableBillManagement:requestType = (id) => {
+ return request({
+ url: '/cwgl/payableBillManagement/' + id,
+ method: 'delete'
+ })
+}
+
+
+/**
+ * 瀵煎嚭搴斾粯璐﹀崟绠$悊
+ */
+export const exportPayableBillManagement:requestType = (query) => {
+ return new Promise<any>(()=>{
+ download('/cwgl/payableBillManagement/export',query);
+ })
+}
diff --git a/ui/admin-ui3/src/api/cwgl/payableBillSettlementDetail.ts b/ui/admin-ui3/src/api/cwgl/payableBillSettlementDetail.ts
new file mode 100644
index 0000000..79f7994
--- /dev/null
+++ b/ui/admin-ui3/src/api/cwgl/payableBillSettlementDetail.ts
@@ -0,0 +1,67 @@
+import request,{download,requestType} from "@/utils/request";
+import {BaseEntityInterface} from "@/utils/globalInterface";
+export interface PayableBillSettlementDetailI extends BaseEntityInterface{
+ id ?: number , billId ?: number , settlementMethod ?: string , paymentBank ?: string , paymentBankAccount ?: string , supplierReceivingAccount ?: string , supplierReceivingBank ?: string , paymentDate ?: string , paymentAmount ?: string , remainingPendingAmount ?: string , remark ?: string , createBy ?: string , createTime ?: string , updateBy ?: string , updateTime ?: string , deleted ?: number }
+
+
+/**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ */
+export const listPayableBillSettlementDetail:requestType = (query) => {
+ return request({
+ url: '/cwgl/payableBillSettlementDetail/list',
+ method:'get',
+ params:query
+ })
+}
+/**
+ * 鏌ヨ搴斾粯璐﹀崟缁撶畻鏄庣粏璇︾粏
+ */
+export const getPayableBillSettlementDetail:requestType = (id) => {
+ return request({
+ url: '/cwgl/payableBillSettlementDetail/' + id,
+ method:'get'
+ })
+}
+
+/**
+ * 鏂板搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+export const addPayableBillSettlementDetail:requestType = (data) => {
+ return request({
+ url: '/cwgl/payableBillSettlementDetail',
+ method: 'post',
+ data
+ })
+}
+
+/**
+ * 淇敼搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+export const updatePayableBillSettlementDetail:requestType = (data) => {
+ return request({
+ url: '/cwgl/payableBillSettlementDetail',
+ method: 'put',
+ data
+ })
+}
+
+/**
+ * 鍒犻櫎搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+export const delPayableBillSettlementDetail:requestType = (id) => {
+ return request({
+ url: '/cwgl/payableBillSettlementDetail/' + id,
+ method: 'delete'
+ })
+}
+
+
+/**
+ * 瀵煎嚭搴斾粯璐﹀崟缁撶畻鏄庣粏
+ */
+export const exportPayableBillSettlementDetail:requestType = (query) => {
+ return new Promise<any>(()=>{
+ download('/cwgl/payableBillSettlementDetail/export',query);
+ })
+}
diff --git a/ui/admin-ui3/src/api/cwgl/receivableBillManagement.ts b/ui/admin-ui3/src/api/cwgl/receivableBillManagement.ts
new file mode 100644
index 0000000..b85b6d1
--- /dev/null
+++ b/ui/admin-ui3/src/api/cwgl/receivableBillManagement.ts
@@ -0,0 +1,67 @@
+import request,{download,requestType} from "@/utils/request";
+import {BaseEntityInterface} from "@/utils/globalInterface";
+export interface ReceivableBillManagementI extends BaseEntityInterface{
+ id ?: number , systemNo ?: string , billName ?: string , customerName ?: string , isInternalSettlement ?: string , internalSettlementUnit ?: string , documentCount ?: number , totalAmount ?: string , currency ?: string , discountAmount ?: string , receivedAmount ?: string , pendingAmount ?: string , exchangeRate ?: string , cnyAmount ?: string , periodType ?: string , businessStartDate ?: string , businessEndDate ?: string , billingStartDate ?: string , billingEndDate ?: string , billGenerateDate ?: string , billSendDate ?: string , billDueDate ?: string , status ?: string , remark ?: string , createBy ?: string , createTime ?: string , updateBy ?: string , updateTime ?: string , deleted ?: number }
+
+
+/**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊鍒楄〃
+ */
+export const listReceivableBillManagement:requestType = (query) => {
+ return request({
+ url: '/cwgl/receivableBillManagement/list',
+ method:'get',
+ params:query
+ })
+}
+/**
+ * 鏌ヨ搴旀敹璐﹀崟绠$悊璇︾粏
+ */
+export const getReceivableBillManagement:requestType = (id) => {
+ return request({
+ url: '/cwgl/receivableBillManagement/' + id,
+ method:'get'
+ })
+}
+
+/**
+ * 鏂板搴旀敹璐﹀崟绠$悊
+ */
+export const addReceivableBillManagement:requestType = (data) => {
+ return request({
+ url: '/cwgl/receivableBillManagement',
+ method: 'post',
+ data
+ })
+}
+
+/**
+ * 淇敼搴旀敹璐﹀崟绠$悊
+ */
+export const updateReceivableBillManagement:requestType = (data) => {
+ return request({
+ url: '/cwgl/receivableBillManagement',
+ method: 'put',
+ data
+ })
+}
+
+/**
+ * 鍒犻櫎搴旀敹璐﹀崟绠$悊
+ */
+export const delReceivableBillManagement:requestType = (id) => {
+ return request({
+ url: '/cwgl/receivableBillManagement/' + id,
+ method: 'delete'
+ })
+}
+
+
+/**
+ * 瀵煎嚭搴旀敹璐﹀崟绠$悊
+ */
+export const exportReceivableBillManagement:requestType = (query) => {
+ return new Promise<any>(()=>{
+ download('/cwgl/receivableBillManagement/export',query);
+ })
+}
diff --git a/ui/admin-ui3/src/api/cwgl/receivableBillSettlementDetail.ts b/ui/admin-ui3/src/api/cwgl/receivableBillSettlementDetail.ts
new file mode 100644
index 0000000..df1e01f
--- /dev/null
+++ b/ui/admin-ui3/src/api/cwgl/receivableBillSettlementDetail.ts
@@ -0,0 +1,67 @@
+import request,{download,requestType} from "@/utils/request";
+import {BaseEntityInterface} from "@/utils/globalInterface";
+export interface ReceivableBillSettlementDetailI extends BaseEntityInterface{
+ id ?: number , billId ?: number , settlementMethod ?: string , customerBank ?: string , customerBankAccount ?: string , receivingBankAccount ?: string , receivingBank ?: string , receiptDate ?: string , receiptAmount ?: string , remainingPendingAmount ?: string , remark ?: string , createBy ?: string , createTime ?: string , updateBy ?: string , updateTime ?: string , deleted ?: number }
+
+
+/**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏鍒楄〃
+ */
+export const listReceivableBillSettlementDetail:requestType = (query) => {
+ return request({
+ url: '/cwgl/receivableBillSettlementDetail/list',
+ method:'get',
+ params:query
+ })
+}
+/**
+ * 鏌ヨ搴旀敹璐﹀崟缁撶畻鏄庣粏璇︾粏
+ */
+export const getReceivableBillSettlementDetail:requestType = (id) => {
+ return request({
+ url: '/cwgl/receivableBillSettlementDetail/' + id,
+ method:'get'
+ })
+}
+
+/**
+ * 鏂板搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+export const addReceivableBillSettlementDetail:requestType = (data) => {
+ return request({
+ url: '/cwgl/receivableBillSettlementDetail',
+ method: 'post',
+ data
+ })
+}
+
+/**
+ * 淇敼搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+export const updateReceivableBillSettlementDetail:requestType = (data) => {
+ return request({
+ url: '/cwgl/receivableBillSettlementDetail',
+ method: 'put',
+ data
+ })
+}
+
+/**
+ * 鍒犻櫎搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+export const delReceivableBillSettlementDetail:requestType = (id) => {
+ return request({
+ url: '/cwgl/receivableBillSettlementDetail/' + id,
+ method: 'delete'
+ })
+}
+
+
+/**
+ * 瀵煎嚭搴旀敹璐﹀崟缁撶畻鏄庣粏
+ */
+export const exportReceivableBillSettlementDetail:requestType = (query) => {
+ return new Promise<any>(()=>{
+ download('/cwgl/receivableBillSettlementDetail/export',query);
+ })
+}
diff --git a/ui/admin-ui3/src/views/cwgl/payableBillManagement/index.vue b/ui/admin-ui3/src/views/cwgl/payableBillManagement/index.vue
new file mode 100644
index 0000000..13858fb
--- /dev/null
+++ b/ui/admin-ui3/src/views/cwgl/payableBillManagement/index.vue
@@ -0,0 +1,245 @@
+<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:payableBillManagement:edit']"
+ @click="handleUpdate">淇敼
+ </el-button>
+ <el-button
+ type="danger"
+ icon="Delete"
+ :disabled="pageF.multiple"
+ @click="handleDelete"
+ v-hasPermi="['cwgl:payableBillManagement:remove']"
+ >鍒犻櫎
+ </el-button>
+ <el-button
+ type="warning"
+ plain
+ icon="Download"
+ @click="handleExport"
+ v-hasPermi="['cwgl:payableBillManagement:export']"
+ >瀵煎嚭
+ </el-button>
+ </template>
+ </avue-crud>
+ </basicContainer>
+</template>
+
+<script setup name="payableBillManagement" lang="ts">
+ import {PayableBillManagementI,addPayableBillManagement, delPayableBillManagement, exportPayableBillManagement, getPayableBillManagement, listPayableBillManagement, updatePayableBillManagement} from "@/api/cwgl/payableBillManagement";
+ 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:payableBillManagement:add"]),
+ delBtn: hasPermission(["cwgl:payableBillManagement:remove"]),
+ editBtn: hasPermission(["cwgl:payableBillManagement:edit"]),
+ viewBtn: hasPermission(["cwgl:payableBillManagement:query"]),
+ }
+ })
+
+ const data = reactive({
+ form:<PayableBillManagementI>{},
+ queryParams:<PayableBillManagementI&PageQueryInterface>{},
+ page: <PagesInterface>{
+ pageSize: 10,
+ total: 0,
+ currentPage: 1,
+ },
+ selectionList:[],
+ })
+ const {queryParams,form,page,selectionList} = toRefs(data);
+ const option = ref({
+ pageKey: 'PayableBillManagement',
+ rowKey: 'id',
+ column: {
+ id: {
+ label: 'ID',
+ },
+ systemNo: {
+ label: '绯荤粺缂栧彿',
+ rules: [
+ {
+ required: true,
+ message: "绯荤粺缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billName: {
+ label: '璐﹀崟鍚嶇О',
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ supplierName: {
+ label: '渚涘簲鍟嗗悕绉�',
+ rules: [
+ {
+ required: true,
+ message: "渚涘簲鍟嗗悕绉颁笉鑳戒负绌�", trigger: "blur" }
+ ], },
+ isInternalSettlement: {
+ label: '鏄惁鍐呴儴缁撶畻',
+ rules: [
+ {
+ required: true,
+ message: "鏄惁鍐呴儴缁撶畻涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ internalSettlementUnit: {
+ label: '鍐呴儴缁撶畻鍗曚綅',
+ },
+ documentCount: {
+ label: '鍗曟嵁鏁伴噺',
+ },
+ totalAmount: {
+ label: '搴旂粨绠楅噾棰�',
+ },
+ currency: {
+ label: '甯佸埗',
+ },
+ discountAmount: {
+ label: '鍑忓厤閲戦',
+ },
+ paidAmount: {
+ label: '宸蹭粯閲戦',
+ },
+ pendingAmount: {
+ label: '寰呬粯閲戦',
+ },
+ exchangeRate: {
+ label: '姹囩巼',
+ },
+ cnyAmount: {
+ label: '浜烘皯甯侀噾棰�',
+ },
+ periodType: {
+ label: '鍛ㄦ湡绫诲瀷',
+ rules: [
+ {
+ required: true,
+ message: "鍛ㄦ湡绫诲瀷涓嶈兘涓虹┖", trigger: "change"
+ }
+ ], },
+ businessStartDate: {
+ label: '涓氬姟鏈熼棿寮�濮嬫棩鏈�',
+ rules: [
+ {
+ required: true,
+ message: "涓氬姟鏈熼棿寮�濮嬫棩鏈熶笉鑳戒负绌�", trigger: "blur" }
+ ], },
+ businessEndDate: {
+ label: '涓氬姟鏈熼棿缁撴潫鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "涓氬姟鏈熼棿缁撴潫鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billingStartDate: {
+ label: '璐︽湡寮�濮嬫棩鏈�',
+ rules: [
+ {
+ required: true,
+ message: "璐︽湡寮�濮嬫棩鏈熶笉鑳戒负绌�", trigger: "blur" }
+ ], },
+ billingEndDate: {
+ label: '璐︽湡缁撴潫鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "璐︽湡缁撴潫鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billGenerateDate: {
+ label: '璐﹀崟鐢熸垚鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟鐢熸垚鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billSendDate: {
+ label: '璐﹀崟鍙戦�佹棩鏈�',
+ },
+ billDueDate: {
+ 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:listPayableBillManagement,
+ getDetailApi:getPayableBillManagement,
+ exportApi:exportPayableBillManagement,
+ deleteApi:delPayableBillManagement,
+ addApi:addPayableBillManagement,
+ updateApi:updatePayableBillManagement,
+ handleUpdateFunc:()=>{
+ crudRef.value.rowEdit(selectionList.value[0]);
+ },
+ handleSelectionChangeFunc:(selection:any)=>{
+ selectionList.value = selection;
+ }
+ })
+
+
+</script>
diff --git a/ui/admin-ui3/src/views/cwgl/payableBillSettlementDetail/index.vue b/ui/admin-ui3/src/views/cwgl/payableBillSettlementDetail/index.vue
new file mode 100644
index 0000000..c0dbbab
--- /dev/null
+++ b/ui/admin-ui3/src/views/cwgl/payableBillSettlementDetail/index.vue
@@ -0,0 +1,177 @@
+<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:payableBillSettlementDetail:edit']"
+ @click="handleUpdate">淇敼
+ </el-button>
+ <el-button
+ type="danger"
+ icon="Delete"
+ :disabled="pageF.multiple"
+ @click="handleDelete"
+ v-hasPermi="['cwgl:payableBillSettlementDetail:remove']"
+ >鍒犻櫎
+ </el-button>
+ <el-button
+ type="warning"
+ plain
+ icon="Download"
+ @click="handleExport"
+ v-hasPermi="['cwgl:payableBillSettlementDetail:export']"
+ >瀵煎嚭
+ </el-button>
+ </template>
+ </avue-crud>
+ </basicContainer>
+</template>
+
+<script setup name="payableBillSettlementDetail" lang="ts">
+ import {PayableBillSettlementDetailI,addPayableBillSettlementDetail, delPayableBillSettlementDetail, exportPayableBillSettlementDetail, getPayableBillSettlementDetail, listPayableBillSettlementDetail, updatePayableBillSettlementDetail} from "@/api/cwgl/payableBillSettlementDetail";
+ 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:payableBillSettlementDetail:add"]),
+ delBtn: hasPermission(["cwgl:payableBillSettlementDetail:remove"]),
+ editBtn: hasPermission(["cwgl:payableBillSettlementDetail:edit"]),
+ viewBtn: hasPermission(["cwgl:payableBillSettlementDetail:query"]),
+ }
+ })
+
+ const data = reactive({
+ form:<PayableBillSettlementDetailI>{},
+ queryParams:<PayableBillSettlementDetailI&PageQueryInterface>{},
+ page: <PagesInterface>{
+ pageSize: 10,
+ total: 0,
+ currentPage: 1,
+ },
+ selectionList:[],
+ })
+ const {queryParams,form,page,selectionList} = toRefs(data);
+ const option = ref({
+ pageKey: 'PayableBillSettlementDetail',
+ rowKey: 'id',
+ column: {
+ id: {
+ label: 'ID',
+ },
+ billId: {
+ label: '搴斾粯璐﹀崟ID',
+ rules: [
+ {
+ required: true,
+ message: "搴斾粯璐﹀崟ID涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ settlementMethod: {
+ label: '缁撶畻鏂瑰紡',
+ rules: [
+ {
+ required: true,
+ message: "缁撶畻鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ paymentBank: {
+ label: '浠樻璐︽埛寮�鎴疯',
+ },
+ paymentBankAccount: {
+ label: '浠樻璐︽埛閾惰璐﹀彿',
+ },
+ supplierReceivingAccount: {
+ label: '渚涘簲鍟嗘敹娆鹃摱琛岃处鎴�',
+ },
+ supplierReceivingBank: {
+ label: '渚涘簲鍟嗘敹娆捐处鎴峰紑鎴疯',
+ },
+ paymentDate: {
+ label: '浠樻鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "浠樻鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ paymentAmount: {
+ label: '浠樻閲戦',
+ rules: [
+ {
+ required: true,
+ message: "浠樻閲戦涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ remainingPendingAmount: {
+ 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:listPayableBillSettlementDetail,
+ getDetailApi:getPayableBillSettlementDetail,
+ exportApi:exportPayableBillSettlementDetail,
+ deleteApi:delPayableBillSettlementDetail,
+ addApi:addPayableBillSettlementDetail,
+ updateApi:updatePayableBillSettlementDetail,
+ handleUpdateFunc:()=>{
+ crudRef.value.rowEdit(selectionList.value[0]);
+ },
+ handleSelectionChangeFunc:(selection:any)=>{
+ selectionList.value = selection;
+ }
+ })
+
+
+</script>
diff --git a/ui/admin-ui3/src/views/cwgl/receivableBillManagement/index.vue b/ui/admin-ui3/src/views/cwgl/receivableBillManagement/index.vue
new file mode 100644
index 0000000..5a0b088
--- /dev/null
+++ b/ui/admin-ui3/src/views/cwgl/receivableBillManagement/index.vue
@@ -0,0 +1,245 @@
+<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:receivableBillManagement:edit']"
+ @click="handleUpdate">淇敼
+ </el-button>
+ <el-button
+ type="danger"
+ icon="Delete"
+ :disabled="pageF.multiple"
+ @click="handleDelete"
+ v-hasPermi="['cwgl:receivableBillManagement:remove']"
+ >鍒犻櫎
+ </el-button>
+ <el-button
+ type="warning"
+ plain
+ icon="Download"
+ @click="handleExport"
+ v-hasPermi="['cwgl:receivableBillManagement:export']"
+ >瀵煎嚭
+ </el-button>
+ </template>
+ </avue-crud>
+ </basicContainer>
+</template>
+
+<script setup name="receivableBillManagement" lang="ts">
+ import {ReceivableBillManagementI,addReceivableBillManagement, delReceivableBillManagement, exportReceivableBillManagement, getReceivableBillManagement, listReceivableBillManagement, updateReceivableBillManagement} from "@/api/cwgl/receivableBillManagement";
+ 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:receivableBillManagement:add"]),
+ delBtn: hasPermission(["cwgl:receivableBillManagement:remove"]),
+ editBtn: hasPermission(["cwgl:receivableBillManagement:edit"]),
+ viewBtn: hasPermission(["cwgl:receivableBillManagement:query"]),
+ }
+ })
+
+ const data = reactive({
+ form:<ReceivableBillManagementI>{},
+ queryParams:<ReceivableBillManagementI&PageQueryInterface>{},
+ page: <PagesInterface>{
+ pageSize: 10,
+ total: 0,
+ currentPage: 1,
+ },
+ selectionList:[],
+ })
+ const {queryParams,form,page,selectionList} = toRefs(data);
+ const option = ref({
+ pageKey: 'ReceivableBillManagement',
+ rowKey: 'id',
+ column: {
+ id: {
+ label: 'ID',
+ },
+ systemNo: {
+ label: '绯荤粺缂栧彿',
+ rules: [
+ {
+ required: true,
+ message: "绯荤粺缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billName: {
+ label: '璐﹀崟鍚嶇О',
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ customerName: {
+ label: '瀹㈡埛鍚嶇О',
+ rules: [
+ {
+ required: true,
+ message: "瀹㈡埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ isInternalSettlement: {
+ label: '鏄惁鍐呴儴缁撶畻',
+ rules: [
+ {
+ required: true,
+ message: "鏄惁鍐呴儴缁撶畻涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ internalSettlementUnit: {
+ label: '鍐呴儴缁撶畻鍗曚綅',
+ },
+ documentCount: {
+ label: '鍗曟嵁鏁伴噺',
+ },
+ totalAmount: {
+ label: '搴旂粨绠楅噾棰�',
+ },
+ currency: {
+ label: '甯佸埗',
+ },
+ discountAmount: {
+ label: '鍑忓厤閲戦',
+ },
+ receivedAmount: {
+ label: '宸叉敹閲戦',
+ },
+ pendingAmount: {
+ label: '寰呮敹閲戦',
+ },
+ exchangeRate: {
+ label: '姹囩巼',
+ },
+ cnyAmount: {
+ label: '浜烘皯甯侀噾棰�',
+ },
+ periodType: {
+ label: '鍛ㄦ湡绫诲瀷',
+ rules: [
+ {
+ required: true,
+ message: "鍛ㄦ湡绫诲瀷涓嶈兘涓虹┖", trigger: "change"
+ }
+ ], },
+ businessStartDate: {
+ label: '涓氬姟鏈熼棿寮�濮嬫棩鏈�',
+ rules: [
+ {
+ required: true,
+ message: "涓氬姟鏈熼棿寮�濮嬫棩鏈熶笉鑳戒负绌�", trigger: "blur" }
+ ], },
+ businessEndDate: {
+ label: '涓氬姟鏈熼棿缁撴潫鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "涓氬姟鏈熼棿缁撴潫鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billingStartDate: {
+ label: '璐︽湡寮�濮嬫棩鏈�',
+ rules: [
+ {
+ required: true,
+ message: "璐︽湡寮�濮嬫棩鏈熶笉鑳戒负绌�", trigger: "blur" }
+ ], },
+ billingEndDate: {
+ label: '璐︽湡缁撴潫鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "璐︽湡缁撴潫鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billGenerateDate: {
+ label: '璐﹀崟鐢熸垚鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟鐢熸垚鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ billSendDate: {
+ label: '璐﹀崟鍙戦�佹棩鏈�',
+ },
+ billDueDate: {
+ label: '璐﹀崟鍒版湡鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟鍒版湡鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ status: {
+ label: '鐘舵��(draft:鑽夌;generated:宸茬敓鎴�;sent:宸插彂閫�;partial_paid:閮ㄥ垎鏀舵;paid:宸叉敹娆�;cancelled:宸插彇娑�)',
+ },
+ 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:listReceivableBillManagement,
+ getDetailApi:getReceivableBillManagement,
+ exportApi:exportReceivableBillManagement,
+ deleteApi:delReceivableBillManagement,
+ addApi:addReceivableBillManagement,
+ updateApi:updateReceivableBillManagement,
+ handleUpdateFunc:()=>{
+ crudRef.value.rowEdit(selectionList.value[0]);
+ },
+ handleSelectionChangeFunc:(selection:any)=>{
+ selectionList.value = selection;
+ }
+ })
+
+
+</script>
diff --git a/ui/admin-ui3/src/views/cwgl/receivableBillSettlementDetail/index.vue b/ui/admin-ui3/src/views/cwgl/receivableBillSettlementDetail/index.vue
new file mode 100644
index 0000000..1ecc263
--- /dev/null
+++ b/ui/admin-ui3/src/views/cwgl/receivableBillSettlementDetail/index.vue
@@ -0,0 +1,177 @@
+<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:receivableBillSettlementDetail:edit']"
+ @click="handleUpdate">淇敼
+ </el-button>
+ <el-button
+ type="danger"
+ icon="Delete"
+ :disabled="pageF.multiple"
+ @click="handleDelete"
+ v-hasPermi="['cwgl:receivableBillSettlementDetail:remove']"
+ >鍒犻櫎
+ </el-button>
+ <el-button
+ type="warning"
+ plain
+ icon="Download"
+ @click="handleExport"
+ v-hasPermi="['cwgl:receivableBillSettlementDetail:export']"
+ >瀵煎嚭
+ </el-button>
+ </template>
+ </avue-crud>
+ </basicContainer>
+</template>
+
+<script setup name="receivableBillSettlementDetail" lang="ts">
+ import {ReceivableBillSettlementDetailI,addReceivableBillSettlementDetail, delReceivableBillSettlementDetail, exportReceivableBillSettlementDetail, getReceivableBillSettlementDetail, listReceivableBillSettlementDetail, updateReceivableBillSettlementDetail} from "@/api/cwgl/receivableBillSettlementDetail";
+ 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:receivableBillSettlementDetail:add"]),
+ delBtn: hasPermission(["cwgl:receivableBillSettlementDetail:remove"]),
+ editBtn: hasPermission(["cwgl:receivableBillSettlementDetail:edit"]),
+ viewBtn: hasPermission(["cwgl:receivableBillSettlementDetail:query"]),
+ }
+ })
+
+ const data = reactive({
+ form:<ReceivableBillSettlementDetailI>{},
+ queryParams:<ReceivableBillSettlementDetailI&PageQueryInterface>{},
+ page: <PagesInterface>{
+ pageSize: 10,
+ total: 0,
+ currentPage: 1,
+ },
+ selectionList:[],
+ })
+ const {queryParams,form,page,selectionList} = toRefs(data);
+ const option = ref({
+ pageKey: 'ReceivableBillSettlementDetail',
+ rowKey: 'id',
+ column: {
+ id: {
+ label: 'ID',
+ },
+ billId: {
+ label: '搴旀敹璐﹀崟ID',
+ rules: [
+ {
+ required: true,
+ message: "搴旀敹璐﹀崟ID涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ settlementMethod: {
+ label: '缁撶畻鏂瑰紡',
+ rules: [
+ {
+ required: true,
+ message: "缁撶畻鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ customerBank: {
+ label: '瀹㈡埛寮�鎴疯',
+ },
+ customerBankAccount: {
+ label: '瀹㈡埛閾惰璐﹀彿',
+ },
+ receivingBankAccount: {
+ label: '鏀舵閾惰璐︽埛',
+ },
+ receivingBank: {
+ label: '鏀舵璐︽埛寮�鎴疯',
+ },
+ receiptDate: {
+ label: '鏀舵鏃ユ湡',
+ rules: [
+ {
+ required: true,
+ message: "鏀舵鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ receiptAmount: {
+ label: '鏀舵閲戦',
+ rules: [
+ {
+ required: true,
+ message: "鏀舵閲戦涓嶈兘涓虹┖", trigger: "blur" }
+ ], },
+ remainingPendingAmount: {
+ 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:listReceivableBillSettlementDetail,
+ getDetailApi:getReceivableBillSettlementDetail,
+ exportApi:exportReceivableBillSettlementDetail,
+ deleteApi:delReceivableBillSettlementDetail,
+ addApi:addReceivableBillSettlementDetail,
+ updateApi:updateReceivableBillSettlementDetail,
+ handleUpdateFunc:()=>{
+ crudRef.value.rowEdit(selectionList.value[0]);
+ },
+ handleSelectionChangeFunc:(selection:any)=>{
+ selectionList.value = selection;
+ }
+ })
+
+
+</script>
--
Gitblit v1.8.0