From 6d313a4a6f9f9d7ea65ec50ab0d4491e595edb97 Mon Sep 17 00:00:00 2001 From: admin <15939171744@163.com> Date: 星期二, 15 十月 2024 09:47:26 +0800 Subject: [PATCH] -打印bug修改 --- jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 150 insertions(+), 6 deletions(-) diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java index b33d274..6e78dfb 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java +++ b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java @@ -1,12 +1,19 @@ package com.jcdm.main.bs.formulaChild.controller; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.jcdm.main.bs.formulaChildInfoTemp.domain.BsFormulaChildInfoTemp; +import com.jcdm.main.bs.formulaChildInfoTemp.service.IBsFormulaChildInfoTempService; import com.jcdm.main.constant.Constants; +import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; +import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService; import com.kangaroohy.milo.model.ReadWriteEntity; import com.kangaroohy.milo.service.MiloService; import org.springframework.security.access.prepost.PreAuthorize; @@ -42,20 +49,95 @@ private IBsFormulaChildInfoService bsFormulaChildInfoService; @Autowired + private IOmProductionOrdeInfoService omProductionOrdeInfoService; + + @Autowired private MiloService miloService; + + @Autowired + private IBsFormulaChildInfoTempService bsFormulaChildInfoTempService; + + /** + * 鎵爜纭 + */ + @GetMapping("/inPlaceInspection") + public AjaxResult inPlaceInspection(BsFormulaChildInfo bsFormulaChildInfo) + { + Integer recordDataDone = 0; + try { + Object orderNumberObject = miloService.readFromOpcUa("PACK."+bsFormulaChildInfo.getProcessesCode()+".RecordDataDone").getValue(); + if(ObjectUtil.isNotEmpty(orderNumberObject)){ + if(Integer.valueOf(orderNumberObject.toString()) == 11){ + recordDataDone = 1; + } + } + + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(recordDataDone); + } + + /** + * 鎵爜纭 + */ + @GetMapping("/unfinishedProcess") + public AjaxResult unfinishedProcess(BsFormulaChildInfo bsFormulaChildInfo) + { + try { + String str = "PACK."+bsFormulaChildInfo.getProcessesCode()+".RecordDataDone"; + miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(str).value(bsFormulaChildInfo.getRecordDataDone()).build()); + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); + } + + @GetMapping("/manualNgOffline") + public AjaxResult manualNgOffline(BsFormulaChildInfo bsFormulaChildInfo) + { + Integer stepNumber = 31; + try { + logger.info("鎵嬪姩涓嬬嚎锛屽啓鍏rtificialNgSignal涓猴細{}",stepNumber); + String str = "PACK."+bsFormulaChildInfo.getLocationCode()+".ArtificialNgSignal"; + miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(str).value(stepNumber).build()); + } catch (Exception e) { + throw new RuntimeException(e); + } + OmProductionOrdeInfo one = omProductionOrdeInfoService.getOne(new LambdaQueryWrapper<OmProductionOrdeInfo>() + .eq(OmProductionOrdeInfo::getProductNum, bsFormulaChildInfo.getSfcBarcode()) + ); + one.setArtificialNgFlag("1"); + omProductionOrdeInfoService.saveOrUpdate(one); + return AjaxResult.success(stepNumber); + } /** * 鎵爜纭 */ @GetMapping("/fistSetpNumber") - public void fistSetpNumber(BsFormulaChildInfo bsFormulaChildInfo) + public AjaxResult fistSetpNumber(BsFormulaChildInfo bsFormulaChildInfo) { + Integer stepNumber = 1; try { + List<BsFormulaChildInfo> op260 = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getProcessesCode())); + List<BsFormulaChildInfo> filteredList = op260.stream() + .filter(obj -> obj.getResults() != null && !obj.getResults().isEmpty()) + .collect(Collectors.toList()); + if(filteredList.size() > 0){ + if("1".equals(bsFormulaChildInfo.getArtificialNgFlag())){ + stepNumber = Integer.valueOf(filteredList.get(filteredList.size()-1).getStepSort()); + }else { + stepNumber = Integer.valueOf(filteredList.get(filteredList.size()-1).getStepSort())+1; + } + } + String str = "PACK."+bsFormulaChildInfo.getProcessesCode()+".MStepNumber"; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(str).value(1).build()); + miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(str).value(stepNumber).build()); } catch (Exception e) { throw new RuntimeException(e); } + return AjaxResult.success(stepNumber); } /** @@ -64,20 +146,45 @@ @GetMapping("/noPageListFormulaChild") public TableDataInfo noPageListFormulaChild(BsFormulaChildInfo bsFormulaChildInfo) { + if("1".equals(bsFormulaChildInfo.getArtificialNgFlag())){ + List<BsFormulaChildInfoTemp> tempList = bsFormulaChildInfoTempService.list(new LambdaQueryWrapper<BsFormulaChildInfoTemp>() + .eq(BsFormulaChildInfoTemp::getProcessesCode, bsFormulaChildInfo.getProcessesCode()) + .eq(BsFormulaChildInfoTemp::getProductCode, bsFormulaChildInfo.getProductCode()) + .eq(BsFormulaChildInfoTemp::getSfcCode, bsFormulaChildInfo.getSfcBarcode())); + + List<Long> ids = new ArrayList<>(); + for (int i = 0; i < tempList.size(); i++) { + BsFormulaChildInfoTemp childInfoTemp = tempList.get(i); + LambdaUpdateWrapper <BsFormulaChildInfo> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set( BsFormulaChildInfo::getResults, childInfoTemp.getResults()); + updateWrapper.set( BsFormulaChildInfo::getCollectData, childInfoTemp.getCollectData()); + updateWrapper.eq( BsFormulaChildInfo::getId, childInfoTemp.getChildId()); + bsFormulaChildInfoService.update(new BsFormulaChildInfo(),updateWrapper); + + if(i == tempList.size()-1){ + LambdaUpdateWrapper<OmProductionOrdeInfo> orderInfoUpdateWrapper = new LambdaUpdateWrapper<>(); + orderInfoUpdateWrapper.set(OmProductionOrdeInfo::getArtificialNgFlag, ""); + orderInfoUpdateWrapper.eq(OmProductionOrdeInfo::getProductNum, childInfoTemp.getSfcCode()); + boolean update = omProductionOrdeInfoService.update(new OmProductionOrdeInfo(), orderInfoUpdateWrapper); + } + + ids.add(childInfoTemp.getId()); + } + bsFormulaChildInfoTempService.removeByIds(ids); + } List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>() .eq(BsFormulaChildInfo::getProductCode,bsFormulaChildInfo.getProductCode()) - .eq(BsFormulaChildInfo::getProcessesCode,bsFormulaChildInfo.getProcessesCode())); + .eq(BsFormulaChildInfo::getProcessesCode,bsFormulaChildInfo.getProcessesCode()) + ); if (CollUtil.isNotEmpty(list)){ List<BsFormulaChildInfo> collect1 = list.stream().filter(x -> Constants.OK.equals(x.getResults())).collect(Collectors.toList()); List<BsFormulaChildInfo> collect2 = list.stream().filter(x -> !Constants.OK.equals(x.getResults())).collect(Collectors.toList()); list = collect1; list.addAll(collect2); } + for (BsFormulaChildInfo formulaChildInfo : list) { -// formulaChildInfo.setSort(formulaChildInfo.getStepSort()); -// formulaChildInfo.setAddress(formulaChildInfo.getTechRequirement()); -// formulaChildInfo.setImg(formulaChildInfo.getOperationSteps()); if(formulaChildInfo.getCollectData()!=null&& !"".equals(formulaChildInfo.getCollectData())){ if(formulaChildInfo.getCollectData().contains("[")){ String data = formulaChildInfo.getCollectData(); @@ -87,8 +194,36 @@ } } } + return getDataTable(list); } + +// @GetMapping("/noPageListFormulaChild") +// public TableDataInfo noPageListFormulaChild(BsFormulaChildInfo bsFormulaChildInfo) +// { +// +// List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>() +// .eq(BsFormulaChildInfo::getProductCode,bsFormulaChildInfo.getProductCode()) +// .eq(BsFormulaChildInfo::getProcessesCode,bsFormulaChildInfo.getProcessesCode()) +// ); +// if (CollUtil.isNotEmpty(list)){ +// List<BsFormulaChildInfo> collect1 = list.stream().filter(x -> Constants.OK.equals(x.getResults())).collect(Collectors.toList()); +// List<BsFormulaChildInfo> collect2 = list.stream().filter(x -> !Constants.OK.equals(x.getResults())).collect(Collectors.toList()); +// list = collect1; +// list.addAll(collect2); +// } +// for (BsFormulaChildInfo formulaChildInfo : list) { +// if(formulaChildInfo.getCollectData()!=null&& !"".equals(formulaChildInfo.getCollectData())){ +// if(formulaChildInfo.getCollectData().contains("[")){ +// String data = formulaChildInfo.getCollectData(); +// data = data.replace("[", "").replace("]", "").replace(" ", ""); +// String[] tightenDataParts = data.split(","); +// formulaChildInfo.setCollectData("鎵煩"+tightenDataParts[0]+"瑙掑害"+tightenDataParts[1]+"鎵煩缁撴灉"+tightenDataParts[2]+"瑙掑害缁撴灉"+tightenDataParts[3]); +// } +// } +// } +// return getDataTable(list); +// } /** * 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭垪琛� @@ -164,6 +299,15 @@ /** * 鏀捐璇风┖鐘舵�� */ + @GetMapping("/checkMaterialCode") + public AjaxResult checkMaterialCode(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.checkMaterialCode(bsFormulaChildInfo); + } + + /** + * 鏀捐璇风┖鐘舵�� + */ @GetMapping("/clearWorkpieceRelease") public AjaxResult clearWorkpieceRelease(BsFormulaChildInfo bsFormulaChildInfo) { -- Gitblit v1.9.3