From 6abae920ad543ebdc3ee2e386828dd65e4c5ec35 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期三, 06 十一月 2024 23:21:53 +0800 Subject: [PATCH] 1、opc订阅服务同时订阅一个节点两次,仅一个订阅任务生效,将进出片任务/完成任务放在一起 2、移除原片仓储中的下发字段 --- hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++---- 1 files changed, 34 insertions(+), 4 deletions(-) diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java index a7e20e5..746269b 100644 --- a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java +++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.kangaroohy.milo.model.ReadWriteEntity; +import com.kangaroohy.milo.service.MiloService; import com.mes.common.config.Const; import com.mes.rawglassdetails.entity.RawGlassStorageDetails; import com.mes.rawglassdetails.entity.request.RawGlassRequest; @@ -17,6 +19,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -30,6 +33,9 @@ @Autowired RawGlassStorageTaskService rawGlassStorageTaskService; + + @Autowired(required = false) + MiloService miloService; @Override public boolean deleteRawGlassStorageDetails(String device_id) { @@ -63,7 +69,11 @@ } Integer shelf = shelfList.get(0); log.info("鐢熸垚浠诲姟"); - generateTask(shelf, leftingStation, shelf, 0, Const.RAW_GLASS_TASK_TYPE_IN_REQUEST); + try { + generateTask(shelf, leftingStation, shelf, 0, Const.RAW_GLASS_TASK_TYPE_IN_REQUEST); + } catch (Exception e) { + return "fail"; + } //鐢熸垚涓�鏉¤鎯呮暟鎹� 浠呰褰曟灦瀛愮姸鎬� RawGlassStorageDetails details = new RawGlassStorageDetails(); details.setSlot(shelf); @@ -135,7 +145,11 @@ .eq(RawGlassStorageDetails::getSlot, details.getSlot()) .eq(RawGlassStorageDetails::getState, Const.GLASS_STATE_IN) .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_RUNNING)); - generateTask(leftingStation, details.getShelf(), details.getShelf(), details.getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_OUT_REQUEST); + try { + generateTask(leftingStation, details.getShelf(), details.getShelf(), details.getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_OUT_REQUEST); + } catch (Exception e) { + return "fail"; + } return "success"; } @@ -149,7 +163,7 @@ * @return */ @Override - public boolean generateTask(int startSlot, int endSlot, int shelf, int patternQuantity, int taskType) { + public boolean generateTask(int startSlot, int endSlot, int shelf, int patternQuantity, int taskType) throws Exception { RawGlassStorageTask task = RawGlassStorageTask.builder() .startSlot(startSlot) .endSlot(endSlot) @@ -158,6 +172,22 @@ .taskState(Const.RAW_GLASS_TASK_NEW) .shelf(shelf) .createTime(new Date()).build(); - return rawGlassStorageTaskService.save(task); + rawGlassStorageTaskService.save(task); + + + List<ReadWriteEntity> list = new ArrayList<>(); + list.add(generateReadWriteEntity("A01-CC.dev.taskWord", 1)); +// list.add(generateReadWriteEntity("A01-CC.dev.taskSending", 1)); + list.add(generateReadWriteEntity("A01-CC.dev.startSlot", startSlot)); + list.add(generateReadWriteEntity("A01-CC.dev.endSlot", endSlot)); + miloService.writeToOpcWord(list); + return Boolean.TRUE; + } + + private ReadWriteEntity generateReadWriteEntity(String identifier, int value) { + ReadWriteEntity readWriteEntity = new ReadWriteEntity(); + readWriteEntity.setIdentifier(identifier); + readWriteEntity.setValue(value); + return readWriteEntity; } } \ No newline at end of file -- Gitblit v1.8.0