|  |  | 
 |  |  | import com.baomidou.mybatisplus.plugins.Page; | 
 |  |  | import com.core.common.DateUtils; | 
 |  |  | import com.zy.asrs.domain.enums.TaskStatusType; | 
 |  |  | import com.zy.asrs.entity.LocMast; | 
 |  |  | import com.zy.asrs.entity.TaskWrk; | 
 |  |  | import com.zy.asrs.service.LocMastService; | 
 |  |  | import com.zy.asrs.service.TaskWrkService; | 
 |  |  | import com.core.annotations.ManagerAuth; | 
 |  |  | import com.core.common.BaseRes; | 
 |  |  | import com.core.common.Cools; | 
 |  |  | import com.core.common.R; | 
 |  |  | import com.zy.common.web.BaseController; | 
 |  |  | import lombok.extern.slf4j.Slf4j; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.web.bind.annotation.*; | 
 |  |  |  | 
 |  |  | import java.util.*; | 
 |  |  |  | 
 |  |  | @RestController | 
 |  |  | @Slf4j | 
 |  |  | public class TaskWrkController extends BaseController { | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private TaskWrkService taskWrkService; | 
 |  |  |     @Autowired | 
 |  |  |     private LocMastService locMastService; | 
 |  |  |  | 
 |  |  |     @RequestMapping(value = "/taskWrk/{wrkNo}/auth") | 
 |  |  |     @ManagerAuth | 
 |  |  | 
 |  |  |    @RequestMapping(value = "/taskWrk/update/auth") | 
 |  |  |    @ManagerAuth | 
 |  |  |     public R update(TaskWrk taskWrk){ | 
 |  |  |         if (Cools.isEmpty(taskWrk) || null==taskWrk.getTaskNo()){ | 
 |  |  |         if (Cools.isEmpty(taskWrk) || null == taskWrk.getTaskNo()) { | 
 |  |  |             return R.error(); | 
 |  |  |         } | 
 |  |  |         taskWrkService.updateById(taskWrk); | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @RequestMapping(value = "/taskWrk/updatePoint/auth") | 
 |  |  |     @ManagerAuth | 
 |  |  |     public R updatePoint(TaskWrk taskWrk){ | 
 |  |  |         if (Cools.isEmpty(taskWrk) || null == taskWrk.getTaskNo()) { | 
 |  |  |             return R.error(); | 
 |  |  |         } | 
 |  |  |         TaskWrk taskWrk1 = taskWrkService.selectByTaskNo(taskWrk.getTaskNo()); | 
 |  |  |         if (taskWrk1 == null) { | 
 |  |  |             return R.error(); | 
 |  |  |         } | 
 |  |  |         taskWrk1.setStartPoint(taskWrk.getStartPoint()); | 
 |  |  |         taskWrk1.setTargetPoint(taskWrk.getTargetPoint()); | 
 |  |  |         taskWrk1.setModiTime(new Date()); | 
 |  |  |         taskWrk1.setModiUser(getUserId()); | 
 |  |  |         taskWrkService.updateById(taskWrk1); | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PostMapping(value = "/taskWrk/distribute/auth") | 
 |  |  |     @ManagerAuth(memo = "手动派发任务") | 
 |  |  |     public R distribute(@RequestParam String taskNo) { | 
 |  |  |         taskWrkService.distribute(taskNo, getUserId()); | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  | //    @PostMapping(value = "/taskWrk/distribute/auth") | 
 |  |  | //    @ManagerAuth(memo = "手动派发任务") | 
 |  |  | //    public R distribute(@RequestParam String taskNo) { | 
 |  |  | //        taskWrkService.distribute(taskNo, getUserId()); | 
 |  |  | //        return R.ok(); | 
 |  |  | //    } | 
 |  |  |  | 
 |  |  |     @PostMapping(value = "/taskWrk/complete/auth") | 
 |  |  |     @ManagerAuth(memo = "手动完成任务") | 
 |  |  |     public R complete(@RequestParam String taskNo) { | 
 |  |  |         TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo); | 
 |  |  |         if (taskWrk == null) { | 
 |  |  |             return R.error(); | 
 |  |  | //        if (Cools.isEmpty(taskWrk) || taskWrk.getStatus() >= 3) { | 
 |  |  | //            return R.error("已完结或已取消"); | 
 |  |  | //        } | 
 |  |  |         if (taskWrk.getIoType() == 1) { | 
 |  |  |             taskWrk.setWrkSts(4); | 
 |  |  |         }else if (taskWrk.getIoType() == 2) { | 
 |  |  |             taskWrk.setWrkSts(14); | 
 |  |  |         }else { | 
 |  |  |             return R.error("任务状态不存在"); | 
 |  |  |         } | 
 |  |  |         if (taskWrk.getStatus() == TaskStatusType.COMPLETE.id) { | 
 |  |  |             return R.error(taskWrk.getTaskNo() + "已完结"); | 
 |  |  |         } | 
 |  |  |         Date now = new Date(); | 
 |  |  |         taskWrk.setStatus(TaskStatusType.COMPLETE.id); | 
 |  |  |         taskWrk.setModiTime(now);//操作时间 | 
 |  |  |         taskWrk.setModiUser(getUserId());//操作员 | 
 |  |  |         taskWrk.setCompleteTime(now);//完结时间 | 
 |  |  |         taskWrk.setStatus(TaskStatusType.OVER.id);//手动完成任务 | 
 |  |  |         taskWrk.setModiTime(new Date()); | 
 |  |  |         taskWrkService.updateById(taskWrk); | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PostMapping(value = "/taskWrk/returnWorkingCondition/auth") | 
 |  |  |     @ManagerAuth(memo = "重新给堆垛机下发任务") | 
 |  |  |     public R returnWorkingCondition(@RequestParam String taskNo) { | 
 |  |  |         TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo); | 
 |  |  |         if (!Cools.isEmpty(taskWrk) && taskWrk.getWrkSts()==12){ | 
 |  |  |             taskWrk.setWrkSts(11); | 
 |  |  |             if(!taskWrkService.updateById(taskWrk)){ | 
 |  |  |                 return R.error("更新任务状态失败"); | 
 |  |  |             } | 
 |  |  |             return R.ok(); | 
 |  |  |         } else if (!Cools.isEmpty(taskWrk) && taskWrk.getWrkSts()==3) { | 
 |  |  |             taskWrk.setWrkSts(2); | 
 |  |  |             taskWrkService.updateById(taskWrk); | 
 |  |  |             if(!taskWrkService.updateById(taskWrk)){ | 
 |  |  |                 return R.error("更新任务状态失败"); | 
 |  |  |             } | 
 |  |  |             return R.ok(); | 
 |  |  |         }else{ | 
 |  |  |             return R.error("任务状态不对无法重新给堆垛机下发任务"); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PostMapping(value = "/taskWrk/cancel/auth") | 
 |  |  | 
 |  |  |         if (taskWrk == null) { | 
 |  |  |             return R.error(); | 
 |  |  |         } | 
 |  |  |         if (taskWrk.getStatus() == TaskStatusType.CANCEL.id) { | 
 |  |  |         if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) { | 
 |  |  |             return R.error(taskWrk.getTaskNo() + "已被取消"); | 
 |  |  |         } | 
 |  |  |         Date now = new Date(); | 
 |  |  |         taskWrk.setStatus(TaskStatusType.CANCEL.id); | 
 |  |  |         taskWrk.setModiTime(now);//操作时间 | 
 |  |  |         taskWrk.setModiUser(getUserId());//操作员 | 
 |  |  |         try{ | 
 |  |  |             taskWrk.setModiUser(getUserId());//操作员 | 
 |  |  |         }catch (Exception e){ | 
 |  |  |             taskWrk.setModiUser(9999L);//操作员 | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         taskWrk.setCompleteTime(now);//完结时间 | 
 |  |  |         taskWrkService.updateById(taskWrk); | 
 |  |  |         return R.ok(); | 
 |  |  | 
 |  |  |         return R.ok(); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public static String getTaskType(Integer paramIoType){ | 
 |  |  |         switch (paramIoType){ | 
 |  |  |             case 1: | 
 |  |  |                 return "RK"; | 
 |  |  |             case 2: | 
 |  |  |                 return "CK"; | 
 |  |  |             case 3: | 
 |  |  |                 return "YK"; | 
 |  |  |             default: | 
 |  |  |                 return "未知"; | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |