1
昨天 b52ef0a5d89d5c08ea6215810560914215a20d86
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -146,6 +146,7 @@
                    if (flowStepInstance.getWmsNextTaskStatus() != 9999) {
                        FlowStepInstance nextFlowStepInstance = flowStepInstanceService.getOne(new LambdaQueryWrapper<FlowStepInstance>()
                                .eq(FlowStepInstance::getStatus, (short)0)
                                .eq(FlowStepInstance::getTaskNo, flowStepInstance.getTaskNo())
                                .eq(FlowStepInstance::getStepOrder, flowStepInstance.getStepOrder() + 1)
                                .eq(FlowStepInstance::getWmsNowTaskStatus, flowStepInstance.getWmsNextTaskStatus()));
                        if (Cools.isEmpty(nextFlowStepInstance)) {
@@ -198,6 +199,7 @@
                            if (flowStepInstance.getWmsNextTaskStatus() != 9999) {
                                FlowStepInstance nextFlowStepInstance = flowStepInstanceService.getOne(new LambdaQueryWrapper<FlowStepInstance>()
                                        .eq(FlowStepInstance::getStatus, (short)0)
                                        .eq(FlowStepInstance::getTaskNo, flowStepInstance.getTaskNo())
                                        .eq(FlowStepInstance::getStepOrder, flowStepInstance.getStepOrder() + 1)
                                        .eq(FlowStepInstance::getWmsNowTaskStatus, flowStepInstance.getWmsNextTaskStatus()));
                                if (Cools.isEmpty(nextFlowStepInstance)) {
@@ -242,12 +244,57 @@
        completeInStock();
        complateOutStock();
        completeStock9999();
        completeStock10000();
    }
    public void completeStock9999() throws Exception {
        try{
            List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskStatus, TaskStsType.MISSION_TRANSFER.id));
            if (tasks.isEmpty()) {
                return;
            }
            for (Task task : tasks) {
                /**任务下发接口*/
                String pubTakUrl = rcsApi.getHost() + ":" + rcsApi.getPort() + RcsConstant.REPORT_TASKS;
                /**基础配置链接*/
                log.info("任务上报,请求地址: {}, 请求参数: {}", pubTakUrl, JSONObject.toJSONString(""));
                HttpHeaders headers = new HttpHeaders();
                headers.add("Content-Type", "application/json");
                headers.add("api-version", "v2.0");
                HttpEntity httpEntity = new HttpEntity(task, headers);
                ResponseEntity<String> exchange = restTemplate.exchange(pubTakUrl, HttpMethod.POST, httpEntity, String.class);
                log.info("任务上报,响应结果: {}", exchange);
                if (Objects.isNull(exchange.getBody())) {
                    throw new CoolException("任务上报失败!!,返回参数为空!!!");
                } else {
                    try {
                        ObjectMapper objectMapper = new ObjectMapper();
                        objectMapper.coercionConfigDefaults()
                                .setCoercion(CoercionInputShape.EmptyString, CoercionAction.AsEmpty);
                        CommonResponse result = objectMapper.readValue(exchange.getBody(), CommonResponse.class);
                        if (result.getCode() == 200) {
                            task.setTaskStatus( TaskStsType.MISSION_TRANSFER_END.id);
                            taskService.updateById(task);
                        }
                    } catch (JsonProcessingException e) {
                        throw new CoolException(e.getMessage());
                    }
                }
            }
//            List<Long> longSet = tasks.stream().map(Task::getId).collect(Collectors.toList());
//            List<Task> vaildTasks = taskService.list(new LambdaQueryWrapper<Task>().in(Task::getId, longSet));
//            taskService.complateInTask(vaildTasks);
        } catch (Exception e) {
            log.error(e.getMessage());
        }
    }
    public void completeStock10000() throws Exception {
        try{
            List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskStatus, TaskStsType.MISSION_TRANSFER_END.id));
            if (tasks.isEmpty()) {
                return;
            }
@@ -781,6 +828,8 @@
        tasks.forEach(task -> {
            TaskLog taskLog = new TaskLog();
            BeanUtils.copyProperties(task, taskLog);
            taskLog.setOrgLoc(task.getOrgLoc())
                            .setTargLoc(task.getTargLoc());
            taskLog.setTaskId(task.getId())
                    .setId(null);
            if (!taskLogService.save(taskLog)) {