自动化立体仓库 - WMS系统
#
zjj
5 天以前 aa95589f3b49e10a72b2200a865c46b8077a4204
src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -7,6 +7,7 @@
import com.core.exception.CoolException;
import com.zy.asrs.entity.LocMast;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.param.ShuttleMoveTask;
import com.zy.asrs.entity.param.ShuttleOutTask;
import com.zy.asrs.entity.param.ShuttleTask;
import com.zy.asrs.service.WrkMastService;
@@ -110,6 +111,10 @@
    @Scheduled(cron = "0/3 * * * * ? ") //出库库任务下发
    private void ShuttleOutTaskSend(){
        List<WrkMast> wrkMastsMove = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no",7).eq("wrk_sts", 11).eq("io_type",11));
        if (!wrkMastsMove.isEmpty()) {
            return;
        }
        List<WrkMast> wrkMasts1 = wrkMastService.selectList(new EntityWrapper<WrkMast>()
                .in("io_type", 1,10,53,54,57).eq("crn_no",7));
        if (!Cools.isEmpty(wrkMasts1)){
@@ -153,6 +158,48 @@
    }
    @Scheduled(cron = "0/3 * * * * ? ") //移库任务下发
    private void ShuttleMoveTaskSend(){
        List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no",7).eq("wrk_sts", 11).eq("io_type",11));
        if (wrkMasts.isEmpty()) {
            return;
        }
        try {
            for (WrkMast wrkMast : wrkMasts) {
                LocMast destLoc = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo()));
                LocMast originLoc = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()));
                if (originLoc == null || destLoc == null) {
                    throw new CoolException("下发四向车wcs任务失败");
                }
                String originLoc1 = (originLoc.getRow1()-16)+"-"+originLoc.getBay1()+"-"+originLoc.getLev1();
                String destLoc1 = (destLoc.getRow1()-16)+"-"+destLoc.getBay1()+"-"+destLoc.getLev1();
                ShuttleMoveTask param = new ShuttleMoveTask();
                param.setTaskNo(wrkMast.getWrkNo().toString());
                param.setOriginLoc(originLoc1);
                param.setDestLoc(destLoc1);
                param.setRecord(true);
                param.setPriority("21");
                String response = new HttpHandler.Builder()
                        .setUri(shuttleWcsUrl)
                        .setPath("/openapi/createLadenMoveTakeTask")
                        .setJson(JSON.toJSONString(param))
                        .build()
                        .doPost();
                JSONObject jsonObject = JSON.parseObject(response);
                Integer code = jsonObject.getInteger("code");
                if (code.equals(200)) {
                    wrkMast.setWrkSts(105L);
                    if (!wrkMastService.updateById(wrkMast)) {
                        log.error("工作档[workNo={}]标记待处理失败", wrkMast.getWrkNo());
                    }
                }
            }
        }catch (Exception e){
            throw new CoolException("下发四向车wcs任务失败");
        }
    }
}