|
|
@@ -15,9 +15,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLDecoder;
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
|
@@ -46,10 +50,14 @@ public class WorkerController {
|
|
|
private WorkLogService workLogService;
|
|
|
@Resource
|
|
|
private WorkOrderReadinfoService workOrderReadinfoService;
|
|
|
-
|
|
|
@Resource
|
|
|
private WorkerService workerService;
|
|
|
-
|
|
|
+ @Resource
|
|
|
+ private TruckService truckService;
|
|
|
+ @Resource
|
|
|
+ private WorkCycleService workCycleService;
|
|
|
+ @Resource
|
|
|
+ private TruckRepairInfoService truckRepairInfoService;
|
|
|
|
|
|
@ApiOperation(value = "运力详情", notes = "卡车id必传,包含司机1姓名、司机2姓名、押运员姓名、车辆状态、位置经纬度、位置时间等信息")
|
|
|
@PostMapping("/find_truck_info")
|
|
|
@@ -113,57 +121,112 @@ public class WorkerController {
|
|
|
|
|
|
@ApiOperation(value = "点击待执行运单,变成已读", notes = "必传参数:truckId,orderId")
|
|
|
@PostMapping("/add_work_order_readinfo")
|
|
|
- public Result work_cycle_page(@RequestHeader(value = "orgId") Long orgId,
|
|
|
- @RequestHeader(value = "userId") Long userId, @RequestBody WorkOrderReadinfo workOrderReadinfo) {
|
|
|
+ public Result add_work_order_readinfo(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrderReadinfo workOrderReadinfo) {
|
|
|
log.info("点击待执行运单,/tms/worker/add_work_order_readinfo,参数:{}", JSON.toJSONString(workOrderReadinfo));
|
|
|
- if (workOrderReadinfo == null || workOrderReadinfo.getTruckId() == null || workOrderReadinfo.getOrderId() == null) {
|
|
|
+ if (workOrderReadinfo == null || workOrderReadinfo.getOrderId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
+ WorkOrder workOrder = workOrderService.getById(workOrderReadinfo.getOrderId());
|
|
|
+ if (workOrder != null) {
|
|
|
+ workOrderReadinfo.setOrderId(workOrder.getId() + "");
|
|
|
+ BeanUtils.copyProperties(workOrder, workOrderReadinfo);
|
|
|
+ }
|
|
|
+ workOrderReadinfo.setUserId(userId);
|
|
|
+ workOrderReadinfo.setUserName(utf8Name);
|
|
|
+ workOrderReadinfo.setCreater(userId);
|
|
|
+ workOrderReadinfo.setCreaterName(utf8Name);
|
|
|
+ workOrderReadinfo.setCreateDate(LocalDateTime.now());
|
|
|
boolean flag = workOrderReadinfoService.save(workOrderReadinfo);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "上报途中休息信息", notes = "必传参数:开始时间、结束时间必传")
|
|
|
@PostMapping("/add_rest_info")
|
|
|
- public Result add_rest_info(@RequestBody RestInfo restInfo) {
|
|
|
+ public Result add_rest_info(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody RestInfo restInfo) {
|
|
|
log.info("上报途中休息信息,/tms/worker/add_rest_info,参数:{}", JSON.toJSONString(restInfo));
|
|
|
- if (restInfo == null || restInfo.getTruckId() == null || restInfo.getStartTime() == null || restInfo.getEndTime() == null) {
|
|
|
+ if (restInfo == null || restInfo.getCycleId() == null || restInfo.getTruckId() == null || restInfo.getStartTime() == null || restInfo.getEndTime() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
+
|
|
|
+ WorkCycle workCycle = workCycleService.getById(restInfo.getCycleId());
|
|
|
+ if (workCycle != null) {
|
|
|
+ BeanUtils.copyProperties(workCycle, restInfo);
|
|
|
+ restInfo.setCycleId(workCycle.getId());
|
|
|
+ }
|
|
|
+ restInfo.setCreater(userId);
|
|
|
+ restInfo.setCreaterName(utf8Name);
|
|
|
+ restInfo.setCreateDate(LocalDateTime.now());
|
|
|
Boolean flag = restInfoService.save(restInfo);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "上报车辆途中维修信息", notes = "新增或修改都用同一个接口,新增后返回带主键id的实体")
|
|
|
@PostMapping("/add_truck_repair_info")
|
|
|
- public Result<TruckRepairInfo> add_truck_repair_info(@RequestBody TruckRepairInfo truckRepairInfo) {
|
|
|
+ public Result add_truck_repair_info(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody TruckRepairInfo truckRepairInfo) {
|
|
|
log.info("上报车辆途中维修信息,/tms/worker/add_rest_info,参数:{}", JSON.toJSONString(truckRepairInfo));
|
|
|
if (truckRepairInfo == null || truckRepairInfo.getTruckId() == null || truckRepairInfo.getStartTime() == null || truckRepairInfo.getEndTime() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
- //TODO SAVE OR UPDATE
|
|
|
- //TODO 信息全了,则需要更改车辆状态,待执行到出车作业中
|
|
|
- return new Result<>(new TruckRepairInfo());
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
+
|
|
|
+ WorkCycle workCycle = workCycleService.getById(truckRepairInfo.getCycleId());
|
|
|
+ if (workCycle != null) {
|
|
|
+ BeanUtils.copyProperties(workCycle, truckRepairInfo);
|
|
|
+ truckRepairInfo.setCycleId(workCycle.getId());
|
|
|
+ }
|
|
|
+ truckRepairInfo.setCreater(userId);
|
|
|
+ truckRepairInfo.setCreaterName(utf8Name);
|
|
|
+ truckRepairInfo.setCreateDate(LocalDateTime.now());
|
|
|
+ Boolean flag = truckRepairInfoService.save(truckRepairInfo);
|
|
|
+ return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "查询车辆检查信息", notes = "id必传")
|
|
|
@PostMapping("/find_truck_check_info")
|
|
|
public Result find_truck_check_info(@RequestBody TruckCheckInfo truckCheckInfo) {
|
|
|
log.info("查询车辆检查信息,/tms/worker/find_truck_check_info,参数:{}", JSON.toJSONString(truckCheckInfo));
|
|
|
- if (truckCheckInfo == null || truckCheckInfo.getId() == null) {
|
|
|
+ if (truckCheckInfo == null || truckCheckInfo.getCycleId() == null || truckCheckInfo.getType() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
- TruckCheckInfo flag = truckCheckInfoService.getById(truckCheckInfo.getId());
|
|
|
+ TruckCheckInfo flag = truckCheckInfoService.findTruckCheckInfo(truckCheckInfo.getCycleId(), truckCheckInfo.getType());
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "上报车辆检查信息", notes = "新增或修改车辆检车信息")
|
|
|
@PostMapping("/add_truck_check_info")
|
|
|
- public Result add_truck_check_info(@RequestBody TruckCheckInfo truckCheckInfo) {
|
|
|
+ public Result add_truck_check_info(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody TruckCheckInfo truckCheckInfo) {
|
|
|
log.info("上报车辆检查信息,/tms/worker/add_truck_check_info,参数:{}", JSON.toJSONString(truckCheckInfo));
|
|
|
if (truckCheckInfo == null || truckCheckInfo.getType() == null || truckCheckInfo.getTruckId() == null || StringUtils.isBlank(truckCheckInfo.getTrip()) || StringUtils.isBlank(truckCheckInfo.getCheckUrl()) || StringUtils.isBlank(truckCheckInfo.getTripUrl())) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
+
|
|
|
+ WorkCycle workCycle = workCycleService.getById(truckCheckInfo.getCycleId());
|
|
|
+ if (workCycle != null) {
|
|
|
+ BeanUtils.copyProperties(workCycle, truckCheckInfo);
|
|
|
+ truckCheckInfo.setCycleId(workCycle.getId());
|
|
|
+ }
|
|
|
+ truckCheckInfo.setCreater(userId);
|
|
|
+ truckCheckInfo.setCreaterName(utf8Name);
|
|
|
+ truckCheckInfo.setCreateDate(LocalDateTime.now());
|
|
|
Boolean flag = truckCheckInfoService.saveOrUpdate(truckCheckInfo);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
@@ -215,25 +278,35 @@ public class WorkerController {
|
|
|
|
|
|
@ApiOperation(value = "1.开始执行运单", notes = "点击开始执行运单按钮")
|
|
|
@PostMapping("/start_order")
|
|
|
- public Result startOrder(@RequestHeader(value = "userId") Long userId,@RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
+ public Result startOrder(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
log.info("开始执行运单,/tms/worker/start_order,参数:{}", JSON.toJSONString(workOrder));
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入出车前检车状态,2.订单进入前往装车点状态,3.并记行车日志,4.创建行程周期
|
|
|
- Boolean flag = workerService.startOrder(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.startOrder(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "2.完成出车前检查,开始装卸车作业", notes = "点击完成出车前检查,开始作业按钮")
|
|
|
@PostMapping("/start_work")
|
|
|
- public Result starWork(@RequestHeader(value = "userId") Long userId,@RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
+ public Result starWork(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
log.info("完成出车前检查,开始作业,/tms/worker/start_work,参数:{}", JSON.toJSONString(workOrder));
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入作业中状态,2.订单进入前往装车点状态,3.并记行车日志
|
|
|
- Boolean flag = workerService.starWork(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.starWork(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@@ -244,56 +317,81 @@ public class WorkerController {
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入作业中状态,2.订单进入装车等待状态,3.并记行车日志
|
|
|
- Boolean flag = workerService.startWait(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.startWait(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "4.上报成果", notes = "点击上报成果")
|
|
|
@PostMapping("/submit_result")
|
|
|
- public Result submitResult(@RequestHeader(value = "userId") Long userId,@RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
+ public Result submitResult(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
log.info("上报成果,/tms/worker/submit_result,参数:{}", JSON.toJSONString(workOrder));
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入作业中状态,2.订单进入成果报备中状态,3.并记行车日志
|
|
|
- Boolean flag = workerService.submitResult(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.submitResult(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "4.确认完成运单", notes = "点击确认完成运单")
|
|
|
@PostMapping("/finish_order")
|
|
|
- public Result finishOrder(@RequestHeader(value = "userId") Long userId,@RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
+ public Result finishOrder(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
log.info("确认完成运单,/tms/worker/finish_order,参数:{}", JSON.toJSONString(workOrder));
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入收车中状态,2.订单完成状态,3.并记行车日志
|
|
|
- Boolean flag = workerService.finishOrder(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.finishOrder(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "6.上报已到达收车点", notes = "点击上报已到达收车点")
|
|
|
@PostMapping("/arrive_terminal")
|
|
|
- public Result arriveTerminal(@RequestHeader(value = "userId") Long userId,@RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
+ public Result arriveTerminal(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
log.info("上报已到达收车点,/tms/worker/arrive_shouchedian,参数:{}", JSON.toJSONString(workOrder));
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入收车后检查状态,2.订单完成状态,3.并记行车日志
|
|
|
- Boolean flag = workerService.arriveTerminal(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.arriveTerminal(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "7.完成检查,结束此次行程", notes = "点击完成检查,结束此次行程")
|
|
|
@PostMapping("/finish_work")
|
|
|
- public Result finishWork(@RequestHeader(value = "userId") Long userId,@RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
+ public Result finishWork(@RequestHeader(value = "userId") Long userId, @RequestHeader(value = "userName") String userName, @RequestBody WorkOrder workOrder) {
|
|
|
log.info("上报已到达收车点,/tms/worker/arrive_shouchedian,参数:{}", JSON.toJSONString(workOrder));
|
|
|
if (workOrder == null || workOrder.getId() == null) {
|
|
|
return new Result(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
|
|
|
}
|
|
|
+ String utf8Name = userName;
|
|
|
+ try {
|
|
|
+ utf8Name = URLDecoder.decode(userName, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException ignored) {
|
|
|
+ }
|
|
|
//TODO 1.车辆进入已经收车状态,2.订单完成状态,3.并记行车日志,4.结束当前行程周期(从收车中到出车检查也结束当前行程周期)
|
|
|
- Boolean flag = workerService.finishWork(userId,userName, workOrder);
|
|
|
+ Boolean flag = workerService.finishWork(userId, utf8Name, workOrder);
|
|
|
return new Result<>(flag);
|
|
|
}
|
|
|
}
|