From 400150d4499e3a27be10c7b5ca1f76b5ab37ccff Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 12 四月 2024 15:45:03 +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/FlowCardService.java | 174 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 157 insertions(+), 17 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 0066131..f2df3fe 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
@@ -1,58 +1,198 @@
package com.example.erp.service.pp;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.entity.sd.OrderGlassDetail;
+import com.example.erp.entity.sd.OrderProcessDetail;
import com.example.erp.mapper.pp.FlowCardMapper;
+import com.example.erp.mapper.sd.OrderGlassDetailMapper;
+import com.example.erp.mapper.sd.OrderProcessDetailMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.sql.Date;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+
+import static com.example.erp.service.sd.OrderService.getOrderProcessDetails;
@Service
@DS("pp")
public class FlowCardService {
- @Autowired
- FlowCardMapper flowCardMapper;
+ final
+ FlowCardMapper flowCardMapper;
+ final
+ OrderGlassDetailMapper orderGlassDetailMapper;
+ final
+ OrderProcessDetailMapper orderProcessDetailMapper;
- public Map<String, Object> selectProcessCard(Date selectTime1, Date selectTime2, FlowCard flowCard) {
+ public FlowCardService(FlowCardMapper flowCardMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper) {
+ this.flowCardMapper = flowCardMapper;
+ this.orderGlassDetailMapper = orderGlassDetailMapper;
+ this.orderProcessDetailMapper = orderProcessDetailMapper;
+ }
+
+ //娴佺▼鍗$鐞嗘煡璇�
+ public Map<String, Object> selectProcessCard(Integer pageNum, Integer pageSize, Date selectTime1, Date selectTime2, FlowCard flowCard) {
+ Integer offset = (pageNum - 1) * pageSize;
Map<String, Object> map = new HashMap<>();
- //System.out.println(flowCardMapper.selectFlowCard( selectTime1,selectTime2, flowCard));
- map.put("data", flowCardMapper.selectFlowCard( selectTime1,selectTime2, flowCard));
+ map.put("data", flowCardMapper.selectFlowCard(offset, pageSize, selectTime1, selectTime2, flowCard));
+ map.put("total", flowCardMapper.getPageTotal(offset, pageSize, selectTime1, selectTime2, flowCard));
return map;
}
-
+ //鍒嗘灦鏌ヨ
public Map<String, Object> selectAddProcess(Date selectTime1, Date selectTime2, FlowCard flowCard) {
Map<String, Object> map = new HashMap<>();
- map.put("data", flowCardMapper.selectFlowCardMp( selectTime1,selectTime2, flowCard));
+ map.put("data", flowCardMapper.selectFlowCardMp(selectTime1, selectTime2, flowCard));
return map;
}
- public Map<String, Object> DetailsSelectSv(String orderId, FlowCard flowCard) {
+ //鍒嗘灦鏄庣粏鏌ヨ
+ public Map<String, Object> detailsSelectSv(String orderId, FlowCard flowCard) {
Map<String, Object> map = new HashMap<>();
- map.put("data", flowCardMapper.DetailsSelectMp( orderId, flowCard));
+ map.put("data", flowCardMapper.detailsSelectMp(orderId, flowCard));
return map;
}
- public Boolean DeleteFlowCardSv(String orderId, String processId) {
- if (!orderId.isEmpty()&&!processId.isEmpty()){
- flowCardMapper.DeleteFlowCardMp(orderId, processId);
- return true;
- }
- else {
+ //鍒犻櫎娴佺▼鍗�
+ public Boolean deleteFlowCardSv(String orderId, String processId) {
+ if (!orderId.isEmpty() && !processId.isEmpty()) {
+ //鍒ゆ柇璇ユ祦绋嬪崱鏄惁鎶ュ伐
+ Integer count = flowCardMapper.reportingWorkCount(processId);
+ if (count == 0) {
+
+ //淇敼鍒嗘灦鐘舵��
+ flowCardMapper.updateDeleteState(orderId, processId);
+ //鍒犻櫎鎶ュ伐娴佺▼鏄庣粏琛ㄦ暟鎹�
+ flowCardMapper.deleteReportingWork(processId);
+ //鍒犻櫎鍒嗘灦鏄庣粏
+ flowCardMapper.deleteFlowCardMp(orderId, processId);
+ //鍒ゆ柇璇ヨ鍗曟祦绋嬪崱鏄惁鍏ㄩ儴鍒犻櫎
+ Integer flowNumber = flowCardMapper.selectFlowCardCount(orderId);
+ if (flowNumber == 0) {
+ //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负0,鍏ㄩ儴鍒犻櫎
+ flowCardMapper.updateProcessingCard(orderId, 0);
+ } else {
+ //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负1,鍒犻櫎閮ㄥ垎
+ flowCardMapper.updateProcessingCard(orderId, 1);
+ }
+ return true;
+ } else {
+ return false;
+ }
+
+ } else {
return false;
}
}
- public Map<String, Object> SelectNoCardSv(String orderId, String productionId, FlowCard flowCard) {
+ //鍒嗘灦鏂板鏄庣粏鏌ヨ
+ public Map<String, Object> selectNoCardSv(String orderId, String productionId, FlowCard flowCard) {
Map<String, Object> map = new HashMap<>();
- map.put("data", flowCardMapper.SelectNoCardMp( orderId,productionId, flowCard));
+ map.put("data", flowCardMapper.selectNoCardMp(orderId, productionId, flowCard));
+ return map;
+ }
+
+
+ //淇敼鎺掔増鐘舵��
+ public Boolean updateLayoutStatusSv(String processId, Integer state) {
+
+ if (!processId.isEmpty()) {
+// Integer Status = flowCardMapper.selectLayoutStatus(processId);
+
+ flowCardMapper.updateLayoutStatusMp(processId, state);
+
+
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ //淇濆瓨娴佺▼鍗℃暟鎹�
+ public Boolean addFlowCardSv(Map<String, Object> object) {
+ String userName = "";
+ if (object.get("userName") != null) {
+ userName = object.get("userName").toString();
+ }
+
+ String productionId = "";
+ if (object.get("productionId") != null) {
+ productionId = object.get("productionId").toString();
+ }
+
+ List<FlowCard> FlowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("flowCard")), FlowCard.class);
+ if (!FlowCardList.isEmpty()) {
+ for (FlowCard flowCard : FlowCardList) {
+ //鏌ヨ姣忎釜搴忓彿鐨勫眰鏁�
+ Integer layer = flowCardMapper.selectLayer(productionId, flowCard.getOrderNumber());
+ //娣诲姞娴佺▼鍗℃暟鎹�
+ flowCardMapper.addFlowCardMp(flowCard.getProcessId(), flowCard.getOrderNumber(), flowCard.getLandingSequence(), flowCard.getQuantity(), productionId, userName, layer);
+ //淇敼鍒嗘灦鐘舵�侊紝灏嗙姸鎬佹敼涓�1
+ flowCardMapper.updateFlowState(productionId, flowCard.getOrderNumber());
+ //鏌ヨ璇ヨ鍗曟湭鍒嗘灦鏁伴噺
+ Integer FlowCount = flowCardMapper.selectFlowCount(productionId);
+ if (FlowCount == 0) {
+ //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负2
+ flowCardMapper.updateProcessingCard(productionId, 2);
+ } else {
+ //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负1,鏈叏閮ㄥ垎鏋跺畬鎴�
+ flowCardMapper.updateProcessingCard(productionId, 1);
+ }
+ //鏌ヨ璁㈠崟灏忕墖琛ㄨ幏鍙栧伐鑹轰紶鍏ュ皬鐗囧伐鑹鸿〃
+ List<OrderGlassDetail> orderGlassDetailList =
+ orderGlassDetailMapper.selectList(
+ new QueryWrapper<OrderGlassDetail>()
+ .eq("order_id", flowCard.getProcessId().substring(0, 10))
+ .eq("order_number", flowCard.getOrderNumber())
+ );
+ List<OrderProcessDetail> orderProcessDetailList = getOrderProcessDetails(orderGlassDetailList);
+ orderProcessDetailList.forEach(
+ orderGlassDetail -> orderGlassDetail.setProcessId(flowCard.getProcessId()));
+
+
+ //璧嬪�艰鍗曞伐鑹鸿〃
+ orderProcessDetailMapper.insertOrderProcessDetail(orderProcessDetailList);
+ }
+
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ public Map<String, Object> selectSchedulingSv(String selectTime1, String selectTime2, String orderId, String processes, Integer state, FlowCard flowCard) {
+ Map<String, Object> map = new HashMap<>();
+ if (state == 2) {//宸叉帓浜�
+ map.put("data", flowCardMapper.selectOkSchedulingMp(selectTime1, selectTime2, orderId, processes, flowCard));
+
+ } else if (state == 1) {//鏈帓浜�
+ map.put("data", flowCardMapper.selectNoSchedulingMp(selectTime1, selectTime2, orderId, processes, flowCard));
+
+ }
+
+ return map;
+ }
+
+
+ //棣栨鏌ヨ鎺掔増鏁版嵁
+ public Map<String, Object> selectLastScheduling(String selectTime1, String selectTime2, FlowCard flowCard) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("data", flowCardMapper.selectLastSchedulingMp(selectTime1, selectTime2, flowCard));
+ return map;
+ }
+
+ public Object flowCardDetailSv(String processId, FlowCard flowCard) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("data", flowCardMapper.flowCardDetailMp(processId, flowCard));
return map;
}
}
--
Gitblit v1.8.0