From 277b5047d00a3e9094bafd5ecb078976fbf6a92d Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期四, 08 一月 2026 18:59:04 +0800
Subject: [PATCH] 华玺砂浆转移-采购代码、发货和发货审核、报修和报修审核、采购模板,查询采购模板接口、财务管理的存货核算数据接口、财务管理的固定资产核算获取台账接口、采购审批,接口、客户分类字段、采购台账字段,实现采购异常记录的添加接口、黑名单,添加资质管理字段,可上传资质文件-至军泰伟业
---
src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java | 70 +++++++++++++++++++++++++++++++++++
1 files changed, 70 insertions(+), 0 deletions(-)
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 96f2ff0..7c1d837 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/ProductRecordServiceImpl.java
@@ -1,12 +1,28 @@
package com.ruoyi.purchase.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+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.framework.web.domain.AjaxResult;
+import com.ruoyi.purchase.dto.ProductRecordDto;
import com.ruoyi.purchase.dto.TicketRegistrationDto;
import com.ruoyi.purchase.mapper.ProductRecordMapper;
+import com.ruoyi.purchase.mapper.PurchaseLedgerMapper;
+import com.ruoyi.purchase.mapper.TicketRegistrationMapper;
import com.ruoyi.purchase.pojo.ProductRecord;
+import com.ruoyi.purchase.pojo.PurchaseLedger;
+import com.ruoyi.purchase.pojo.TicketRegistration;
import com.ruoyi.purchase.service.IProductRecordService;
+import com.ruoyi.sales.mapper.CommonFileMapper;
+import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
+import com.ruoyi.sales.pojo.CommonFile;
+import com.ruoyi.sales.pojo.SalesLedgerProduct;
+import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@@ -21,7 +37,15 @@
@AllArgsConstructor
public class ProductRecordServiceImpl extends ServiceImpl<ProductRecordMapper, ProductRecord> implements IProductRecordService {
+ @Autowired
private ProductRecordMapper productRecordMapper;
+
+ @Autowired
+ private CommonFileMapper commonFileMapper;
+ @Autowired
+ private SalesLedgerProductMapper salesLedgerProductMapper;
+ @Autowired
+ private PurchaseLedgerMapper purchaseLedgerMapper;
/**
@@ -36,4 +60,50 @@
.eq(ProductRecord::getType, "2"));
}
+ @Override
+ public IPage<ProductRecordDto> productRecordPage(Page page, TicketRegistrationDto ticketRegistrationDto) {
+ IPage<ProductRecordDto> productRecordDtoIPage1 = productRecordMapper.productRecordPage(page, ticketRegistrationDto);
+ page.setSize(productRecordDtoIPage1.getTotal());
+ 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;
+ }
+
+ private final TicketRegistrationMapper ticketRegistrationMapper;
+
+ @Override
+ public AjaxResult updateRecord(ProductRecordDto productRecordDto) {
+ SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(productRecordDto.getSaleLedgerProjectId());
+ ProductRecord productRecord = productRecordMapper.selectById(productRecordDto.getId());
+ if (salesLedgerProduct != null) {
+ salesLedgerProduct.setFutureTicketsAmount(salesLedgerProduct.getFutureTicketsAmount().add(productRecord.getTicketsAmount()).subtract(productRecordDto.getTicketsAmount()));
+ salesLedgerProduct.setFutureTickets(salesLedgerProduct.getFutureTickets().add(productRecord.getTicketsNum().subtract(productRecordDto.getTicketsNum())));
+ salesLedgerProduct.setTicketsAmount(productRecordDto.getTicketsAmount());
+ salesLedgerProduct.setTicketsNum(productRecordDto.getTicketsNum());
+ salesLedgerProductMapper.updateById(salesLedgerProduct);
+ }
+ PurchaseLedger purchaseLedger = purchaseLedgerMapper.selectById(productRecord.getPurchaseLedgerId());
+ if (purchaseLedger != null) {
+ purchaseLedger.setReceiptPaymentAmount(purchaseLedger.getReceiptPaymentAmount());
+ }
+ BeanUtils.copyProperties(productRecordDto,productRecord);
+ productRecord.setFutureTicketsAmount(productRecord.getFutureTickets().multiply(productRecord.getTaxInclusiveUnitPrice()));
+ productRecordMapper.updateById(productRecord);
+ // 淇敼鍙戠エ鍙�
+ TicketRegistration ticketRegistration = ticketRegistrationMapper.selectById(productRecord.getTicketRegistrationId());
+ if(ticketRegistration != null){
+ ticketRegistration.setInvoiceNumber(productRecordDto.getInvoiceNumber());
+ ticketRegistrationMapper.updateById(ticketRegistration);
+ }
+ return AjaxResult.success("淇敼鎴愬姛");
+ }
+
+ @Override
+ public ProductRecordDto getProductRecordById(Long id) {
+ ProductRecordDto productRecordDto = productRecordMapper.getProductRecordById(id);
+ return productRecordDto;
+ }
}
--
Gitblit v1.9.3