From 8bf17a90f86e88a0bd67f7bbdde6ab7acd12f683 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期三, 09 七月 2025 14:19:53 +0800
Subject: [PATCH] yys 修改导入导出bug
---
src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml | 1
src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java | 28 +++
src/main/java/com/ruoyi/procurementrecord/dto/ProcurementManagementUpdateDto.java | 27 +++
src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDtoCopy.java | 128 ++++++++++++++++++
src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java | 11 +
src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java | 5
src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml | 59 ++++++++
src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java | 13 +
src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java | 141 ++++++++++++++++++++
src/main/java/com/ruoyi/procurementrecord/dto/ProcurementRecordOutPageDto.java | 5
10 files changed, 407 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java b/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java
index 6778afc..a106fb2 100644
--- a/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java
+++ b/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java
@@ -7,10 +7,7 @@
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.framework.web.page.TableDataInfo;
-import com.ruoyi.procurementrecord.dto.ProcurementAddDto;
-import com.ruoyi.procurementrecord.dto.ProcurementDto;
-import com.ruoyi.procurementrecord.dto.ProcurementPageDto;
-import com.ruoyi.procurementrecord.dto.ProcurementUpdateDto;
+import com.ruoyi.procurementrecord.dto.*;
import com.ruoyi.procurementrecord.service.ProcurementRecordService;
import com.ruoyi.purchase.dto.InvoicePurchaseReportDto;
import com.ruoyi.quality.pojo.QualityInspect;
@@ -56,6 +53,13 @@
return AjaxResult.success(procurementRecordService.updatePro(procurementDto));
}
+ @PostMapping("/updateManagement")
+ @Log(title = "閲囪喘鍏ュ簱-搴撳瓨鍙拌处-淇敼", businessType = BusinessType.UPDATE)
+ @Transactional
+ public AjaxResult updateManagement(@RequestBody ProcurementManagementUpdateDto procurementDto) {
+ return AjaxResult.success(procurementRecordService.updateManagement(procurementDto));
+ }
+
@PostMapping("/del")
@Log(title = "閲囪喘鍏ュ簱-鍏ュ簱绠$悊-鍒犻櫎鍏ュ簱", businessType = BusinessType.DELETE)
@Transactional
@@ -70,6 +74,22 @@
return AjaxResult.success(result);
}
+ @GetMapping("/listPageCopy")
+ @Log(title = "閲囪喘鍏ュ簱-鍏ュ簱绠$悊-鍏ュ簱鏌ヨ", businessType = BusinessType.OTHER)
+ public AjaxResult listPageCopy(Page page, ProcurementPageDto procurementDto) {
+ IPage<ProcurementPageDtoCopy> result =procurementRecordService.listPageCopy(page, procurementDto);
+ return AjaxResult.success(result);
+ }
+
+ /**
+ * 瀵煎嚭
+ * @param response
+ */
+ @PostMapping("/exportCopy")
+ public void exportCopy(HttpServletResponse response) {
+ procurementRecordService.exportCopy(response);
+ }
+
/**
* 瀵煎嚭
* @param response
diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementManagementUpdateDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementManagementUpdateDto.java
new file mode 100644
index 0000000..ae93d84
--- /dev/null
+++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementManagementUpdateDto.java
@@ -0,0 +1,27 @@
+package com.ruoyi.procurementrecord.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @author :yys
+ * @date : 2025/7/9 9:41
+ */
+@Data
+public class ProcurementManagementUpdateDto {
+
+ private String createBy;
+
+ private Long createUser;
+
+ private String createTime;
+
+ private String entryDate;
+
+ private Integer id;
+
+}
diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java
index 122d4b8..9929336 100644
--- a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java
+++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java
@@ -16,6 +16,8 @@
private Integer id;
+ private Long createUser;
+
/**
* 鍏ュ簱鎵规
*/
@@ -45,11 +47,18 @@
/**
* 鍑哄叆搴撴椂闂�
*/
- @Excel(name = "鍏ュ簱鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+// @Excel(name = "鍏ュ簱鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private LocalDateTime createTime;
/**
+ * 鍑哄叆搴撴椂闂�
+ */
+ @Excel(name = "鍏ュ簱鏃堕棿")
+ private String time;
+
+
+ /**
* 鍑哄叆搴撶敤鎴�
*/
@Excel(name = "鍏ュ簱浜�")
diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDtoCopy.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDtoCopy.java
new file mode 100644
index 0000000..9ef5677
--- /dev/null
+++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDtoCopy.java
@@ -0,0 +1,128 @@
+package com.ruoyi.procurementrecord.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @author :yys
+ * @date : 2025/7/9 10:34
+ */
+@Data
+public class ProcurementPageDtoCopy {
+
+ private Integer id;
+
+ private Long createUser;
+
+ /**
+ * 鍏ュ簱鎵规
+ */
+ @Excel(name = "鍏ュ簱鎵规")
+ private String inboundBatches;
+
+ /**
+ * 鍚堝悓鍙�
+ */
+ private String purchaseContractNumber;
+
+ private String salesLedgerProductId;
+
+ /**
+ * 鍑哄叆搴撴暟閲�
+ */
+ @Excel(name = "鍏ュ簱鏁伴噺")
+ private BigDecimal inboundNum;
+
+ /**
+ * 寰呭嚭搴撴暟閲�
+ */
+ @Excel(name = "寰呭嚭搴撴暟閲�")
+ private BigDecimal inboundNum0;
+
+
+ /**
+ * 鍑哄叆搴撴椂闂�
+ */
+// @Excel(name = "鍏ュ簱鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private LocalDateTime createTime;
+
+ /**
+ * 鍑哄叆搴撴椂闂�
+ */
+ @Excel(name = "鍏ュ簱鏃堕棿")
+ private String cTime;
+
+ /**
+ * 鍑哄叆搴撴椂闂�
+ */
+// @Excel(name = "搴撳瓨鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private LocalDateTime updateTime;
+
+ /**
+ * 鍑哄叆搴撴椂闂�
+ */
+ @Excel(name = "搴撳瓨鏃堕棿")
+ private String uTime;
+
+ /**
+ * 鍑哄叆搴撶敤鎴�
+ */
+ @Excel(name = "鍏ュ簱浜�")
+ private String createBy;
+
+ /**
+ * 渚涘簲鍟嗗悕绉�
+ */
+ @Excel(name = "渚涘簲鍟嗗悕绉�")
+ private String supplierName;
+
+
+ /**
+ * 浜у搧澶х被
+ */
+ @Excel(name = "浜у搧澶х被")
+ private String productCategory;
+
+ /**
+ * 瑙勬牸鍨嬪彿
+ */
+ @Excel(name = "瑙勬牸鍨嬪彿")
+ private String specificationModel;
+
+ /**
+ * 鍗曚綅
+ */
+ @Excel(name = "鍗曚綅")
+ private String unit;
+
+ /**
+ * 绋庣巼
+ */
+ @Excel(name = "绋庣巼(%)")
+ private BigDecimal taxRate;
+
+ /**
+ * 鍚◣鍗曚环
+ */
+ @Excel(name = "鍚◣鍗曚环")
+ private BigDecimal taxInclusiveUnitPrice;
+
+ /**
+ * 鍚◣鎬讳环
+ */
+ @Excel(name = "鍚◣鎬讳环")
+ private BigDecimal taxInclusiveTotalPrice;
+
+ /**
+ * 涓嶅惈绋庢�讳环
+ */
+ @Excel(name = "涓嶅惈绋庢�讳环")
+ private BigDecimal taxExclusiveTotalPrice;
+
+}
diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementRecordOutPageDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementRecordOutPageDto.java
index 62fd6f7..3dd180e 100644
--- a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementRecordOutPageDto.java
+++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementRecordOutPageDto.java
@@ -25,10 +25,13 @@
/**
* 鍑哄叆搴撴椂闂�
*/
- @Excel(name = "鍑哄簱鏃堕棿")
+// @Excel(name = "鍑哄簱鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
+ @Excel(name = "鍑哄簱鏃堕棿")
+ private String time;
+
/**
* 鍑哄叆搴撶敤鎴�
*/
diff --git a/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java b/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java
index 4121aa8..1336f39 100644
--- a/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java
+++ b/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.procurementrecord.dto.ProcurementDto;
import com.ruoyi.procurementrecord.dto.ProcurementPageDto;
+import com.ruoyi.procurementrecord.dto.ProcurementPageDtoCopy;
import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage;
import org.apache.ibatis.annotations.Param;
@@ -25,5 +26,9 @@
IPage<ProcurementPageDto> listPage(Page page,@Param("req") ProcurementPageDto procurementDto);
+ IPage<ProcurementPageDtoCopy> listPageCopy(Page page, @Param("req") ProcurementPageDto procurementDto);
+
+ List<ProcurementPageDtoCopy> listCopy();
+
List<ProcurementPageDto> list();
}
diff --git a/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java b/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java
index 41a2f44..c7e1699 100644
--- a/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java
+++ b/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java
@@ -3,10 +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.procurementrecord.dto.ProcurementAddDto;
-import com.ruoyi.procurementrecord.dto.ProcurementDto;
-import com.ruoyi.procurementrecord.dto.ProcurementPageDto;
-import com.ruoyi.procurementrecord.dto.ProcurementUpdateDto;
+import com.ruoyi.procurementrecord.dto.*;
import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage;
import javax.servlet.http.HttpServletResponse;
@@ -23,9 +20,15 @@
IPage<ProcurementPageDto> listPage(Page page, ProcurementPageDto procurementDto);
+ IPage<ProcurementPageDtoCopy> listPageCopy(Page page, ProcurementPageDto procurementDto);
+
int updatePro(ProcurementUpdateDto procurementDto);
int deletePro(ProcurementUpdateDto procurementDto);
void export(HttpServletResponse response);
+
+ int updateManagement(ProcurementManagementUpdateDto procurementDto);
+
+ void exportCopy(HttpServletResponse response);
}
diff --git a/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java b/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java
index 92ef336..5184b0c 100644
--- a/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java
@@ -4,6 +4,7 @@
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.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.framework.security.LoginUser;
@@ -13,7 +14,10 @@
import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage;
import com.ruoyi.procurementrecord.pojo.ProcurementRecordOut;
import com.ruoyi.procurementrecord.service.ProcurementRecordService;
+import com.ruoyi.project.system.domain.SysUser;
+import com.ruoyi.project.system.mapper.SysUserMapper;
import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
+import com.ruoyi.sales.pojo.SalesLedgerProduct;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -22,6 +26,7 @@
import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.stream.Collectors;
@@ -120,8 +125,105 @@
@Override
public void export(HttpServletResponse response) {
List<ProcurementPageDto> list =procurementRecordMapper.list();
+ // 璁$畻寰呭叆搴撴暟閲�
+ // 鏌ヨ閲囪喘璁板綍宸插叆搴撴暟閲�
+ List<Integer> collect = list.stream().map(ProcurementPageDto::getId).collect(Collectors.toList());
+ if(CollectionUtils.isEmpty( collect)){
+ return;
+ }
+ LambdaQueryWrapper<ProcurementRecordOut> procurementRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ procurementRecordLambdaQueryWrapper.in(ProcurementRecordOut::getProcurementRecordStorageId, collect);
+ List<ProcurementRecordOut> procurementRecords = procurementRecordOutMapper.selectList(procurementRecordLambdaQueryWrapper);
+ if(CollectionUtils.isEmpty( procurementRecords)){
+ return;
+ }
+ for (ProcurementPageDto dto : list) {
+ // 鏍规嵁閲囪喘鍙拌处ID绛涢�夊搴旂殑鍑哄簱璁板綍
+ List<ProcurementRecordOut> collect1 = procurementRecords.stream()
+ .filter(ProcurementRecordOut -> ProcurementRecordOut.getProcurementRecordStorageId().equals(dto.getId()))
+ .collect(Collectors.toList());
+
+ // 濡傛灉娌℃湁鐩稿叧鐨勫嚭搴撹褰曪紝璺宠繃璇ユ潯鏁版嵁
+ if(CollectionUtils.isEmpty(collect1)){
+ dto.setInboundNum0(dto.getInboundNum());
+ continue;
+ }
+
+ // 璁$畻宸插嚭搴撴暟閲忔�诲拰锛屽苟璁剧疆寰呭嚭搴撴暟閲�
+ BigDecimal totalInboundNum = collect1.stream()
+ .map(ProcurementRecordOut::getInboundNum)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+
+ // 寰呭嚭搴撴暟閲� = 鎬绘暟閲� - 宸插嚭搴撴暟閲�
+ dto.setInboundNum0(dto.getInboundNum().subtract(totalInboundNum));
+ }
ExcelUtil<ProcurementPageDto> util = new ExcelUtil<ProcurementPageDto>(ProcurementPageDto.class);
util.exportExcel(response, list, "鍏ュ簱鍙拌处");
+ }
+
+ private final SysUserMapper sysUserMapper;
+
+ @Override
+ public int updateManagement(ProcurementManagementUpdateDto procurementDto) {
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+ SysUser sysUser = sysUserMapper.selectUserById(procurementDto.getCreateUser());
+ if(sysUser == null){
+ throw new RuntimeException("鍏ュ簱浜轰笉瀛樺湪");
+ }
+ DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+ String entryDateStr = procurementDto.getEntryDate() + " 00:00:00";
+ String createTimeStr = procurementDto.getCreateTime() + " 00:00:00";
+ ProcurementRecordStorage procurementRecordStorageById = getProcurementRecordById(procurementDto.getId());
+ procurementRecordStorageById.setCreateBy(sysUser.getNickName());
+ procurementRecordStorageById.setCreateUser(sysUser.getUserId());
+ procurementRecordStorageById.setUpdateTime(LocalDateTime.parse(entryDateStr,df));
+ procurementRecordStorageById.setUpdateUser(loginUser.getUserId());
+ procurementRecordStorageById.setCreateTime(LocalDateTime.parse(createTimeStr,df));
+ procurementRecordMapper.updateById(procurementRecordStorageById);
+ return 0;
+ }
+
+ @Override
+ public void exportCopy(HttpServletResponse response) {
+ List<ProcurementPageDtoCopy> list =procurementRecordMapper.listCopy();
+ // 璁$畻寰呭叆搴撴暟閲�
+ // 鏌ヨ閲囪喘璁板綍宸插叆搴撴暟閲�
+ List<Integer> collect = list.stream().map(ProcurementPageDtoCopy::getId).collect(Collectors.toList());
+ if(CollectionUtils.isEmpty( collect)){
+ ExcelUtil<ProcurementPageDtoCopy> util = new ExcelUtil<ProcurementPageDtoCopy>(ProcurementPageDtoCopy.class);
+ util.exportExcel(response, list, "搴撳瓨绠$悊");
+ return;
+ }
+ LambdaQueryWrapper<ProcurementRecordOut> procurementRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ procurementRecordLambdaQueryWrapper.in(ProcurementRecordOut::getProcurementRecordStorageId, collect);
+ List<ProcurementRecordOut> procurementRecords = procurementRecordOutMapper.selectList(procurementRecordLambdaQueryWrapper);
+ if(CollectionUtils.isEmpty( procurementRecords)){
+ ExcelUtil<ProcurementPageDtoCopy> util = new ExcelUtil<ProcurementPageDtoCopy>(ProcurementPageDtoCopy.class);
+ util.exportExcel(response, list, "搴撳瓨绠$悊");
+ return;
+ }
+ for (ProcurementPageDtoCopy dto : list) {
+ // 鏍规嵁閲囪喘鍙拌处ID绛涢�夊搴旂殑鍑哄簱璁板綍
+ List<ProcurementRecordOut> collect1 = procurementRecords.stream()
+ .filter(ProcurementRecordOut -> ProcurementRecordOut.getProcurementRecordStorageId().equals(dto.getId()))
+ .collect(Collectors.toList());
+
+ // 濡傛灉娌℃湁鐩稿叧鐨勫嚭搴撹褰曪紝璺宠繃璇ユ潯鏁版嵁
+ if(CollectionUtils.isEmpty(collect1)){
+ dto.setInboundNum0(dto.getInboundNum());
+ continue;
+ }
+
+ // 璁$畻宸插嚭搴撴暟閲忔�诲拰锛屽苟璁剧疆寰呭嚭搴撴暟閲�
+ BigDecimal totalInboundNum = collect1.stream()
+ .map(ProcurementRecordOut::getInboundNum)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+
+ // 寰呭嚭搴撴暟閲� = 鎬绘暟閲� - 宸插嚭搴撴暟閲�
+ dto.setInboundNum0(dto.getInboundNum().subtract(totalInboundNum));
+ }
+ ExcelUtil<ProcurementPageDtoCopy> util = new ExcelUtil<ProcurementPageDtoCopy>(ProcurementPageDtoCopy.class);
+ util.exportExcel(response, list, "搴撳瓨绠$悊");
}
@Override
@@ -197,4 +299,43 @@
return procurementPageDtoIPage;
}
+ @Override
+ public IPage<ProcurementPageDtoCopy> listPageCopy(Page page, ProcurementPageDto procurementDto) {
+ IPage<ProcurementPageDtoCopy> procurementPageDtoCopyIPage = procurementRecordMapper.listPageCopy(page, procurementDto);
+ List<ProcurementPageDtoCopy> procurementPageDtoCopyList = procurementPageDtoCopyIPage.getRecords();
+ // 璁$畻寰呭叆搴撴暟閲�
+ // 鏌ヨ閲囪喘璁板綍宸插叆搴撴暟閲�
+ List<Integer> collect = procurementPageDtoCopyList.stream().map(ProcurementPageDtoCopy::getId).collect(Collectors.toList());
+ if(CollectionUtils.isEmpty( collect)){
+ return procurementPageDtoCopyIPage;
+ }
+ LambdaQueryWrapper<ProcurementRecordOut> procurementRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ procurementRecordLambdaQueryWrapper.in(ProcurementRecordOut::getProcurementRecordStorageId, collect);
+ List<ProcurementRecordOut> procurementRecords = procurementRecordOutMapper.selectList(procurementRecordLambdaQueryWrapper);
+ if(CollectionUtils.isEmpty( procurementRecords)){
+ return procurementPageDtoCopyIPage;
+ }
+ for (ProcurementPageDtoCopy dto : procurementPageDtoCopyList) {
+ // 鏍规嵁閲囪喘鍙拌处ID绛涢�夊搴旂殑鍑哄簱璁板綍
+ List<ProcurementRecordOut> collect1 = procurementRecords.stream()
+ .filter(ProcurementRecordOut -> ProcurementRecordOut.getProcurementRecordStorageId().equals(dto.getId()))
+ .collect(Collectors.toList());
+
+ // 濡傛灉娌℃湁鐩稿叧鐨勫嚭搴撹褰曪紝璺宠繃璇ユ潯鏁版嵁
+ if(CollectionUtils.isEmpty(collect1)){
+ dto.setInboundNum0(dto.getInboundNum());
+ continue;
+ }
+
+ // 璁$畻宸插嚭搴撴暟閲忔�诲拰锛屽苟璁剧疆寰呭嚭搴撴暟閲�
+ BigDecimal totalInboundNum = collect1.stream()
+ .map(ProcurementRecordOut::getInboundNum)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+
+ // 寰呭嚭搴撴暟閲� = 鎬绘暟閲� - 宸插嚭搴撴暟閲�
+ dto.setInboundNum0(dto.getInboundNum().subtract(totalInboundNum));
+ }
+ return procurementPageDtoCopyIPage;
+ }
+
}
diff --git a/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml b/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml
index 3548891..7d0f59b 100644
--- a/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml
+++ b/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml
@@ -33,6 +33,7 @@
t2.product_category,
t1.id,
t1.sales_ledger_product_id,
+ t1.create_user,
t2.specification_model,
t2.unit,
t2.tax_rate,
@@ -43,6 +44,7 @@
t1.inbound_num,
t1.inbound_num as inboundNum0,
t1.create_time,
+ t1.update_time,
t1.create_by
from procurement_record_storage t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
@@ -71,6 +73,63 @@
t1.inbound_batches,
t1.inbound_num,
t1.create_time,
+ t1.create_time as time,
+ t1.create_by
+ from procurement_record_storage t1
+ left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
+ left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
+ </select>
+ <select id="listPageCopy" resultType="com.ruoyi.procurementrecord.dto.ProcurementPageDtoCopy">
+ select
+ t3.supplier_name,
+ t3.purchase_contract_number,
+ t2.product_category,
+ t1.id,
+ t1.sales_ledger_product_id,
+ t1.create_user,
+ t2.specification_model,
+ t2.unit,
+ t2.tax_rate,
+ t2.tax_inclusive_unit_price,
+ t2.tax_inclusive_total_price,
+ t2.tax_exclusive_total_price,
+ t1.inbound_batches,
+ t1.inbound_num,
+ t1.inbound_num as inboundNum0,
+ t1.create_time,
+ t1.update_time,
+ t1.create_by
+ from procurement_record_storage t1
+ left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
+ left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
+ <where>
+ 1 = 1
+ <if test="req.supplierName != null and req.supplierName != ''">
+ and t3.supplier_name like concat('%',#{req.supplierName},'%')
+ </if>
+ </where>
+ </select>
+ <select id="listCopy" resultType="com.ruoyi.procurementrecord.dto.ProcurementPageDtoCopy">
+ select
+ t3.supplier_name,
+ t3.purchase_contract_number,
+ t2.product_category,
+ t1.id,
+ t1.sales_ledger_product_id,
+ t1.create_user,
+ t2.specification_model,
+ t2.unit,
+ t2.tax_rate,
+ t2.tax_inclusive_unit_price,
+ t2.tax_inclusive_total_price,
+ t2.tax_exclusive_total_price,
+ t1.inbound_batches,
+ t1.inbound_num,
+ t1.inbound_num as inboundNum0,
+ t1.create_time,
+ t1.update_time,
+ t1.create_time as cTime,
+ t1.update_time as uTime,
t1.create_by
from procurement_record_storage t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
diff --git a/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml b/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml
index 4b8416e..a127b10 100644
--- a/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml
+++ b/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml
@@ -39,6 +39,7 @@
t2.tax_exclusive_total_price,
t1.inbound_num,
t1.create_time,
+ t1.create_time as time,
t1.create_by
from procurement_record_out t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
--
Gitblit v1.9.3