From d5d0d1c7a84b996b9bbcebfaf2c2c95f1a5a3678 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期五, 11 十月 2024 08:39:15 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java | 67 ++++++++++++++++++++++----------- 1 files changed, 45 insertions(+), 22 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java index 12a75ab..8ab87a9 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java @@ -317,21 +317,23 @@ //鐜荤拑鍒伴綈鍖呮嫭宸插嚭鐗囩殑 //鍒伴綈锛屽皢鐜荤拑灏忕墖鏁版嵁瀛樺叆閽㈠寲灏忕墖琛紝閫昏緫鐢熸垚鍑虹墖浠诲姟 缁撴潫 for (TemperingLayoutDTO item : temperingLayoutDTOList) { - List<TemperingGlassInfo> temperingGlassInfos = glassInfoService.selectJoinList(TemperingGlassInfo.class, JoinWrappers.lambda(GlassInfo.class) - .selectAll(GlassInfo.class) - .select("-1 as state") - .selectAs(BigStorageCageDetails::getSlot, TemperingGlassInfo::getSlot) - .innerJoin(BigStorageCageDetails.class, BigStorageCageDetails::getGlassId, GlassInfo::getGlassId) - .eq(BigStorageCageDetails::getState, Const.GLASS_STATE_IN) - .eq(GlassInfo::getTemperingLayoutId, item.getTemperingLayoutId()) - .eq(GlassInfo::getEngineerId, item.getEngineerId()) - .orderBy(Boolean.TRUE, sequenceOrder, GlassInfo::getTemperingFeedSequence)); - if (CollectionUtils.isNotEmpty(temperingGlassInfos)) { - temperingGlassInfoService.saveBatch(temperingGlassInfos); - computeOutMoreGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress); - Date endDate = new Date(); - log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime()); - return; + if (redisUtil.getCacheObject("temperingengineerId").equals(item.getEngineerId())) { + List<TemperingGlassInfo> temperingGlassInfos = glassInfoService.selectJoinList(TemperingGlassInfo.class, JoinWrappers.lambda(GlassInfo.class) + .selectAll(GlassInfo.class) + .select("-1 as state") + .selectAs(BigStorageCageDetails::getSlot, TemperingGlassInfo::getSlot) + .innerJoin(BigStorageCageDetails.class, BigStorageCageDetails::getGlassId, GlassInfo::getGlassId) + .eq(BigStorageCageDetails::getState, Const.GLASS_STATE_IN) + .eq(GlassInfo::getTemperingLayoutId, item.getTemperingLayoutId()) + .eq(GlassInfo::getEngineerId, item.getEngineerId()) + .orderBy(Boolean.TRUE, sequenceOrder, GlassInfo::getTemperingFeedSequence)); + if (CollectionUtils.isNotEmpty(temperingGlassInfos)) { + temperingGlassInfoService.saveBatch(temperingGlassInfos); + computeOutMoreGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress); + Date endDate = new Date(); + log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime()); + return; + } } } } @@ -356,7 +358,7 @@ int serialNumber = 1; for (BigStorageCageDetails item : list) { outTasks.add(new BigStorageCageOutTask(item.getGlassId(), first.getSlot(), second.getSlot(), - item.getWidth() * 10, item.getHeight() * 10, 1, serialNumber++, Const.BIG_STORAGE_OUT_NEW)); + item.getWidth() * 10, item.getHeight() * 10, 1, serialNumber++, Const.BIG_STORAGE_OUT_NEW, new Date())); } //鏂板璋冨害浠诲姟 bigStorageCageOutTaskService.saveBatch(outTasks); @@ -435,6 +437,16 @@ List<BigStorageCageOutTask> outSuccessGlass = bigStorageCageOutTaskService.list(new LambdaQueryWrapper<BigStorageCageOutTask>() .in(BigStorageCageOutTask::getGlassId, glassIds).in(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_OUT_ALL)); if (CollectionUtils.isNotEmpty(outSuccessGlass)) { + for (BigStorageCageOutTask bigStorageCageOutTask:outSuccessGlass + ) { + if(bigStorageCageOutTask.getEndSlot().equals(Const.ARTIFICIAL_OUT_TARGET_POSITION)){ + temperingGlassInfoService.update( + new LambdaUpdateWrapper<TemperingGlassInfo>() + .set(TemperingGlassInfo::getState,Const.TEMPERING_END) + .eq(TemperingGlassInfo::getGlassId,bigStorageCageOutTask.getGlassId()) + ); + } + } log.info("3銆佽幏鍙栧嚭鐗囧凡瀹屾垚鐨勭幓鐠冧俊鎭痠d:{}", outSuccessGlass); List<UpdateBigStorageCageDTO> storageCageDTOList = outSuccessGlass.stream().map(e -> { UpdateBigStorageCageDTO storageCageDTO = new UpdateBigStorageCageDTO(); @@ -664,6 +676,13 @@ bigStorageCageFeedTask.setCreateTime(new Date()); //鍒犻櫎鐞嗙墖绗艰〃鎷胯蛋/鐮存崯鏁版嵁鏁版嵁 damageService.deleteByGlassId(glassId); + Damage damage = new Damage(); + damage.setGlassId(glassId); + damage.setWorkingProcedure("纾ㄨ竟"); + damage.setLine(line); + damage.setType(1); + damage.setRemark("杩涘ぇ鐞嗙墖"); + damageService.insertDamage(damage); return bigStorageCageFeedTaskService.save(bigStorageCageFeedTask); } @@ -787,7 +806,7 @@ int minLength = Math.min((int) e.getWidth(), (int) e.getHeight()); if (maxX + minLength <= xMaxSize) { bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION, - e.getWidth() * 10, e.getHeight() * 10, 0, 0, 1)); + e.getWidth() * 10, e.getHeight() * 10, 0, 0, 1, new Date())); maxX = Math.max(maxX, e.getXCoordinate()); } else { break; @@ -795,7 +814,7 @@ } else { bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.ARTIFICIAL_OUT_TARGET_POSITION, - e.getWidth() * 10, e.getHeight(), 0, 0, 1)); + e.getWidth() * 10, e.getHeight(), 0, 0, 1, new Date())); } } Assert.isFalse(CollectionUtils.isEmpty(bigStorageCageOutTaskList), "鏈幏鍙栧嚭鐗囨暟鎹紝缁撴潫鍑虹墖浠诲姟"); @@ -846,7 +865,7 @@ int minLength = Math.min((int) e.getWidth(), (int) e.getHeight()); if (maxX + minLength <= xMaxSize) { bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION, - e.getWidth() * 10, e.getHeight() * 10, trainNumber, serialNumber++, 1)); + e.getWidth() * 10, e.getHeight() * 10, trainNumber, serialNumber++, 1, new Date())); maxX = Math.max(maxX, e.getXCoordinate()); } else { remainWidth = carWidth - maxLength - glassGap; @@ -854,16 +873,20 @@ serialNumber = 1; maxX = e.getXCoordinate(); bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION, - e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1)); + e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1, new Date())); } } else { bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.ARTIFICIAL_OUT_TARGET_POSITION, - e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1)); + e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1, new Date())); } } Assert.isFalse(CollectionUtils.isEmpty(bigStorageCageOutTaskList), "鏈幏鍙栧嚭鐗囨暟鎹紝缁撴潫鍑虹墖浠诲姟"); log.info("鑾峰彇鍑虹墖浠诲姟鏁版嵁{}鏉★紝鎵ц淇濆瓨", bigStorageCageOutTaskList.size()); - bigStorageCageOutTaskService.saveBatch(bigStorageCageOutTaskList); + for (BigStorageCageOutTask bigStorageCageOutTask : bigStorageCageOutTaskList + ) { + bigStorageCageOutTaskService.save(bigStorageCageOutTask); + } +// bigStorageCageOutTaskService.saveBatch(bigStorageCageOutTaskList); List<String> glassIds = bigStorageCageOutTaskList.stream().map(BigStorageCageOutTask::getGlassId).collect(Collectors.toList()); log.info("灏嗗嚭鐗囩幓鐠儃}鐜荤拑鐘舵�佹敼涓哄凡鍑虹墖", glassIds); bigStorageCageDetailsService.update(new LambdaUpdateWrapper<BigStorageCageDetails>() -- Gitblit v1.8.0