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 | 280 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 271 insertions(+), 9 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 7842101..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,7 +1,21 @@ 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; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -34,6 +48,183 @@ @Autowired 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 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(stepNumber).build()); + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(stepNumber); + } + + /** + * 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭垪琛� + */ + @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()) + ); + 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); + } + +// @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); +// } + /** * 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭垪琛� */ @@ -47,19 +238,27 @@ 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(); + data = data.replace("[", "").replace("]", "").replace(" ", ""); + String[] tightenDataParts = data.split(","); + formulaChildInfo.setCollectData("鎵煩"+tightenDataParts[0]+"瑙掑害"+tightenDataParts[1]+"鎵煩缁撴灉"+tightenDataParts[2]+"瑙掑害缁撴灉"+tightenDataParts[3]); + } + } } return getDataTable(list); } - /** - * 妫�鏌ユ槸鍚﹀彲浠ユ斁琛� - */ - @GetMapping("/releaseCheck") - public AjaxResult releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) - { - List<BsFormulaChildInfo> i = bsFormulaChildInfoService.releaseCheck(bsFormulaChildInfo); - return AjaxResult.success(i.size()); - } +// /** +// * 妫�鏌ユ槸鍚﹀彲浠ユ斁琛� +// */ +// @GetMapping("/releaseCheck") +// public AjaxResult releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) +// { +// List<BsFormulaChildInfo> i = bsFormulaChildInfoService.releaseCheck(bsFormulaChildInfo); +// return AjaxResult.success(i.size()); +// } /** * 鎵爜纭 @@ -71,6 +270,24 @@ } /** + * 鎵爜纭 + */ + @GetMapping("/jrmUpdateResults") + public AjaxResult jrmUpdateResults(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.jrmUpdateResults(bsFormulaChildInfo); + } + + /** + * 鎵爜纭 + */ + @GetMapping("/yzUpdateResults") + public AjaxResult yzUpdateResults(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.yzUpdateResults(bsFormulaChildInfo); + } + + /** * 鏀捐璇风┖鐘舵�� */ @GetMapping("/workpieceRelease") @@ -80,6 +297,51 @@ } /** + * 鏀捐璇风┖鐘舵�� + */ + @GetMapping("/checkMaterialCode") + public AjaxResult checkMaterialCode(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.checkMaterialCode(bsFormulaChildInfo); + } + + /** + * 鏀捐璇风┖鐘舵�� + */ + @GetMapping("/clearWorkpieceRelease") + public AjaxResult clearWorkpieceRelease(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.clearWorkpieceRelease(bsFormulaChildInfo); + } + + /** + * 鏀捐璇风┖鐘舵�� + */ + @GetMapping("/jrmWorkpieceRelease") + public AjaxResult jrmWorkpieceRelease(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.jrmWorkpieceRelease(bsFormulaChildInfo); + } + + /** + * 鎷х揣鍚庢洿鏂板搴旀暟鎹� + */ + @GetMapping("/updateTighteningFormula") + public AjaxResult updateTighteningFormula(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.updateTighteningFormula(bsFormulaChildInfo); + } + + /** + * 鎷х揣鍚庢洿鏂板搴旀暟鎹� + */ + @GetMapping("/yzUpdateTighteningFormula") + public AjaxResult yzUpdateTighteningFormula(BsFormulaChildInfo bsFormulaChildInfo) + { + return bsFormulaChildInfoService.yzUpdateTighteningFormula(bsFormulaChildInfo); + } + + /** * 瀵煎嚭閰嶆柟閰嶇疆瀛愪俊鎭垪琛� */ @PreAuthorize("@ss.hasPermi('bs:formulaChild:export')") -- Gitblit v1.9.3