|  |  | 
 |  |  | package com.zy.asrs.controller; | 
 |  |  |  | 
 |  |  | import com.alibaba.fastjson.JSON; | 
 |  |  | import com.alibaba.fastjson.JSONArray; | 
 |  |  | import com.alibaba.fastjson.JSONObject; | 
 |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
 |  |  | import com.baomidou.mybatisplus.mapper.Wrapper; | 
 |  |  | import com.baomidou.mybatisplus.plugins.Page; | 
 |  |  | import com.core.common.DateUtils; | 
 |  |  | import com.core.exception.CoolException; | 
 |  |  | import com.zy.asrs.domain.enums.TaskStatusType; | 
 |  |  | import com.zy.asrs.entity.TaskWrkLog; | 
 |  |  | import com.zy.asrs.service.ApiLogService; | 
 |  |  | import com.zy.asrs.service.TaskWrkLogService; | 
 |  |  | import com.core.annotations.ManagerAuth; | 
 |  |  | import com.core.common.BaseRes; | 
 |  |  | import com.core.common.Cools; | 
 |  |  | import com.core.common.R; | 
 |  |  | import com.zy.common.utils.HttpHandler; | 
 |  |  | import com.zy.common.web.BaseController; | 
 |  |  | import lombok.extern.slf4j.Slf4j; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.beans.factory.annotation.Value; | 
 |  |  | import org.springframework.web.bind.annotation.*; | 
 |  |  |  | 
 |  |  | import java.util.*; | 
 |  |  |  | 
 |  |  | @Slf4j | 
 |  |  | @RestController | 
 |  |  | public class TaskWrkLogController extends BaseController { | 
 |  |  |  | 
 |  |  |     @Value("${wms.url}") | 
 |  |  |     private String wmsUrl; | 
 |  |  |     @Value("${wms.TaskExecCallback}") | 
 |  |  |     private String TaskExecCallback; | 
 |  |  |     @Autowired | 
 |  |  |     private ApiLogService apiLogService; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private TaskWrkLogService taskWrkLogService; | 
 |  |  | 
 |  |  |         excludeTrash(param); | 
 |  |  |         convert(param, wrapper); | 
 |  |  |         if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} | 
 |  |  |         wrapper.orderDesc(Collections.singleton("create_time")); | 
 |  |  |         return R.ok(taskWrkLogService.selectPage(new Page<>(curr, limit), wrapper)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | 
 |  |  |    @RequestMapping(value = "/taskWrkLog/update/auth") | 
 |  |  |    @ManagerAuth | 
 |  |  |     public R update(TaskWrkLog taskWrkLog){ | 
 |  |  |         if (Cools.isEmpty(taskWrkLog) || null==taskWrkLog.getId()){ | 
 |  |  |         if (Cools.isEmpty(taskWrkLog)){ | 
 |  |  |             return R.error(); | 
 |  |  |         } | 
 |  |  |         taskWrkLogService.updateById(taskWrkLog); | 
 |  |  | 
 |  |  |         List<Map<String, Object>> result = new ArrayList<>(); | 
 |  |  |         for (TaskWrkLog taskWrkLog : page.getRecords()){ | 
 |  |  |             Map<String, Object> map = new HashMap<>(); | 
 |  |  |             map.put("id", taskWrkLog.getId()); | 
 |  |  |             map.put("value", taskWrkLog.getId()); | 
 |  |  |             map.put("id", taskWrkLog.getTaskNo()); | 
 |  |  |             map.put("value", taskWrkLog.getTaskNo()); | 
 |  |  |             result.add(map); | 
 |  |  |         } | 
 |  |  |         return R.ok(result); | 
 |  |  | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @RequestMapping(value = "/taskWrkLog/resubmitTheTask/auth") | 
 |  |  |     @ManagerAuth(memo = "重新上报任务完结") | 
 |  |  |     public R resubmitTheTask(@RequestParam String taskNo){ | 
 |  |  |         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)) {//完成 | 
 |  |  |                 headParam.put("Result", 1); | 
 |  |  |             } else if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) { | 
 |  |  |                 headParam.put("Result", 2); | 
 |  |  |             } | 
 |  |  |             String response = ""; | 
 |  |  |             Boolean bool = false; | 
 |  |  |             try { | 
 |  |  |                 headParam.put("TaskNo", taskWrk.getTaskNo()); | 
 |  |  |                 log.info("重新上报任务完结={}", taskWrk); | 
 |  |  |                 response = new HttpHandler.Builder() | 
 |  |  |                         // .setHeaders(headParam) | 
 |  |  |                         .setUri(wmsUrl) | 
 |  |  |                         .setPath(TaskExecCallback) | 
 |  |  |                         .setJson(JSON.toJSONString(headParam)) | 
 |  |  |                         .build() | 
 |  |  |                         .doPost(); | 
 |  |  |                 JSONObject jsonObject = JSON.parseObject(response); | 
 |  |  |  | 
 |  |  |                 if(jsonObject.get("ReturnStatus").equals(0)){ | 
 |  |  |                     bool = true; | 
 |  |  |                 } | 
 |  |  |             } catch (Exception e) { | 
 |  |  |                 log.error("重新上报任务完结失败{},返回值={}", taskWrk, response); | 
 |  |  |             }finally { | 
 |  |  |                 apiLogService.save("重新上报任务完结" | 
 |  |  |                         , wmsUrl + TaskExecCallback | 
 |  |  |                         , null | 
 |  |  |                         , "127.0.0.1" | 
 |  |  |                         , JSON.toJSONString(headParam) | 
 |  |  |                         , response | 
 |  |  |                         , bool | 
 |  |  |                 ); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |