From 667d59e59a94fdbcb168904fbf40a011e15acc98 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 24 六月 2025 17:33:05 +0800
Subject: [PATCH] 2025-06-23 付款方式字段添加, 附件上传接口对接完成

---
 src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java        |   12 ++++++
 src/main/java/com/ruoyi/purchase/dto/ProductRecordDto.java                   |    5 ++
 src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java     |    6 +++
 src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java  |   20 ++++++++-
 src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java                        |    3 +
 src/main/resources/mapper/purchase/ProductRecordMapper.xml                   |    4 -
 src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java                  |    4 ++
 src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java |    2 +
 src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java             |    3 +
 src/main/java/com/ruoyi/sales/pojo/SalesLedger.java                          |    3 +
 doc/add.sql                                                                  |    9 ++++
 src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java                    |    4 ++
 12 files changed, 68 insertions(+), 7 deletions(-)

diff --git a/doc/add.sql b/doc/add.sql
index 359bc49..2980a2f 100644
--- a/doc/add.sql
+++ b/doc/add.sql
@@ -55,4 +55,11 @@
     create_user        varchar(255) not null comment '褰曞叆浜�',
     update_user        varchar(255) not null comment '鏇存柊浜�',
     tenant_id          bigint       not null comment '绉熸埛id'
-);
\ No newline at end of file
+);
+
+
+alter table purchase_ledger
+    add payment_method varchar(255) null;
+alter table sales_ledger
+    add payment_method varchar(255) null;
+
diff --git a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
index e39c658..b3f283a 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
@@ -12,6 +12,7 @@
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
@@ -66,6 +67,17 @@
          deviceLedgerService.export(response, ids);
     }
 
+    @PostMapping("import")
+    @ApiModelProperty("瀵煎叆璁惧鍙拌处")
+    public AjaxResult importData(MultipartFile file) {
+        Boolean b = deviceLedgerService.importData(file);
+        if (b) {
+            return AjaxResult.success("瀵煎叆鎴愬姛");
+        }
+        return AjaxResult.error("瀵煎叆澶辫触");
+    }
+
+
     @GetMapping("getDeviceLedger")
     @ApiModelProperty("鑾峰彇璁惧鍙拌处")
     public AjaxResult getDeviceLedger( ) {
diff --git a/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java b/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java
index e056a85..a457ca9 100644
--- a/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java
+++ b/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java
@@ -6,6 +6,7 @@
 import com.ruoyi.device.dto.DeviceLedgerDto;
 import com.ruoyi.device.pojo.DeviceLedger;
 import com.ruoyi.framework.web.domain.AjaxResult;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
@@ -18,4 +19,6 @@
     AjaxResult updateDeviceLedger(DeviceLedger deviceLedger);
 
     void export(HttpServletResponse response, Long[] ids);
+
+    Boolean importData(MultipartFile file);
 }
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
index 006ed90..e8405b4 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
@@ -16,6 +16,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
@@ -88,4 +89,9 @@
         }
 
     }
+
+    @Override
+    public Boolean importData(MultipartFile file) {
+        return null;
+    }
 }
diff --git a/src/main/java/com/ruoyi/purchase/dto/ProductRecordDto.java b/src/main/java/com/ruoyi/purchase/dto/ProductRecordDto.java
index b375739..ab7365f 100644
--- a/src/main/java/com/ruoyi/purchase/dto/ProductRecordDto.java
+++ b/src/main/java/com/ruoyi/purchase/dto/ProductRecordDto.java
@@ -1,7 +1,10 @@
 package com.ruoyi.purchase.dto;
 
 import com.ruoyi.purchase.pojo.ProductRecord;
+import com.ruoyi.sales.pojo.CommonFile;
 import lombok.Data;
+
+import java.util.List;
 
 @Data
 public class ProductRecordDto extends ProductRecord {
@@ -25,4 +28,6 @@
     private String invoiceNumber;
 
     private String unTicketsPrice;
+
+    private List<CommonFile> commonFiles;
 }
diff --git a/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java b/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java
index 5af33e7..02bc251 100644
--- a/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java
+++ b/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java
@@ -153,4 +153,8 @@
     @TableField(exist = false)
     private Integer type;
 
+
+    @ApiModelProperty(value = "浠樻鏂瑰紡")
+    private String paymentMethod;
+
 }
diff --git a/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java b/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java
index 669cf80..c0fcb50 100644
--- a/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java
+++ b/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java
@@ -142,4 +142,8 @@
 
 
 
+    @ApiModelProperty(value = "浠樻鏂瑰紡")
+    private String paymentMethod;
+
+
 }
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java
index 02fa3e0..a8b594d 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java
@@ -4,12 +4,17 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.enums.FileNameType;
 import com.ruoyi.purchase.dto.ProductRecordDto;
 import com.ruoyi.purchase.dto.TicketRegistrationDto;
 import com.ruoyi.purchase.mapper.ProductRecordMapper;
 import com.ruoyi.purchase.pojo.ProductRecord;
 import com.ruoyi.purchase.service.IProductRecordService;
+import com.ruoyi.sales.mapper.CommonFileMapper;
+import com.ruoyi.sales.pojo.CommonFile;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -24,7 +29,13 @@
 @AllArgsConstructor
 public class ProductRecordServiceImpl extends ServiceImpl<ProductRecordMapper, ProductRecord> implements IProductRecordService {
 
+    @Autowired
     private ProductRecordMapper productRecordMapper;
+
+    @Autowired
+    private CommonFileMapper commonFileMapper;
+
+
 
 
     /**
@@ -41,8 +52,11 @@
 
     @Override
     public IPage<ProductRecordDto> productRecordPage(Page page, TicketRegistrationDto ticketRegistrationDto) {
-
-        return productRecordMapper.productRecordPage(page, ticketRegistrationDto);
+        IPage<ProductRecordDto> productRecordDtoIPage = productRecordMapper.productRecordPage(page, ticketRegistrationDto);
+        productRecordDtoIPage.getRecords().forEach(productRecordDto -> {
+            productRecordDto.setCommonFiles(commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>().eq(CommonFile::getCommonId, productRecordDto.getTicketRegistrationId())
+                    .eq(CommonFile::getType, FileNameType.PURCHASELEDGER.getValue())));
+        });
+        return productRecordDtoIPage;
     }
-
 }
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
index 8019b76..d8518a3 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -372,6 +372,7 @@
         }
         // 鍒涘缓骞跺~鍏匘TO
         PurchaseLedgerDto resultDto = new PurchaseLedgerDto();
+        resultDto.setSalesLedgerId(purchaseLedger.getSalesLedgerId());
         resultDto.setSalesContractNoId(purchaseLedger.getSalesLedgerId());
         resultDto.setSalesContractNo(purchaseLedger.getSalesContractNo());
         resultDto.setSupplierName(purchaseLedger.getSupplierName());
@@ -414,6 +415,7 @@
     public PurchaseLedgerDto getPurchaseNoById(Long id) {
         PurchaseLedgerDto purchaseLedgerDto = new PurchaseLedgerDto();
         PurchaseLedger purchaseLedger = purchaseLedgerMapper.selectById(id);
+
         BeanUtils.copyProperties(purchaseLedger, purchaseLedgerDto);
 //        TicketRegistration ticketRegistration = ticketRegistrationMapper.selectOne(new LambdaQueryWrapper<TicketRegistration>().eq(TicketRegistration::getPurchaseLedgerId, id));
 //        if (ticketRegistration != null) {
diff --git a/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java b/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java
index aeea446..c9caf71 100644
--- a/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java
+++ b/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java
@@ -34,4 +34,7 @@
     private LocalDate executionDate;
 
     private Boolean status;
+
+    @ApiModelProperty(value = "浠樻鏂瑰紡")
+    private String paymentMethod;
 }
diff --git a/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java b/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java
index 06b8369..2a8c660 100644
--- a/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java
+++ b/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java
@@ -110,5 +110,8 @@
     @TableField(exist = false)
     @ApiModelProperty(value = "宸插紑绁ㄩ噾棰�(鍏�)")
     private BigDecimal invoiceTotal;
+
+    @ApiModelProperty(value = "浠樻鏂瑰紡")
+    private String paymentMethod;
 }
 
diff --git a/src/main/resources/mapper/purchase/ProductRecordMapper.xml b/src/main/resources/mapper/purchase/ProductRecordMapper.xml
index 80133ac..35f08ac 100644
--- a/src/main/resources/mapper/purchase/ProductRecordMapper.xml
+++ b/src/main/resources/mapper/purchase/ProductRecordMapper.xml
@@ -7,7 +7,6 @@
 
     <select id="productRecordPage" resultType="com.ruoyi.purchase.dto.ProductRecordDto">
         SELECT
-        distinct
         sl.sales_contract_no,
         sl.customer_contract_no,
         sl.customer_name,
@@ -18,11 +17,10 @@
         tr.invoice_number,
         ROUND(pr.tickets_amount/(1+pr.tax_rate/100),2 ) as un_tickets_price,
         ROUND(pr.tickets_amount-pr.tickets_amount/(1+pr.tax_rate/100),2 )as invoice_amount
-
         FROM product_record pr
         left join purchase_ledger pl on pl.id = pr.purchase_ledger_id
         left join sales_ledger sl on sl.id = pl.sales_ledger_id
-        left join ticket_registration tr on tr.purchase_ledger_id = pl.id
+        left join ticket_registration tr on tr.id = pr.ticket_registration_id
         left join product_model pm on pm.id = pr.product_model_id
         WHERE type = 2
         <if test="c.salesContractNo != null and c.salesContractNo != ''">

--
Gitblit v1.9.3