From 569c889395ebe14caf48820e7bfb0551357ec0d2 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 10 九月 2025 08:59:52 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override
---
north-glass-erp/src/main/java/com/example/erp/service/pp/ReportingWorkService.java | 120 ++++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 84 insertions(+), 36 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 82da3f5..135344f 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,14 +10,10 @@
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;
-import com.example.erp.mapper.mm.FinishedGoodsInventoryMapper;
import com.example.erp.mapper.mm.FinishedOperateLogMapper;
import com.example.erp.mapper.pp.*;
import com.baomidou.dynamic.datasource.annotation.DS;
@@ -71,7 +67,7 @@
private final RestTemplate restTemplate;
private final PatchLogMapper patchLogMapper;
private final ReworkMapper reworkMapper;
- private final BasicDateMapper basicDataMapper;
+ private final BasicDataMapper basicDataMapper;
private final FinishedGoodsInventoryService finishedGoodsInventoryService;
@@ -255,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) {//瀹℃牳閫氳繃
@@ -273,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");
@@ -382,6 +386,11 @@
});
+ //鑾峰彇鎶ュ伐宸ュ簭鏄惁涓哄鍚堝伐绋�
+
+ reportingWork.setThisCompletedQuantity(reportingWork.getThisCompletedQuantity()/maxTechnologyNumber[1]);
+
+
reportingWorkMapper.update(reportingWork, new LambdaUpdateWrapper<ReportingWork>()
.eq(ReportingWork::getId, reportingWork.getId()));
@@ -437,6 +446,7 @@
orderMapper.selectOne(new LambdaQueryWrapper<Order>()
.eq(Order::getOrderId, reportingWork.getOrderId())));
reportingWork.setFlowCard(new FlowCard());
+
@@ -575,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;
}
@@ -603,6 +627,17 @@
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 (lastProcess.equals(thisProcess)) {//鏄叆搴撳伐搴�
//鏌ヨ璇ユ祦绋嬪崱鏁伴噺銆佸彲鍏ュ簱鏁伴噺銆佸凡鍏ュ簱鏁伴噺
@@ -629,12 +664,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 {
@@ -643,6 +672,19 @@
}
} else {//涓嶆槸鍏ュ簱宸ュ簭
+ 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 (count == 0) {
//鏌ヨ褰撳墠鎶ュ伐缂栧彿瀹屽伐娆$牬鏁伴噺鐨勬暟鎹�
List<Map<String, Object>> workDateList = reportingWorkMapper.reportingWorkDate(reportingWorkId);
@@ -653,12 +695,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 {
@@ -998,7 +1035,7 @@
.eq("order_sort", reportingWork.get("oldOrderNumber"))
.eq("review_status",0)
);
- if (patchLogs.isEmpty()){
+ if (!patchLogs.isEmpty()){
result.put("msg","鏃ц鍗曞瓨鍦ㄨˉ鐗囨湭瀹℃牳鏁版嵁");
result.put("data",false);
return result;
@@ -1009,7 +1046,7 @@
.eq("order_sort", reportingWork.get("oldOrderNumber"))
.eq("review_status",0)
);
- if (patchLogs.isEmpty()){
+ if (!patchLogs.isEmpty()){
result.put("msg","鏃ц鍗曞瓨鍦ㄨ繑宸ユ湭瀹℃牳鏁版嵁锛岃鍏堝鏍告姤宸ュ悗鍐嶈繘琛岃浆鍑�");
result.put("data",false);
return result;
@@ -1135,7 +1172,7 @@
//restTemplate.postForObject("http://localhost:8086/order/test",orderNumberTransferList,String.class);
//鍚憁es鍙戦�乭ttp璇锋眰
- ResponseEntity<OrderNumberTransferDTO> response =restTemplate.exchange(
+ /*ResponseEntity<OrderNumberTransferDTO> response =restTemplate.exchange(
"http://localhost:88/api/loadGlass/order/order/orderChange",
HttpMethod.POST,
new HttpEntity<>(orderNumberTransferList),
@@ -1147,7 +1184,9 @@
}else{
result.put("msg","杩炴帴mes鍝嶅簲瓒呮椂");
result.put("data",false);
- }
+ }*/
+
+ result.put("data",true);
return result;
}
@@ -1169,7 +1208,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;
@@ -1189,26 +1231,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 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;
- }}
+ public String saveWorkStorage(Map<String, Object> object) {
+ //List<Map<String, Object>> flowCard = reportingWorkMapper.getStorageData();
+ //finishedGoodsInventoryService.addSelectWarehousing(object);
+ return null;
+ }}
--
Gitblit v1.8.0