From 9ac149efc825b9237d5e483d63dd15604f0bc30b Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期二, 01 四月 2025 17:01:32 +0800 Subject: [PATCH] 1、切割识别界面提供原片尺寸。 2、fixbug:当工程下的版图切割完毕后,界面显示工程号+最大版序+1bug 3、系统参数配置:新增系统参数配置,存入redis,方便后续各个模块调用。后续工作:将各个模块的配置参数由配置文件调整为数据库记录。 --- hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java | 36 +++++++++++++++++++++++++++++------- 1 files changed, 29 insertions(+), 7 deletions(-) diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java index 6782761..a18183a 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java @@ -10,6 +10,8 @@ import com.mes.opctask.entity.LoadGlassDeviceTaskHistory; import com.mes.opctask.service.LoadGlassDeviceTaskHistoryService; import com.mes.opctask.service.LoadGlassDeviceTaskService; +import com.mes.pp.entity.OptimizeProject; +import com.mes.pp.service.OptimizeProjectService; import com.mes.rawglassdetails.entity.RawGlassStorageDetails; import com.mes.rawglassdetails.service.RawGlassStorageDetailsService; import com.mes.uppattenusage.entity.UpPattenUsage; @@ -48,6 +50,8 @@ private LoadGlassDeviceTaskHistoryService loadGlassDeviceTaskHistoryService; @Resource private UpPattenUsageMapper upPattenUsageMapper; + @Resource + private OptimizeProjectService optimizeProjectService; private static final List<Integer> LOAD_STATION_01 = Arrays.asList(101, 102); private static final List<Integer> LOAD_STATION_02 = Arrays.asList(103, 104); @@ -59,31 +63,49 @@ private static final String LOAD_GLASS_DEVICE_TWO_TASK = "load_glass_device_two_task"; - //璁惧id 涓婄墖浣嶄俊鎭� 浠诲姟琛ㄤ笉涓�鑷� 鍘嗗彶浠诲姟琛ㄥ叕鐢ㄤ竴寮� 鏂板浠诲姟/浠诲姟缁撴潫锛屽悗浼氬湪鍘嗗彶琛ㄤ腑鏂板涓�鏉¤褰曞苟鍦ㄧ粨鏉熷悗鏇存柊浠诲姟 涓�涓换鍔″嵆鍙� //瀹氭椂浠诲姟鎵弿涓婄墖浣嶆湁娌℃湁鍘熺墖 //1銆佹槸鍚︽湁鍦ㄦ墽琛岀殑浠诲姟 //2銆�1鍙蜂笂鐗囦綅鏄惁鏈夊師鐗囷紝鍘熺墖灏哄鏄惁鍜屼笂鐗囧緟涓婄墖鐨勫昂瀵镐竴鑷� //3銆�1鍙锋棤鍘熺墖锛屼笖娌℃湁鏋跺瓙锛�2鍙蜂笂鐗囦綅灏哄鏄惁鍜屽甫涓婄墖灏哄涓�鑷� //4銆佷笉涓�鑷村彲鑳藉嚭鐜扮幓鐠冪牬鎹熷鑷寸殑涓婁竴鏋跺師鐗囨暟閲忎笉澶� - @Scheduled(fixedDelay = 300) + @Scheduled(fixedDelay = 5000) public void opcLoadGlassOne() { opcLoadGlassChild(LOAD_GLASS_DEVICE_ONE_TASK, LOAD_GLASS_ONE_DEVICE); } - @Scheduled(fixedDelay = 300) + @Scheduled(fixedDelay = 5000) public void opcLoadGlassTwo() { opcLoadGlassChild(LOAD_GLASS_DEVICE_TWO_TASK, LOAD_GLASS_TWO_DEVICE); } - @Scheduled(fixedDelay = 300) + @Scheduled(fixedDelay = 5000) public void opcLoadGlassOneFinish() { opcLoadGlassFinishChid(LOAD_GLASS_DEVICE_ONE_TASK, LOAD_GLASS_ONE_DEVICE); } - @Scheduled(fixedDelay = 300) + @Scheduled(fixedDelay = 5000) public void opcLoadGlassTwoFinish() { opcLoadGlassFinishChid(LOAD_GLASS_DEVICE_TWO_TASK, LOAD_GLASS_TWO_DEVICE); + } + + /** + * 瀹氭椂浠诲姟鎵爜宸插畬鎴愪笂鐗囩殑宸ョ▼锛屽皢宸ョ▼鐘舵�佹敼涓哄凡瀹屾垚锛屽悓姝p琛ㄧ殑宸ョ▼琛紝鐘舵�佹敼涓�300 + */ + @Scheduled(fixedDelay = 5000) + public void updateEngineerState() { + log.info("淇敼宸插畬鎴愬伐绋嬬姸鎬佷换鍔″紑濮嬫墽琛�"); + List<Engineering> engineerings = engineeringMapper.selectList(new LambdaQueryWrapper<Engineering>().eq(Engineering::getState, Const.ENGINEERING_RUNNING)); + for (Engineering engineering : engineerings) { + Integer count = upPattenUsageMapper.selectCount(new LambdaQueryWrapper<UpPattenUsage>() + .eq(UpPattenUsage::getEngineeringId, engineering.getEngineerId()).ne(UpPattenUsage::getState, Const.LOAD_RAW_GLASS_SUCCESS)); + if (count == 0) { + engineeringMapper.update(null, new LambdaUpdateWrapper<Engineering>().set(Engineering::getState, Const.ENGINEERING_SUCCESS) + .eq(Engineering::getEngineerId, engineering.getEngineerId())); + optimizeProjectService.update(null, new LambdaUpdateWrapper<OptimizeProject>().set(OptimizeProject::getState, 300) + .eq(OptimizeProject::getProjectNo, engineering.getEngineerId())); + } + } } private void opcLoadGlassChild(String tableName, Integer deviceId) { @@ -118,7 +140,7 @@ List<Integer> loadStation = LOAD_GLASS_DEVICE_ONE_TASK.equals(tableName) ? LOAD_STATION_01 : LOAD_STATION_02; List<RawGlassStorageDetails> loadStationList = rawGlassStorageDetailsService.list(new LambdaQueryWrapper<RawGlassStorageDetails>() .inSql(RawGlassStorageDetails::getSlot, "select slot from raw_glass_storage_station where enable_state = 1") - .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN) + .in(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN_ALL) .eq(RawGlassStorageDetails::getDeviceId, deviceId)); if (CollectionUtils.isEmpty(loadStationList)) { log.info("褰撳墠涓婄墖绾胯矾涓や釜涓婄墖浣嶉兘娌℃湁鍘熺墖淇℃伅锛岀粨鏉熸湰娆′笂鐗囦换鍔★紝绛夊緟浠撳偍璋冨害浠诲姟"); @@ -187,7 +209,7 @@ .in(UpPattenUsage::getId, ids) .set(UpPattenUsage::getState, Const.LOAD_RAW_GLASS_SUCCESS)); } - //todo:浠诲姟琛ㄦ暟鎹儏鍐� + //浠诲姟琛ㄦ暟鎹儏鍐� task.setTaskRunning(0); task.setTotalCount(0); task.setRawGlassWidth(0); -- Gitblit v1.8.0