From bdfa5fbd836301fe3f705fee65697be4f4f6da9e Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期一, 03 三月 2025 10:01:05 +0800
Subject: [PATCH] 订单退回判断是否优化
---
north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java | 71 +++++++++++++++++++++++++----------
1 files changed, 51 insertions(+), 20 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
index 813cc03..057678f 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
@@ -219,7 +219,7 @@
return map;
}
- public Object selectPrintFlowCardSv(Date selectTime1, Date selectTime2, String orderId, String project, String userId, FlowCard flowCard) {
+ public Object selectPrintFlowCardSv(Date selectTime1, Date selectTime2, String orderId, String project, String userId, Integer state, FlowCard flowCard) {
if ("null".equals(orderId)) {
orderId = "";
}
@@ -227,7 +227,7 @@
project = "";
}
Map<String, Object> map = new HashMap<>();
- map.put("data", flowCardMapper.selectPrintFlowCardMp(selectTime1, selectTime2, orderId, project, flowCard));
+ map.put("data", flowCardMapper.selectPrintFlowCardMp(selectTime1, selectTime2, orderId, project,state, flowCard));
String roleId = flowCardMapper.selectUserMp(userId);
map.put("user", roleId);
return map;
@@ -776,10 +776,12 @@
if (!flowCardList.isEmpty()) {
for (FlowCard flowCard : flowCardList) {
Map<String, Object> itemmap = new HashMap<>();
- if (type == 1) {
+ if (type == 1) {//鏄庣粏鎵撳嵃
itemmap.put("detail", flowCardMapper.selectPrintDetailsMp(flowCard.getOrderId()));
- } else if (type == 2) {
+ } else if (type == 2) {//鏄庣粏鍒嗘灦鎵撳嵃
itemmap.put("detail", flowCardMapper.selectPrintDetailsMp1(flowCard.getOrderId()));
+ }else if (type == 3) {//璁㈠崟鎵撳嵃
+ itemmap.put("detail", flowCardMapper.selectPrintDetailsMp2(flowCard.getOrderId()));
}
list.add(itemmap);
@@ -799,20 +801,28 @@
if (lableType != 2) {//鎴愬搧鏍囩
for (FlowCard flowCard : flowCardList) {
+ String orderId = flowCard.getOrderId();
String processId = flowCard.getProcessId();
String orderNumber = flowCard.getOrderNumber().toString();
+ if (processId!=null){
+ // 妫�鏌ユ槸鍚﹀凡缁忓鐞嗚繃璇� processId锛屽鏋滃鐞嗚繃鍒欒烦杩�
+ if (processedProcessIds.contains(processId) && processedProcessIds.contains(orderNumber)) {
+ continue;
+ }
+ Map<String, Object> itemmap = new HashMap<>();
+ itemmap.put("data", flowCardMapper.getPrintCustomDataDetails(flowCard.getProcessId(), flowCard.getOrderNumber(), flowCard.getPrintQuantity()));
+ list.add(itemmap);
- // 妫�鏌ユ槸鍚﹀凡缁忓鐞嗚繃璇� processId锛屽鏋滃鐞嗚繃鍒欒烦杩�
- if (processedProcessIds.contains(processId) && processedProcessIds.contains(orderNumber)) {
- continue;
- }
- Map<String, Object> itemmap = new HashMap<>();
- itemmap.put("data", flowCardMapper.getPrintCustomDataDetails(flowCard.getProcessId(), flowCard.getOrderNumber(), flowCard.getPrintQuantity()));
- list.add(itemmap);
+ // 灏嗚 processId 鍔犲叆宸插鐞嗛泦鍚�
+ processedProcessIds.add(processId);
+ processedProcessIds.add(orderNumber);
+ } else{
- // 灏嗚 processId 鍔犲叆宸插鐞嗛泦鍚�
- processedProcessIds.add(processId);
- processedProcessIds.add(orderNumber);
+ Map<String, Object> itemmap = new HashMap<>();
+ itemmap.put("data", flowCardMapper.getPrintOrderDataDetails(flowCard.getOrderId(), flowCard.getOrderNumber(), flowCard.getPrintQuantity()));
+ list.add(itemmap);
+ }
+
}
} else {//灏忕墖鏍囩
for (FlowCard flowCard : flowCardList) {
@@ -1061,14 +1071,16 @@
Float shelfThickness = Float.parseFloat(object.get("shelfThickness").toString())*1000;
Float spacerThickness = Float.parseFloat(object.get("spacerThickness").toString());
*/
- Integer inMaxQuantity = 30;
- Float inWeight = 50.0f;
+ //Integer inMaxQuantity = 1;
+ Float inWeight = 100.0f;
Float shelfThickness = 2000.0f;
/*鍨墖鍘氬害*/
Float spacerThickness = 0.0f;
Map<String, Object> thickness = flowCardMapper.getGlassThicknessByProdutionId(orderId, productionId);
+ //鎴愬搧鐜荤拑鎬诲帤搴�
Float glassTotalThickness = Float.parseFloat(thickness.get("totalThickness").toString());
+ //鎴愬搧鐜荤拑鍘氬害
Float glassThickness = Float.parseFloat(thickness.get("thickness").toString());
//鑾峰彇姝ゅ伐绋嬪彿璁㈠崟鏄庣粏淇℃伅
@@ -1095,17 +1107,15 @@
//褰撳墠璁㈠崟鏄庣粏鍓╀綑鏁伴噺
if (shelfQuantity == 0) {
shelfQuantity = shelfQuantityByWeight;
- }else if(shelfQuantity>0){
+ }else if(shelfQuantity>0){//鏋跺瓙鍓╀綑鏁伴噺澶т簬0鏃讹紝鍒ゆ柇褰撳墠鏋跺瓙鍓╀綑閲嶉噺锛屾槸鍚︽敮鎸佹渶鏂板簭鍙风殑鐨勬垚鍝侀噸閲�
String FlowCardId = orderDetailList.get(orderDetailList.size() - 1).getFlowCardId();
double flowCardWeight = 0.0;
for (OrderDetail orderDetail1 : orderDetailList) {
if (orderDetail1.getFlowCardId().equals(FlowCardId)) {
flowCardWeight += orderDetail1.getHeight()*orderDetail1.getQuantity()* orderDetail1.getWidth()* glassThickness* 2.5 / 1000000;
}
-
}
if(flowCardWeight>0){
- //System.out.println(inWeight+","+flowCardWeight);
flowCardWeight = inWeight - flowCardWeight;
shelfQuantity = (int) (flowCardWeight /
(orderDetail.getHeight()
@@ -1129,7 +1139,9 @@
}
String processId = productionId + String.format("%05d", flowCardNo);
//鍙栨渶灏忓��
- maxQuantity = Math.min(shelfQuantity, Math.min(inMaxQuantity, shelfMaxQuantityByThickness));
+ // maxQuantity = Math.min(shelfQuantity, Math.min(inMaxQuantity, shelfMaxQuantityByThickness));
+ maxQuantity = Math.min(shelfQuantity, shelfMaxQuantityByThickness);
+
/*System.out.println(shelfQuantity + "," + inMaxQuantity + "," + shelfMaxQuantityByThickness);
System.out.println(flowCardNo + "," + maxQuantity);
System.out.println("------");*/
@@ -1164,6 +1176,25 @@
}
+ public Boolean revokeComposingSv(Map<String, Object> object) {
+ List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("composing")), FlowCard.class);
+ if (!flowCardList.isEmpty()) {
+ for (FlowCard flowCard : flowCardList) {
+ //鑾峰彇娌℃湁宸ョ▼鍙风殑鏉℃暟锛屽凡鐢熸垚宸ョ▼鍙蜂笉鑳芥挙鍥�
+ Integer count = flowCardMapper.selectProjectNo(flowCard.getProcessId());
+ if (count == 0){
+ flowCardMapper.revokeComposing(flowCard.getProcessId());
+ } else {
+ return false;
+ }
+
+ }
+ return true;
+ } else {
+ return false;
+
+ }
+ }
}
--
Gitblit v1.8.0