From d3c4776bab47429ca597f5ab19c1ac1209aee8be Mon Sep 17 00:00:00 2001 From: chenhao Date: Tue, 9 Dec 2025 20:51:15 +0800 Subject: [PATCH] =?UTF-8?q?feat(finance):=20=E5=A2=9E=E5=BC=BA=E4=BB=98?= =?UTF-8?q?=E6=AC=BE=E5=8D=95=E5=8A=9F=E8=83=BD=E5=8F=8A=E9=99=84=E4=BB=B6?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将付款时间相关字段格式从日期调整为日期时间格式 - 在详情页和列表页使用dict-tag展示支付方式、付款状态和审批状态 - 新增回执单下载功能和相关UI组件 - 增加收票计划Tab页支持 - 添加发起付款和回执单弹窗界面及相关逻辑 - 实现附件上传与管理服务,包括财务附件实体和接口定义 - 更新付款单和应付明细实体结构以支持附件关联 - 优化前端组件导入和数据处理逻辑 - 修复并增强多个API接口功能,如applyPayment、uploadReceipt等 - 补充Mapper XML配置和Service实现逻辑 - 调整后端实体类属性以匹配新的业务需求 - 增加对附件信息的查询与绑定处理逻辑 - 引入新的枚举类型用于区分不同类型的关联单据 - 前端增加对新接口调用的支持以及表单交互优化 --- oms_web/oms_vue/src/api/finance/payable.js | 17 + oms_web/oms_vue/src/api/finance/payment.js | 31 ++ .../finance/payable/components/EditForm.vue | 21 +- .../finance/payment/components/AddForm.vue | 4 +- .../payment/components/DetailDrawer.vue | 33 +- .../payment/components/ReceiptDialog.vue | 317 ++++++++++++++++++ .../src/views/finance/payment/index.vue | 106 +++++- .../OmsFinAttachmentController.java | 26 ++ .../controller/OmsPaymentBillController.java | 98 +++--- .../ruoyi/sip/domain/OmsFinAttachment.java | 73 ++++ .../sip/domain/OmsPayablePaymentDetail.java | 6 +- .../com/ruoyi/sip/domain/OmsPaymentBill.java | 18 +- .../sip/mapper/OmsFinAttachmentMapper.java | 61 ++++ .../sip/mapper/OmsPaymentBillMapper.java | 3 + .../sip/service/IOmsFinAttachmentService.java | 75 +++++ .../sip/service/IOmsPaymentBillService.java | 29 ++ .../impl/OmsFinAttachmentServiceImpl.java | 129 +++++++ .../impl/OmsPayableBillServiceImpl.java | 1 + .../OmsPayablePaymentDetailServiceImpl.java | 25 +- .../impl/OmsPaymentBillServiceImpl.java | 313 ++++++++++------- .../mapper/finance/OmsFinAttachmentMapper.xml | 112 +++++++ .../finance/OmsPayablePaymentDetailMapper.xml | 2 +- .../mapper/finance/OmsPaymentBillMapper.xml | 53 ++- 23 files changed, 1336 insertions(+), 217 deletions(-) create mode 100644 oms_web/oms_vue/src/views/finance/payment/components/ReceiptDialog.vue create mode 100644 ruoyi-sip/src/main/java/com/ruoyi/sip/controller/OmsFinAttachmentController.java create mode 100644 ruoyi-sip/src/main/java/com/ruoyi/sip/domain/OmsFinAttachment.java create mode 100644 ruoyi-sip/src/main/java/com/ruoyi/sip/mapper/OmsFinAttachmentMapper.java create mode 100644 ruoyi-sip/src/main/java/com/ruoyi/sip/service/IOmsFinAttachmentService.java create mode 100644 ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/OmsFinAttachmentServiceImpl.java create mode 100644 ruoyi-sip/src/main/resources/mapper/finance/OmsFinAttachmentMapper.xml diff --git a/oms_web/oms_vue/src/api/finance/payable.js b/oms_web/oms_vue/src/api/finance/payable.js index b8038b7e..069eb311 100644 --- a/oms_web/oms_vue/src/api/finance/payable.js +++ b/oms_web/oms_vue/src/api/finance/payable.js @@ -42,3 +42,20 @@ export function mergeAndInitiatePayment(data) { data: data }) } + +// [PLACEHOLDER] 查询收票计划列表 - Endpoint to be confirmed by user +export function getReceivingTicketPlan(payableBillId) { + return request({ + url: `/finance/payable/ticket-plan/${payableBillId}`, + method: 'get' + }) +} + +// [PLACEHOLDER] 更新收票计划 - Endpoint to be confirmed by user +export function updateReceivingTicketPlan(payableBillId, data) { + return request({ + url: `/finance/payable/ticket-plan/${payableBillId}`, + method: 'post', + data: data + }) +} diff --git a/oms_web/oms_vue/src/api/finance/payment.js b/oms_web/oms_vue/src/api/finance/payment.js index 59b87c74..b7993f2a 100644 --- a/oms_web/oms_vue/src/api/finance/payment.js +++ b/oms_web/oms_vue/src/api/finance/payment.js @@ -21,6 +21,27 @@ export function getPayment(id) { }) } +// 查询付款单附件 +export function getPaymentAttachments(id, params) { + return request({ + url: `/finance/payment/attachment/${id}`, + method: 'get', + params + }) +} + +// 上传付款单附件 +export function uploadPaymentAttachment(data) { + return request({ + url: '/finance/payment/uploadReceipt', + method: 'post', + headers: { + 'Content-Type': 'multipart/form-data' + }, + data: data + }); +} + // 退回付款单 export function returnPayment(id) { return request({ @@ -38,3 +59,13 @@ export function addPayment(data) { needLoading: true }) } + +// 申请付款 +export function applyPaymentApi(data) { + return request({ + url: '/finance/payment/applyPayment', + method: 'post', + data: data + }) +} + diff --git a/oms_web/oms_vue/src/views/finance/payable/components/EditForm.vue b/oms_web/oms_vue/src/views/finance/payable/components/EditForm.vue index a18d1a0c..12236830 100644 --- a/oms_web/oms_vue/src/views/finance/payable/components/EditForm.vue +++ b/oms_web/oms_vue/src/views/finance/payable/components/EditForm.vue @@ -100,7 +100,8 @@ @@ -108,6 +109,9 @@ + + + @@ -121,13 +125,15 @@ + + diff --git a/oms_web/oms_vue/src/views/finance/payment/index.vue b/oms_web/oms_vue/src/views/finance/payment/index.vue index de1723b3..79b5fdcf 100644 --- a/oms_web/oms_vue/src/views/finance/payment/index.vue +++ b/oms_web/oms_vue/src/views/finance/payment/index.vue @@ -130,10 +130,10 @@ - +