From 1212e2b0dea3b44668c5293a3267a6fb780b420f Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期六, 28 六月 2025 14:28:08 +0800
Subject: [PATCH] 2025-06-28 bug修改

---
 src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java |   53 +++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 41 insertions(+), 12 deletions(-)

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 d154370..99dd081 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;
@@ -125,8 +133,10 @@
         BeanUtils.copyProperties(ticketRegistrationDto, ticketRegistration);
         ticketRegistration.setPurchaseContractNumber(purchaseLedger.getPurchaseContractNumber());
         ticketRegistration.setTenantId(purchaseLedger.getTenantId());
+        ticketRegistration.setIssueDate(ticketRegistrationDto.getIssueDate());
         ticketRegistration.setContractAmount(purchaseLedger.getContractAmount());
         ticketRegistration.setSalesLedgerId(purchaseLedger.getSalesLedgerId());
+        ticketRegistration.setEnterDate(ticketRegistrationDto.getEnterDate());
 
         // 4. 澶勭悊瀛愯〃鏁版嵁
         List<SalesLedgerProduct> productData = ticketRegistrationDto.getProductData();
@@ -192,9 +202,10 @@
             // 鏋勫缓姝e紡鏂囦欢鍚嶏紙鍖呭惈涓氬姟ID鍜屾椂闂存埑锛岄伩鍏嶅啿绐侊級
             String originalFilename = tempFile.getOriginalName();
             String fileExtension = FilenameUtils.getExtension(originalFilename);
+            String baseName = FilenameUtils.getBaseName(originalFilename);
             String formalFilename = businessId + "_" +
                     System.currentTimeMillis() + "_" +
-                    UUID.randomUUID().toString().substring(0, 8) +
+                    UUID.randomUUID().toString().substring(0, 8) +baseName+
                     (com.ruoyi.common.utils.StringUtils.hasText(fileExtension) ? "." + fileExtension : "");
 
             Path formalFilePath = formalDirPath.resolve(formalFilename);
@@ -215,7 +226,7 @@
                 fileRecord.setName(originalFilename);
                 fileRecord.setUrl(formalFilePath.toString());
                 fileRecord.setCreateTime(LocalDateTime.now());
-                fileRecord.setType(tempFile.getType());
+                fileRecord.setType(4);
                 commonFileMapper.insert(fileRecord);
 
                 log.info("鏂囦欢杩佺Щ鎴愬姛: {} -> {}", tempFile.getTempPath(), formalFilePath);
@@ -276,8 +287,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);
         // 璁$畻宸蹭粯娆鹃噾棰�
@@ -305,6 +316,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) {
@@ -339,16 +367,17 @@
                 }
 
                 // 璁$畻 futureTickets锛堢洿鎺ヤ娇鐢� BigDecimal 璁$畻锛岄伩鍏嶇簿搴︿涪澶憋級
-                product.setFutureTickets(
-                        product.getQuantity()
-                                .subtract(product.getTicketsNum())
-                );
+//                product.setFutureTickets(
+//                        product.getQuantity()
+//                                .subtract(product.getTicketsNum())
+//                );
+
 
                 // 璁$畻 futureTicketsAmount
-                product.setFutureTicketsAmount(
-                        product.getTaxInclusiveTotalPrice()
-                                .subtract(product.getTicketsAmount())
-                );
+//                product.setFutureTicketsAmount(
+//                        product.getTaxInclusiveTotalPrice()
+//                                .subtract(product.getTicketsAmount())
+//                );
                 product.setType(type);
                 salesLedgerProductMapper.updateById(product);
             });

--
Gitblit v1.9.3