自动化立体仓库 - WCS系统
*
lsh
2025-03-02 4f22e4508f5597fc689708dc96ea99accc357375
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -11,9 +11,12 @@
import com.zy.asrs.service.BasDevpPositionService;
import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.escalationParam.RgvTaskReportingParam;
import com.zy.asrs.utils.PostMesDataUtils;
import com.zy.asrs.utils.SortTheExecutionOfTheCarUtil;
import com.zy.asrs.utils.TimeCalculatorUtils;
import com.zy.common.CodeRes;
import com.zy.common.service.CommonService;
import com.zy.common.utils.HttpHandler;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.SlaveConnection;
@@ -52,6 +55,8 @@
    private BasCircularShuttleService basCircularShuttleService;
    @Autowired
    private WrkMastService wrkMastService;
    @Autowired
    private CommonService commonService;
    @Value("${constant-parameters.perimeter}")
    private Long perimeter;
@@ -69,6 +74,9 @@
    * */
    public synchronized boolean licenseVerify() {
        try{
//            if (true) {
//                return true;
//            }
            return new LicenseVerify().verify();
        } catch (Exception e){
            log.info("许可证验证失败!!异常:{}",e.getMessage());
@@ -121,7 +129,7 @@
                log.info("更新小车排序信息异常={}", rgvNo);
                return;
            }
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true));
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().eq("status", 0).orderBy("rgv_id", true));
            if (basCircularShuttleList.get(0).getRgvNo().equals(rgvNo)) {
                return;
            }
@@ -161,6 +169,10 @@
            Integer rgvNo = 0;
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true));
            for (BasCircularShuttle basCircularShuttle : basCircularShuttleList) {
                if (basCircularShuttle.getStatus() != 0){
                    sign = true;
                    continue;
                }
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basCircularShuttle.getRgvNo());
                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                if (rgvProtocol == null) {
@@ -271,6 +283,9 @@
                        break runRgv;
                    }
                    BasCircularShuttle basCircularShuttle = basCircularShuttleService.selectOne(new EntityWrapper<BasCircularShuttle>().eq("rgv_id", rgvId));
                    if (basCircularShuttle.getStatus() != 0){
                        continue ;
                    }
                    RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basCircularShuttle.getRgvNo());
                    RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                    if (rgvProtocol == null) {
@@ -370,7 +385,43 @@
                        break;
                    }
                    wrkMast.setWrkSts(3L);
                    wrkMast.setAppeTime(new Date());
                    Date now = new Date();
                    wrkMast.setAppeTime(now);
                    try{
                        try{
                            if (true){
                                RgvTaskReportingParam rgvTaskReportingParam = new RgvTaskReportingParam(wrkMast);
                                ReturnT<String> result = new PostMesDataUtils().postMesDataWcs("", "", rgvTaskReportingParam);
                                if (result.getCode()==200){
                                    wrkMast.setWrkSts(4L);
                                    wrkMast.setAppeTime(now);
                                    wrkMastService.updateById(wrkMast);
                                    continue;
                                }else {
                                    log.error("工作号"+wrkMast.getWrkNo()+"任务完成信息上传处理失败");
                                }
                            } else {
                                //测试用
                                wrkMast.setWrkSts(5L);
                                wrkMast.setAppeTime(now);
                                wrkMastService.updateById(wrkMast);
                                WrkMast wrkMast1 = new WrkMast();
                                int workNo = commonService.getWorkNo(0);
                                wrkMast1.setWrkNo((long) workNo);
                                wrkMast1.setSourceStaNo(wrkMast.getStaNoCs());
                                wrkMast1.setStaNo(wrkMast.getSourceNoCs());
                                wrkMast1.setWrkSts(1L);
                                wrkMast1.setIoType(1);
                                wrkMast1.setModiTime(now);
                                wrkMast1.setAppeTime(now);
                                wrkMast1.setMemo("测试数据");
                                wrkMastService.insert(wrkMast1);
                                continue;
                            }
                        } catch (Exception e){
                            log.error("工作号"+wrkMast.getWrkNo()+"任务完成信息上传处理失败,异常信息:"+e);
                        }
                    } catch (Exception e){}
                    wrkMastService.updateById(wrkMast);
                }
            }