package com.steerinfo.dil.controller; import com.steerinfo.dil.service.IOmstruckOrderService; import com.steerinfo.dil.util.BaseRESTfulController; import com.steerinfo.dil.util.ColumnDataUtil; import com.steerinfo.dil.util.PageListAdd; import com.steerinfo.framework.controller.RESTfulResult; import com.steerinfo.framework.service.pagehelper.PageHelper; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.HashMap; import java.util.List; import java.util.Map; /** * OmstruckOrder RESTful接口: * @author generator * @version 1.0-SNAPSHORT 2021-09-03 03:47 * 类描述 * 修订历史: * 日期:2021-09-03 * 作者:TXF * 参考: * 描述:OmstruckOrder RESTful接口 * @see null * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved. */ @RestController @RequestMapping("/${api.version}/omstruckorders") public class OmstruckOrderController extends BaseRESTfulController { @Autowired IOmstruckOrderService omstruckOrderService; @Autowired ColumnDataUtil columnDataUtil; @ApiOperation(value="查询所有运输订单") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(86)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getAllTruckOrder") public RESTfulResult getAllTruckOrder(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, Integer orderStatus, Integer planId, Integer orderType){ if(mapValue == null){ mapValue = new HashMap<>(); } if(orderStatus != null){ mapValue.put("orderStatus", orderStatus); } if(planId != null){ mapValue.put("planId", planId); } if(orderType != null){ mapValue.put("orderType", orderType); } //不分页筛选数据 List> allTruckOrder = omstruckOrderService.getAllTruckOrder(mapValue); PageHelper.startPage(pageNum,pageSize); //分页数据 List> truckOrder = omstruckOrderService.getAllTruckOrder(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allTruckOrder,truckOrder); return success(pageList); } @ApiOperation(value="不适用表头返回数据") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "运输计划实绩对象", required = false, dataType = "Map"), }) @PostMapping("/getAllTruckOrderReturnListMap") public RESTfulResult getAllTruckOrder( Integer orderStatus, Integer planId, Integer orderType){ Map map = new HashMap<>(); if(orderStatus != null){ map.put("orderStatus", orderStatus); } if(planId != null){ map.put("planId", planId); } if(orderType != null){ map.put("orderType", orderType); } List> truckOrder = omstruckOrderService.getAllTruckOrder(map); return success(truckOrder); } @ApiOperation(value="查询所有空闲的运力信息") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(85)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), }) @PostMapping("/getAllCapacity") public RESTfulResult getAllCapacity(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, Integer carrierId ){ if(mapValue == null){ mapValue = new HashMap<>(); } if(carrierId != null){ mapValue.put("carrierId", carrierId); } mapValue.put("capacityTypeId", 1); mapValue.put("capacityStatus", 0); //不分页筛选数据 List> allCapacity = omstruckOrderService.getAllCapacity(mapValue); PageHelper.startPage(pageNum,pageSize); //分页数据 List> capacity = omstruckOrderService.getAllCapacity(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allCapacity,capacity); return success(pageList); } @ApiOperation(value="分解运输计划后 新增订单 或者直接新增订单 ") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "运输计划实绩对象", required = false, dataType = "Map"), }) @PostMapping("/addPurOrder") public RESTfulResult addPurOrder(@RequestBody(required=false) Map mapValue){ int i = omstruckOrderService.addPurOrder(mapValue); return success(i); } @ApiOperation(value="修改分派计划") @ApiImplicitParams({ @ApiImplicitParam(name = "planId", value = "运输计划Id", required = false, dataType = "Integer"), }) @PostMapping("/updateOrder") public RESTfulResult updateOrder(@RequestBody Map map){ int i = omstruckOrderService.updateOrder(map); return success(i); } @ApiOperation(value="派单") @ApiImplicitParams({ @ApiImplicitParam(name = "planId", value = "运输计划Id", required = false, dataType = "Integer"), }) @PostMapping("/dispatchOrder/{orderId}") public RESTfulResult dispatchOrder(@PathVariable("orderId") Integer orderId){ int i = omstruckOrderService.dispatchOrder(orderId); return success(i); } @ApiOperation(value="逻辑删除运单") @ApiImplicitParams({ @ApiImplicitParam(name = "planId", value = "运输计划Id", required = false, dataType = "Integer"), }) @PostMapping("/deleteOrder") public RESTfulResult deleteOrder(@RequestBody(required = false) Map map, Integer planId){ if(planId != null){ map.put("planId", planId); } Object orderMaterialWeight = map.get("orderMaterialWeight"); if(orderMaterialWeight != null){ if(orderMaterialWeight instanceof Integer){ map.put("orderMaterialWeight", -((Integer)orderMaterialWeight)); }else if(orderMaterialWeight instanceof Double){ map.put("orderMaterialWeight", -((Double)orderMaterialWeight)); } //模拟前端传来新重量 复用 map.put("weight", 0); } int i = omstruckOrderService.deleteOrder(map); return success(i); } @ApiOperation(value="司机接收、拒绝接单") @ApiImplicitParams({ @ApiImplicitParam(name = "planId", value = "运输计划Id", required = false, dataType = "Integer"), }) @PostMapping("/driverReceiveOrRefuse/{orderId}") public RESTfulResult driverReceiveOrRefuse(@PathVariable("orderId") Integer orderId, Integer orderReceiveStatus){ Map map = new HashMap<>(); map.put("orderId", orderId); map.put("orderReceiveStatus", orderReceiveStatus); int i = omstruckOrderService.driverReceiveOrRefuse(map); return success(i); } @ApiOperation(value="司机接单信息") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(117)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), }) @PostMapping("/getReceiveRefuseOrder/{orderReceiveStatus}") public RESTfulResult getReceiveRefuseOrder(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, @PathVariable Integer orderReceiveStatus, Integer orderType, Integer orderStatus ){ if(mapValue == null){ mapValue = new HashMap<>(); } if(orderType != null){ mapValue.put("orderTypee", orderType); } if(orderReceiveStatus != null){ mapValue.put("orderReceiveStatus", orderReceiveStatus); } if(orderStatus != null){ mapValue.put("orderStatus", orderStatus); } //不分页筛选数据 List> allOrder = omstruckOrderService.getReceiveRefuseOrder(mapValue); PageHelper.startPage(pageNum,pageSize); //分页数据 List> order = omstruckOrderService.getReceiveRefuseOrder(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allOrder,order); return success(pageList); } @ApiOperation(value="司机APP端调用接口查询数据 4 已下发 5 已接收") @ApiImplicitParams({ @ApiImplicitParam(name = "capacityNumber", value = "运输计划Id", required = false, dataType = "String"), }) @PostMapping("/sendMesToDriver") public RESTfulResult sendMesToDriver(String capacityNumber, Integer orderStatus){ HashMap map = new HashMap<>(); if(orderStatus != null) map.put("orderStatus", orderStatus); if(capacityNumber != null) map.put("capacityNumber", capacityNumber); List> mesToDriver = omstruckOrderService.sendMesToDriver(map); return success(mesToDriver); } @ApiOperation(value="通过车牌获取所有已拒绝的订单") @ApiImplicitParams({ @ApiImplicitParam(name = "capacityNumber", value = "运输计划Id", required = false, dataType = "String"), }) @PostMapping("/getRefuseOrderByCapacityNum") public RESTfulResult sendMesToDriver(String capacityNumber){ HashMap map = new HashMap<>(); map.put("capacityNumber", capacityNumber); List> receiveRefuseOrderByCapacityId = omstruckOrderService.getReceiveRefuseOrderByCapacityId(map); return success(receiveRefuseOrderByCapacityId); } @ApiOperation(value="通过运输订单ID查询运单信息 包含各个作业路径") @ApiImplicitParams({ @ApiImplicitParam(name = "capacityNumber", value = "运输计划Id", required = false, dataType = "String"), }) @PostMapping("/getOrderMesByOrderNum/{orderId}") public RESTfulResult getOrderMesByOrderNum(@PathVariable("orderId") Integer orderId){ HashMap map = new HashMap<>(); map.put("orderId", orderId); List> mesToDriver = omstruckOrderService.getOrderMesByOrderNum(map); return success(mesToDriver); } @ApiOperation(value="通过运输订单ID查询实绩地点和时间") @ApiImplicitParams({ @ApiImplicitParam(name = "orderId", value = "运输订单Id", required = false, dataType = "Integer"), }) @PostMapping("/selectPlaceAndTime/{orderId}") public RESTfulResult selectPlaceAndTime(@PathVariable("orderId") Integer orderId){ List> placeAndTime = omstruckOrderService.selectPlaceAndTime(new BigDecimal(orderId)); return success(placeAndTime); } @ApiOperation(value="通过运输订单ID查询运单信息") @PostMapping("/selectOrderByOrderId/{orderId}") public RESTfulResult selectOrderByOrderId(@PathVariable("orderId") Integer orderId){ List> mapList = omstruckOrderService.getOrderByOrderId(new BigDecimal(orderId)); return success(mapList); } @ApiOperation(value="查看运输派单") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(117)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), }) @PostMapping("/getTransportDispatch/{orderReceiveStatus}") public RESTfulResult getTransportDispatch(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, @PathVariable Integer orderReceiveStatus, Integer orderType, Integer orderStatus ){ if(mapValue == null){ mapValue = new HashMap<>(); } if(orderType != null){ mapValue.put("orderTypee", orderType); } if(orderReceiveStatus != null){ mapValue.put("orderReceiveStatus", orderReceiveStatus); } if(orderStatus != null){ mapValue.put("orderStatus", orderStatus); } //不分页筛选数据 List> allOrder = omstruckOrderService.getTransportDispatch(mapValue); PageHelper.startPage(pageNum,pageSize); //分页数据 List> order = omstruckOrderService.getTransportDispatch(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allOrder, order); return success(pageList); } }