From da8d45df31aebdf0eda2c57155d1a915e2e1e89f Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期三, 26 十一月 2025 18:02:25 +0800
Subject: [PATCH] yys 1.生产管理逻辑修改
---
src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java | 51 ++++++++++++++++++++++++++++++++-------------------
1 files changed, 32 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
index d3550ea..174e96c 100644
--- a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
@@ -6,10 +6,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.procurementrecord.dto.ProcurementRecordOutPageDto;
-import com.ruoyi.production.dto.ProcessSchedulingDto;
-import com.ruoyi.production.dto.ProductionDispatchAddDto;
-import com.ruoyi.production.dto.SalesLedgerSchedulingDto;
-import com.ruoyi.production.dto.SalesLedgerSchedulingProcessDto;
+import com.ruoyi.production.dto.*;
import com.ruoyi.production.mapper.SalesLedgerSchedulingMapper;
import com.ruoyi.production.mapper.SalesLedgerWorkMapper;
import com.ruoyi.production.pojo.SalesLedgerScheduling;
@@ -19,6 +16,7 @@
import com.ruoyi.project.system.mapper.SysUserMapper;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@@ -26,6 +24,7 @@
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@@ -61,6 +60,12 @@
.filter(j -> j.getSalesLedgerProductId().equals(i.getSalesLedgerProductId()))
.map(SalesLedgerWork::getFinishedNum)
.reduce(BigDecimal.ZERO, BigDecimal::add));
+ // 鐘舵�� = 鏁伴噺鍜屽畬宸ユ暟閲忔瘮杈�
+ if(i.getSchedulingNum().compareTo(i.getSuccessNum()) == 0){
+ i.setStatus("宸插畬鎴�");
+ }else{
+ i.setStatus("鏈畬鎴�");
+ }
});
return list;
}
@@ -109,20 +114,20 @@
@Override
public IPage<SalesLedgerSchedulingProcessDto> listPageProcess(Page page, SalesLedgerSchedulingProcessDto salesLedgerSchedulingDto) {
IPage<SalesLedgerSchedulingProcessDto> list = salesLedgerSchedulingMapper.listPageProcess(page, salesLedgerSchedulingDto);
- Set<Long> collect = list.getRecords().stream().map(SalesLedgerSchedulingProcessDto::getSalesLedgerProductId).collect(Collectors.toSet());
- if(CollectionUtils.isEmpty(collect)) return list;
- LambdaQueryWrapper<SalesLedgerWork> salesLedgerWorkLambdaQueryWrapper = new LambdaQueryWrapper<>();
- salesLedgerWorkLambdaQueryWrapper.in(SalesLedgerWork::getSalesLedgerProductId, collect)
- .ne(SalesLedgerWork::getStatus, 1);
- List<SalesLedgerWork> salesLedgerWorks = salesLedgerWorkMapper.selectList(salesLedgerWorkLambdaQueryWrapper);
- list.getRecords().forEach(i -> {
- // 鑾峰彇瀹屾垚鏁伴噺
- i.setSuccessNum(salesLedgerWorks
- .stream()
- .filter(j -> j.getSalesLedgerProductId().equals(i.getSalesLedgerProductId()))
- .map(SalesLedgerWork::getFinishedNum)
- .reduce(BigDecimal.ZERO, BigDecimal::add));
- });
+// Set<Long> collect = list.getRecords().stream().map(SalesLedgerSchedulingProcessDto::getId).collect(Collectors.toSet());
+// if(CollectionUtils.isEmpty(collect)) return list;
+// LambdaQueryWrapper<SalesLedgerWork> salesLedgerWorkLambdaQueryWrapper = new LambdaQueryWrapper<>();
+// salesLedgerWorkLambdaQueryWrapper.in(SalesLedgerWork::getSalesLedgerSchedulingId, collect)
+// .ne(SalesLedgerWork::getStatus, 1);
+// List<SalesLedgerWork> salesLedgerWorks = salesLedgerWorkMapper.selectList(salesLedgerWorkLambdaQueryWrapper);
+// list.getRecords().forEach(i -> {
+// // 鑾峰彇瀹屾垚鏁伴噺
+// i.setSuccessNum(salesLedgerWorks
+// .stream()
+// .filter(j -> j.getSalesLedgerSchedulingId().equals(i.getId()))
+// .map(SalesLedgerWork::getFinishedNum)
+// .reduce(BigDecimal.ZERO, BigDecimal::add));
+// });
return list;
}
@@ -147,7 +152,10 @@
SysUser sysUser = sysUserMapper.selectUserById(processSchedulingDto.getSchedulingUserId());
if(sysUser == null) throw new RuntimeException("鎺掍骇浜轰笉瀛樺湪");
salesLedgerScheduling.setFinishedNum(salesLedgerScheduling.getFinishedNum().add(processSchedulingDto.getSchedulingNum()));
- if(salesLedgerScheduling.getSchedulingNum().compareTo(salesLedgerScheduling.getFinishedNum()) <= 0){
+ if(salesLedgerScheduling.getSchedulingNum().compareTo(salesLedgerScheduling.getFinishedNum()) < 0){
+ throw new RuntimeException("褰撳墠鎺掍骇鏁伴噺澶т簬寰呮帓浜ф暟閲忥紝璇蜂粩缁嗘牳瀵癸紒");
+ }
+ if(salesLedgerScheduling.getSchedulingNum().compareTo(salesLedgerScheduling.getFinishedNum()) == 0){
salesLedgerScheduling.setStatus(3);
}else{
salesLedgerScheduling.setStatus(2);
@@ -159,6 +167,10 @@
.salesLedgerProductId(salesLedgerScheduling.getSalesLedgerProductId())
.schedulingUserId(salesLedgerScheduling.getSchedulingUserId())
.schedulingUserName(sysUser.getNickName())
+ .type(processSchedulingDto.getType())
+ .remark(processSchedulingDto.getRemark())
+ .loss(processSchedulingDto.getLoss())
+ .receive(processSchedulingDto.getReceive())
.schedulingNum(processSchedulingDto.getSchedulingNum())
.workHours(processSchedulingDto.getWorkHours())
.process(processSchedulingDto.getProcess())
@@ -168,4 +180,5 @@
}
return 0;
}
+
}
--
Gitblit v1.9.3