提交 d8037ce3 authored 作者: liuhaiquan's avatar liuhaiquan

Merge remote-tracking branch 'origin/v4.9_create_goods_child_20230918' into…

Merge remote-tracking branch 'origin/v4.9_create_goods_child_20230918' into v4.9_create_goods_child_20230918 # Conflicts: # performance-web/src/main/java/com/clx/performance/PerformanceApplication.java
...@@ -28,7 +28,7 @@ public class PageCarrierOrderListParam extends PageParam { ...@@ -28,7 +28,7 @@ public class PageCarrierOrderListParam extends PageParam {
@ApiModelProperty(value = "开始时间", example = "2023-09-09 12:00:01", required = true) @ApiModelProperty(value = "开始时间", example = "2023-09-09 12:00:01", required = true)
private String beginTime; private String beginTime;
@ApiModelProperty(value = "结束", example = "2023-09-09 12:00:01", required = true) @ApiModelProperty(value = "结束时间", example = "2023-09-09 12:00:01", required = true)
private String endTime; private String endTime;
@ApiModelProperty(value = "时间类型: 1创建时间 2拉运开始时间 3拉运结束时间 ") @ApiModelProperty(value = "时间类型: 1创建时间 2拉运开始时间 3拉运结束时间 ")
......
package com.clx.order.params;
import com.msl.common.base.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import javax.validation.constraints.NotNull;
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class PageOrderGoodsListParam extends PageParam {
@ApiModelProperty(value = "订单编号")
private String orderNo;
@ApiModelProperty(value = "货单编号")
private String orderGoodsNo;
@ApiModelProperty(value = "货单编号类型")
private String orderGoodsType;
@ApiModelProperty(value = "货单状态: 10:已挂单 20:挂单中 30:运输中 40:已完成 50:已取消")
private Integer orderGoodsStatus;
@ApiModelProperty(value = "开始时间", example = "2023-09-09 12:00:01")
private String beginTime;
@ApiModelProperty(value = "结束时间", example = "2023-09-09 12:00:01")
private String endTime;
@ApiModelProperty(value = "用车类型: 1平台车辆 2部分平台车辆 3自有车辆")
private Integer truckDemand;
}
...@@ -19,18 +19,18 @@ public enum OrderChildEnum { ...@@ -19,18 +19,18 @@ public enum OrderChildEnum {
GO_TO_SEND(30, "前往货源地"), GO_TO_SEND(30, "前往货源地"),
ARRIVE_SEND(40, "到达货源地"), ARRIVE_SEND(40, "到达货源地"),
LOAD(60 , "装货成功"), LOAD(50 , "装货成功"),
GO_TO_RECEIVE(50, "前往目的地"), GO_TO_RECEIVE(60, "前往目的地"),
ARRIVE_RECEIVE(60 , "到达目的地"), ARRIVE_RECEIVE(70 , "到达目的地"),
DRIVER_CONFIRM(70, "收货待确认"), UNLOAD(80, "收货待确认"),
POUND_AUDIT_FAIL(80, "磅单审核驳回"), POUND_AUDIT_FAIL(90, "磅单审核驳回"),
UNSETTLED(80, "待结算"), UNSETTLED(100, "待结算"),
COMPLETE(100, "完成"), COMPLETE(110, "完成"),
DRIVER_CANCEL(200, "司机取消"), DRIVER_CANCEL(210, "司机取消"),
PLATFORM_CANCEL(200, "平台取消"), PLATFORM_CANCEL(220, "平台取消"),
// //
// OWNER_CONFIRM(50, "货主确认车辆"),//货主确认车辆 // OWNER_CONFIRM(50, "货主确认车辆"),//货主确认车辆
......
...@@ -42,4 +42,21 @@ public enum OrderChildLogEnum { ...@@ -42,4 +42,21 @@ public enum OrderChildLogEnum {
} }
} }
@Getter
@AllArgsConstructor
public enum CreateType {
OWNER(1, "货主"),
PLATFORM(2, "承运"),
DRIVER(3, "司机"),
;
private final int code;
private final String msg;
public static Optional<CreateType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
} }
package com.clx.performance.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Optional;
public enum OrderChildPoundAuditEnum {
;
@Getter
@AllArgsConstructor
public enum Status {
AUDIT(0, "待审核"),
APPROVED(1, "审核通过"),
REJECT(2, "审核驳回"),
;
private final Integer code;
private final String msg;
public static Optional<Status> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
}
package com.clx.performance.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Optional;
public enum OrderGoodsStatusEnum {
;
@Getter
@AllArgsConstructor
public enum Status {
CREATED(10, "已挂单"),
PAYING(20, "挂单中"),
GO_TO_SEND(30, "运输中"),
ARRIVE_SEND(40, "已完成"),
CANCEL(50, "已取消"),
;
private final Integer code;
private final String name;
public static Optional<Status> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
}
package com.clx.performance.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Optional;
public enum OrderGoodsTypeEnum {
;
@Getter
@AllArgsConstructor
public enum Status {
PLATFORM("PT", "平台"),
;
private final String code;
private final String name;
public static Optional<Status> getByCode(String code) {
return Arrays.stream(values()).filter(e -> e.code .equals(code)).findFirst();
}
}
}
package com.clx.performance.enums;
import com.msl.common.enums.ResultEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public enum PerformanceResultEnum implements ResultEnum {
/**
* 系统
*/
SIGN_NULL(1001, "签名不存在"),
SIGN_ERROR(1002, "签名错误"),
TIMESTAMP_ERROR(1003, "请求不在时间范围内"),
INCREMENT_ERROR(1004, "编码生成失败"),
HTTP_ERROR(1005, "HTTP请求失败"),
LOCK_ERROR(1006,"加锁失败"),
TRY_LOCK_ERROR(1007,"操作频繁,请稍后重试"),
FEIGN_ERROR(1008, "服务调用失败"),
/**
* 通用
*/
USER_NULL(1101, "用户不存在"),
MOBILE_NULL(1102, "手机号码未注册"),
USER_NOT_REGISTER(1103, "用户尚未注册"),
USER_NOT_AUTH(1104, "用户暂未实名"),
DATA_NOT_FIND(1105, "数据不存在"),
DATA_REPEAT(1106, "数据重复"),
ORDER_NO_FOUND(1200, "货单不存在"),
ORDER_WEIGHT_LACK(1200, "剩余数量不足"),
ORDER_CHILD_NO_FOUND(1301, "运单不存在"),
ORDER_CHILD_STATUS_CHANGED(1302, "运单状态已变更,请重新刷新页面"),
ORDER_CHILD_CANCELED(1303, "运单状态已取消"),
ORDER_CHILD_COMPLETE(1304, "运单状态已完成"),
ORDER_CHILD_LOAD_TIMEOUT(1305, "超过装货截止时间"),
ORDER_CHILD_CANCEL_FORBID(1306, "运单无法取消"),
ORDER_CHILD_CANCEL_FORBID_COUNT(1307, "超出最大取消数量"),
;
private final int code;
private final String msg;
}
package com.clx.performance.param.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
/**
* @Author liruixin
* @create 2023-09-19 13:33
*/
@Getter
@Setter
@NoArgsConstructor
@ToString
public class PoundAuditParam {
@NotBlank(message = "运单编号不能为空")
@ApiModelProperty(value="运单编号",example = "201457878")
private String childNo;
@ApiModelProperty(value="审核驳回类型:1装车 2卸车 3装车+卸车",example = "1")
private Integer rejectType;
@ApiModelProperty(value="驳回原因",example = "驳回原因")
private String remark;
@NotNull(message = "审核状态不能为空")
@ApiModelProperty(value="审核状态 0-待审核,1-审核失败, 2-审核成功",example = "1")
private Integer status;
@ApiModelProperty(value="装货净重",example = "11")
private BigDecimal loadNet;
@ApiModelProperty(value="卸货净重",example = "22")
private BigDecimal unloadNet;
}
package com.clx.performance.vo.app;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotEmpty;
import java.math.BigDecimal;
import java.util.List;
/**
* @Author: aiqinguo
* @Description: 运单表
* @Date: 2023/09/19 16:49:06
* @Version: 1.0
*/
@ApiModel(description = "运单表")
@Getter
@Setter
@ToString
@NoArgsConstructor
public class OrderChildVO {
@ApiModelProperty(value = "id", example = "")
private Integer id;
@ApiModelProperty(value = "用户编号", example = "")
private Long userNo;
@ApiModelProperty(value = "货主用户编号", example = "")
private Long ownerUserNo;
@ApiModelProperty(value = "运单编号", example = "")
private String childNo;
@ApiModelProperty(value = "货单编号", example = "")
private String orderGoodsNo;
@ApiModelProperty(value = "订单编号", example = "")
private String orderNo;
@ApiModelProperty(value = "货物id", example = "")
private Integer goodsId;
@ApiModelProperty(value = "货物名称", example = "")
private String goodsName;
@ApiModelProperty(value = "运费单价(分)", example = "")
private BigDecimal freightPrice;
@ApiModelProperty(value = "发货地址id", example = "")
private Integer sendAddressId;
@ApiModelProperty(value = "发货地址", example = "")
private String sendAddress;
@ApiModelProperty(value = "收货地址id", example = "")
private Integer receiveAddressId;
@ApiModelProperty(value = "收货地址", example = "")
private String receiveAddress;
@ApiModelProperty(value = "最晚装货时间", example = "")
private String loadDeadline;
@ApiModelProperty(value = "车辆ID", example = "")
private Integer truckId;
@ApiModelProperty(value = "车牌号", example = "")
private String truckNo;
@ApiModelProperty(value = "载重(单位吨)", example = "")
private BigDecimal truckLoad;
@ApiModelProperty(value = "司机用户编号", example = "")
private Long driverUserNo;
@ApiModelProperty(value = "司机姓名", example = "")
private String driverName;
@ApiModelProperty(value = "司机手机号", example = "")
private String driverMobile;
@ApiModelProperty(value = "装货毛重(单位吨)", example = "")
private BigDecimal loadRough;
@ApiModelProperty(value = "装货皮重(单位吨)", example = "")
private BigDecimal loadTare;
@ApiModelProperty(value = "装货净重(单位吨)", example = "")
private BigDecimal loadNet;
@ApiModelProperty(value = "卸货毛重(单位吨)", example = "")
private BigDecimal unloadRough;
@ApiModelProperty(value = "卸货皮重(单位吨)", example = "")
private BigDecimal unloadTare;
@ApiModelProperty(value = "卸货净重(单位吨)", example = "")
private BigDecimal unloadNet;
@ApiModelProperty(value = "拉运重量(单位吨)", example = "")
private BigDecimal weight;
@ApiModelProperty(value = "磅单审核状态", example = "")
private Integer poundStatus;
@ApiModelProperty(value = "状态", example = "")
private Integer status;
@ApiModelProperty(value = "支付时间", example = "")
private String payTime;
@ApiModelProperty(value = "装车时间", example = "")
private String loadTime;
@ApiModelProperty(value = "卸车时间", example = "")
private String unloadTime;
@ApiModelProperty(value = "创建时间", example = "")
private String createTime;
@ApiModelProperty(value = "修改时间", example = "")
private String modifiedTime;
@ApiModelProperty(value = "装车磅单图片列表")
private List<String> loadImageList;
@ApiModelProperty(value = "卸车磅单图片列表")
private List<String> unloadImageList;
}
\ No newline at end of file
package com.clx.performance.param.app; package com.clx.performance.vo.app;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Getter; import lombok.Getter;
...@@ -6,12 +6,11 @@ import lombok.NoArgsConstructor; ...@@ -6,12 +6,11 @@ import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@Getter @Getter
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
public class SaveOrderChildVo { public class SaveOrderChildVO {
@ApiModelProperty(value = "运单编号", example = "100000000") @ApiModelProperty(value = "运单编号", example = "100000000")
@NotBlank(message = "运单编号不能为空") @NotBlank(message = "运单编号不能为空")
......
package com.clx.performance.vo.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.math.BigDecimal;
import java.util.List;
@Getter
@Setter
@NoArgsConstructor
public class OrderChildPoundAuditDetailVO {
@ApiModelProperty(value="运单编号",example = "41441")
private String childNo;
@ApiModelProperty(value="装货净重",example = "10")
private BigDecimal loadNet;
@ApiModelProperty(value="卸货净重",example = "41")
private BigDecimal unloadNet;
@ApiModelProperty(value="审核状态 0-待审核,1-审核失败, 2-审核成功",example = "1")
private Integer status;
@ApiModelProperty(value="备注",example = "41441")
private String remark;
@ApiModelProperty(value="审核驳回类型:1装车 2卸车 3装车+卸车",example = "1")
private Integer rejectType;
@ApiModelProperty(value="装车磅单图片")
private List<String> loadImages;
@ApiModelProperty(value="卸车磅单图片")
private List<String> unloadImages;
}
\ No newline at end of file
package com.clx.performance.vo.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@Setter
@NoArgsConstructor
public class OrderChildPoundLogVO {
@ApiModelProperty(value="审核状态 0-待审核,1-审核失败, 2-审核成功",example = "1")
private Integer status;
@ApiModelProperty(value="操作时间",example = "2020-01-01 10:10:10")
private String createTime;
@ApiModelProperty(value="审核人",example = "李瑞")
private String createName;
}
\ No newline at end of file
package com.clx.performance.vo.pc;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.convertor.field.Convert;
import com.msl.common.convertor.field.Converted;
import com.msl.common.convertor.type.MoneyOutConvert;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.math.BigDecimal;
/**
* @Author: aiqinguo
* @Description: 运单表
* @Date: 2023/09/18 11:34:50
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
public class OrderGoodsVO {
@ApiModelProperty("订单编号")
private String orderNo;
@ApiModelProperty("货单编号类型")
private String orderGoodsType;
@ApiModelProperty("货单编号")
private String orderGoodsNo;
@ApiModelProperty("货单状态")
private Integer orderGoodsStatus;
@ApiModelProperty("提取吨数")
private BigDecimal extractWeight;
@ApiModelProperty("剩余拉运吨数")
private BigDecimal residueTransportWeight;
@ApiModelProperty("发货地址ID")
private Integer sendAddressId;
@ApiModelProperty("发货地址简称")
private String sendAddressShorter;
@ApiModelProperty("发货地址经度")
private BigDecimal sendLongitude;
@ApiModelProperty("发货地址纬度")
private BigDecimal sendLatitude;
@ApiModelProperty("收货地址ID")
private Integer receiveAddressId;
@ApiModelProperty("收货地址简称")
private String receiveAddressShorter;
@ApiModelProperty("收货地址经度")
private BigDecimal receiveLongitude;
@ApiModelProperty("收货地址纬度")
private BigDecimal receiveLatitude;
@ApiModelProperty("货物ID")
private Integer goodsId;
@ApiModelProperty("货物名称")
private String goodsName;
@ApiModelProperty("挂单方式 1公开派单 2定向派单")
private Integer pendingOrderWay;
@ApiModelProperty("定向运单失效时间")
private String directionalExpireTime;
@ApiModelProperty("最晚到达货源地时间/运单的最晚装货时间")
private String lastArriveSendTime;
@ApiModelProperty("挂单时间")
private String pendingOrderTime;
@ApiModelProperty("提取方式 1提取全部 2提取部分")
private Integer extractWay;
@ApiModelProperty("需要车辆/辆")
private Integer needTruckNum;
@ApiModelProperty("高级物流经理id")
private Integer seniorLogisticsManagerId;
@ApiModelProperty("高级物流经理姓名")
private String seniorLogisticsManagerName;
@ApiModelProperty("挂单运费")
@MoneyOutConvert
private BigDecimal pendingOrderFreight;
@ApiModelProperty("创建人用户编号")
private Long userNo;
@ApiModelProperty("创建人姓名")
private String userName;
@ApiModelProperty("创建时间")
private String createTime;
}
\ No newline at end of file
...@@ -17,7 +17,7 @@ import java.math.BigDecimal; ...@@ -17,7 +17,7 @@ import java.math.BigDecimal;
@Getter @Getter
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
public class OrderChildPoundAuditVO { public class PageOrderChildPoundAuditVO {
@ApiModelProperty(value="运单编号",example = "41441") @ApiModelProperty(value="运单编号",example = "41441")
private String childNo; private String childNo;
......
...@@ -16,7 +16,7 @@ import org.springframework.scheduling.annotation.EnableAsync; ...@@ -16,7 +16,7 @@ import org.springframework.scheduling.annotation.EnableAsync;
// @ComponentScan("com.msl.common.utils.*"), // @ComponentScan("com.msl.common.utils.*"),
//}) //})
@ComponentScan({"com.clx.performance.*", "com.msl.*"}) @ComponentScan({"com.clx.performance.*", "com.msl.*"})
@EnableFeignClients(basePackages = {"com.msl.*", "com.clx.performance.*", "com.clx.order.*","com.clx.user.*"}) @EnableFeignClients(basePackages = {"com.msl.*", "com.clx.performance.*", "com.clx.order.*", "com.clx.user.*"})
@ViewScan(basePackage = "com.clx.user.view") @ViewScan(basePackage = "com.clx.user.view")
public class PerformanceApplication { public class PerformanceApplication {
......
package com.clx.performance.controller.app;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.order.feign.OrderFeign;
import com.clx.order.params.OrderGoodsChildParams;
import com.clx.order.params.OrderGoodsParams;
import com.clx.order.params.PageCarrierOrderListParam;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.order.vo.feign.FeignOrderVO;
import com.clx.order.vo.feign.FeignPageOrderVO;
import com.clx.performance.component.OrderGoodsIdGenerate;
import com.clx.performance.constant.RabbitKeyConstants;
import com.clx.performance.constant.RedisConstants;
import com.clx.performance.enums.OrderGoodsStatusEnum;
import com.clx.performance.enums.OrderGoodsTypeEnum;
import com.clx.performance.mapper.OrderGoodsMapper;
import com.clx.performance.model.OrderGoods;
import com.clx.performance.service.OrderGoodsService;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.base.PageData;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result;
import com.msl.common.utils.DateUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageBuilder;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
* @ClassName GoodsOrderController
* @Description
* @Author kavin
* @Date 2023/9/17 17:16
* @Version 1.0
*/
@Slf4j
@RestController
@RequestMapping("/app/goodsOrder")
@Validated
@Api(tags = "APP-货单")
public class AppGoodsOrderController {
@Autowired
OrderGoodsService orderGoodsService;
@Autowired
OrderGoodsMapper orderGoodsMapper;
@ApiOperation(value = "查看货单详情", notes = "<br>By:胡宇帆")
@GetMapping("/getOrderGoodsInfo")
@UnitCovert(param = false)
public Result<OrderGoodsVO> getOrderGoodsInfo(@RequestParam String orderGoodsNo) {
return Result.ok(orderGoodsService.getOrderGoodsInfoByOrderGoodsNo(orderGoodsNo));
}
}
...@@ -2,6 +2,8 @@ package com.clx.performance.controller.app; ...@@ -2,6 +2,8 @@ package com.clx.performance.controller.app;
import com.clx.performance.param.app.*; import com.clx.performance.param.app.*;
import com.clx.performance.service.OrderChildService; import com.clx.performance.service.OrderChildService;
import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.app.SaveOrderChildVO;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -32,7 +34,7 @@ public class DriverOrderChildController { ...@@ -32,7 +34,7 @@ public class DriverOrderChildController {
@ApiOperation(value = "接单", notes = "<br>By:艾庆国") @ApiOperation(value = "接单", notes = "<br>By:艾庆国")
@PostMapping("/saveOrderChild") @PostMapping("/saveOrderChild")
public Result<SaveOrderChildVo> saveOrderChild(@RequestBody @Validated OrderChildSaveParam param) { public Result<SaveOrderChildVO> saveOrderChild(@RequestBody @Validated OrderChildSaveParam param) {
return Result.ok(orderChildService.saveOrderChild(param)); return Result.ok(orderChildService.saveOrderChild(param));
} }
...@@ -70,7 +72,7 @@ public class DriverOrderChildController { ...@@ -70,7 +72,7 @@ public class DriverOrderChildController {
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "装车(首次、再次)", notes = "<br>By:艾庆国") @ApiOperation(value = "装车(首次、重复)", notes = "<br>By:艾庆国")
@PostMapping("/updateLoad") @PostMapping("/updateLoad")
public Result<Void> updateLoad(@RequestBody @Validated OrderChildLoadParam param) { public Result<Void> updateLoad(@RequestBody @Validated OrderChildLoadParam param) {
orderChildService.updateLoad(param); orderChildService.updateLoad(param);
...@@ -78,7 +80,7 @@ public class DriverOrderChildController { ...@@ -78,7 +80,7 @@ public class DriverOrderChildController {
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "卸车(首次、再次)", notes = "<br>By:艾庆国") @ApiOperation(value = "卸车(首次、重复)", notes = "<br>By:艾庆国")
@PostMapping("/updateUnload") @PostMapping("/updateUnload")
public Result<Void> updateUnload(@RequestBody @Validated OrderChildUnloadParam param) { public Result<Void> updateUnload(@RequestBody @Validated OrderChildUnloadParam param) {
orderChildService.updateUnload(param); orderChildService.updateUnload(param);
...@@ -94,19 +96,19 @@ public class DriverOrderChildController { ...@@ -94,19 +96,19 @@ public class DriverOrderChildController {
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "确认交货", notes = "<br>By:艾庆国") @ApiOperation(value = "取消运单", notes = "<br>By:艾庆国")
@PostMapping("/updateConfirm") @PostMapping("/updateCancel")
public Result<Void> updateConfirm(@RequestBody @Validated OrderChildConfirmParam param) { public Result<Void> updateDriverCancel(@RequestBody @Validated OrderChildCancelParam param) {
orderChildService.updateConfirm(param); orderChildService.updateDriverCancel(param);
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "取消运单", notes = "<br>By:艾庆国") @ApiOperation(value = "查询运单详情", notes = "<br>By:艾庆国")
@PostMapping("/updateCancel") @PostMapping("/getOrderChildInfo")
public Result<Void> updateCancel(@RequestBody @Validated OrderChildCancelParam param) { public Result<OrderChildVO> getOrderChildInfo(String childNo) {
orderChildService.updateCancel(param);
return Result.ok(); return Result.ok(orderChildService.getOrderChildInfo(childNo));
} }
} }
...@@ -2,8 +2,11 @@ package com.clx.performance.controller.pc; ...@@ -2,8 +2,11 @@ package com.clx.performance.controller.pc;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.param.pc.PoundAuditParam;
import com.clx.performance.service.OrderChildPoundAuditService;
import com.clx.performance.service.OrderChildService; import com.clx.performance.service.OrderChildService;
import com.clx.performance.vo.pc.OrderChildPoundAuditVO; import com.clx.performance.vo.pc.OrderChildPoundAuditDetailVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import com.msl.common.base.PageData; import com.msl.common.base.PageData;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -16,21 +19,40 @@ import org.springframework.web.bind.annotation.RequestBody; ...@@ -16,21 +19,40 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
@Slf4j @Slf4j
@RestController @RestController
@RequestMapping(value="/pc/carrier/poundaudit") @RequestMapping(value="/pc/carrier/poundAudit")
@Validated @Validated
@Api(tags = "承运端-运单") @Api(tags = "承运端-磅单审核")
@AllArgsConstructor @AllArgsConstructor
public class OrderChildPoundAuditController { public class OrderChildPoundAuditController {
private final OrderChildService orderChildService; private final OrderChildService orderChildService;
private final OrderChildPoundAuditService orderChildPoundAuditService;
@ApiOperation(value = "磅单审核列表",notes = "<br>By:李瑞新") @ApiOperation(value = "磅单审核列表",notes = "<br>By:李瑞新")
@PostMapping("/pagePoundAuditList") @PostMapping("/pagePoundAuditList")
public Result<PageData<OrderChildPoundAuditVO>> pagePoundAuditList(@RequestBody PagePoundAuditParam param) { public Result<PageData<PageOrderChildPoundAuditVO>> pagePoundAuditList(@RequestBody PagePoundAuditParam param) {
IPage<OrderChildPoundAuditVO> page = orderChildService.pagePoundAuditList(param); IPage<PageOrderChildPoundAuditVO> page = orderChildService.pagePoundAuditList(param);
return Result.page(page.getRecords(), page.getTotal(), page.getPages()); return Result.page(page.getRecords(), page.getTotal(), page.getPages());
} }
@ApiOperation(value = "磅单审核详情",notes = "<br>By:李瑞新")
@PostMapping("/getPoundAuditDetail")
public Result<OrderChildPoundAuditDetailVO> pagePoundAuditList(@NotBlank(message = "运单编号不能为空") String childNo) {
return Result.ok(orderChildPoundAuditService.getPoundAuditDetail(childNo));
}
@ApiOperation(value = "磅单审核接口",notes = "<br>By:李瑞新")
@PostMapping("/updatePoundAudit")
public Result updatePoundAudit(@RequestBody @Validated PoundAuditParam param) {
orderChildPoundAuditService.updatePoundAudit(param);
return Result.ok();
}
} }
package com.clx.performance.controller.pc;
import com.clx.performance.service.OrderChildPoundLogService;
import com.clx.performance.vo.pc.OrderChildPoundLogVO;
import com.msl.common.result.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import java.util.List;
@Slf4j
@RestController
@RequestMapping(value="/pc/carrier/poundLog")
@Validated
@Api(tags = "承运端-磅单审核")
@AllArgsConstructor
public class OrderChildPoundLogController {
private final OrderChildPoundLogService orderChildPoundLogService;
@ApiOperation(value = "磅单审核日志列表",notes = "<br>By:李瑞新")
@PostMapping("/getPoundLogList")
public Result<List<OrderChildPoundLogVO>> getPoundLogList(@NotBlank(message = "运单编号不能为空") String childNo) {
return Result.ok(orderChildPoundLogService.getPoundLogList(childNo));
}
}
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.mapper.OrderChildMapper; import com.clx.performance.mapper.OrderChildMapper;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.vo.pc.OrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import com.msl.common.base.Optional; import com.msl.common.base.Optional;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
...@@ -20,16 +20,20 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int ...@@ -20,16 +20,20 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
boolean updateCancel(OrderChild item); boolean updateCancel(OrderChild item);
boolean updateLoad(OrderChild item); boolean updateLoad(OrderChild item);
boolean updateUnload(OrderChild item); boolean updateUnload(OrderChild item);
boolean updateLoadAndUnload(OrderChild item); boolean updateLoadAndUnload(OrderChild item);
boolean updateDriverConfirm(OrderChild item); boolean updateDriverConfirm(OrderChild item);
boolean updateStatus(OrderChild item);
Optional<OrderChild> getByChildNo(String childNo); Optional<OrderChild> getByChildNo(String childNo);
long countOfCancel(Long userNo, LocalDateTime startTime, LocalDateTime endTime); long countOfCancel(Long userNo, LocalDateTime startTime, LocalDateTime endTime);
IPage<OrderChildPoundAuditVO> pagePoundAuditList(PagePoundAuditParam param); IPage<PageOrderChildPoundAuditVO> pagePoundAuditList(PagePoundAuditParam param);
boolean updatePoundAuditStatus(OrderChild item);
} }
...@@ -2,8 +2,11 @@ package com.clx.performance.dao; ...@@ -2,8 +2,11 @@ package com.clx.performance.dao;
import com.clx.performance.mapper.OrderChildImageMapper; import com.clx.performance.mapper.OrderChildImageMapper;
import com.clx.performance.model.OrderChildImage; import com.clx.performance.model.OrderChildImage;
import com.msl.common.base.Optional;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 运单图片 * @Description: 运单图片
...@@ -16,4 +19,8 @@ public interface OrderChildImageDao extends BaseDao<OrderChildImageMapper, Order ...@@ -16,4 +19,8 @@ public interface OrderChildImageDao extends BaseDao<OrderChildImageMapper, Order
boolean deleteUnload(String childNo); boolean deleteUnload(String childNo);
boolean deleteLoadAndUnload(String childNo); boolean deleteLoadAndUnload(String childNo);
Optional<List<OrderChildImage>> getImages(String childNo, Integer type);
Optional<List<OrderChildImage>> listLoadAndUnload(String childNo);
} }
...@@ -2,8 +2,10 @@ package com.clx.performance.dao; ...@@ -2,8 +2,10 @@ package com.clx.performance.dao;
import com.clx.performance.mapper.OrderChildPoundAuditMapper; import com.clx.performance.mapper.OrderChildPoundAuditMapper;
import com.clx.performance.model.OrderChildPoundAudit; import com.clx.performance.model.OrderChildPoundAudit;
import com.msl.common.base.Optional;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 磅单审核表 * @Description: 磅单审核表
...@@ -12,5 +14,5 @@ import com.msl.common.dao.BaseDao; ...@@ -12,5 +14,5 @@ import com.msl.common.dao.BaseDao;
*/ */
public interface OrderChildPoundAuditDao extends BaseDao<OrderChildPoundAuditMapper, OrderChildPoundAudit, Integer> { public interface OrderChildPoundAuditDao extends BaseDao<OrderChildPoundAuditMapper, OrderChildPoundAudit, Integer> {
Optional<OrderChildPoundAudit> getPoundAuditDetail(String childNo);
} }
...@@ -4,6 +4,8 @@ import com.clx.performance.mapper.OrderChildPoundLogMapper; ...@@ -4,6 +4,8 @@ import com.clx.performance.mapper.OrderChildPoundLogMapper;
import com.clx.performance.model.OrderChildPoundLog; import com.clx.performance.model.OrderChildPoundLog;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 磅单日志表 * @Description: 磅单日志表
...@@ -12,5 +14,5 @@ import com.msl.common.dao.BaseDao; ...@@ -12,5 +14,5 @@ import com.msl.common.dao.BaseDao;
*/ */
public interface OrderChildPoundLogDao extends BaseDao<OrderChildPoundLogMapper, OrderChildPoundLog, Integer> { public interface OrderChildPoundLogDao extends BaseDao<OrderChildPoundLogMapper, OrderChildPoundLog, Integer> {
List<OrderChildPoundLog> getPoundLogList(String childNo);
} }
package com.clx.performance.dao; package com.clx.performance.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.base.Optional; import com.msl.common.base.Optional;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
import com.clx.performance.mapper.OrderGoodsMapper; import com.clx.performance.mapper.OrderGoodsMapper;
...@@ -15,4 +18,7 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int ...@@ -15,4 +18,7 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
Optional<OrderGoods> getByOrderGoodsNo(String orderGoodsNo); Optional<OrderGoods> getByOrderGoodsNo(String orderGoodsNo);
Optional<OrderGoods> getOrderGoodsInfoByOrderGoodsNo(String orderGoodsNo);
IPage<OrderGoodsVO> pageOrderGoodsList(PageOrderGoodsListParam param);
} }
...@@ -7,7 +7,7 @@ import com.clx.performance.enums.OrderChildEnum; ...@@ -7,7 +7,7 @@ import com.clx.performance.enums.OrderChildEnum;
import com.clx.performance.mapper.OrderChildMapper; import com.clx.performance.mapper.OrderChildMapper;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.vo.pc.OrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import com.msl.common.base.Optional; import com.msl.common.base.Optional;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
...@@ -32,17 +32,48 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -32,17 +32,48 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
@Override @Override
public boolean updateLoad(OrderChild item) { public boolean updateLoad(OrderChild item) {
return false; return update(lUdWrapper()
.eq(OrderChild::getChildNo, item.getChildNo())
.set(OrderChild::getLoadRough, item.getLoadRough())
.set(OrderChild::getLoadTare, item.getLoadTare())
.set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getLoadTime, item.getLoadTime())
.set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getStatus, item.getStatus())
);
} }
@Override @Override
public boolean updateUnload(OrderChild item) { public boolean updateUnload(OrderChild item) {
return false; return update(lUdWrapper()
.eq(OrderChild::getChildNo, item.getChildNo())
.set(OrderChild::getUnloadRough, item.getUnloadRough())
.set(OrderChild::getUnloadTare, item.getUnloadTare())
.set(OrderChild::getUnloadNet, item.getUnloadNet())
.set(OrderChild::getUnloadTime, item.getUnloadTime())
.set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getStatus, item.getStatus())
);
} }
@Override @Override
public boolean updateLoadAndUnload(OrderChild item) { public boolean updateLoadAndUnload(OrderChild item) {
return false; return update(lUdWrapper()
.eq(OrderChild::getChildNo, item.getChildNo())
.set(OrderChild::getLoadRough, item.getLoadRough())
.set(OrderChild::getLoadTare, item.getLoadTare())
.set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getUnloadRough, item.getUnloadRough())
.set(OrderChild::getUnloadTare, item.getUnloadTare())
.set(OrderChild::getUnloadNet, item.getUnloadNet())
.set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getPoundStatus, item.getPoundStatus())
);
} }
@Override @Override
...@@ -50,6 +81,14 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -50,6 +81,14 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
return false; return false;
} }
@Override
public boolean updateStatus(OrderChild item) {
return update(lUdWrapper()
.eq(OrderChild::getChildNo, item.getChildNo())
.set(OrderChild::getStatus, item.getStatus())
);
}
@Override @Override
public Optional<OrderChild> getByChildNo(String childNo) { public Optional<OrderChild> getByChildNo(String childNo) {
return Optional.of(childNo) return Optional.of(childNo)
...@@ -71,8 +110,19 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -71,8 +110,19 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
} }
@Override @Override
public IPage<OrderChildPoundAuditVO> pagePoundAuditList(PagePoundAuditParam param) { public IPage<PageOrderChildPoundAuditVO> pagePoundAuditList(PagePoundAuditParam param) {
Page<OrderChildPoundAuditVO> page = Page.of(param.getPage(), param.getPageSize()); Page<PageOrderChildPoundAuditVO> page = Page.of(param.getPage(), param.getPageSize());
return baseMapper.pagePoundAuditList(page,param); return baseMapper.pagePoundAuditList(page,param);
} }
@Override
public boolean updatePoundAuditStatus(OrderChild item) {
return update(lUdWrapper()
.eq(OrderChild::getChildNo, item.getChildNo())
.set(OrderChild::getStatus, item.getStatus())
.set(OrderChild::getPoundStatus, item.getPoundStatus())
.set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getUnloadNet, item.getUnloadNet())
);
}
} }
...@@ -3,9 +3,12 @@ package com.clx.performance.dao.impl; ...@@ -3,9 +3,12 @@ package com.clx.performance.dao.impl;
import com.clx.performance.dao.OrderChildImageDao; import com.clx.performance.dao.OrderChildImageDao;
import com.clx.performance.mapper.OrderChildImageMapper; import com.clx.performance.mapper.OrderChildImageMapper;
import com.clx.performance.model.OrderChildImage; import com.clx.performance.model.OrderChildImage;
import com.msl.common.base.Optional;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 运单表 * @Description: 运单表
...@@ -40,4 +43,20 @@ public class OrderChildImageImpl extends BaseDaoImpl<OrderChildImageMapper, Orde ...@@ -40,4 +43,20 @@ public class OrderChildImageImpl extends BaseDaoImpl<OrderChildImageMapper, Orde
); );
} }
@Override
public Optional<List<OrderChildImage>> listLoadAndUnload(String childNo) {
return Optional.of(childNo)
.map(item -> lQrWrapper()
.eq(OrderChildImage::getChildNo, childNo)
)
.map(super::list);
}
@Override
public Optional<List<OrderChildImage>> getImages(String childNo, Integer type) {
return Optional.ofEmpty(list(lQrWrapper()
.eq(OrderChildImage::getChildNo, childNo)
.eq(OrderChildImage::getType, type)));
}
} }
...@@ -3,9 +3,11 @@ package com.clx.performance.dao.impl; ...@@ -3,9 +3,11 @@ package com.clx.performance.dao.impl;
import com.clx.performance.dao.OrderChildPoundAuditDao; import com.clx.performance.dao.OrderChildPoundAuditDao;
import com.clx.performance.mapper.OrderChildPoundAuditMapper; import com.clx.performance.mapper.OrderChildPoundAuditMapper;
import com.clx.performance.model.OrderChildPoundAudit; import com.clx.performance.model.OrderChildPoundAudit;
import com.msl.common.base.Optional;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 磅单审核表 * @Description: 磅单审核表
...@@ -14,5 +16,11 @@ import org.springframework.stereotype.Repository; ...@@ -14,5 +16,11 @@ import org.springframework.stereotype.Repository;
*/ */
@Repository @Repository
public class OrderChildPoundAuditDaoImpl extends BaseDaoImpl<OrderChildPoundAuditMapper, OrderChildPoundAudit, Integer> implements OrderChildPoundAuditDao { public class OrderChildPoundAuditDaoImpl extends BaseDaoImpl<OrderChildPoundAuditMapper, OrderChildPoundAudit, Integer> implements OrderChildPoundAuditDao {
@Override
public Optional<OrderChildPoundAudit> getPoundAuditDetail(String childNo) {
return Optional.ofNullable(super.getOne(lQrWrapper()
.eq(OrderChildPoundAudit::getChildNo, childNo)
.orderByDesc(OrderChildPoundAudit::getId)
.last("lim1t 1")));
}
} }
...@@ -6,6 +6,8 @@ import com.clx.performance.model.OrderChildPoundLog; ...@@ -6,6 +6,8 @@ import com.clx.performance.model.OrderChildPoundLog;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 磅单日志表 * @Description: 磅单日志表
...@@ -14,5 +16,8 @@ import org.springframework.stereotype.Repository; ...@@ -14,5 +16,8 @@ import org.springframework.stereotype.Repository;
*/ */
@Repository @Repository
public class OrderChildPoundLogDaoImpl extends BaseDaoImpl<OrderChildPoundLogMapper, OrderChildPoundLog, Integer> implements OrderChildPoundLogDao { public class OrderChildPoundLogDaoImpl extends BaseDaoImpl<OrderChildPoundLogMapper, OrderChildPoundLog, Integer> implements OrderChildPoundLogDao {
@Override
public List<OrderChildPoundLog> getPoundLogList(String childNo) {
return list(lQrWrapper().eq(OrderChildPoundLog::getChildNo,childNo));
}
} }
package com.clx.performance.dao.impl; package com.clx.performance.dao.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.order.vo.feign.FeignPageOrderVO;
import com.clx.performance.dao.OrderGoodsDao; import com.clx.performance.dao.OrderGoodsDao;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import com.clx.performance.mapper.OrderGoodsMapper; import com.clx.performance.mapper.OrderGoodsMapper;
...@@ -31,4 +36,19 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods, ...@@ -31,4 +36,19 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
.map(super::getOne); .map(super::getOne);
} }
@Override
public Optional<OrderGoods> getOrderGoodsInfoByOrderGoodsNo(String orderGoodsNo) {
return Optional.of(orderGoodsNo)
.map(item -> lQrWrapper()
.eq(OrderGoods::getOrderGoodsNo, item)
)
.map(super::getOne);
}
@Override
public IPage<OrderGoodsVO> pageOrderGoodsList(PageOrderGoodsListParam param) {
Page<OrderGoodsVO> page = Page.of(param.getPage(), param.getPageSize());
return baseMapper.pageOrderGoodsList(page, param);
}
} }
package com.clx.performance.extranal.user;
import com.clx.user.vo.feign.DriverTruckInfoFeignVo;
import com.msl.common.base.Optional;
public interface DriverService {
Optional<DriverTruckInfoFeignVo> getUserDetailInfo(Long driverUserNo, Integer truckId);
}
package com.clx.performance.extranal.user.impl;
import com.clx.performance.extranal.user.DriverService;
import com.clx.user.feign.DriverFeign;
import com.clx.user.vo.feign.DriverTruckInfoFeignVo;
import com.msl.common.base.Optional;
import com.msl.common.result.Result;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Slf4j
@Service
@AllArgsConstructor
public class DriverServiceImpl implements DriverService {
private final DriverFeign driverFeign;
@Override
public Optional<DriverTruckInfoFeignVo> getUserDetailInfo(Long driverUserNo, Integer truckId) {
Optional<DriverTruckInfoFeignVo> map = Optional.ofNullable(driverFeign.getDriverTruckInfo(driverUserNo, truckId))
.filter(Result::succeed)
.map(Result::getData);
return map;
}
}
...@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.sqlProvider.OrderChildSqlProvider; import com.clx.performance.sqlProvider.OrderChildSqlProvider;
import com.clx.performance.vo.pc.OrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.SelectProvider; import org.apache.ibatis.annotations.SelectProvider;
...@@ -17,6 +17,6 @@ import org.apache.ibatis.annotations.SelectProvider; ...@@ -17,6 +17,6 @@ import org.apache.ibatis.annotations.SelectProvider;
public interface OrderChildMapper extends BaseMapper<OrderChild> { public interface OrderChildMapper extends BaseMapper<OrderChild> {
@SelectProvider(type = OrderChildSqlProvider.class, method = "pagePoundAuditList") @SelectProvider(type = OrderChildSqlProvider.class, method = "pagePoundAuditList")
IPage<OrderChildPoundAuditVO> pagePoundAuditList(@Param("page") Page<OrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param); IPage<PageOrderChildPoundAuditVO> pagePoundAuditList(@Param("page") Page<PageOrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param);
} }
\ No newline at end of file
package com.clx.performance.mapper; package com.clx.performance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.performance.model.OrderGoods; import com.clx.performance.model.OrderGoods;
import com.clx.performance.sqlProvider.OrderGoodsSqlProvider; import com.clx.performance.sqlProvider.OrderGoodsSqlProvider;
import com.clx.performance.vo.pc.OrderGoodsVO;
import org.apache.ibatis.annotations.SelectProvider; import org.apache.ibatis.annotations.SelectProvider;
/** /**
...@@ -14,4 +18,7 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> { ...@@ -14,4 +18,7 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
@SelectProvider(type = OrderGoodsSqlProvider.class, method = "getMaxOrderGoodsId") @SelectProvider(type = OrderGoodsSqlProvider.class, method = "getMaxOrderGoodsId")
Long getMaxOrderGoodsId(String type); Long getMaxOrderGoodsId(String type);
@SelectProvider(type = OrderGoodsSqlProvider.class, method = "pageOrderGoodsList")
IPage<OrderGoodsVO> pageOrderGoodsList(Page<OrderGoodsVO> page, PageOrderGoodsListParam param);
} }
...@@ -41,6 +41,8 @@ public class OrderChild implements HasKey<Integer> { ...@@ -41,6 +41,8 @@ public class OrderChild implements HasKey<Integer> {
private String sendAddress; //发货地址 private String sendAddress; //发货地址
private Integer receiveAddressId; //收货地址id private Integer receiveAddressId; //收货地址id
private String receiveAddress; //收货地址 private String receiveAddress; //收货地址
private LocalDateTime loadDeadline; //最晚装货时间
private Integer truckId; //车辆ID private Integer truckId; //车辆ID
private String truckNo; //车牌号 private String truckNo; //车牌号
private BigDecimal truckLoad; //载重(单位吨) private BigDecimal truckLoad; //载重(单位吨)
......
...@@ -5,11 +5,14 @@ import com.baomidou.mybatisplus.annotation.TableId; ...@@ -5,11 +5,14 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.msl.common.config.KeyColumn; import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey; import com.msl.common.model.HasKey;
import lombok.AllArgsConstructor;
import lombok.Getter; import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Optional;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
...@@ -41,4 +44,43 @@ public class OrderChildPoundAudit implements HasKey<Integer> { ...@@ -41,4 +44,43 @@ public class OrderChildPoundAudit implements HasKey<Integer> {
return id; return id;
} }
@Getter
@AllArgsConstructor
public enum AuditStatus {
AUDIT(0, "待审核"),
FAIL(1, "审核失败"),
SUCCESS(2, "审核成功")
;
private final Integer code;
private final String msg;
public static Optional<OrderChildPoundAudit.AuditStatus> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
@Getter
@AllArgsConstructor
public enum RejectType {
LOAD_FAIL(1, "装车"),
UNLOAD_FAIL(2, "卸车"),
LOAD_UNLOAD_FAIL(3, "装车+卸车"),
;
private final Integer code;
private final String msg;
public static Optional<OrderChildPoundAudit.RejectType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
} }
\ No newline at end of file
...@@ -5,10 +5,11 @@ import com.baomidou.mybatisplus.annotation.TableId; ...@@ -5,10 +5,11 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.msl.common.config.KeyColumn; import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey; import com.msl.common.model.HasKey;
import lombok.Getter; import lombok.*;
import lombok.NoArgsConstructor; import lombok.experimental.Accessors;
import lombok.Setter;
import lombok.ToString; import java.util.Arrays;
import java.util.Optional;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
...@@ -21,6 +22,9 @@ import lombok.ToString; ...@@ -21,6 +22,9 @@ import lombok.ToString;
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
@TableName(autoResultMap = true) @TableName(autoResultMap = true)
@Builder
@Accessors(chain = true)
@AllArgsConstructor
public class OrderChildPoundLog implements HasKey<Integer> { public class OrderChildPoundLog implements HasKey<Integer> {
@TableId(value = "id", type = IdType.AUTO) @TableId(value = "id", type = IdType.AUTO)
...@@ -40,4 +44,24 @@ public class OrderChildPoundLog implements HasKey<Integer> { ...@@ -40,4 +44,24 @@ public class OrderChildPoundLog implements HasKey<Integer> {
return id; return id;
} }
@Getter
@AllArgsConstructor
public enum CreateType {
OWNER(1, "货主"),
CARRIER(2, "承运端"),
DRIVER(3, "司机"),
;
private final Integer code;
private final String msg;
public static Optional<CreateType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
} }
\ No newline at end of file
...@@ -83,6 +83,10 @@ public class OrderGoods implements HasKey<Integer> { ...@@ -83,6 +83,10 @@ public class OrderGoods implements HasKey<Integer> {
@ApiModelProperty("收货地址纬度") @ApiModelProperty("收货地址纬度")
private BigDecimal receiveLatitude; private BigDecimal receiveLatitude;
@TableField("goods_id")
@ApiModelProperty("货物ID")
private Integer goodsId;
@TableField("goods_name") @TableField("goods_name")
@ApiModelProperty("货物名称") @ApiModelProperty("货物名称")
private String goodsName; private String goodsName;
......
...@@ -4,4 +4,5 @@ public interface OrderChildLogService { ...@@ -4,4 +4,5 @@ public interface OrderChildLogService {
void saveOrderChildLog(String childNo, Integer type, String remark, void saveOrderChildLog(String childNo, Integer type, String remark,
Integer createType,Long createBy, String createName); Integer createType,Long createBy, String createName);
void saveDriverOrderChildLog(String childNo, Integer type, String remark, Long createBy, String createName);
} }
package com.clx.performance.service; package com.clx.performance.service;
import com.clx.performance.param.pc.PoundAuditParam;
import com.clx.performance.vo.pc.OrderChildPoundAuditDetailVO;
/** /**
* @author liruixin * @author liruixin
* Date 2023-09-19 * Date 2023-09-19
* Time 13:25 * Time 13:25
*/ */
public interface OrderChildPoundAuditService { public interface OrderChildPoundAuditService {
OrderChildPoundAuditDetailVO getPoundAuditDetail(String childNo);
void updatePoundAudit(PoundAuditParam param);
} }
package com.clx.performance.service; package com.clx.performance.service;
import com.clx.performance.vo.pc.OrderChildPoundLogVO;
import java.util.List;
/** /**
* @author liruixin * @author liruixin
...@@ -8,4 +11,9 @@ package com.clx.performance.service; ...@@ -8,4 +11,9 @@ package com.clx.performance.service;
* Time 13:25 * Time 13:25
*/ */
public interface OrderChildPoundLogService { public interface OrderChildPoundLogService {
List<OrderChildPoundLogVO> getPoundLogList(String childNo);
void saveDriverOrderChildLog(String childNo, Integer status, String remark, Long createBy, String createName);
} }
...@@ -3,7 +3,9 @@ package com.clx.performance.service; ...@@ -3,7 +3,9 @@ package com.clx.performance.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.app.*; import com.clx.performance.param.app.*;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.vo.pc.OrderChildPoundAuditVO; import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.app.SaveOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
/** /**
...@@ -15,7 +17,7 @@ import com.clx.performance.vo.pc.OrderChildPoundAuditVO; ...@@ -15,7 +17,7 @@ import com.clx.performance.vo.pc.OrderChildPoundAuditVO;
public interface OrderChildService { public interface OrderChildService {
SaveOrderChildVo saveOrderChild(OrderChildSaveParam param); SaveOrderChildVO saveOrderChild(OrderChildSaveParam param);
void updateGotoSendAddress(OrderChildGoToSendAddressParam param); void updateGotoSendAddress(OrderChildGoToSendAddressParam param);
void updateArriveSendAddress(OrderChildArriveSendAddressParam param); void updateArriveSendAddress(OrderChildArriveSendAddressParam param);
...@@ -26,10 +28,10 @@ public interface OrderChildService { ...@@ -26,10 +28,10 @@ public interface OrderChildService {
void updateUnload(OrderChildUnloadParam param); void updateUnload(OrderChildUnloadParam param);
void updateLoadAndUnloadAgain(OrderChildLoadAndUnloadAgainParam param); void updateLoadAndUnloadAgain(OrderChildLoadAndUnloadAgainParam param);
void updateConfirm(OrderChildConfirmParam param); void updateDriverCancel(OrderChildCancelParam param);
void updateCancel(OrderChildCancelParam param); OrderChildVO getOrderChildInfo(String childNo);
IPage<OrderChildPoundAuditVO> pagePoundAuditList(PagePoundAuditParam param); IPage<PageOrderChildPoundAuditVO> pagePoundAuditList(PagePoundAuditParam param);
} }
package com.clx.performance.service; package com.clx.performance.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.base.PageData;
import com.msl.common.result.Result;
/** /**
* @author kavin * @author kavin
* Date 2023-09-17 * Date 2023-09-17
* Time 16:45 * Time 16:45
*/ */
public interface OrderGoodsService { public interface OrderGoodsService {
OrderGoodsVO getOrderGoodsInfoByOrderGoodsNo(String orderGoodsNo);
IPage<OrderGoodsVO> pageOrderGoodsList(PageOrderGoodsListParam param);
} }
package com.clx.performance.service.impl; package com.clx.performance.service.impl;
import com.clx.performance.dao.OrderChildLogDao; import com.clx.performance.dao.OrderChildLogDao;
import com.clx.performance.enums.OrderChildLogEnum;
import com.clx.performance.model.OrderChildLog; import com.clx.performance.model.OrderChildLog;
import com.clx.performance.service.OrderChildLogService; import com.clx.performance.service.OrderChildLogService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -28,4 +29,9 @@ public class OrderChildLogServiceImpl implements OrderChildLogService { ...@@ -28,4 +29,9 @@ public class OrderChildLogServiceImpl implements OrderChildLogService {
orderChildLogDao.saveEntity(orderChildLog); orderChildLogDao.saveEntity(orderChildLog);
} }
@Override
public void saveDriverOrderChildLog(String childNo, Integer type, String remark, Long createBy, String createName) {
saveOrderChildLog(childNo, type, remark, OrderChildLogEnum.CreateType.DRIVER.getCode(), createBy, createName);
}
} }
package com.clx.performance.service.impl; package com.clx.performance.service.impl;
import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.dao.OrderChildImageDao;
import com.clx.performance.dao.OrderChildPoundAuditDao;
import com.clx.performance.dao.OrderChildPoundLogDao;
import com.clx.performance.enums.OrderChildEnum;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.model.OrderChild;
import com.clx.performance.model.OrderChildImage;
import com.clx.performance.model.OrderChildPoundAudit;
import com.clx.performance.model.OrderChildPoundLog;
import com.clx.performance.param.pc.PoundAuditParam;
import com.clx.performance.service.OrderChildPoundAuditService; import com.clx.performance.service.OrderChildPoundAuditService;
import com.clx.performance.vo.pc.OrderChildPoundAuditDetailVO;
import com.msl.common.enums.ResultCodeEnum;
import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* @author liruixin * @author liruixin
* Date 2023-09-19 * Date 2023-09-19
* Time 13:25 * Time 13:25
*/ */
@Slf4j
@Service @Service
@AllArgsConstructor
public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditService { public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditService {
private final OrderChildImageDao orderChildImageDao;
private final OrderChildPoundAuditDao orderChildPoundAuditDao;
private final OrderChildPoundLogDao orderChildPoundLogDao;
private final OrderChildDao orderChildDao;
@Override
public OrderChildPoundAuditDetailVO getPoundAuditDetail(String childNo) {
OrderChildPoundAudit poundAuditDetail = orderChildPoundAuditDao.getPoundAuditDetail(childNo).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
List<OrderChildImage> loadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.LOAD.getCode()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
List<OrderChildImage> unloadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.UNLOAD.getCode()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
OrderChildPoundAuditDetailVO vo = new OrderChildPoundAuditDetailVO();
vo.setChildNo(childNo);
vo.setLoadImages(loadImages.stream().map(OrderChildImage::getImage).collect(Collectors.toList()));
vo.setUnloadImages(unloadImages.stream().map(OrderChildImage::getImage).collect(Collectors.toList()));
vo.setLoadNet(poundAuditDetail.getLoadNet());
vo.setUnloadNet(poundAuditDetail.getUnloadNet());
vo.setStatus(poundAuditDetail.getStatus());
vo.setRemark(poundAuditDetail.getRemark());
vo.setRejectType(poundAuditDetail.getRejectType());
return vo;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updatePoundAudit(PoundAuditParam param) {
/*OrderChild orderChild = orderChildDao.getByChildNo(param.getChildNo()).orElseThrow(ResultCodeEnum.FAIL);
OrderChildPoundAudit poundAuditDetail = orderChildPoundAuditDao.getPoundAuditDetail(param.getChildNo()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
poundAuditDetail.setStatus(param.getStatus());
orderChild.setStatus(OrderChildEnum.Status.UNSETTLED.getCode());
if(Objects.equals(param.getStatus(),OrderChildPoundAudit.AuditStatus.FAIL.getCode())){
poundAuditDetail.setStatus(param.getStatus());
poundAuditDetail.setRejectType(param.getRejectType());
poundAuditDetail.setRemark(param.getRemark());
orderChild.setStatus(OrderChildEnum.Status.POUND_AUDIT_FAIL.getCode());
}
if(Objects.nonNull(param.getLoadNet())){
poundAuditDetail.setLoadNet(param.getLoadNet());
}
if(Objects.nonNull(param.getUnloadNet())){
poundAuditDetail.setUnloadNet(param.getUnloadNet());
}
orderChildPoundAuditDao.saveEntity(poundAuditDetail);
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
OrderChildPoundLog poundLog = OrderChildPoundLog.builder().childNo(param.getChildNo()).status(param.getStatus()).createType(OrderChildPoundLog.CreateType.CARRIER.getCode())
.createBy(loginUserInfo.getUserNo()).createName(loginUserInfo.getUserName()).build();
orderChildPoundLogDao.saveEntity(poundLog);
if(Objects.nonNull(param.getLoadNet())){
orderChild.setLoadNet(param.getLoadNet());
}
if(Objects.nonNull(param.getUnloadNet())){
orderChild.setUnloadNet(param.getUnloadNet());
}
orderChild.setPoundStatus(param.getStatus());
orderChildDao.updatePoundAuditStatus(orderChild);*/
}
} }
package com.clx.performance.service.impl; package com.clx.performance.service.impl;
import com.clx.performance.dao.OrderChildPoundLogDao;
import com.clx.performance.model.OrderChildPoundLog;
import com.clx.performance.service.OrderChildPoundLogService; import com.clx.performance.service.OrderChildPoundLogService;
import com.clx.performance.struct.OrderChildPoundLogStruct;
import com.clx.performance.vo.pc.OrderChildPoundLogVO;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* @author liruixin * @author liruixin
* Date 2023-09-19 * Date 2023-09-19
* Time 13:25 * Time 13:25
*/ */
@Slf4j
@Service @Service
@AllArgsConstructor
public class OrderChildPoundLogServiceImpl implements OrderChildPoundLogService { public class OrderChildPoundLogServiceImpl implements OrderChildPoundLogService {
private final OrderChildPoundLogDao orderChildPoundLogDao;
private final OrderChildPoundLogStruct orderChildPoundLogStruct;
@Override
public List<OrderChildPoundLogVO> getPoundLogList(String childNo) {
List<OrderChildPoundLog> poundLogList = orderChildPoundLogDao.getPoundLogList(childNo);
return orderChildPoundLogStruct.convert(poundLogList);
}
@Override
public void saveDriverOrderChildLog(String childNo, Integer status, String remark, Long createBy, String createName) {
OrderChildPoundLog poundLog = new OrderChildPoundLog();
poundLog.setChildNo(childNo);
poundLog.setStatus(status);
poundLog.setRemark(remark);
poundLog.setCreateBy(createBy);
poundLog.setCreateName(createName);
orderChildPoundLogDao.saveEntity(poundLog);
}
} }
package com.clx.performance.service.impl; package com.clx.performance.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.performance.dao.OrderGoodsDao;
import com.clx.performance.service.OrderGoodsService; import com.clx.performance.service.OrderGoodsService;
import com.clx.performance.struct.OrderGoodsStruct;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.base.PageData;
import com.msl.common.result.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
...@@ -10,4 +18,20 @@ import org.springframework.stereotype.Service; ...@@ -10,4 +18,20 @@ import org.springframework.stereotype.Service;
*/ */
@Service @Service
public class OrderGoodsServiceImpl implements OrderGoodsService { public class OrderGoodsServiceImpl implements OrderGoodsService {
@Autowired
private OrderGoodsDao orderGoodsDao;
@Autowired
private OrderGoodsStruct orderGoodsStruct;
@Override
public OrderGoodsVO getOrderGoodsInfoByOrderGoodsNo(String orderGoodsNo) {
return orderGoodsDao.getOrderGoodsInfoByOrderGoodsNo(orderGoodsNo).map(orderGoodsStruct::convert).get();
}
@Override
public IPage<OrderGoodsVO> pageOrderGoodsList(PageOrderGoodsListParam param) {
return orderGoodsDao.pageOrderGoodsList(param);
}
} }
...@@ -3,7 +3,7 @@ package com.clx.performance.sqlProvider; ...@@ -3,7 +3,7 @@ package com.clx.performance.sqlProvider;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.vo.pc.OrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL; import org.apache.ibatis.jdbc.SQL;
...@@ -12,7 +12,7 @@ import java.util.Objects; ...@@ -12,7 +12,7 @@ import java.util.Objects;
public class OrderChildSqlProvider { public class OrderChildSqlProvider {
public String pagePoundAuditList(@Param("page") Page<OrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param) { public String pagePoundAuditList(@Param("page") Page<PageOrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param) {
return new SQL(){{ return new SQL(){{
SELECT("child_no,goods_name,send_address,receive_address,driver_name,driver_mobile,load_net,unload_net," + SELECT("child_no,goods_name,send_address,receive_address,driver_name,driver_mobile,load_net,unload_net," +
"pound_status,date_format(pay_time, '%Y-%m-%d %H:%i:%s') as payTime," + "pound_status,date_format(pay_time, '%Y-%m-%d %H:%i:%s') as payTime," +
......
package com.clx.performance.sqlProvider; package com.clx.performance.sqlProvider;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.order.params.PageOrderGoodsListParam;
import com.clx.order.vo.feign.FeignPageOrderVO;
import com.clx.performance.enums.OrderGoodsStatusEnum;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL;
import java.util.Objects;
public class OrderGoodsSqlProvider { public class OrderGoodsSqlProvider {
public String getMaxOrderGoodsId(String type) { public String getMaxOrderGoodsId(String type) {
...@@ -7,5 +17,59 @@ public class OrderGoodsSqlProvider { ...@@ -7,5 +17,59 @@ public class OrderGoodsSqlProvider {
} }
public String pageOrderGoodsList(@Param("page") Page<FeignPageOrderVO> page, @Param("param") PageOrderGoodsListParam param) {
String sql = new SQL() {{
SELECT("a.id, a.order_no, a.order_goods_type " +
" a.order_goods_no, a.order_goods_status, a.extract_weight, " +
" a.residue_transport_weight, a.send_address_id, a.send_address_shorter,a.send_longitude," +
" a.send_latitude,a.receive_address_id, a.receive_address_shorter,a.receive_longitude,a.receive_latitude," +
"a.goods_id, a.goods_name, a.pending_order_way," +
" date_format(a.directional_expire_time, '%Y-%m-%d %H:%i:%s') as directional_expire_time ," +
" date_format(a.last_arrive_send_time, '%Y-%m-%d %H:%i:%s') as last_arrive_send_time ," +
" date_format(a.pending_order_time, '%Y-%m-%d %H:%i:%s') as pending_order_time," +
" date_format(a.create_time, '%Y-%m-%d %H:%i:%s') as create_time," +
" date_format(a.modified_time, '%Y-%m-%d %H:%i:%s') as modified_time," +
"a.extract_way,a.need_truck_num,a.senior_logistics_manager_id,a.senior_logistics_manager_name,a.pending_order_freight," +
"a.user_no,a.user_name," +
"a.valid_freight_price ");
FROM("order_info a");
if (StringUtils.isNotBlank(param.getBeginTime()) && StringUtils.isNotBlank(param.getEndTime())) {
WHERE("a.create_time >= #{param.beginTime}");
WHERE("a.create_time <= #{param.endTime}");
}
if (Objects.nonNull(param.getTruckDemand())) {
if (1 == param.getTruckDemand()) {
WHERE("a.truck_demand = #{param.truckDemand}");
} else if (2 == param.getTruckDemand()) {
WHERE("a.truck_demand = #{param.truckDemand}");
} else if (3 == param.getTruckDemand()) {
WHERE("a.truck_demand = #{param.truckDemand}");
}
}
if (Objects.nonNull(param.getOrderGoodsStatus())) {
if (OrderGoodsStatusEnum.Status.CREATED.getCode().equals(param.getOrderGoodsStatus())) {
WHERE("a.order_goods_status = #{param.orderGoodsStatus}");
} else if (OrderGoodsStatusEnum.Status.PAYING.getCode().equals(param.getOrderGoodsStatus())) {
WHERE("a.order_goods_status = #{param.orderGoodsStatus}");
} else if (OrderGoodsStatusEnum.Status.GO_TO_SEND.getCode().equals(param.getOrderGoodsStatus())) {
WHERE("a.order_goods_status = #{param.orderGoodsStatus}");
} else if (OrderGoodsStatusEnum.Status.ARRIVE_SEND.getCode().equals(param.getOrderGoodsStatus())) {
WHERE("a.order_goods_status = #{param.orderGoodsStatus}");
} else if (OrderGoodsStatusEnum.Status.CANCEL.getCode().equals(param.getOrderGoodsStatus())) {
WHERE("a.order_goods_status = #{param.orderGoodsStatus}");
}
}
if (StringUtils.isNotBlank(param.getOrderNo())) {
WHERE("a.order_no = #{param.orderNo}");
}
if (StringUtils.isNotBlank(param.getOrderGoodsNo())) {
WHERE("a.order_goods_no = #{param.orderGoodsNo}");
}
ORDER_BY("a.create_time desc");
}}.toString();
return sql;
}
} }
package com.clx.performance.struct;
import com.clx.performance.model.OrderChild;
import com.clx.performance.vo.app.OrderChildVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.Mapper;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface OrderChildPoundImageStruct {
OrderChildVO convert(OrderChild item);
}
package com.clx.performance.struct;
import com.clx.performance.model.OrderChildPoundLog;
import com.clx.performance.vo.pc.OrderChildPoundLogVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.Mapper;
import java.util.List;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface OrderChildPoundLogStruct {
List<OrderChildPoundLogVO> convert(List<OrderChildPoundLog> item);
}
package com.clx.performance.struct;
import com.clx.performance.model.OrderChild;
import com.clx.performance.vo.app.OrderChildVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.Mapper;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface OrderChildStruct {
OrderChildVO convert(OrderChild item);
}
package com.clx.performance.struct;
import com.clx.performance.model.OrderGoods;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.Mapper;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface OrderGoodsStruct {
OrderGoodsVO convert(OrderGoods orderGoods);
}
server: #server:
port: 80 # port: 80
servlet: # servlet:
context-path: /${spring.application.name} # context-path: /${spring.application.name}
#
spring: #spring:
profiles: # profiles:
active: dev # active: dev
application: # application:
name: clx-performance # name: clx-performance
main: # main:
allow-bean-definition-overriding: true # allow-bean-definition-overriding: true
#
cloud: # cloud:
nacos: # nacos:
discovery: # discovery:
server-addr: nacos.devclx.cn:8848 # server-addr: nacos.devclx.cn:8848
username: nacos # username: nacos
password: nacos # password: nacos
register-enabled: true # register-enabled: true
namespace: new-clx-dev # namespace: new-clx-dev
#
# namespace: ${spring.profiles.active} # # namespace: ${spring.profiles.active}
config: # config:
file-extension: yml # file-extension: yml
server-addr: nacos.devclx.cn:8848 # server-addr: nacos.devclx.cn:8848
username: nacos # username: nacos
password: nacos # password: nacos
shared-configs: # shared-configs:
# - common-redis-${spring.profiles.active}.yml # # - common-redis-${spring.profiles.active}.yml
# - common-mq-${spring.profiles.active}.yml # # - common-mq-${spring.profiles.active}.yml
# - common-druid-${spring.profiles.active}.yml # # - common-druid-${spring.profiles.active}.yml
# - common-satoken-${spring.profiles.active}.yml # # - common-satoken-${spring.profiles.active}.yml
# - common-esign-${spring.profiles.active}.yml # # - common-esign-${spring.profiles.active}.yml
namespace: new-clx-dev # namespace: new-clx-dev
\ No newline at end of file \ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论