From cfd9f0b05e4e9b46c4d72ec5cefd3c04648648ea Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期一, 02 九月 2024 08:11:23 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java | 129 +++++++++++++++++++++++++++++++++++++------ 1 files changed, 111 insertions(+), 18 deletions(-) diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java index 6ec9b41..f6b9c71 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java @@ -1,7 +1,6 @@ package com.mes.downglassinfo.service.impl; import cn.smallbun.screw.core.util.CollectionUtils; -import cn.smallbun.screw.core.util.CollectionUtils; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -22,15 +21,19 @@ import com.mes.glassinfo.entity.GlassInfo; import com.mes.job.DownLoadCacheGlassTask; import com.mes.pp.service.FlowCardService; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; -import java.util.HashMap;import java.util.Map; +import java.util.Map; import java.util.stream.Collectors; +@Slf4j @Service public class DownGlassInfoServiceImpl extends ServiceImpl<DownGlassInfoMapper, DownGlassInfo> implements DownGlassInfoService { @@ -105,6 +108,7 @@ BeanUtils.copyProperties(details, downGlassInfo); //鑾峰彇褰撳墠娴佺▼鍗℃渶澶х墖搴� downGlassInfo.setSequence(this.getMaxSequenceByFlowCardId(details.getFlowCardId(), details.getLayer()) + 1); + downGlassInfo.setWorkStationId(Const.G13_WORK_STATION); this.save(downGlassInfo); //鐢熸垚浠诲姟淇℃伅 骞跺悜plc鍙戦�佸嚭鐗囦换鍔� GlassInfo glassInfo = new GlassInfo(); @@ -121,6 +125,7 @@ } return "success"; } + @Override public List<DownWorkstation> queryWorkStationIsFull() { //鏌ヨ鍙互钀芥灦鐨勭幓鐠冧俊鎭笖宸茬粦瀹氭祦绋嬪崱鐨勫伐浣嶄俊鎭� @@ -144,40 +149,66 @@ } } return workstationFull; - }@Override - public List<Map<String, List<Map<String, Object>>>> downGlassPrint(DownGlassInfo downGlassInfo){ + } + + @Override + public List<Map<String, List<Map<String, Object>>>> downGlassPrint(DownGlassInfo downGlassInfo) { + log.info("鎵撳嵃鍙傛暟:{}", downGlassInfo); QueryWrapper<DownGlassInfo> queryWrapper = Wrappers.query(); - queryWrapper.eq("flow_card_id", "NG24080012A001") - .eq("layer", 1) - .select("flow_card_id", "layer", "width", "height", "filmsid", "thickness","glass_type","COUNT(*) AS quantity") - .groupBy("flow_card_id", "layer", "width", "height", "filmsid", "thickness"); + queryWrapper.eq("flow_card_id", downGlassInfo.getFlowCardId()) + .eq("layer", downGlassInfo.getLayer()) + .select("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "COUNT(*) AS quantity") + .groupBy("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "id") + .orderByAsc("id"); List<Map<String, Object>> resultList = baseMapper.selectMaps(queryWrapper); + log.info("MES钀芥灦鏁版嵁:{}", resultList); - List<Map<String, Object>> projectInfo=flowCardService.selectProject(downGlassInfo.getFlowCardId(),downGlassInfo.getLayer()); - List<Map<String, Object>> flowCardInfo=flowCardService.selectFlowCard(downGlassInfo.getFlowCardId(),downGlassInfo.getLayer()); - + List<Map<String, Object>> projectInfo = flowCardService.selectProject(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer()); + log.info("娴佺▼鍗″ご閮ㄦ暟鎹�:{}", projectInfo); + List<Map<String, Object>> flowCardInfo = flowCardService.selectFlowCard(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer()); + log.info("娴佺▼鍗$幓鐠冩暟鎹�:{}", flowCardInfo); for (Map<String, Object> row : flowCardInfo) { int order_number = (int) row.get("order_number"); int technology_number = (int) row.get("technology_number"); - + int quantity1 = 0; for (Map<String, Object> row1 : resultList) { int glass_type = (int) row1.get("glass_type"); int layer = (int) row1.get("layer"); - Long quantity=(Long) row1.get("quantity"); - - if(order_number==glass_type&&technology_number==layer){ - row.put("quantity1",quantity); +// String child_width = (String) row1.get("child_width"); +// Long quantity = (Long) row1.get("quantity"); +// BigDecimal total_area = (BigDecimal) row1.get("total_area"); +// String separation = (String) row1.get("separation"); +// String perimeter = (String) row1.get("perimeter"); +// BigDecimal width = (BigDecimal) row1.get("width"); +// String other_columns = (String) row1.get("other_columns"); +// String remarks = (String) row1.get("remarks"); +// BigDecimal height = (BigDecimal) row1.get("height"); + if (order_number == glass_type && technology_number == layer) { + quantity1+=1; +// row.put("quantity", quantity); +// row.put("order_number", order_number); +// row.put("technology_number", technology_number); +// row.put("child_width", child_width); +// row.put("total_area", total_area); +// row.put("separation", separation); +// row.put("perimeter", perimeter); +// row.put("width", width); +// row.put("other_columns", other_columns); +// row.put("remarks", remarks); +// row.put("height", height); } } + row.put("quantity1", quantity1); } - List<Map<String, List<Map<String, Object>>>> listMap=new ArrayList<>(); + log.info("娴佺▼鍗$幓鐠冩暟鎹�2:{}", flowCardInfo); + List<Map<String, List<Map<String, Object>>>> listMap = new ArrayList<>(); Map<String, List<Map<String, Object>>> result = new HashMap<>(); result.put("detail", projectInfo); result.put("detailList", flowCardInfo); for (Map<String, Object> row : projectInfo) { String order_number = (String) row.get("process"); - String[] processes=order_number.split("->"); + String[] processes = order_number.split("->"); List<Map<String, Object>> processList = new ArrayList<>(); for (int i = 0; i < processes.length; i++) { Map<String, Object> processMap = new JSONObject(); @@ -190,4 +221,66 @@ listMap.add(result); return listMap; } + + + @Override + public List<Map<String, Object>> downGlassLabelPrint(DownGlassInfo downGlassInfo) { + //鑾峰彇涓嬬墖鐜荤拑鐨勯『搴� +// QueryWrapper<DownGlassInfo> queryWrapper = Wrappers.query(); +// queryWrapper +// .eq("flow_card_id", downGlassInfo.getFlowCardId()) +// .eq("layer", downGlassInfo.getLayer()) +// .select("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "COUNT(*) AS quantity") +// .groupBy("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "id") +// .orderByAsc("id"); +// List<Map<String, Object>> resultList = baseMapper.selectMaps(queryWrapper); + List<Map<String, Object>> resultList = baseMapper.downGlassLabelPrint(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer()); + log.info("MES钀芥灦鏁版嵁:{}", resultList); + //鑾峰彇ERP鏍囩鎵�闇�鐨勪俊鎭� + List<Map<String, Object>> labelInfo = flowCardService.selectLabel(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer()); + log.info("鏍囩鏁版嵁:{}", labelInfo); + + for (Map<String, Object> row : resultList) { + int glass_type = (int) row.get("glass_type"); + int layer = (int) row.get("layer"); + for (Map<String, Object> row1 : labelInfo) { + int orderNumber = (int) row1.get("orderNumber"); + int technologyNumber = (int) row1.get("technologyNumber"); + if (orderNumber == glass_type && technologyNumber == layer) { + + String order_id = (String) row1.get("order_id"); + String project = (String) row1.get("project"); + Long customer_id = (Long) row1.get("customer_id"); + BigDecimal width = (BigDecimal) row1.get("width"); + BigDecimal height = (BigDecimal) row1.get("height"); + Long quantity = (Long) row1.get("quantity"); + String glass_child = (String) row1.get("glass_child"); + String process = (String) row1.get("process"); + String customer_name = (String) row1.get("customer_name"); + String processing_note = (String) row1.get("processing_note"); + String other_colunmns = (String) row1.get("other_colunmns"); + String building_number = (String) row1.get("building_number"); + String bend_radius = (String) row1.get("bend_radius"); + + row.put("orderNumber", orderNumber); + row.put("technology_number", technologyNumber); + row.put("order_id", order_id); + row.put("project", project); + row.put("customer_id", customer_id); + row.put("width", width); + row.put("height", height); + row.put("quantity", quantity); + row.put("glass_child", glass_child); + row.put("process", process); + row.put("customer_name", customer_name); + row.put("processing_note", processing_note); + row.put("other_colunmns", other_colunmns); + row.put("building_number", building_number); + row.put("bend_radius", bend_radius); + } + } + } + return resultList; + } + } -- Gitblit v1.8.0