From 80779e662c51601328e8e4054ebd169f5360d12c Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期一, 11 八月 2025 16:12:55 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java | 104 +++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 78 insertions(+), 26 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java
index c6384e5..6500b96 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java
@@ -10,10 +10,7 @@
import com.example.erp.common.Constants;
import com.example.erp.dto.pp.OrderNumberTransferDTO;
import com.example.erp.entity.pp.*;
-import com.example.erp.entity.sd.BasicData;
-import com.example.erp.entity.sd.Order;
-import com.example.erp.entity.sd.OrderDetail;
-import com.example.erp.entity.sd.OrderProcessDetail;
+import com.example.erp.entity.sd.*;
import com.example.erp.entity.userInfo.Log;
import com.example.erp.entity.userInfo.SysError;
import com.example.erp.exception.ServiceException;
@@ -22,6 +19,7 @@
import com.baomidou.dynamic.datasource.annotation.DS;
import com.example.erp.mapper.sd.*;
import com.example.erp.mapper.userInfo.LogMapper;
+import com.example.erp.service.mm.FinishedGoodsInventoryService;
import com.example.erp.service.sd.OrderProcessDetailService;
import com.example.erp.service.userInfo.LogService;
import com.example.erp.service.userInfo.SysErrorService;
@@ -69,7 +67,8 @@
private final RestTemplate restTemplate;
private final PatchLogMapper patchLogMapper;
private final ReworkMapper reworkMapper;
- private final BasicDateMapper basicDataMapper;
+ private final BasicDataMapper basicDataMapper;
+ private final FinishedGoodsInventoryService finishedGoodsInventoryService;
/*public ReportingWorkService(ReportingWorkMapper reportingWorkMapper, BasicDateProduceMapper basicDateProduceMapper, DamageDetailsMapper damageDetailsMapper, ReportingWorkDetailMapper reportingWorkDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, OrderProcessDetailService orderProcessDetailService, OrderMapper orderMapper, FlowCardMapper flowCardMapper, LogService logService, LogMapper logMapper, OrderGlassDetailMapper orderGlassDetailMapper, SysErrorService sysErrorService, OrderDetailMapper orderDetailMapper, FinishedOperateLogMapper finishedOperateLogMapper, ReportingWorkTransferMapper reportingWorkTransferMapper) {
@@ -252,6 +251,8 @@
reportingWork.setReportingWorkId(reportingWorkId);
String[] processIdStr = reportingWork.getProcessId().split("/");
reportingWork.setProcessId(processIdStr[0]);
+ reportingWork.setThisWornQuantity(0);
+ reportingWork.setThisCompletedQuantity(0);
int reviewState = (int) reportingWorkJson.get("type");
if (reviewState == 1) {//瀹℃牳閫氳繃
@@ -270,7 +271,13 @@
//涓昏〃鎻掑叆
reportingWorkMapper.insert(reportingWork);
//鍓〃寰幆鎻掑叆锛屽苟涓旀彃鍏ユ鐮翠俊鎭〃銆傚啀鏍规嵁娆$牬淇℃伅淇敼璁㈠崟鐜荤拑娴佺▼琛ㄧ殑瀹屽伐鏁伴噺涓庡埡鐮存暟閲�
+ final Integer[] maxTechnologyNumber = {0,0};
reportingWorkDetails.forEach(reportingWorkDetail -> {
+ //鍚堢墖鏁伴噺姹囨�诲噺灏�
+ if(Integer.parseInt(reportingWorkDetail.getTechnologyNumber()) > maxTechnologyNumber[0]){
+ maxTechnologyNumber[0] = Integer.valueOf(reportingWorkDetail.getTechnologyNumber());
+ maxTechnologyNumber[1]+=1;
+ }
reportingWork.setThisCompletedQuantity(reportingWork.getThisCompletedQuantity() + reportingWorkDetail.getCompletedQuantity());
reportingWork.setThisWornQuantity(reportingWork.getThisWornQuantity() + reportingWorkDetail.getBreakageQuantity());
int qualityInsStatus = (int) reportingWorkJson.get("qualityInsStatus");
@@ -366,9 +373,7 @@
}
//鏇存柊娴佺▼鍗¤〃鐨勬姤宸ユ暟閲�
- System.out.println("涓嬪伐搴忥細锛氾細"+reportingWork.getNextProcess());
if (reportingWork.getNextProcess() == null || reportingWork.getNextProcess().isEmpty()) {
- System.out.println("娴嬭瘯搴撳瓨鏁伴噺");
LambdaUpdateWrapper<FlowCard> flowCardLambdaUpdateWrapper =
new LambdaUpdateWrapper<>();
flowCardLambdaUpdateWrapper
@@ -381,6 +386,11 @@
});
+ //鑾峰彇鎶ュ伐宸ュ簭鏄惁涓哄鍚堝伐绋�
+
+ reportingWork.setThisCompletedQuantity(reportingWork.getThisCompletedQuantity()/maxTechnologyNumber[1]);
+
+
reportingWorkMapper.update(reportingWork, new LambdaUpdateWrapper<ReportingWork>()
.eq(ReportingWork::getId, reportingWork.getId()));
@@ -436,6 +446,7 @@
orderMapper.selectOne(new LambdaQueryWrapper<Order>()
.eq(Order::getOrderId, reportingWork.getOrderId())));
reportingWork.setFlowCard(new FlowCard());
+
@@ -574,15 +585,29 @@
}
//鎶ュ伐绠$悊鏌ヨ
- public Map<String, Object> selectReportingWorkSv(Integer pageNum, Integer pageSize, java.sql.Date selectTime1, java.sql.Date selectTime2, String orderId, ReportingWork reportingWork) {
+ public Map<String, Object> selectReportingWorkSv(Integer pageNum, Integer pageSize, List<String> selectDate, String orderId, ReportingWork reportingWork) {
Integer offset = (pageNum - 1) * pageSize;
if ("null".equals(orderId)) {
orderId = "";
}
+ String endDate = LocalDate.now().toString();
+ String startDate = LocalDate.now().minusDays(3).toString();
+ if(selectDate !=null && selectDate.size()==2){
+ if(!selectDate.get(0).isEmpty()){
+ startDate = selectDate.get(0);
+ }
+ if(!selectDate.get(1).isEmpty()){
+ endDate = selectDate.get(1);
+ }
+ }
Map<String, Object> map = new HashMap<>();
- map.put("data", reportingWorkMapper.selectReportingWorkMp(offset, pageSize, selectTime1, selectTime2, orderId, reportingWork));
+ map.put("data", reportingWorkMapper.selectReportingWorkMp(offset, pageSize, startDate, endDate, orderId, reportingWork));
// map.put("total", reportingWorkMapper.getPageTotal(offset, pageSize, selectTime1, selectTime2, orderId, reportingWork));
- map.put("total" ,reportingWorkMapper.getFootSum(offset, pageSize, selectTime1, selectTime2, orderId, reportingWork));
+ map.put("total" ,reportingWorkMapper.getFootSum(offset, pageSize, startDate, endDate, orderId, reportingWork));
+ List<String> list = new ArrayList<>();
+ list.add(startDate);
+ list.add(endDate);
+ map.put("selectDate",list);
return map;
}
@@ -602,6 +627,28 @@
if (transferState !=3){
//鍒ゆ柇鏄惁鏈夎ˉ鐗囪繑宸ユ暟鎹�
if (countStates==0){
+ //褰撲笅宸ュ簭鏈鏍稿垯鍒犻櫎鏈伐搴�
+ ReportingWork reportingWork = reportingWorkMapper.selectOne(new LambdaQueryWrapper<ReportingWork>()
+ .eq(ReportingWork::getReportingWorkId, reportingWorkId));
+ //淇濆瓨鏃ュ織
+ Log log = new Log();
+ log.setContent(reportingWorkId+"-"+processId+"-"+thisProcess);
+ log.setFunction("deleteWork鎶ュ伐鍒犻櫎");
+ log.setOperatorId(userId);
+ log.setOperator(userName);
+ if(reportingWork.getReviewedState()==0){
+ //鏌ヨ褰撳墠鎶ュ伐缂栧彿瀹屽伐娆$牬鏁伴噺鐨勬暟鎹�
+ List<Map<String, Object>> workDateList = reportingWorkMapper.reportingWorkDate(reportingWorkId);
+ for (Map<String, Object> item : workDateList) {
+ //鏇存柊鎶ュ伐娴佺▼琛ㄦ暟鎹�
+ reportingWorkMapper.updateWorkProcess(processId, item.get("order_number"), item.get("technology_number"), item.get("completed_quantity"), item.get("breakage_quantity"), thisProcess);
+ }
+ //鍒犻櫎鎶ュ伐锛屽皢瀹℃牳鐘舵�佹敼涓�-1
+ reportingWorkMapper.deleteWork(reportingWorkId);
+ logService.saveLog(log);
+ return true;
+ }
+
//鍒ゆ柇鏄惁鏄叆搴撳伐搴�
if (lastProcess.equals(thisProcess)) {//鏄叆搴撳伐搴�
//鏌ヨ璇ユ祦绋嬪崱鏁伴噺銆佸彲鍏ュ簱鏁伴噺銆佸凡鍏ュ簱鏁伴噺
@@ -628,12 +675,6 @@
}
//鍒犻櫎鎶ュ伐锛屽皢瀹℃牳鐘舵�佹敼涓�-1
reportingWorkMapper.deleteWork(reportingWorkId);
- //淇濆瓨鏃ュ織
- Log log = new Log();
- log.setContent(reportingWorkId+"-"+processId+"-"+thisProcess);
- log.setFunction("deleteWork鎶ュ伐鍏ュ簱鍒犻櫎");
- log.setOperatorId(userId);
- log.setOperator(userName);
logService.saveLog(log);
return true;
} else {
@@ -652,12 +693,7 @@
//鍒犻櫎鎶ュ伐锛屽皢瀹℃牳鐘舵�佹敼涓�-1
reportingWorkMapper.deleteWork(reportingWorkId);
- //淇濆瓨鏃ュ織
- Log log = new Log();
- log.setContent(reportingWorkId+"-"+processId+"-"+thisProcess);
- log.setFunction("deleteWork鎶ュ伐鍒犻櫎");
- log.setOperatorId(userId);
- log.setOperator(userName);
+
logService.saveLog(log);
return true;
} else {
@@ -1168,7 +1204,10 @@
date.add(endDate);
Map<String, Object> result = new HashMap<>();
BasicData basicData = basicDataMapper
- .selectOne(new QueryWrapper<BasicData>().eq("basic_name", reportingWork.get("process")));
+ .selectOne(new QueryWrapper<BasicData>()
+ .eq("basic_name", reportingWork.get("process"))
+ .last("limit 1")
+ );
result.put("data",orderProcessDetailMapper.selectShiftQuantitySv(creatorId, startDate, endDate,basicData==null?null:basicData.getNickname()));
result.put("date",date);
return result;
@@ -1188,19 +1227,32 @@
date.add(startDate);
date.add(endDate);
Map<String, Object> result = new HashMap<>();
- result.put("data",reportingWorkMapper.selectList(
+ List<ReportingWork> reportingWorkList = reportingWorkMapper.selectList(
new QueryWrapper<ReportingWork>().nested(
reportingWork.get("process")!=null,
wrapper-> wrapper.eq("creator_id",reportingWork.get("userId"))//褰撳伐搴忎负绌烘椂锛屾煡璇㈡墍鏈夋姤宸ヤ俊鎭�
)
.gt("reviewed_state",-1)
.between("date(reporting_work_time)",startDate,endDate)
- .orderByDesc("id")));
+ .orderByDesc("id"));
+ reportingWorkList.forEach(reportingWork1 -> {
+ String Plies = reportingWorkDetailMapper.getGlassPliesCount(reportingWork1.getReportingWorkId());
+ reportingWork1.setProcessId(reportingWork1.getProcessId()+'/'+Plies);
+ });
+
+ result.put("data",reportingWorkList);
result.put("date",date);
return result;
}
+ public List<BasicDataProduce> selectEquipmentByProcessSv(String process) {
+ return reportingWorkMapper.SelectWorkBasicDeviceMp(process);
+ }
-}
+ public String saveWorkStorage(Map<String, Object> object) {
+ //List<Map<String, Object>> flowCard = reportingWorkMapper.getStorageData();
+ //finishedGoodsInventoryService.addSelectWarehousing(object);
+ return null;
+ }}
--
Gitblit v1.8.0