| | |
| | | import com.core.common.R; |
| | | import com.zy.asrs.domain.param.*; |
| | | import com.zy.asrs.entity.ApiLog; |
| | | import com.zy.asrs.entity.DeviceConfig; |
| | | import com.zy.asrs.entity.LocMast; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.service.ApiLogService; |
| | | import com.zy.asrs.service.DeviceConfigService; |
| | | import com.zy.asrs.service.LocMastService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.asrs.utils.NotifyUtils; |
| | | import com.zy.common.annotations.OpenApiLog; |
| | | import com.zy.common.service.CommonService; |
| | | import com.zy.core.cache.SlaveConnection; |
| | | import com.zy.core.enums.SlaveType; |
| | | import com.zy.core.enums.WrkIoType; |
| | | import com.zy.core.model.protocol.CrnProtocol; |
| | | import com.zy.core.model.protocol.RgvProtocol; |
| | | import com.zy.core.thread.CrnThread; |
| | | import com.zy.core.thread.RgvThread; |
| | | import com.zy.system.entity.Config; |
| | | import com.zy.system.service.ConfigService; |
| | | |
| | |
| | | private WrkMastService wrkMastService; |
| | | @Autowired |
| | | private ConfigService configService; |
| | | @Autowired |
| | | private DeviceConfigService deviceConfigService; |
| | | |
| | | //ç§»åºä»»å¡ |
| | | @PostMapping("/createLocMoveTask") |
| | |
| | | // @OpenApiLog(memo = "è·å设å¤ç¶æ") |
| | | public R getDeviceStatus() { |
| | | HashMap<String, Object> map = new HashMap<>(); |
| | | // //è·åå°è½¦æ°æ® |
| | | // ArrayList<ShuttleProtocol> shuttleProtocols = new ArrayList<>(); |
| | | // List<DeviceConfig> shuttleList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() |
| | | // .eq("device_type", String.valueOf(SlaveType.Shuttle))); |
| | | // for (DeviceConfig device : shuttleList) { |
| | | // ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, device.getDeviceNo()); |
| | | // if (shuttleThread == null) { |
| | | // continue; |
| | | // } |
| | | // |
| | | // ShuttleProtocol shuttleProtocol = shuttleThread.getStatus(); |
| | | // if (shuttleProtocol == null) { |
| | | // continue; |
| | | // } |
| | | // shuttleProtocols.add(shuttleProtocol); |
| | | // } |
| | | // |
| | | // //è·åè´§åæåæºæ°æ® |
| | | // ArrayList<ForkLiftProtocol> forkLiftProtocols = new ArrayList<>(); |
| | | // List<DeviceConfig> forkLiftList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() |
| | | // .eq("device_type", String.valueOf(SlaveType.ForkLift))); |
| | | // for (DeviceConfig device : forkLiftList) { |
| | | // ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, device.getDeviceNo()); |
| | | // if (forkLiftThread == null) { |
| | | // continue; |
| | | // } |
| | | // |
| | | // ForkLiftProtocol forkLiftProtocol = forkLiftThread.getStatus(); |
| | | // if (forkLiftProtocol == null) { |
| | | // continue; |
| | | // } |
| | | // forkLiftProtocols.add(forkLiftProtocol); |
| | | // } |
| | | // |
| | | // //è·åæåæºæ°æ® |
| | | // ArrayList<LiftProtocol> liftProtocols = new ArrayList<>(); |
| | | // List<DeviceConfig> liftList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() |
| | | // .eq("device_type", String.valueOf(SlaveType.Lift))); |
| | | // for (DeviceConfig device : liftList) { |
| | | // LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, device.getDeviceNo()); |
| | | // if (liftThread == null) { |
| | | // continue; |
| | | // } |
| | | // |
| | | // LiftProtocol liftProtocol = liftThread.getStatus(); |
| | | // if (liftProtocol == null) { |
| | | // continue; |
| | | // } |
| | | // liftProtocols.add(liftProtocol); |
| | | // } |
| | | // |
| | | // map.put("shuttle", shuttleProtocols); |
| | | // map.put("forkLift", forkLiftProtocols); |
| | | // map.put("lift", liftProtocols); |
| | | //è·åå åæºæ°æ® |
| | | ArrayList<CrnProtocol> crnProtocols = new ArrayList<>(); |
| | | List<DeviceConfig> crnList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() |
| | | .eq("device_type", String.valueOf(SlaveType.Crn))); |
| | | for (DeviceConfig device : crnList) { |
| | | CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, device.getDeviceNo()); |
| | | if (crnThread == null) { |
| | | continue; |
| | | } |
| | | |
| | | CrnProtocol crnProtocol = crnThread.getStatus(); |
| | | if (crnProtocol == null) { |
| | | continue; |
| | | } |
| | | crnProtocols.add(crnProtocol); |
| | | } |
| | | |
| | | //è·åRGVæ°æ® |
| | | ArrayList<RgvProtocol> rgvProtocols = new ArrayList<>(); |
| | | List<DeviceConfig> rgvList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() |
| | | .eq("device_type", String.valueOf(SlaveType.Rgv))); |
| | | for (DeviceConfig device : rgvList) { |
| | | RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, device.getDeviceNo()); |
| | | if (rgvThread == null) { |
| | | continue; |
| | | } |
| | | |
| | | RgvProtocol rgvProtocol = rgvThread.getStatus(); |
| | | if (rgvProtocol == null) { |
| | | continue; |
| | | } |
| | | rgvProtocols.add(rgvProtocol); |
| | | } |
| | | |
| | | map.put("crn", crnList); |
| | | map.put("rgv", rgvList); |
| | | return R.ok().add(map); |
| | | } |
| | | |
| | |
| | | //wmsä»»å¡å· |
| | | private String taskNo; |
| | | |
| | | //æºç« |
| | | private Integer sourceStaNo; |
| | | |
| | | //ç®æ ç« |
| | | private Integer staNo; |
| | | |
| | | //æºåºä½ |
| | | private String sourceLocNo; |
| | | |
| | | //æ¡ç |
| | | private String barcode; |
| | | //åºåºåºä½ |
| | | private String locNo; |
| | | |
| | | //ä»»å¡ä¼å
级 |
| | | private Integer taskPri; |
| | |
| | | package com.zy.asrs.task; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.zy.asrs.domain.enums.NotifyMsgType; |
| | | import com.zy.asrs.entity.LocMast; |
| | |
| | | import com.zy.asrs.service.WrkMastLogService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.asrs.utils.NotifyUtils; |
| | | import com.zy.common.utils.HttpHandler; |
| | | import com.zy.core.enums.LocStsType; |
| | | import com.zy.core.enums.SlaveType; |
| | | import com.zy.core.enums.WrkIoType; |
| | | import com.zy.core.enums.WrkStsType; |
| | | import com.zy.system.entity.Config; |
| | | import com.zy.system.service.ConfigService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | |
| | | |
| | | //䏿¥ |
| | | notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); |
| | | } |
| | | } |
| | | |
| | | @Scheduled(cron = "0/1 * * * * ? ") |
| | | @Transactional |
| | | public void executeMove(){ |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", WrkStsType.COMPLETE_MOVE.sts)); |
| | | if (wrkMasts.isEmpty()) { |
| | | return; |
| | | } |
| | | |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | // ä¿åå·¥ä½ä¸»æ¡£å岿¡£ |
| | | if (!wrkMastLogService.save(wrkMast.getWrkNo())) { |
| | | log.info("ä¿åå·¥ä½å岿¡£[workNo={}]失败", wrkMast.getWrkNo()); |
| | | } |
| | | // å é¤å·¥ä½ä¸»æ¡£ |
| | | if (!wrkMastService.deleteById(wrkMast)) { |
| | | log.info("å é¤å·¥ä½ä¸»æ¡£[workNo={}]失败", wrkMast.getWrkNo()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Scheduled(cron = "0/1 * * * * ? ") |
| | | @Transactional |
| | | public void executeCharge(){ |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", WrkStsType.COMPLETE_CHARGE.sts)); |
| | | if (wrkMasts.isEmpty()) { |
| | | return; |
| | | } |
| | | |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | // ä¿åå·¥ä½ä¸»æ¡£å岿¡£ |
| | | if (!wrkMastLogService.save(wrkMast.getWrkNo())) { |
| | | log.info("ä¿åå·¥ä½å岿¡£[workNo={}]失败", wrkMast.getWrkNo()); |
| | | } |
| | | // å é¤å·¥ä½ä¸»æ¡£ |
| | | if (!wrkMastService.deleteById(wrkMast)) { |
| | | log.info("å é¤å·¥ä½ä¸»æ¡£[workNo={}]失败", wrkMast.getWrkNo()); |
| | | } |
| | | |
| | | //䏿¥ |
| | | notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_CHARGE_COMPLETE, JSON.toJSONString(wrkMast)); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.core.common.Arith; |
| | | import com.core.common.Cools; |
| | | import com.core.common.SpringUtils; |
| | | import com.zy.asrs.entity.BasCrnp; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.service.BasCrnpService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.common.utils.RedisUtil; |
| | | import com.zy.core.cache.SlaveConnection; |
| | | import com.zy.core.enums.CrnModeType; |
| | | import com.zy.core.enums.RedisKeyType; |
| | | import com.zy.core.enums.SlaveType; |
| | | import com.zy.core.model.protocol.CrnProtocol; |
| | | import com.zy.core.thread.CrnThread; |
| | | |
| | | import java.text.DecimalFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Arrays; |
| | | import java.util.Comparator; |
| | | import java.util.HashSet; |
| | | import java.util.Set; |
| | | |
| | | public class Utils { |
| | | |
| | |
| | | } |
| | | return defaultTime; |
| | | } |
| | | |
| | | //è·åå
¥åºä»»å¡å¯ç¨æ |
| | | public static List<Integer> getInTaskEnableRow() { |
| | | List<Integer> list = new ArrayList<>(); |
| | | try { |
| | | RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class); |
| | | WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class); |
| | | BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class); |
| | | |
| | | Integer currentCircleTaskCrnNo = null; |
| | | Object object = redisUtil.get(RedisKeyType.CURRENT_CIRCLE_TASK_CRN_NO.key); |
| | | if (object != null) { |
| | | currentCircleTaskCrnNo = Integer.parseInt(String.valueOf(object)); |
| | | } |
| | | |
| | | Wrapper<BasCrnp> wrapper = new EntityWrapper<BasCrnp>() |
| | | .eq("in_enable", "Y") |
| | | .eq("status", 1); |
| | | |
| | | if (currentCircleTaskCrnNo != null) { |
| | | currentCircleTaskCrnNo = currentCircleTaskCrnNo + 1; |
| | | BasCrnp basCrnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>().eq("crn_no", currentCircleTaskCrnNo)); |
| | | List<WrkMast> currentCrnTask = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", currentCircleTaskCrnNo)); |
| | | if (currentCrnTask.size() <= 1) { |
| | | if (basCrnp != null) { |
| | | String controlRowsStr = basCrnp.getControlRows(); |
| | | if(!Cools.isEmpty(controlRowsStr)){ |
| | | List<Integer> rows = JSON.parseArray(controlRowsStr, Integer.class); |
| | | list.addAll(rows); |
| | | wrapper.ne("crn_no", currentCircleTaskCrnNo); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | HashMap<Integer, Integer> map = new HashMap<>(); |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<>()); |
| | | List<BasCrnp> basCrnps = basCrnpService.selectList(wrapper); |
| | | |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | Integer crnNo = wrkMast.getCrnNo(); |
| | | map.put(crnNo, map.getOrDefault(crnNo, 0) + 1); |
| | | } |
| | | |
| | | List<BasCrnp> enabledCrnps = new ArrayList<>(); |
| | | for (BasCrnp basCrnp : basCrnps) { |
| | | CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, basCrnp.getCrnNo()); |
| | | if (crnThread == null) { |
| | | continue; |
| | | } |
| | | CrnProtocol crnProtocol = crnThread.getStatus(); |
| | | if (crnProtocol.getMode() != CrnModeType.AUTO.id) { |
| | | continue; |
| | | } |
| | | enabledCrnps.add(basCrnp); |
| | | } |
| | | |
| | | enabledCrnps.sort(Comparator.comparingInt(o -> map.getOrDefault(o.getCrnNo(), 0))); |
| | | |
| | | for (BasCrnp basCrnp : enabledCrnps) { |
| | | String controlRowsStr = basCrnp.getControlRows(); |
| | | if (Cools.isEmpty(controlRowsStr)) { |
| | | continue; |
| | | } |
| | | List<Integer> rows = JSON.parseArray(controlRowsStr, Integer.class); |
| | | list.addAll(rows); |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | return list; |
| | | } |
| | | } |
| | |
| | | |
| | | private String locNo; |
| | | |
| | | private Integer workNo; |
| | | private Integer taskNo; |
| | | |
| | | private Integer taskPri; |
| | | |
| | |
| | | import com.zy.asrs.utils.Utils; |
| | | import com.zy.common.model.NavigateNode; |
| | | import com.zy.common.utils.NavigateUtils; |
| | | import com.zy.common.utils.RedisUtil; |
| | | import com.zy.core.News; |
| | | import com.zy.core.enums.RedisKeyType; |
| | | import com.zy.core.enums.WrkIoType; |
| | | import com.zy.core.enums.WrkStsType; |
| | | import com.zy.core.model.StationObjModel; |
| | |
| | | private NavigateUtils navigateUtils; |
| | | @Autowired |
| | | private CommonService commonService; |
| | | @Autowired |
| | | private RedisUtil redisUtil; |
| | | |
| | | /** |
| | | * çæå·¥ä½å· |
| | |
| | | wrkMast.setWrkSts(WrkStsType.COMPLETE_INBOUND.sts); |
| | | }else if (wrkMast.getIoType() == WrkIoType.OUT.id) { |
| | | wrkMast.setWrkSts(WrkStsType.COMPLETE_OUTBOUND.sts); |
| | | } else if (wrkMast.getIoType() == WrkIoType.SHUTTLE_MOVE.id) { |
| | | wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts); |
| | | } else if (wrkMast.getIoType() == WrkIoType.SHUTTLE_CHARGE.id) { |
| | | wrkMast.setWrkSts(WrkStsType.COMPLETE_CHARGE.sts); |
| | | } else if (wrkMast.getIoType() == WrkIoType.LOC_MOVE.id) { |
| | | wrkMast.setWrkSts(WrkStsType.COMPLETE_LOC_MOVE.sts); |
| | | } |
| | |
| | | ioPri = param.getTaskPri().doubleValue(); |
| | | } |
| | | |
| | | Integer sourceCrnNo = commonService.findCrnNoByLocNo(sourceLocMast.getLocNo()); |
| | | if (sourceCrnNo == null) { |
| | | throw new CoolException("æªæ¾å°å¯¹åºå åæº"); |
| | | } |
| | | |
| | | Integer crnNo = commonService.findCrnNoByLocNo(locMast.getLocNo()); |
| | | if (crnNo == null) { |
| | | throw new CoolException("æªæ¾å°å¯¹åºå åæº"); |
| | | } |
| | | |
| | | if (!sourceCrnNo.equals(crnNo)) { |
| | | throw new CoolException("æºåºä½åç®æ åºä½ä¸å¨åä¸å··é"); |
| | | } |
| | | |
| | | // è·åå·¥ä½å· |
| | | int workNo = getWorkNo(WrkIoType.LOC_MOVE.id); |
| | | // ä¿å工使¡£ |
| | |
| | | wrkMast.setIoPri(ioPri); |
| | | wrkMast.setSourceLocNo(param.getSourceLocNo()); |
| | | wrkMast.setLocNo(param.getLocNo()); // ç®æ åºä½ |
| | | wrkMast.setCrnNo(crnNo); |
| | | wrkMast.setWmsWrkNo(param.getTaskNo()); |
| | | wrkMast.setAppeTime(now); |
| | | wrkMast.setModiTime(now); |
| | |
| | | locMast.setModiTime(new Date()); |
| | | locMastService.updateById(locMast); |
| | | |
| | | //ç¼åè®°å½å½åå½ä»¤å åæºç¼å· |
| | | redisUtil.set(RedisKeyType.CURRENT_CIRCLE_TASK_CRN_NO.key, crnNo, 60 * 60 * 24); |
| | | return true; |
| | | } |
| | | |
| | | //åºåºä»»å¡ |
| | | public boolean createOutTask(CreateOutTaskParam param) { |
| | | Date now = new Date(); |
| | | LocMast locMast = locMastService.queryByLoc(param.getSourceLocNo()); |
| | | LocMast locMast = locMastService.queryByLoc(param.getLocNo()); |
| | | if (null == locMast) { |
| | | throw new CoolException("æºåºä½ä¸åå¨"); |
| | | } |
| | |
| | | throw new CoolException("æªæ¾å°å¯¹åºå åæº"); |
| | | } |
| | | |
| | | Integer sourceStationId = commonService.findOutStationId(crnNo, param.getStaNo()); |
| | | if (sourceStationId == null) { |
| | | throw new CoolException("æªæ¾å°è¾éç®æ ç«ç¹å¯èµ°è¡è·¯å¾"); |
| | | } |
| | | |
| | | // è·åå·¥ä½å· |
| | | int workNo = getWorkNo(WrkIoType.OUT.id); |
| | | // ä¿å工使¡£ |
| | |
| | | wrkMast.setWrkSts(WrkStsType.NEW_OUTBOUND.sts); // å·¥ä½ç¶æï¼101.çæåºåºä»»å¡ |
| | | wrkMast.setIoType(WrkIoType.OUT.id); // å
¥åºåºç¶æï¼ 101.åºåº |
| | | wrkMast.setIoPri(ioPri); |
| | | wrkMast.setSourceLocNo(param.getSourceLocNo()); // æºåºä½ |
| | | wrkMast.setSourceStaNo(param.getSourceStaNo());//æºç« |
| | | wrkMast.setSourceLocNo(locMast.getLocNo()); // æºåºä½ |
| | | wrkMast.setSourceStaNo(sourceStationId);//æºç« |
| | | wrkMast.setStaNo(param.getStaNo());//ç®æ ç« |
| | | wrkMast.setWmsWrkNo(param.getTaskNo()); |
| | | wrkMast.setBarcode(param.getBarcode()); |
| | | wrkMast.setBarcode(locMast.getBarcode()); |
| | | wrkMast.setCrnNo(crnNo); |
| | | wrkMast.setAppeTime(now); |
| | | wrkMast.setModiTime(now); |
| | |
| | | GENERATE_FAKE_IN_STATION_DATA_LIMIT("generate_fake_in_station_data_limit_"), |
| | | CHECK_OUT_STATION_STAY_TIME_OUT_LIMIT("check_out_station_stay_time_out_limit_"), |
| | | CHECK_IN_STATION_STAY_TIME_OUT_LIMIT("check_in_station_stay_time_out_limit_"), |
| | | |
| | | CURRENT_CIRCLE_TASK_CRN_NO("current_circle_task_crn_no_") |
| | | ; |
| | | |
| | | public String key; |
| | |
| | | |
| | | IN(1, "å
¥åº"), |
| | | OUT(101, "åºåº"), |
| | | SHUTTLE_MOVE(200, "å°è½¦ç§»å¨"), |
| | | LOC_MOVE(201, "ç§»åºä»»å¡"), |
| | | SHUTTLE_CHARGE(300, "å°è½¦å
çµ"), |
| | | PREVIEW_LIFT_MOVE(98, "æåæºé¢è°åº¦ç§»å¨ä»»å¡"), |
| | | MANUAL(99, "æå¨ä»»å¡"), |
| | | ; |
| | |
| | | COMPLETE_OUTBOUND(109, "åºåºå®æ"), |
| | | SETTLE_OUTBOUND(110, "åºåºåºåæ´æ°"), |
| | | |
| | | NEW_CHARGE(201, "çæå
çµä»»å¡"), |
| | | CHARGE_SHUTTLE_RUN(202, "å°è½¦åå¾å
çµæ¡©"), |
| | | CHARGE_SHUTTLE_RUN_COMPLETE(203, "å°è½¦å°è¾¾å
çµæ¡©"), |
| | | CHARGE_SHUTTLE_START_CHARGING(204, "å°è½¦å¼å¯å
çµä¸"), |
| | | CHARGE_SHUTTLE_CHARGING(205, "å°è½¦å
çµä¸"), |
| | | CHARGE_SHUTTLE_CHARGING_COMPLETE(206, "å°è½¦å
çµå®æ"), |
| | | COMPLETE_CHARGE(210, "å
çµä»»å¡å®æ"), |
| | | |
| | | NEW_MOVE(301, "çæè¿ç§»ä»»å¡"), |
| | | MOVE_NEARBY(302, "å°è½¦ç§»å¨è³è¿ç¹ä¸"), |
| | | MOVE_NEARBY_COMPLETE(303, "å°è½¦ç§»å¨è³è¿ç¹å®æ"), |
| | | MOVE_IN_LIFT(304, "å°è½¦è¿å
¥æåæºä¸"), |
| | | MOVE_IN_LIFT_COMPLETE(305, "å°è½¦è¿å
¥æåæºå®æ"), |
| | | MOVE_LIFT_RUN(306, "æåæºæ¬è¿ä¸"), |
| | | MOVE_LIFT_RUN_COMPLETE(307, "æåæºæ¬è¿å®æ"), |
| | | MOVE_OUT_LIFT(308, "å°è½¦è¿åºæåæºä¸"), |
| | | MOVE_OUT_LIFT_COMPLETE(309, "å°è½¦è¿åºæåæºå®æ"), |
| | | MOVE_SHUTTLE(310, "å°è½¦ç§»å¨ä¸"), |
| | | COMPLETE_MOVE(311, "å°è½¦ç§»å¨å®æ"), |
| | | |
| | | NEW_MANUAL(401, "çææå¨ä»»å¡"), |
| | | ANALYZE_MANUAL(402, "æå¨ä»»å¡è§£æ"), |
| | | EXECUTE_MANUAL(403, "æ§è¡æå¨ä»»å¡"), |
| | | COMPLETE_MANUAL(410, "æå¨ä»»å¡å®æ"), |
| | | |
| | | NEW_LOC_MOVE(501, "çæç§»åºä»»å¡"), |
| | | LOC_MOVE_SHUTTLE_RUN(502, "å°è½¦æ¬è¿ä¸"), |
| | | LOC_MOVE_RUN(502, "è®¾å¤æ¬è¿ä¸"), |
| | | LOC_MOVE_RUN_COMPLETE(503, "è®¾å¤æ¬è¿å®æ"), |
| | | COMPLETE_LOC_MOVE(509, "ç§»åºå®æ"), |
| | | ; |
| | | |
| | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.zy.asrs.domain.param.CreateInTaskParam; |
| | | import com.zy.asrs.domain.param.CreateOutTaskParam; |
| | | import com.zy.asrs.entity.BasCrnp; |
| | |
| | | import com.zy.asrs.service.BasDevpService; |
| | | import com.zy.asrs.service.LocMastService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.asrs.utils.Utils; |
| | | import com.zy.common.model.StartupDto; |
| | | import com.zy.common.service.CommonService; |
| | | import com.zy.common.utils.HttpHandler; |
| | |
| | | continue; |
| | | } |
| | | |
| | | Integer sourceStationId = commonService.findOutStationId(crnNo, stationId); |
| | | if (sourceStationId == null) { |
| | | continue; |
| | | } |
| | | |
| | | CreateOutTaskParam taskParam = new CreateOutTaskParam(); |
| | | taskParam.setTaskNo(String.valueOf(commonService.getWorkNo(WrkIoType.OUT.id))); |
| | | taskParam.setSourceStaNo(sourceStationId); |
| | | taskParam.setStaNo(stationId); |
| | | taskParam.setSourceLocNo(locMast.getLocNo()); |
| | | taskParam.setBarcode(locMast.getBarcode()); |
| | | taskParam.setLocNo(locMast.getLocNo()); |
| | | boolean result = commonService.createOutTask(taskParam); |
| | | redisUtil.set(RedisKeyType.GENERATE_FAKE_OUT_TASK_LIMIT.key + stationId, "lock", 15); |
| | | } |
| | |
| | | try { |
| | | HashMap<String, Object> param = new HashMap<>(); |
| | | param.put("barcode", stationProtocol.getBarcode()); |
| | | param.put("ioType", 1); |
| | | param.put("sourceStaNo", stationProtocol.getStationId()); |
| | | param.put("locType1", stationProtocol.getPalletHeight()); |
| | | param.put("row", Utils.getInTaskEnableRow()); |
| | | |
| | | String response = new HttpHandler.Builder() |
| | | .setUri(wmsUrl) |
| | |
| | | StartupDto dto = jsonObject.getObject("data", StartupDto.class); |
| | | |
| | | CreateInTaskParam taskParam = new CreateInTaskParam(); |
| | | taskParam.setTaskNo(String.valueOf(dto.getWorkNo())); |
| | | taskParam.setTaskNo(String.valueOf(dto.getTaskNo())); |
| | | taskParam.setLocNo(dto.getLocNo()); |
| | | taskParam.setTaskPri(dto.getTaskPri()); |
| | | boolean result = commonService.createInTask(taskParam); |