From d647ee9a9564a769f053d93bd7cf6e95dd8f5b3c Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期四, 19 九月 2024 16:18:13 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/WrkMastService.java | 1 src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java | 10 ++++ src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | 2 + src/main/java/com/zy/asrs/task/WorkMastScheduler.java | 55 +++++++++++++++++++++++++++ src/main/resources/mapper/WrkMastMapper.xml | 6 +++ src/main/java/com/zy/asrs/entity/param/ShuttleTask.java | 12 ++++++ src/main/resources/application.yml | 6 ++- 7 files changed, 89 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zy/asrs/entity/param/ShuttleTask.java b/src/main/java/com/zy/asrs/entity/param/ShuttleTask.java new file mode 100644 index 0000000..b3d29f8 --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/param/ShuttleTask.java @@ -0,0 +1,12 @@ +package com.zy.asrs.entity.param; + +import lombok.Data; + +@Data +public class ShuttleTask { + private String taskNo; + private String destLoc; + private String originSite; + private String barcode; + private String priority; +} diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java index 689f800..b450146 100644 --- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java +++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java @@ -26,4 +26,6 @@ @Insert("insert into asr_wrk_mast_log select * from asr_wrk_mast where wrk_no=#{workNo}") int saveWrkMastLog(Integer workNo); + + List<WrkMast> selectToShuttleTask(); } diff --git a/src/main/java/com/zy/asrs/service/WrkMastService.java b/src/main/java/com/zy/asrs/service/WrkMastService.java index 8e47c79..5939bbb 100644 --- a/src/main/java/com/zy/asrs/service/WrkMastService.java +++ b/src/main/java/com/zy/asrs/service/WrkMastService.java @@ -28,4 +28,5 @@ int saveWrkMastLog(Integer wrkNo); + List<WrkMast> selectToShuttleTask(); } diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java index c904260..0b62f52 100644 --- a/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java @@ -9,6 +9,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.util.Collections; import java.util.List; @Slf4j @@ -58,5 +59,12 @@ @Override public int saveWrkMastLog(Integer workNo){ return this.baseMapper.saveWrkMastLog(workNo); - }; + } + + @Override + public List<WrkMast> selectToShuttleTask() { + return this.baseMapper.selectToShuttleTask(); + } + + ; } diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java index 10bffd4..fa0c656 100644 --- a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java +++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java @@ -1,12 +1,21 @@ package com.zy.asrs.task; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.exception.CoolException; +import com.zy.asrs.entity.LocMast; import com.zy.asrs.entity.WrkMast; +import com.zy.asrs.entity.param.ShuttleTask; import com.zy.asrs.service.WrkMastService; +import com.zy.asrs.service.impl.LocMastServiceImpl; import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.WorkMastHandler; +import com.zy.common.utils.HttpHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -26,6 +35,12 @@ @Autowired private WorkMastHandler workMastHandler; + @Value("${shuttleWcs.url}") + private String shuttleWcsUrl; + @Autowired + private LocMastServiceImpl locMastService; + + @Scheduled(cron = "0/3 * * * * ? ") private void execute(){ List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData(); @@ -45,4 +60,44 @@ } } +// @Scheduled(cron = "0/3 * * * * ? ") + private void ShuttleTaskSend(){ + List<WrkMast> wrkMasts = wrkMastService.selectToShuttleTask(); + if (wrkMasts.isEmpty()) { + return; + } + try { + for (WrkMast wrkMast : wrkMasts) { + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo())); + if (locMast == null) { + throw new CoolException("涓嬪彂鍥涘悜杞cs浠诲姟澶辫触"); + } + String loc = (locMast.getRow1()-16)+"-"+locMast.getBay1()+"-"+locMast.getLev1(); + ShuttleTask param = new ShuttleTask(); + param.setTaskNo(wrkMast.getWrkNo().toString()); + param.setDestLoc(loc); + param.setOriginSite("31002"); + param.setBarcode(wrkMast.getBarcode()); + param.setPriority("11"); + String response = new HttpHandler.Builder() + .setUri(shuttleWcsUrl) + .setPath("/openapi/createInTask") + .setJson(JSON.toJSONString(param)) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + Integer code = jsonObject.getInteger("code"); + if (code.equals(200)) { + wrkMast.setWrkSts(1L); + if (!wrkMastService.updateById(wrkMast)) { + log.error("宸ヤ綔妗workNo={}]鏍囪寰呭鐞嗗け璐�", wrkMast.getWrkNo()); + } + } + } + }catch (Exception e){ + throw new CoolException("涓嬪彂鍥涘悜杞cs浠诲姟澶辫触"); + } + + } + } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 38e5783..c88d683 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,5 +1,5 @@ server: - port: 8080 + port: 58080 servlet: context-path: /@pom.build.finalName@ @@ -103,4 +103,6 @@ agv: url: "" - taskCreatePath: "" \ No newline at end of file + taskCreatePath: "" +shuttleWcs: + url: "127.0.0.1:9090/wcs" \ No newline at end of file diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml index e49e71f..a5b4e97 100644 --- a/src/main/resources/mapper/WrkMastMapper.xml +++ b/src/main/resources/mapper/WrkMastMapper.xml @@ -99,5 +99,11 @@ </otherwise> </choose> </select> + <select id="selectToShuttleTask" resultMap="BaseResultMap"> + select * from asr_wrk_mast + where wrk_sts=2 + and crn_no = 7 + order by io_time,wrk_no asc + </select> </mapper> -- Gitblit v1.9.1