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