Quellcode durchsuchen

运单分页列表及详情

chengang vor 4 Jahren
Ursprung
Commit
23d2cb281d

+ 31 - 13
src/main/java/com/aoyang/tms/controller/WorkOrderController.java

@@ -1,16 +1,21 @@
 package com.aoyang.tms.controller;
 package com.aoyang.tms.controller;
 
 
 
 
+import com.alibaba.fastjson.JSON;
+import com.aoyang.tms.common.ErrCodeEnum;
+import com.aoyang.tms.controller.param.WorkOrderPageParam;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.*;
 import io.swagger.annotations.*;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
+
 import java.util.*;
 import java.util.*;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
-import  com.aoyang.tms.service.WorkOrderService;
-import  com.aoyang.tms.entity.WorkOrder;
+
+import com.aoyang.tms.service.WorkOrderService;
+import com.aoyang.tms.entity.WorkOrder;
 import com.aoyang.common.result.Result;
 import com.aoyang.common.result.Result;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -20,8 +25,8 @@ import com.aoyang.common.param.PageParam;
 
 
 /**
 /**
  * <p>
  * <p>
-    * 运单运单表 控制器
-    * </p>
+ * 运单运单表 控制器
+ * </p>
  *
  *
  * @author guoyong
  * @author guoyong
  * @since 2022-04-20
  * @since 2022-04-20
@@ -35,30 +40,43 @@ public class WorkOrderController {
     @Resource
     @Resource
     private WorkOrderService workOrderService;
     private WorkOrderService workOrderService;
 
 
-    @ApiOperation(value = "获取运单列表",notes="")
-    @PostMapping("/list")
-    public Result list(@RequestBody PageParam<WorkOrder> pageParam) {
-        Page<WorkOrder> page = new Page<>(pageParam.getPage(), pageParam.getSize());
-        IPage<WorkOrder> records = workOrderService.page(page, Wrappers.query(pageParam.getParam()));
-        return new Result<>(records);
+    @ApiOperation(value = "获取运单分页列表", notes = "必传参数:orgId")
+    @PostMapping("/page_list")
+    public Result list(@RequestBody PageParam<WorkOrderPageParam> pageParam) {
+        log.info("获取运单分页列表,调用/tms/work_order/page_list,参数:{}", JSON.toJSONString(pageParam));
+        if (pageParam == null || pageParam.getParam() == null || pageParam.getParam().getWorkOrder() == null
+                || pageParam.getParam().getWorkOrder().getOrgId() == null) {
+            return new Result<>(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
+        }
+        return new Result<>(workOrderService.findPage(pageParam));
+    }
+
+    @ApiOperation(value = "根据id获取运单详情", notes = "必传参数:id")
+    @PostMapping("/get_one")
+    public Result getOne(@RequestBody WorkOrder param) {
+        log.info("根据id获取运单详情,调用/tms/work_order/get_one,参数:{}", JSON.toJSONString(param));
+        if (param == null || param.getId() == null) {
+            return new Result<>(ErrCodeEnum.BAD_PARAM.getCode(), ErrCodeEnum.BAD_PARAM.getMessage());
+        }
+        return new Result<>(workOrderService.getById(param));
     }
     }
 
 
 
 
-    @ApiOperation(value = "派单",notes="调度员派单操作")
+    @ApiOperation(value = "派单", notes = "调度员派单操作")
     @PostMapping("/add")
     @PostMapping("/add")
     public Result add(@RequestBody WorkOrder workOrder) {
     public Result add(@RequestBody WorkOrder workOrder) {
         Boolean flag = workOrderService.save(workOrder);
         Boolean flag = workOrderService.save(workOrder);
         return new Result<>(flag);
         return new Result<>(flag);
     }
     }
 
 
-    @ApiOperation(value = "修改派单",notes="根据id修改派单")
+    @ApiOperation(value = "修改派单", notes = "根据id修改派单")
     @PostMapping("/update")
     @PostMapping("/update")
     public Result update(@RequestBody WorkOrder workOrder) {
     public Result update(@RequestBody WorkOrder workOrder) {
         Boolean flag = workOrderService.updateById(workOrder);
         Boolean flag = workOrderService.updateById(workOrder);
         return new Result<>(flag);
         return new Result<>(flag);
     }
     }
 
 
-    @ApiOperation(value = "取消派单",notes="取消派单")
+    @ApiOperation(value = "取消派单", notes = "取消派单")
     @PostMapping("/delete")
     @PostMapping("/delete")
     public Result delete(@RequestBody WorkOrder workOrder) {
     public Result delete(@RequestBody WorkOrder workOrder) {
         Boolean flag = workOrderService.updateById(workOrder);
         Boolean flag = workOrderService.updateById(workOrder);

+ 16 - 0
src/main/java/com/aoyang/tms/controller/param/WorkOrderPageParam.java

@@ -0,0 +1,16 @@
+package com.aoyang.tms.controller.param;
+
+import com.aoyang.tms.entity.WorkOrder;
+import lombok.Data;
+
+@Data
+public class WorkOrderPageParam {
+
+    private WorkOrder workOrder;
+
+    private String createDateFrom;
+    private String createDateTo;
+
+    private String completeDateFrom;
+    private String completeDateTo;
+}

+ 48 - 0
src/main/java/com/aoyang/tms/controller/vo/WorkOrderPageListVO.java

@@ -0,0 +1,48 @@
+package com.aoyang.tms.controller.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+public class WorkOrderPageListVO {
+
+    @ApiModelProperty(value = "id,自增")
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long id;
+
+    @ApiModelProperty(value = "运单号")
+    private String orderNo;
+
+    @ApiModelProperty(value = "运单类型1装车、2卸车")
+    private Integer type;
+
+    @ApiModelProperty(value = "托运方名称")
+    private String shipperName;
+
+    @ApiModelProperty(value = "运单作业状态")
+    private String workOrderType;
+
+    @ApiModelProperty(value = "作业地点名")
+    private String spotName;
+
+    @ApiModelProperty(value = "执行运力(车牌号-挂车车牌号)")
+    private String carAndTrailerNumber;
+
+    @ApiModelProperty(value = "运力部门名称")
+    private String truckDeptName;
+
+    @ApiModelProperty(value = "派单时间")
+    private LocalDateTime createDate;
+
+    @ApiModelProperty(value = "运单完成时间")
+    private LocalDateTime completeDate;
+
+
+
+}

+ 5 - 1
src/main/java/com/aoyang/tms/entity/WorkOrder.java

@@ -40,7 +40,7 @@ public class WorkOrder implements Serializable {
     @JsonFormat(shape = JsonFormat.Shape.STRING)
     @JsonFormat(shape = JsonFormat.Shape.STRING)
     private Long cycleId;
     private Long cycleId;
 
 
-    @ApiModelProperty(value = "运单状态:0-待执行 1-前往 2-等待 3-成果报备 4-已完成 5-已关闭")
+    @ApiModelProperty(value = "运单状态:待执行0,前往装车点10,装车等待20,装车成果报备中30,前往卸车点10,卸车等待20,卸车成果报备30,已完成40,已关闭50,已报废60")
     @TableField("order_status")
     @TableField("order_status")
     private Integer orderStatus;
     private Integer orderStatus;
 
 
@@ -195,6 +195,10 @@ public class WorkOrder implements Serializable {
     @TableField("jing_weight")
     @TableField("jing_weight")
     private String jingWeight;
     private String jingWeight;
 
 
+    @ApiModelProperty(value = "运单完成时间")
+    @TableField("complete_date")
+    private LocalDateTime completeDate;
+
     @ApiModelProperty(value = "创建人id")
     @ApiModelProperty(value = "创建人id")
     @TableField("creater")
     @TableField("creater")
     @JsonFormat(shape = JsonFormat.Shape.STRING)
     @JsonFormat(shape = JsonFormat.Shape.STRING)

+ 13 - 0
src/main/java/com/aoyang/tms/service/WorkOrderService.java

@@ -1,6 +1,11 @@
 package com.aoyang.tms.service;
 package com.aoyang.tms.service;
 
 
+import com.aoyang.common.param.PageParam;
+import com.aoyang.tms.controller.param.WorkOrderPageParam;
+import com.aoyang.tms.controller.vo.WorkOrderPageListVO;
+import com.aoyang.tms.entity.Shipper;
 import com.aoyang.tms.entity.WorkOrder;
 import com.aoyang.tms.entity.WorkOrder;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 
 /**
 /**
@@ -13,4 +18,12 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
  */
 public interface WorkOrderService extends IService<WorkOrder> {
 public interface WorkOrderService extends IService<WorkOrder> {
 
 
+    /**
+     * @return
+     * @Author chengang
+     * @Description 获取运单分页列表
+     * @Date 2022/4/21
+     * @Param
+     **/
+    IPage<WorkOrderPageListVO> findPage(PageParam<WorkOrderPageParam> pageParam);
 }
 }

+ 71 - 0
src/main/java/com/aoyang/tms/service/impl/WorkOrderServiceImpl.java

@@ -1,11 +1,23 @@
 package com.aoyang.tms.service.impl;
 package com.aoyang.tms.service.impl;
 
 
+import com.aoyang.common.param.PageParam;
+import com.aoyang.tms.controller.param.WorkOrderPageParam;
+import com.aoyang.tms.controller.vo.TruckDeptListVO;
+import com.aoyang.tms.controller.vo.WorkOrderPageListVO;
+import com.aoyang.tms.entity.Shipper;
+import com.aoyang.tms.entity.TruckDept;
 import com.aoyang.tms.entity.WorkOrder;
 import com.aoyang.tms.entity.WorkOrder;
 import com.aoyang.tms.mapper.WorkOrderMapper;
 import com.aoyang.tms.mapper.WorkOrderMapper;
 import com.aoyang.tms.service.WorkOrderService;
 import com.aoyang.tms.service.WorkOrderService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
 /**
  * <p>
  * <p>
  * 运单运单表 服务实现类
  * 运单运单表 服务实现类
@@ -17,4 +29,63 @@ import org.springframework.stereotype.Service;
 @Service
 @Service
 public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder> implements WorkOrderService {
 public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder> implements WorkOrderService {
 
 
+    @Override
+    public IPage<WorkOrderPageListVO> findPage(PageParam<WorkOrderPageParam> pageParam) {
+        WorkOrderPageParam workOrderPageParam = pageParam.getParam();
+        WorkOrder workOrderParam = workOrderPageParam.getWorkOrder();
+        IPage<WorkOrderPageListVO> workOrderPageListVOIPage = new Page<>();
+        Page<WorkOrder> page = new Page<>(pageParam.getPage(), pageParam.getSize());
+        QueryWrapper<WorkOrder> queryWrapper = new QueryWrapper<>();
+        if (workOrderPageParam.getCreateDateFrom() != null && workOrderPageParam.getCreateDateTo() != null) {
+            queryWrapper.ge("create_date", workOrderPageParam.getCreateDateFrom());
+            queryWrapper.le("create_date", workOrderPageParam.getCreateDateTo());
+        }
+        if (workOrderPageParam.getCompleteDateFrom() != null && workOrderPageParam.getCompleteDateTo() != null) {
+            queryWrapper.ge("complete_date", workOrderPageParam.getCompleteDateFrom());
+            queryWrapper.le("complete_date", workOrderPageParam.getCompleteDateTo());
+        }
+        if (workOrderParam.getOrderNo() != null) {
+            queryWrapper.eq("order_no", workOrderParam.getOrderNo());
+        }
+        if (workOrderParam.getOrgId() != null) {
+            queryWrapper.eq("org_id", workOrderParam.getOrgId());
+        }
+        if (workOrderParam.getType() != null) {
+            queryWrapper.eq("type", workOrderParam.getType());
+        }
+        if (workOrderParam.getShipperName() != null) {
+            queryWrapper.like("shipper_name", workOrderParam.getShipperName());
+        }
+        //TODO运力部门筛选
+
+
+        IPage<WorkOrder> records = page(page, queryWrapper.orderByDesc("update_date"));
+        List<WorkOrder> list = records.getRecords();
+        List<WorkOrderPageListVO> listVo = new ArrayList<>();
+
+        for (WorkOrder workOrder : list) {
+            WorkOrderPageListVO workOrderPageListVO = new WorkOrderPageListVO();
+            workOrderPageListVO.setId(workOrder.getId());
+            workOrderPageListVO.setOrderNo(workOrder.getOrderNo());
+            workOrderPageListVO.setType(workOrder.getType());
+            workOrderPageListVO.setShipperName(workOrder.getShipperName());
+            workOrderPageListVO.setSpotName(workOrder.getSpotName());
+            workOrderPageListVO.setCreateDate(workOrder.getCreateDate());
+            workOrderPageListVO.setCompleteDate(workOrder.getCompleteDate());
+
+            //TODO运单作业状态
+            workOrderPageListVO.setWorkOrderType(null);
+            //TODO执行运力(车牌号-挂车车牌号)
+            workOrderPageListVO.setCarAndTrailerNumber(null);
+            //TODO运力部门
+            workOrderPageListVO.setTruckDeptName(null);
+
+            listVo.add(workOrderPageListVO);
+        }
+        workOrderPageListVOIPage.setRecords(listVo);
+        workOrderPageListVOIPage.setTotal(records.getTotal());
+        workOrderPageListVOIPage.setPages(records.getPages());
+        workOrderPageListVOIPage.setCurrent(records.getCurrent());
+        return workOrderPageListVOIPage;
+    }
 }
 }

Datei-Diff unterdrückt, da er zu groß ist
+ 2 - 1
src/main/resources/mapper/WorkOrderMapper.xml