From 768498719683f85e5ed19c73eb3d14cdbf420df4 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期一, 01 七月 2024 14:03:01 +0800
Subject: [PATCH] 绑定小车码,预装总成码,手动工位扫码,拧紧逻辑优化

---
 jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/service/impl/OmProductionOrdeInfoServiceImpl.java |   85 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 85 insertions(+), 0 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/service/impl/OmProductionOrdeInfoServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/service/impl/OmProductionOrdeInfoServiceImpl.java
index 4c0adb0..9488546 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/service/impl/OmProductionOrdeInfoServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/service/impl/OmProductionOrdeInfoServiceImpl.java
@@ -1,8 +1,14 @@
 package com.jcdm.main.om.productionOrde.service.impl;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.json.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.jcdm.common.core.domain.AjaxResult;
 import com.jcdm.common.utils.DateUtils;
@@ -10,6 +16,9 @@
 import com.jcdm.main.om.productionOrde.mapper.OmProductionOrdeInfoMapper;
 import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService;
 import com.jcdm.main.restful.factoryMes.service.RestfulService;
+import lombok.extern.slf4j.Slf4j;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -19,9 +28,13 @@
  * @author ruimin
  * @date 2023-12-11
  */
+@Slf4j
 @Service
 public class OmProductionOrdeInfoServiceImpl extends ServiceImpl<OmProductionOrdeInfoMapper,OmProductionOrdeInfo> implements IOmProductionOrdeInfoService
 {
+    private static final Logger logger = LoggerFactory.getLogger("sys-user");
+    public SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
     @Autowired
     private OmProductionOrdeInfoMapper omProductionOrdeInfoMapper;
 
@@ -150,4 +163,76 @@
     public AjaxResult receivingWorkOrders() {
         return null;
     }
+
+    @Override
+    public AjaxResult trolleyYardBinDing(OmProductionOrdeInfo omProductionOrdeInfo) {
+        OmProductionOrdeInfo clearTrolleyYard = omProductionOrdeInfoService.getOne(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getTrolleyYard, omProductionOrdeInfo.getTrolleyYard()));
+        if(clearTrolleyYard!=null){
+            clearTrolleyYard.setTrolleyYard("");
+            omProductionOrdeInfoService.saveOrUpdate(clearTrolleyYard);
+        }
+        OmProductionOrdeInfo one = omProductionOrdeInfoService.getOne(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getProductNum, omProductionOrdeInfo.getProductNum()));
+        one.setTrolleyYard(omProductionOrdeInfo.getTrolleyYard());
+        omProductionOrdeInfoService.saveOrUpdate(one);
+        logger.info("缁戝畾pack鐮亄}鍒板皬杞︼細{}",omProductionOrdeInfo.getProductNum(),omProductionOrdeInfo.getTrolleyYard());
+
+        return AjaxResult.success();
+    }
+
+    @Override
+    public AjaxResult getCarCodeSize(OmProductionOrdeInfo omProductionOrdeInfo) {
+//        omProductionOrdeInfo.
+        return null;
+    }
+
+    @Override
+    public AjaxResult findBytrolleyYardGetOne(OmProductionOrdeInfo omProductionOrdeInfo) {
+        String str = "";
+        OmProductionOrdeInfo one = omProductionOrdeInfoService.getOne(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getTrolleyYard, omProductionOrdeInfo.getTrolleyYard()));
+        if(one == null){
+            str = "2";
+        }else {
+            str = one.getProductNum();
+        }
+        return AjaxResult.success(str);
+    }
+
+    @Override
+    public List<OmProductionOrdeInfo> checkCarCode(OmProductionOrdeInfo omProductionOrdeInfo) {
+        List<OmProductionOrdeInfo> list = omProductionOrdeInfoService.list(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getProductNum, omProductionOrdeInfo.getProductNum()).isNotNull(OmProductionOrdeInfo::getTrolleyYard));
+        return list;
+    }
+
+    @Override
+    public AjaxResult workReportingByStation(OmProductionOrdeInfo info) {
+        OmProductionOrdeInfo omProductionOrdeInfo = omProductionOrdeInfoService.getById(info.getId());
+        logger.info("OP230鎶ュ伐寮�濮�-宸ュ巶MES寮傛鏂规硶");
+        String reportResult = RestfulService.getWorkReportResultFeedback(omProductionOrdeInfo.getProductNum(), info.getStationCode(), format.format(new Date()));
+        JSONObject jsonObject = new JSONObject(reportResult);
+        String code = jsonObject.getStr("code");
+        String status = jsonObject.getJSONObject("data").getStr("resultCode");
+        if("success".equals(code)&&"S".equals(status)){
+            //濡傛灉鎴愬姛锛屾墽琛屾姤宸ユ垚鍔熸柟娉曪紝淇敼鏄惁鎶ュ伐涓�1锛屾坊鍔犳姤宸ユ椂闂�
+            this.updateOrderByProductNum("1",omProductionOrdeInfo.getProductNum(),info.getStationCode());
+        }else{
+            //瑙f瀽宸ュ巶mes杩斿洖缁撴灉锛屽鏋滃け璐ワ紝鎵ц鎶ュ伐澶辫触鏂规硶锛屼慨鏀规槸鍚︽姤宸ヤ负2锛屾坊鍔犳姤宸ユ椂闂�
+            this.updateOrderByProductNum("2",omProductionOrdeInfo.getProductNum(),info.getStationCode());
+        }
+        return null;
+    }
+
+    @Override
+    public void updateOrderByProductNum(String onlineCompletionMark, String productNum, String stationCode) {
+        LambdaUpdateWrapper<OmProductionOrdeInfo> updateWrapper = new LambdaUpdateWrapper<>();
+        if(stationCode.equals("OP230")){
+            updateWrapper.set(OmProductionOrdeInfo::getOnlineCompletionMark,onlineCompletionMark);
+            updateWrapper.set(OmProductionOrdeInfo::getActualStartTime,new Date());
+        }
+        if(stationCode.equals("OP500")){
+            updateWrapper.set(OmProductionOrdeInfo::getSfResult,onlineCompletionMark);
+        }
+        updateWrapper.eq(OmProductionOrdeInfo::getProductNum,productNum);
+        OmProductionOrdeInfo omProductionOrdeInfo = new OmProductionOrdeInfo();
+        omProductionOrdeInfoService.update(omProductionOrdeInfo,updateWrapper);
+    }
 }

--
Gitblit v1.9.3