自动化立体仓库 - WMS系统
skyouc
4 天以前 0a8b8decb5b70e1345a2cb5d6ce37285d267f738
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -2585,11 +2585,58 @@
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R taskMove(CompleteParam combParam, long userId) {
//        /openapi/createLocMoveTask
        if (Objects.isNull(combParam.getWorkNo())) {
            return R.error("任务号不能为空");
        }
        if (Objects.isNull(combParam.getSourceLocNo())) {
            return R.error("源库位不能为空!!");
        }
        if (Objects.isNull(combParam.getLocNo())) {
            return R.error("目标库位不能为空!");
        }
        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", combParam.getWorkNo()));
        if (Objects.isNull(wrkMast)) {
            return R.error("任务档不存在!!");
        }
        String body = JSON.toJSONString(combParam);
        boolean success = false;
        String response = "";
        try {
            response = new HttpHandler.Builder()
                    .setUri(HIKApiConstant.AGV_IP)
                    .setPath(MesConstant.MOVE_LOC_TASK)
                    .setJson(body)
                    .build()
                    .doPost();
            JSONObject jsonObject = JSON.parseObject(response);
            if (jsonObject.getInteger("code").equals(200)) {
                wrkMast.setWrkSts(12L);
                if (!wrkMastService.updateById(wrkMast)) {
                    throw new CoolException("任务状态更新失败!!");
                }
                success = true;
            } else {
                log.error("发送agv任务失败!!!url:{};request:{};response:{}", MesConstant.WCS_URL + MesConstant.MOVE_LOC_TASK, body, response);
            }
        } catch (Exception e) {
            log.error("发送agv任务异常", e);
        } finally {
            try {
                // 保存接口日志
                apiLogService.save(
                        "发送agv任务",
                        MesConstant.WCS_URL + MesConstant.MOVE_LOC_TASK,
                        null,
                        "127.0.0.1",
                        body,
                        response,
                        success);
            } catch (Exception e) {
                log.error("", e);
            }
        }
        return null;
    }