From cfad72d6b9d5b67920068c556819dd52bebd6935 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 24 六月 2025 14:40:07 +0800
Subject: [PATCH] 2025-06-23 采购-来票登记上传接口开发

---
 src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java             |    2 
 src/main/java/com/ruoyi/purchase/mapper/PurchaseLedgerMapper.java                |    3 
 src/main/java/com/ruoyi/purchase/service/impl/InvoicePurchaseServiceImpl.java    |    5 
 src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java                      |   19 ++++
 src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java     |   15 ++-
 src/main/java/com/ruoyi/sales/service/ICommonFileService.java                    |    2 
 src/main/java/com/ruoyi/common/enums/FileNameType.java                           |   31 +++++++
 src/main/java/com/ruoyi/other/pojo/TempFile.java                                 |    2 
 src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml                      |    2 
 src/main/java/com/ruoyi/purchase/controller/TicketRegistrationController.java    |   14 +++
 src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java            |    2 
 src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java              |    2 
 src/main/java/com/ruoyi/other/controller/TempFileController.java                 |    2 
 src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java |   29 ++++++
 src/main/java/com/ruoyi/purchase/controller/InvoicePurchaseController.java       |    2 
 src/main/java/com/ruoyi/purchase/service/ITicketRegistrationService.java         |    3 
 src/main/java/com/ruoyi/common/enums/SalesLedgerType.java                        |   35 ++++++++
 src/main/java/com/ruoyi/sales/pojo/PurchaseLedgerFile.java                       |   44 +++++++++++
 src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java           |    4 
 src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java        |    4 
 src/main/java/com/ruoyi/other/service/TempFileService.java                       |    2 
 src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java       |    4 
 src/main/java/com/ruoyi/sales/pojo/CommonFile.java                               |    2 
 src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java                        |    4 +
 24 files changed, 208 insertions(+), 26 deletions(-)

diff --git a/src/main/java/com/ruoyi/common/enums/FileNameType.java b/src/main/java/com/ruoyi/common/enums/FileNameType.java
new file mode 100644
index 0000000..36b7735
--- /dev/null
+++ b/src/main/java/com/ruoyi/common/enums/FileNameType.java
@@ -0,0 +1,31 @@
+package com.ruoyi.common.enums;
+
+public enum FileNameType {
+
+    SALE(1),      // 閿�鍞�
+    PURCHASE(2),  // 閲囪喘
+    INVOICE(3),     //鍙戠エ
+    PURCHASELEDGER(4);  //
+
+    private final int value;
+
+    FileNameType(int value) {
+        this.value = value;
+    }
+
+    public int getValue() {
+        return value;
+
+    }
+
+    // 鏍规嵁鏁存暟鍊艰幏鍙栧搴旂殑鏋氫妇鍊�
+    public static FileNameType fromValue(int value) {
+        for (FileNameType type : FileNameType.values()) {
+            if (type.getValue() == value) {
+                return type;
+            }
+        }
+        throw new IllegalArgumentException("Invalid value: " + value);
+    }
+}
+
diff --git a/src/main/java/com/ruoyi/common/enums/SalesLedgerType.java b/src/main/java/com/ruoyi/common/enums/SalesLedgerType.java
new file mode 100644
index 0000000..cd76069
--- /dev/null
+++ b/src/main/java/com/ruoyi/common/enums/SalesLedgerType.java
@@ -0,0 +1,35 @@
+package com.ruoyi.common.enums;
+
+
+public enum SalesLedgerType {
+    SALES_LEDGER_TYPE_SALES_LEDGER(1, "閿�鍞彴璐�"),
+    SALES_LEDGER_TYPE_PURCHASE_LEDGER(2, "閲囪喘鍙拌处");
+
+    private final Integer value;
+    private final String label;
+
+    SalesLedgerType(Integer value, String label) {
+        this.value = value;
+        this.label = label;
+    }
+
+    public Integer getValue() {
+        return value;
+    }
+
+    public String getLabel() {
+        return label;
+    }
+
+    /**
+     * 鏍规嵁鍊艰幏鍙栧搴旂殑鏋氫妇
+     */
+    public static SalesLedgerType fromValue(Integer value) {
+        for (SalesLedgerType type : values()) {
+            if (type.getValue().equals(value)) {
+                return type;
+            }
+        }
+        throw new IllegalArgumentException("鏈煡鐨� SalesLedgerType 鍊�: " + value);
+    }
+}
diff --git a/src/main/java/com/ruoyi/other/controller/TempFileController.java b/src/main/java/com/ruoyi/other/controller/TempFileController.java
index 59d4e75..1ed7875 100644
--- a/src/main/java/com/ruoyi/other/controller/TempFileController.java
+++ b/src/main/java/com/ruoyi/other/controller/TempFileController.java
@@ -18,7 +18,7 @@
     private TempFileService tempFileService;
 
     @PostMapping("/upload")
-    public AjaxResult uploadFile(MultipartFile file, String type) {
+    public AjaxResult uploadFile(MultipartFile file, Integer type) {
         try {
             return AjaxResult.success(tempFileService.uploadFile(file, type));
         } catch (Exception e) {
diff --git a/src/main/java/com/ruoyi/other/pojo/TempFile.java b/src/main/java/com/ruoyi/other/pojo/TempFile.java
index d3b0e51..bff7805 100644
--- a/src/main/java/com/ruoyi/other/pojo/TempFile.java
+++ b/src/main/java/com/ruoyi/other/pojo/TempFile.java
@@ -16,5 +16,5 @@
     private String originalName;   // 鍘熷鏂囦欢鍚�
     private String tempPath;       // 涓存椂瀛樺偍璺緞
     private LocalDateTime expireTime; // 杩囨湡鏃堕棿
-    private String type;       // 鍏宠仈琛ㄧ被鍨�
+    private Integer type;       // 鍏宠仈琛ㄧ被鍨�
 }
diff --git a/src/main/java/com/ruoyi/other/service/TempFileService.java b/src/main/java/com/ruoyi/other/service/TempFileService.java
index 32dba44..049f977 100644
--- a/src/main/java/com/ruoyi/other/service/TempFileService.java
+++ b/src/main/java/com/ruoyi/other/service/TempFileService.java
@@ -6,5 +6,5 @@
 import java.io.IOException;
 
 public interface TempFileService {
-    TempFile uploadFile(MultipartFile file,String type) throws IOException;
+    TempFile uploadFile(MultipartFile file,Integer type) throws IOException;
 }
diff --git a/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java b/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java
index fc041bb..eb801bc 100644
--- a/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java
+++ b/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java
@@ -32,7 +32,7 @@
 
     // 涓婁紶鍒颁复鏃剁洰褰�
     @Override
-    public TempFile uploadFile(MultipartFile file,String type) throws IOException {
+    public TempFile uploadFile(MultipartFile file,Integer type) throws IOException {
         // 1. 鐢熸垚涓存椂鏂囦欢ID鍜岃矾寰�
         String tempId = UUID.randomUUID().toString();
         Path tempFilePath = Paths.get(tempDir, tempId + "_" + file.getOriginalFilename());
diff --git a/src/main/java/com/ruoyi/purchase/controller/InvoicePurchaseController.java b/src/main/java/com/ruoyi/purchase/controller/InvoicePurchaseController.java
index 8cd6b5b..a69d204 100644
--- a/src/main/java/com/ruoyi/purchase/controller/InvoicePurchaseController.java
+++ b/src/main/java/com/ruoyi/purchase/controller/InvoicePurchaseController.java
@@ -81,7 +81,7 @@
     }
 
     @PostMapping("/upload")
-    public AjaxResult uploadFile(MultipartFile file, Long id, String type) {
+    public AjaxResult uploadFile(MultipartFile file, Long id, Integer type) {
         try {
             return AjaxResult.success(commonFileService.uploadFile(file, id, type));
         } catch (Exception e) {
diff --git a/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java b/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java
index ea6eda5..21a601e 100644
--- a/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java
+++ b/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java
@@ -134,8 +134,8 @@
      * 鏌ヨ閲囪喘鍙拌处鍒楄〃
      */
     @GetMapping("/listPage")
-    public IPage<PurchaseLedger> listPage(Page page, PurchaseLedger purchaseLedger) {
-         return purchaseLedgerService.selectPurchaseLedgerListPage(page ,purchaseLedger);
+    public AjaxResult listPage(Page page, PurchaseLedgerDto purchaseLedger) {
+         return AjaxResult.success(purchaseLedgerService.selectPurchaseLedgerListPage(page ,purchaseLedger));
     }
 
     @ApiOperation("鐢熸垚閲囪喘搴忓垪鍙�")
diff --git a/src/main/java/com/ruoyi/purchase/controller/TicketRegistrationController.java b/src/main/java/com/ruoyi/purchase/controller/TicketRegistrationController.java
index 1ccb59b..9d50979 100644
--- a/src/main/java/com/ruoyi/purchase/controller/TicketRegistrationController.java
+++ b/src/main/java/com/ruoyi/purchase/controller/TicketRegistrationController.java
@@ -15,6 +15,8 @@
 import com.ruoyi.purchase.service.IProductRecordService;
 import com.ruoyi.purchase.service.ITicketRegistrationService;
 import com.ruoyi.sales.service.ICommonFileService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import org.springframework.web.bind.annotation.*;
@@ -33,6 +35,7 @@
 @RestController
 @RequestMapping("/purchase/registration")
 @AllArgsConstructor
+@Api(tags = "鏉ョエ鐧昏")
 public class TicketRegistrationController extends BaseController {
 
     private ITicketRegistrationService ticketRegistrationService;
@@ -89,7 +92,7 @@
     }
 
     @PostMapping("/upload")
-    public AjaxResult uploadFile(MultipartFile file, Long id, String type) {
+    public AjaxResult uploadFile(MultipartFile file, Long id, Integer type) {
         try {
             return AjaxResult.success(commonFileService.uploadFile(file, id, type));
         } catch (Exception e) {
@@ -130,4 +133,13 @@
     public IPage<TicketRegistration> listPage(Page page, TicketRegistration ticketRegistration) {
         return ticketRegistrationService.selectTicketRegistrationListPage(page,ticketRegistration);
     }
+
+    @ApiModelProperty("鏍规嵁id鏌ヨ鏉ユ紓鐧昏")
+    @GetMapping("/getPuargeById")
+    public AjaxResult getPuargeById(Long id) {
+        return AjaxResult.success(ticketRegistrationService.getPuargeById( id));
+    }
+
+
+
 }
diff --git a/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java b/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java
index 71c56e2..5af33e7 100644
--- a/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java
+++ b/src/main/java/com/ruoyi/purchase/dto/PurchaseLedgerDto.java
@@ -1,8 +1,10 @@
 package com.ruoyi.purchase.dto;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.sales.pojo.CommonFile;
 import com.ruoyi.sales.pojo.SalesLedgerProduct;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.math.BigDecimal;
@@ -133,5 +135,22 @@
      */
     private Long ticketRegistrationId;
 
+    /**
+     * 鍚堝悓閲戦锛堜骇鍝佸惈绋庢�讳环锛�
+     */
+    private BigDecimal contractAmount = BigDecimal.ZERO;
+
+
+    @TableField(exist = false)
+    @ApiModelProperty("鏉ョエ閲戦")
+    private BigDecimal receiptPaymentAmount =  BigDecimal.ZERO;
+
+    @ApiModelProperty("鏈潵绁ㄩ噾棰�")
+    @TableField(exist = false)
+    private BigDecimal unReceiptPaymentAmount =BigDecimal.ZERO;
+
+    @ApiModelProperty("鏂囦欢绫诲瀷  鍙� 4")
+    @TableField(exist = false)
+    private Integer type;
 
 }
diff --git a/src/main/java/com/ruoyi/purchase/mapper/PurchaseLedgerMapper.java b/src/main/java/com/ruoyi/purchase/mapper/PurchaseLedgerMapper.java
index 62c128d..0713f6c 100644
--- a/src/main/java/com/ruoyi/purchase/mapper/PurchaseLedgerMapper.java
+++ b/src/main/java/com/ruoyi/purchase/mapper/PurchaseLedgerMapper.java
@@ -3,6 +3,7 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ruoyi.purchase.dto.PurchaseLedgerDto;
 import com.ruoyi.purchase.pojo.PurchaseLedger;
 import org.apache.ibatis.annotations.Param;
 
@@ -18,5 +19,5 @@
 
     int updateContractAmountById(@Param("id") Long id, @Param("totalTaxInclusiveAmount") BigDecimal totalTaxInclusiveAmount);
 
-    IPage<PurchaseLedger> selectPurchaseLedgerListPage(IPage ipage, @Param("c") PurchaseLedger purchaseLedger);
+    IPage<PurchaseLedgerDto> selectPurchaseLedgerListPage(IPage ipage, @Param("c") PurchaseLedgerDto purchaseLedger);
 }
diff --git a/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java b/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java
index 5ee4125..669cf80 100644
--- a/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java
+++ b/src/main/java/com/ruoyi/purchase/pojo/PurchaseLedger.java
@@ -136,6 +136,10 @@
     @TableField(exist = false)
     private String unReceiptPaymentAmount;
 
+    @ApiModelProperty("鏂囦欢绫诲瀷  鍙� 4")
+    @TableField(exist = false)
+    private Integer type;
+
 
 
 }
diff --git a/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java b/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
index 2190972..3979810 100644
--- a/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
+++ b/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
@@ -34,7 +34,7 @@
 
     PurchaseLedgerDto getPurchaseNoById(Long id);
 
-    IPage<PurchaseLedger> selectPurchaseLedgerListPage(IPage ipage, PurchaseLedger purchaseLedger);
+    IPage<PurchaseLedgerDto> selectPurchaseLedgerListPage(IPage ipage, PurchaseLedgerDto purchaseLedger);
 
     List<InvoiceRegistrationProduct> getProductBySalesNo(Long id);
 
diff --git a/src/main/java/com/ruoyi/purchase/service/ITicketRegistrationService.java b/src/main/java/com/ruoyi/purchase/service/ITicketRegistrationService.java
index 9c234f7..2ad75e7 100644
--- a/src/main/java/com/ruoyi/purchase/service/ITicketRegistrationService.java
+++ b/src/main/java/com/ruoyi/purchase/service/ITicketRegistrationService.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.purchase.dto.PurchaseLedgerDto;
 import com.ruoyi.purchase.dto.TicketRegistrationDto;
 import com.ruoyi.purchase.pojo.TicketRegistration;
 
@@ -28,4 +29,6 @@
     List getTicketNo(TicketRegistrationDto ticketRegistrationDto);
 
     IPage<TicketRegistration> selectTicketRegistrationListPage(Page page, TicketRegistration ticketRegistration);
+
+    PurchaseLedgerDto getPuargeById(Long id);
 }
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/InvoicePurchaseServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/InvoicePurchaseServiceImpl.java
index cc8bb73..b2ed2fb 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/InvoicePurchaseServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/InvoicePurchaseServiceImpl.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 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.common.utils.bean.BeanUtils;
 import com.ruoyi.other.mapper.TempFileMapper;
 import com.ruoyi.project.system.domain.SysUser;
@@ -88,7 +89,7 @@
         // 鎵归噺鏌ヨ杩欎簺鍙戠エ鍏宠仈鐨勬枃浠朵俊鎭�
         LambdaQueryWrapper<CommonFile> fileQueryWrapper = new LambdaQueryWrapper<>();
         fileQueryWrapper.in(CommonFile::getCommonId, invoiceIds)
-                .eq(CommonFile::getType,"3");
+                .eq(CommonFile::getType, FileNameType.INVOICE.getValue());
         List<CommonFile> fileList = commonFileMapper.selectList(fileQueryWrapper);
 
         // 灏嗘枃浠朵俊鎭槧灏勫埌瀵瑰簲鐨勫彂绁↖D
@@ -152,7 +153,7 @@
         // 鏌ヨ涓婁紶鏂囦欢
         LambdaQueryWrapper<CommonFile> commonFileLambdaQueryWrapper = new LambdaQueryWrapper<>();
         commonFileLambdaQueryWrapper.eq(CommonFile::getCommonId, invoicePurchaseDto.getId())
-                .eq(CommonFile::getType, "3");
+                .eq(CommonFile::getType, FileNameType.INVOICE.getValue());
         List<CommonFile> commonFiles = commonFileMapper.selectList(commonFileLambdaQueryWrapper);
         resultDto.setCommonFiles(commonFiles);
         return resultDto;
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 845b18d..8019b76 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -12,6 +12,7 @@
 import com.ruoyi.basic.pojo.Product;
 import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.basic.pojo.SupplierManage;
+import com.ruoyi.common.enums.FileNameType;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
@@ -280,7 +281,7 @@
                 fileRecord.setName(originalFilename);
                 fileRecord.setUrl(formalFilePath.toString());
                 fileRecord.setCreateTime(LocalDateTime.now());
-                fileRecord.setType("2");
+                fileRecord.setType(FileNameType.PURCHASE.getValue());
                 commonFileMapper.insert(fileRecord);
 
                 // 鍒犻櫎涓存椂鏂囦欢璁板綍
@@ -303,7 +304,7 @@
         // 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐彴璐︿骇鍝�
         LambdaQueryWrapper<SalesLedgerProduct> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.in(SalesLedgerProduct::getSalesLedgerId, ids)
-                .eq(SalesLedgerProduct::getType, "2");
+                .eq(SalesLedgerProduct::getType, 2);
         salesLedgerProductMapper.delete(queryWrapper);
         // 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐彴璐︾殑鏉ョエ鐧昏
         LambdaQueryWrapper<TicketRegistration> ticketRegistrationLambdaQueryWrapper = new LambdaQueryWrapper<>();
@@ -424,9 +425,13 @@
     }
 
     @Override
-    public IPage<PurchaseLedger> selectPurchaseLedgerListPage(IPage ipage, PurchaseLedger purchaseLedger) {
-
-        return purchaseLedgerMapper.selectPurchaseLedgerListPage(ipage, purchaseLedger);
+    public IPage<PurchaseLedgerDto> selectPurchaseLedgerListPage(IPage ipage, PurchaseLedgerDto purchaseLedger) {
+        IPage<PurchaseLedgerDto> purchaseLedgerDtoIPage = purchaseLedgerMapper.selectPurchaseLedgerListPage(ipage, purchaseLedger);
+        purchaseLedgerDtoIPage.getRecords().forEach(purchaseLedgerDto -> {
+            List<CommonFile> commonFiles = commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>().eq(CommonFile::getCommonId, purchaseLedgerDto.getId()).eq(CommonFile::getType, FileNameType.PURCHASELEDGER.getValue()));
+            purchaseLedgerDto.setSalesLedgerFiles(commonFiles);
+        });
+        return purchaseLedgerDtoIPage;
     }
 
     @Override
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
index f572cf2..9ec44e8 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
@@ -6,6 +6,8 @@
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 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.common.enums.SalesLedgerType;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.StringUtils;
@@ -13,6 +15,7 @@
 import com.ruoyi.other.mapper.TempFileMapper;
 import com.ruoyi.other.pojo.TempFile;
 import com.ruoyi.purchase.dto.PaymentRegistrationDto;
+import com.ruoyi.purchase.dto.PurchaseLedgerDto;
 import com.ruoyi.purchase.dto.TicketRegistrationDto;
 import com.ruoyi.purchase.mapper.PaymentRegistrationMapper;
 import com.ruoyi.purchase.mapper.ProductRecordMapper;
@@ -26,6 +29,8 @@
 import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
 import com.ruoyi.sales.pojo.CommonFile;
 import com.ruoyi.sales.pojo.SalesLedgerProduct;
+import com.ruoyi.sales.service.ISalesLedgerProductService;
+import com.ruoyi.sales.service.impl.SalesLedgerProductServiceImpl;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.io.FilenameUtils;
@@ -71,6 +76,9 @@
     private final TempFileMapper tempFileMapper;
 
     private final ProductRecordMapper productRecordMapper;
+
+    @Autowired
+    private ISalesLedgerProductService salesLedgerProductService;
 
     @Autowired
     private PaymentRegistrationMapper paymentRegistrationMapper;
@@ -276,8 +284,8 @@
             queryWrapper.like(TicketRegistration::getPurchaseContractNumber, ticketRegistration.getPurchaseContractNumber())
                     .like(TicketRegistration::getSupplierName, ticketRegistration.getSupplierName());
         }
-        if (!ObjectUtils.isEmpty(ticketRegistration.getIssueDateStart())&&!ObjectUtils.isEmpty(ticketRegistration.getIssueDateEnd())) {
-            queryWrapper.between(TicketRegistration::getIssueDate,LocalDate.parse(ticketRegistration.getIssueDateStart(), DateTimeFormatter.ofPattern("yyyy-MM-dd")), LocalDate.parse(ticketRegistration.getIssueDateEnd(), DateTimeFormatter.ofPattern("yyyy-MM-dd")));
+        if (!ObjectUtils.isEmpty(ticketRegistration.getIssueDateStart()) && !ObjectUtils.isEmpty(ticketRegistration.getIssueDateEnd())) {
+            queryWrapper.between(TicketRegistration::getIssueDate, LocalDate.parse(ticketRegistration.getIssueDateStart(), DateTimeFormatter.ofPattern("yyyy-MM-dd")), LocalDate.parse(ticketRegistration.getIssueDateEnd(), DateTimeFormatter.ofPattern("yyyy-MM-dd")));
         }
         IPage<TicketRegistration> ticketRegistrationIPage = ticketRegistrationMapper.selectPage(page, queryWrapper);
         // 璁$畻宸蹭粯娆鹃噾棰�
@@ -307,6 +315,23 @@
         return ticketRegistrationIPage;
     }
 
+    @Override
+    public PurchaseLedgerDto getPuargeById(Long id) {
+        PurchaseLedger purchaseLedger = purchaseLedgerMapper.selectById(id);
+        PurchaseLedgerDto purchaseLedgerDto = new PurchaseLedgerDto();
+        BeanUtils.copyProperties(purchaseLedger, purchaseLedgerDto);
+        SalesLedgerProduct salesLedgerProduct = new SalesLedgerProduct();
+        salesLedgerProduct.setSalesLedgerId(id);
+        salesLedgerProduct.setType(SalesLedgerType.SALES_LEDGER_TYPE_SALES_LEDGER.getValue());
+        List<SalesLedgerProduct> salesLedgerProducts = salesLedgerProductService.selectSalesLedgerProductList(salesLedgerProduct);
+        purchaseLedgerDto.setProductData(salesLedgerProducts);
+        List<CommonFile> commonFiles = commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>()
+                .eq(CommonFile::getType, FileNameType.PURCHASELEDGER.getValue())
+                .eq(CommonFile::getCommonId, id));
+        purchaseLedgerDto.setSalesLedgerFiles(commonFiles);
+        return purchaseLedgerDto;
+    }
+
     private void handleSalesLedgerProducts(Long salesLedgerId, List<SalesLedgerProduct> products, Integer type) {
         if (products == null || products.isEmpty()) {
             return;
diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java
index 8e14547..4c38a59 100644
--- a/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java
@@ -38,10 +38,10 @@
      * 鏌ヨ浜у搧淇℃伅鍒楄〃
      */
     @GetMapping("/list")
-    public List<SalesLedgerProduct> list(SalesLedgerProduct salesLedgerProduct)
+    public AjaxResult list(SalesLedgerProduct salesLedgerProduct)
     {
         List<SalesLedgerProduct> list = salesLedgerProductService.selectSalesLedgerProductList(salesLedgerProduct);
-        return list;
+        return AjaxResult.success(list);
     }
 
     /**
diff --git a/src/main/java/com/ruoyi/sales/pojo/CommonFile.java b/src/main/java/com/ruoyi/sales/pojo/CommonFile.java
index 77e8b7d..239fd0d 100644
--- a/src/main/java/com/ruoyi/sales/pojo/CommonFile.java
+++ b/src/main/java/com/ruoyi/sales/pojo/CommonFile.java
@@ -28,7 +28,7 @@
     private String url;
 
     /** 鍏宠仈琛� */
-    private String type;
+    private Integer type;
 
     /** 鍒涘缓鏃堕棿 */
     @TableField(fill = FieldFill.INSERT)
diff --git a/src/main/java/com/ruoyi/sales/pojo/PurchaseLedgerFile.java b/src/main/java/com/ruoyi/sales/pojo/PurchaseLedgerFile.java
new file mode 100644
index 0000000..c0f76bb
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/pojo/PurchaseLedgerFile.java
@@ -0,0 +1,44 @@
+package com.ruoyi.sales.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+public class PurchaseLedgerFile {
+
+    @ApiModelProperty(value = "鏂囦欢鍚嶇О")
+    private String name;
+
+    @ApiModelProperty(value = "鏂囦欢璺緞")
+    private String url;
+
+    @ApiModelProperty(value = "鏂囦欢澶у皬")
+    private int fileSize;
+
+    @ApiModelProperty(value = "寮�绁ㄥ彴璐D")
+    private Integer purchaseLedgerId;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "淇敼鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty(value = "鍒涘缓鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    @ApiModelProperty(value = "淇敼鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    @ApiModelProperty(value = "绉熸埛ID")
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/sales/service/ICommonFileService.java b/src/main/java/com/ruoyi/sales/service/ICommonFileService.java
index a00aa9c..398fc5d 100644
--- a/src/main/java/com/ruoyi/sales/service/ICommonFileService.java
+++ b/src/main/java/com/ruoyi/sales/service/ICommonFileService.java
@@ -9,7 +9,7 @@
 
     int deleteSalesLedgerByIds(Long[] ids);
 
-    CommonFile uploadFile(MultipartFile file, Long id, String type) throws IOException;
+    CommonFile uploadFile(MultipartFile file, Long id, Integer type) throws IOException;
 
     int delCommonFileByIds(Long[] ids);
 }
diff --git a/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java
index 464810e..f46d3ae 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java
@@ -46,7 +46,7 @@
     }
 
     @Override
-    public CommonFile uploadFile(MultipartFile file, Long id, String type) throws IOException {
+    public CommonFile uploadFile(MultipartFile file, Long id, Integer type) throws IOException {
         // 1. 鐢熸垚姝e紡鏂囦欢ID鍜岃矾寰�
         String tempId = UUID.randomUUID().toString();
         Path tempFilePath = Paths.get(uploadDir, tempId + "_" + file.getOriginalFilename());
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
index a85755e..a31835b 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
@@ -10,6 +10,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.basic.mapper.CustomerMapper;
 import com.ruoyi.basic.pojo.Customer;
+import com.ruoyi.common.enums.FileNameType;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
@@ -428,7 +429,8 @@
                 fileRecord.setName(originalFilename);
                 fileRecord.setUrl(formalFilePath.toString());
                 fileRecord.setCreateTime(LocalDateTime.now());
-                fileRecord.setType("1");
+                //閿�鍞�
+                fileRecord.setType(FileNameType.SALE.getValue());
                 commonFileMapper.insert(fileRecord);
 
                 // 鍒犻櫎涓存椂鏂囦欢璁板綍
diff --git a/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml b/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
index ddd0082..03c9a18 100644
--- a/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
+++ b/src/main/resources/mapper/purchase/PurchaseLedgerMapper.xml
@@ -9,7 +9,7 @@
         SET contract_amount = #{totalTaxInclusiveAmount}
         WHERE id = #{id}
     </update>
-    <select id="selectPurchaseLedgerListPage" resultType="com.ruoyi.purchase.pojo.PurchaseLedger">
+    <select id="selectPurchaseLedgerListPage" resultType="com.ruoyi.purchase.dto.PurchaseLedgerDto">
         select
         pl.id,
         pl.purchase_contract_number ,

--
Gitblit v1.9.3