#
zwl
2025-03-05 5e574f766f17f906815391a5935675dddbfac7aa
#
6个文件已修改
200 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/OpenController.java 129 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/TaskWrkLogController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/TaskLogScheduler.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/LedThread.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/SiemensDevpThread.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -81,69 +81,67 @@
        return R.ok();
    }
    //创建任务
    @PostMapping("/taskCreate")
    @Transactional
    public R taskCreate(@RequestHeader String appkey,
                          @RequestBody List<TaskCreateParam> param1,
                          HttpServletRequest request) {
        auth(appkey, param1, request);
        try{
            List<TaskCreateParam> paramList = new ArrayList<>();
            List<String> locNoList = new ArrayList<>();
            for (TaskCreateParam param : param1) {
                if (Cools.isEmpty(param)) {
                    return R.parse(BaseRes.PARAM);
                }
                if (Cools.isEmpty(param.getTaskNo())) {
                    return R.error("任务号[taskNo]不能为空");
                }
                if (Cools.isEmpty(param.getIoType())) {
                    return R.error("任务类型[ioType]不能为空");
                }
                if (Cools.isEmpty(param.getBarcode())) {
                    return R.error("条码[barcode]不能为空");
                }
                String locNo=null;
                if(param.getIoType()==1){
                    locNo=param.getTargetPoint();
                }else{
                    locNo=param.getStartPoint();
                }
                try{
                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
                            .eq("loc_no", locNo).ne("loc_sts","X"));
                    if (Cools.isEmpty(locMast)){
                        log.error("库位号不存在"+locNo);
                        return R.error("库位号不存在"+locNo).add("库位号不存在"+locNo);
                    }
                }catch (Exception e){
                    log.error("库位号检测程序异常==》异常信息"+e);
                    return R.error("库位号检测程序异常").add("库位号检测程序异常==》异常信息"+e);
                }
                LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>()
                        .eq("loc_sts","F")
                        .eq("loc_no",locNo)
                        .eq("barcode",param.getBarcode()));
                if(Cools.isEmpty(locMast)){
                    return R.error("该库位不满足出库条件"+param.getTargetPoint());
                }
                if (!locNoList.contains(locMast.getLocNo())){
                    locNoList.add(locMast.getLocNo());
                    paramList.add(param);
                }else {
                    return R.error("该库位不能同时下发两笔任务"+locMast.getLocNo());
                }
            }
            for (TaskCreateParam param : paramList){
                openService.taskCreate(param);
            }
        }catch (Exception e){
            log.error("任务下发异常"+e);
            return R.error();
        }
        return R.ok();
    }
//    //创建任务
//    @PostMapping("/taskCreate")
//    @Transactional
//    public R taskCreate(@RequestBody List<TaskCreateParam> param1) {
//       // auth(appkey, param1, request);
//        try{
//            List<TaskCreateParam> paramList = new ArrayList<>();
//            List<String> locNoList = new ArrayList<>();
//            for (TaskCreateParam param : param1) {
//                if (Cools.isEmpty(param)) {
//                    return R.parse(BaseRes.PARAM);
//                }
//                if (Cools.isEmpty(param.getTaskNo())) {
//                    return R.error("任务号[taskNo]不能为空");
//                }
//                if (Cools.isEmpty(param.getIoType())) {
//                    return R.error("任务类型[ioType]不能为空");
//                }
//                if (Cools.isEmpty(param.getBarcode())) {
//                    return R.error("条码[barcode]不能为空");
//                }
//                String locNo=null;
//                if(param.getIoType()==1){
//                    locNo=param.getTargetPoint();
//                }else{
//                    locNo=param.getStartPoint();
//                }
//                try{
//                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
//                            .eq("loc_no", locNo).ne("loc_sts","X"));
//                    if (Cools.isEmpty(locMast)){
//                        log.error("库位号不存在"+locNo);
//                        return R.error("库位号不存在"+locNo).add("库位号不存在"+locNo);
//                    }
//                }catch (Exception e){
//                    log.error("库位号检测程序异常==》异常信息"+e);
//                    return R.error("库位号检测程序异常").add("库位号检测程序异常==》异常信息"+e);
//                }
//                LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>()
//                        .eq("loc_sts","F")
//                        .eq("loc_no",locNo)
//                        .eq("barcode",param.getBarcode()));
//                if(Cools.isEmpty(locMast)){
//                    return R.error("该库位不满足出库条件"+param.getTargetPoint());
//                }
//                if (!locNoList.contains(locMast.getLocNo())){
//                    locNoList.add(locMast.getLocNo());
//                    paramList.add(param);
//                }else {
//                    return R.error("该库位不能同时下发两笔任务"+locMast.getLocNo());
//                }
//            }
//            for (TaskCreateParam param : paramList){
//                openService.taskCreate(param);
//            }
//        }catch (Exception e){
//            log.error("任务下发异常"+e);
//            return R.error();
//        }
//        return R.ok();
//    }
    //查询任务详情
    @GetMapping("/queryTask")
@@ -309,11 +307,6 @@
            );
            return R.error("站点状态不可入");
        }
    }
    //任务下发接口
src/main/java/com/zy/asrs/controller/TaskWrkLogController.java
@@ -141,7 +141,7 @@
        TaskWrkLog taskWrk = taskWrkLogService.selectOne(new EntityWrapper<TaskWrkLog>().eq("task_no", taskNo));
        if(!Cools.isEmpty(taskWrk)){
            HashMap<String, Object> headParam = new HashMap<>();
            if (taskWrk.getStatus().equals(TaskStatusType.OVER.id)) {//完成
            if (taskWrk.getStatus().equals(TaskStatusType.OVER.id)||taskWrk.getStatus().equals(7)) {//完成
                headParam.put("Result", 1);
            } else if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) {
                headParam.put("Result", 2);
src/main/java/com/zy/asrs/task/TaskLogScheduler.java
@@ -90,6 +90,7 @@
                }
                bool = true;
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                log.error("wcs手动完成任务上报wms失败{},返回值={}", taskWrk, response);
            } finally {
                apiLogService.save("wcs完成或者取消任务上报wms"
src/main/java/com/zy/core/thread/LedThread.java
@@ -65,29 +65,29 @@
    public void run() {
        connect();
        close();
        while (true) {
            try {
                Task task = MessageQueue.poll(SlaveType.Led, slave.getId());
                if (task != null) {
                    switch (task.getStep()) {
                        // 写数据
                        case 1:
                            write((List<LedCommand>)task.getData());
                            break;
                        // 复位
                        case 2:
                            reset();
                            break;
                        default:
                            break;
                    }
                }
                Thread.sleep(400);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
//        while (true) {
//            try {
//                Task task = MessageQueue.poll(SlaveType.Led, slave.getId());
//                if (task != null) {
//                    switch (task.getStep()) {
//                        // 写数据
//                        case 1:
//                            write((List<LedCommand>)task.getData());
//                            break;
//                        // 复位
//                        case 2:
//                            reset();
//                            break;
//                        default:
//                            break;
//                    }
//                }
//
//                Thread.sleep(400);
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
//        }
    }
    private void write(List<LedCommand> list) throws Bx5GException {
src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -48,12 +48,10 @@
    private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
    private short heartBeatVal = 1;
    public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
        add(100);add(101);add(102);add(103);add(104);
        add(105);add(106);add(107);add(108);add(109);
        add(110);add(111);add(112);add(113);add(114);
        add(115);add(116);add(117);add(118);add(119);
        add(120);add(121);add(122);add(123);add(124);
        add(125);add(1001);add(1002);add(1003);add(1004);
        add(1);add(2);add(3);add(4);add(5);
        add(6);add(7);add(8);add(9);add(10);
        add(11);add(12);add(13);add(14);add(15);
        add(16);
    }};
    /*public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{
        add(200);add(201);add(202);add(203);
src/main/resources/application.yml
@@ -1,5 +1,5 @@
server:
  port: 8081
  port: 8080
  servlet:
    context-path: /@pom.build.finalName@
@@ -17,7 +17,7 @@
    host: localhost
    port: 6379
    database: 0
#    password: xltys1995
  #    password: xltys1995
  profiles:
    active: prod
@@ -50,14 +50,14 @@
  #url: 10.32.53.195:8080
  # WMS系统ip
  #  url: 10.210.157.109:8090
  url: 10.10.10.222:2410
  url: 10.197.22.245:8000
  # 入库任务申请接口
  #inboundTaskApplyPath: api/InterFace/inboundTaskApply
  inboundTaskApplyPath: api/StereoscopicCallBack/AcceptTaskStatus
  inboundTaskApplyPath: api/zmdms-zt56Wms-core/api/wcs/AcceptTaskStatus
  #  inboundTaskApplyPath: open/asrs/inboundTaskApply
  # 任务开始时,WCS回调WMS
  taskStatusFeedbackPath: api/StereoscopicCallBack/TaskExecCallback
  taskStatusFeedbackPath: api/zmdms-zt56Wms-core/api/wcs/TaskExecCallback
  # 任务完成结束时,WCS回调WMS
  TaskExecCallback: api/StereoscopicCallBack/TaskExecFinishedCallback
  TaskExecCallback: api/zmdms-zt56Wms-core/api/wcs/TaskExecFinishedCallback
  # 移库申请接口
  movePath: api/InterFace/get_InterFace_TestStorage