From 09a010c5dc11c68a866a6075a74bd1bbefb4a9a8 Mon Sep 17 00:00:00 2001 From: wu <731351411@qq.com> Date: 星期一, 24 六月 2024 16:38:23 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java | 70 +++++++++++++++++++++++++++++----- 1 files changed, 59 insertions(+), 11 deletions(-) diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java index be26553..6e35509 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java @@ -1,6 +1,7 @@ package com.mes.glassinfo.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.yulichang.base.MPJBaseServiceImpl; import com.github.yulichang.query.MPJQueryWrapper; import com.mes.glassinfo.entity.GlassInfo; @@ -14,11 +15,14 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * <p> - * 鏈嶅姟瀹炵幇绫� + * 鏈嶅姟瀹炵幇绫� * </p> * * @author wu @@ -29,22 +33,24 @@ public class GlassInfoServiceImpl extends MPJBaseServiceImpl<GlassInfoMapper, GlassInfo> implements GlassInfoService { @Autowired OptimizeProjectMapper optimizeProjectMapper; + @Override @DS("pp") public List<GlassInfo> selectGlassInfo(String engineeringId) { - List<OptimizeGlassinfo> optimizeGlassinfos=null; + List<OptimizeGlassinfo> optimizeGlassinfos = null; if (engineeringId != null) { optimizeGlassinfos = optimizeProjectMapper.selectJoinList(OptimizeGlassinfo.class, new MPJQueryWrapper<OptimizeProject>() - .select("b.process_id,t.type,b.width,b.height,t.glass_thickness,t.glass_type,b.p_width,b.p_height,b.layer, b.total_layer, b.stock_id,b.heat_layout_id,b.heat_layout_sort,b.x_axis,b.y_axis,b.project_no,b.glass_id") + .select("b.process_id,t.glass_type,b.o_width,b.o_height,t.glass_thickness,b.order_sort,b.p_width,b.p_height,b.layer, b.total_layer, b.stock_id,b.heat_layout_id,b.heat_layout_sort,c.x_axis,c.y_axis,b.project_no,b.glass_id,c.rotate_angle") .leftJoin("optimize_detail b on t.project_no=b.project_no") + .leftJoin("optimize_heat_detail c on c.project_no=t.project_no and b.heat_layout_id=c.layout_id and b.heat_layout_sort=c.sort") //.eq("t.state",100) .eq("t.project_no", engineeringId)); } - + //order_sort,o_width,o_height // 鍒涘缓涓�涓� List 鐢ㄤ簬淇濆瓨鏄犲皠鍚庣殑瀹炰綋瀵硅薄 List<GlassInfo> resultList = new ArrayList<>(); - if(optimizeGlassinfos!=null){ + if (optimizeGlassinfos != null) { for (OptimizeGlassinfo map : optimizeGlassinfos) { // 鍒涘缓涓�涓柊鐨� OptimizeGlassinfo 瀵硅薄 GlassInfo glassInfo = new GlassInfo(); @@ -52,9 +58,9 @@ glassInfo.setEngineerId(map.getProjectNo()); glassInfo.setFlowCardId(map.getProcessId()); glassInfo.setFilmsid(map.getGlassType()); - glassInfo.setGlassType(map.getType()); - glassInfo.setWidth(map.getWidth()); - glassInfo.setHeight(map.getHeight()); + glassInfo.setGlassType(map.getOrderSort());//璁㈠崟搴忓彿 + glassInfo.setWidth(map.getOWidth());//璁㈠崟瀹� + glassInfo.setHeight(map.getOHeight());//璁㈠崟楂� glassInfo.setEdgWidth(map.getPWidth()); glassInfo.setLayer(map.getLayer()); glassInfo.setTotalLayer(map.getTotalLayer()); @@ -65,14 +71,14 @@ glassInfo.setTemperingFeedSequence(map.getHeatLayoutSort());//閽㈠寲鐗堝浘椤哄簭 glassInfo.setXCoordinate(map.getXAxis()); glassInfo.setYCoordinate(map.getYAxis()); - + glassInfo.setAngle(map.getRotateAngle()); glassInfo.setGlassId(map.getGlassId()); // 灏嗘槧灏勫悗鐨勫璞℃坊鍔犲埌缁撴灉鍒楄〃涓� resultList.add(glassInfo); } } - log.info("鏌ヨ鍑篻lassinfo鐨勬暟鎹畕}:",resultList); - log.info("鏌ヨ鍑篻lassinfopro鐨勬暟鎹畕}:",optimizeGlassinfos); + log.info("鏌ヨ鍑篻lassinfo鐨勬暟鎹畕}:", resultList); + log.info("鏌ヨ鍑篻lassinfopro鐨勬暟鎹畕}:", optimizeGlassinfos); return resultList; } @@ -80,4 +86,46 @@ public void saveGlassInfo(List<GlassInfo> glassinfo) { this.saveBatch(glassinfo); } + + + @Override + public int getGlassInfoCountByFlowCardId(String flowCardId) { + return baseMapper.selectCount(new QueryWrapper<GlassInfo>().lambda() + .eq(GlassInfo::getFlowCardId, flowCardId)); + } + + + @Override + public List<Map<String, Object>> getFlowCardId() { + // 绗簩涓煡璇細鏌ヨ OptimizeProject 琛紝鏍规嵁 GlassInfo 鐨� engineerId 鍜� state 杩涜绛涢�� + List<OptimizeProject> optimizeProjects = optimizeProjectMapper.selectList( + new QueryWrapper<OptimizeProject>() + .ne("state", 300) + ); + // 鎻愬彇 engineerId 鍒楄〃 + List<String> engineerIds = optimizeProjects.stream() + .map(OptimizeProject::getProjectNo) + .collect(Collectors.toList()); + + // 绗竴涓煡璇細鏌ヨ GlassInfo 琛ㄥ苟鎸� flow_card_id 鍒嗙粍锛屽悓鏃剁瓫閫夊嚭鍦� engineerIds 鍒楄〃涓殑璁板綍 + List<GlassInfo> glassInfos = baseMapper.selectList( + new QueryWrapper<GlassInfo>() + .in("engineer_id", engineerIds) + .groupBy("flow_card_id") + ); + + // 杞崲涓� List<Map<String, Object>> + List<Map<String, Object>> result = glassInfos.stream() + .map(glassInfo -> { + Map<String, Object> map = new HashMap<>(); + map.put("flow_card_id", glassInfo.getFlowCardId()); + // 濡傛灉杩樻湁鍏朵粬瀛楁闇�瑕佹坊鍔犲埌 map 涓紝鍦ㄨ繖閲岀户缁坊鍔� + return map; + }) + .collect(Collectors.toList()); + log.info("result: {}", result); + return result; + } + + } -- Gitblit v1.8.0