From 00c4dfc5ac687c93e0b7abafc33abb693b38edd6 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期一, 05 八月 2024 09:14:33 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes

---
 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java |   97 +++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 95 insertions(+), 2 deletions(-)

diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
index b6d0cba..3b1819f 100644
--- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
+++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
@@ -1,11 +1,20 @@
 package com.mes.engineering.service.impl;
 
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.mes.engineering.entity.Engineering;
 import com.mes.engineering.mapper.EngineeringMapper;
 import com.mes.engineering.service.EngineeringService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.pp.entity.OptimizeProject;
+import com.mes.pp.mapper.OptimizeProjectMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * <p>
@@ -16,14 +25,98 @@
  * @since 2024-04-22
  */
 @Service
+@Slf4j
 public class EngineeringServiceImpl extends ServiceImpl<EngineeringMapper, Engineering> implements EngineeringService {
+
+    @Autowired
+    OptimizeProjectMapper optimizeProjectMapper;
+    @Autowired
+    private EngineeringMapper engineeringMapper;
+
     //寮�濮�/鏆傚仠浠诲姟
     @Override
     public  boolean  changeTask(String projectId, Integer state) {
+        //鏆傚仠姝e湪杩涜宸ョ▼
+        LambdaUpdateChainWrapper<Engineering> pauseWrapper = new LambdaUpdateChainWrapper<>(this.getBaseMapper());
+        pauseWrapper.set(Engineering::getState,0);
+        pauseWrapper.eq(Engineering::getState,1);
+        boolean pause = pauseWrapper.update();
+        //浣跨敤projectId浣滀负鏉′欢寮�濮嬪伐绋�
         LambdaUpdateChainWrapper<Engineering> wrapper = new LambdaUpdateChainWrapper<>(this.getBaseMapper());
         wrapper.set(Engineering::getState,state);
         wrapper.eq(Engineering::getEngineerId,projectId);
-        return  wrapper.update();
+        wrapper.update();
+        return pause;
+    }
+
+    @Override
+    @DS("pp")
+    public List<Engineering> selectEngineering(String engineeringId) {
+        //鏌ヨ閽㈠寲宸ョ▼淇℃伅
+        List<OptimizeProject> optimizeEngineerings = null;
+        if (engineeringId != null) {
+            QueryWrapper<OptimizeProject> wrapper = new QueryWrapper<>();
+            wrapper.select("project_no,project_name,avg_cut_pct,valid_cut_pct,last_cut_pct,glass_total,glass_total_area,raw_stock_qty,raw_stock_area,glass_type,remark ")
+                    .eq("project_no", engineeringId);
+            optimizeEngineerings = optimizeProjectMapper.selectList(wrapper);
+
+        }
+        List<Engineering> resultList=new ArrayList<>();
+// 閬嶅巻鏌ヨ缁撴灉璧嬪��
+        if (optimizeEngineerings != null) {
+            for (OptimizeProject map : optimizeEngineerings) {
+                // 鍒涘缓涓�涓柊鐨� OptimizeProject 瀵硅薄
+                Engineering engineering = new Engineering();
+                // 灏� Map 涓殑姣忎釜閿�煎鏄犲皠鍒� OptimizeProject 瀵硅薄鐨勭浉搴斿瓧娈典笂
+                engineering.setEngineerId( map.getProjectNo());//宸ョ▼id
+                engineering.setEngineerName( map.getProjectName());//宸ョ▼鍚嶇О
+                engineering.setAvgAvailability( map.getAvgCutPct());//骞冲潎浼樺寲鐜�
+                engineering.setValidAvailability( map.getValidCutPct());//鏈夋晥浼樺寲鐜�
+                engineering.setLastAvailability( map.getLastCutPct());//灏剧墖浼樺寲鐜�
+                engineering.setState(0);//鐘舵��
+                engineering.setGlassTotal( map.getGlassTotal());//灏忕墖鐜荤拑鎬绘暟
+                engineering.setGlassTotalArea( map.getGlassTotalArea());//灏忕墖鎬婚潰绉�
+                engineering.setPlanPatternTotal( map.getRawStockQty());//璁″垝鍘熺墖鎬绘暟
+                engineering.setPlanPatternTotalArea( map.getRawStockArea());//璁″垝鍘熺墖鎬婚潰绉�
+                engineering.setFilmsId( map.getGlassType());//鑶滅郴
+                engineering.setNotes( map.getRemark());//澶囨敞
+                // 灏嗘槧灏勫悗鐨勫璞℃坊鍔犲埌缁撴灉鍒楄〃涓�
+                resultList.add(engineering);
+            }
+        }
+        log.info("鏌ヨ鍑洪挗鍖栧伐绋嬮泦鍚堜繚瀛樺埌瀹炰綋绫粄}",resultList);
+        return resultList;
+    }
+
+    @Override
+    public void saveEngineering(List<Engineering> engineering) {
+        this.saveBatch(engineering);
+        //淇濆瓨閽㈠寲宸ョ▼淇℃伅
+    }
+
+    @Override
+    public  Engineering selectInitiate(Integer state) {
+        //鏌ヨ鏄惁鏈夊紑濮嬩笂鐗囩殑宸ョ▼浠诲姟
+        QueryWrapper<Engineering> wrapper = new QueryWrapper<>();
+            wrapper.eq("state", state);
+        return engineeringMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<Engineering> selectTask() {
+        //鏌ヨ鍙紑濮嬩换鍔$殑宸ョ▼
+        QueryWrapper<Engineering> wrapper = new QueryWrapper<>();
+        wrapper.eq("state", 0);
+        return engineeringMapper.selectList(wrapper);
+    }
+
+    @Override
+    public boolean pauseTask(String engineerId, Integer state) {
+        //鏆傚仠姝e湪杩涜宸ョ▼
+        LambdaUpdateChainWrapper<Engineering> pauseWrapper = new LambdaUpdateChainWrapper<>(this.getBaseMapper());
+        pauseWrapper.set(Engineering::getState,0);
+        pauseWrapper.eq(Engineering::getState,1);
+        return  pauseWrapper.update();
     }
 
 }

--
Gitblit v1.8.0