提交 84e04486 authored 作者: aiqingguo's avatar aiqingguo

司机取消

上级 760530b5
......@@ -85,6 +85,28 @@ public enum OrderChildEnum {
}
}
@Getter
@AllArgsConstructor
public enum CancelType {
PERSONAL(1, "个人原因"),
PRICE(2, "价格不合适"),
LOAD(3, "无法装货"),
TRUCK(4, "车辆原因"),
TRAFFIC_RESTRICTION(5, "交通管制"),
TRAFFIC_ACCIDENT(6, "交通事故"),
ADDRESS(7, "无法找到地址"),
OTHER(9, "其他原因"),
;
private final int code;
private final String msg;
public static Optional<CancelType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
}
// 运输中
public static final List<Integer> TRANSIT_lIST = Arrays.asList(
Status.CREATED.getCode(),
......
......@@ -17,8 +17,10 @@ public class OrderChildDriverCancelParam extends PositionParam {
@NotBlank(message = "运单编号不能为空")
private String childNo;
@ApiModelProperty(value = "取消原因类型:1个人原因, 2价格不合适, 3无法装货, 4车辆原因, 5交通管制, 6交通事故, 7无法找到地址, 8排队时间较长, 9其他原因", example = "信息错误")
private Integer cancelType;
@ApiModelProperty(value = "取消原因", example = "信息错误")
@NotBlank(message = "取消原因不能为空")
private String remark;
@ApiModelProperty(value = "图片列表")
......
......@@ -108,6 +108,8 @@ public class OrderChildVO {
@MoneyOutConvert
private BigDecimal orderFreightPrice;
@ApiModelProperty(value = "取消原因", example = "取消原因类型:1个人原因, 2价格不合适, 3无法装货, 4车辆原因, 5交通管制, 6交通事故, 7无法找到地址, 8排队时间较长, 9其他原因")
private Integer cancelType;
@ApiModelProperty(value = "取消原因", example = "抢错了")
private String cancelRemark;
@ApiModelProperty(value = "磅单审核状态 0 待审核 1 审核通过 2 审核驳回", example = "0")
......
......@@ -79,7 +79,8 @@ public class CarrierOrderChildDetailVO {
@ApiModelProperty(value = "卸货净重(单位吨)", example = "1.23")
private BigDecimal unloadNet;
@ApiModelProperty(value = "取消原因", example = "取消原因类型:1个人原因, 2价格不合适, 3无法装货, 4车辆原因, 5交通管制, 6交通事故, 7无法找到地址, 8排队时间较长, 9其他原因")
private Integer cancelType;
@ApiModelProperty(value = "取消原因", example = "抢错了")
private String cancelRemark;
......
......@@ -70,6 +70,7 @@ public class OrderChild implements HasKey<Integer> {
private BigDecimal freight; //运费(分)
private String cancelRemark; //取消原因
private Integer cancelType; //司机取消原因类型
private Integer poundStatus; //磅单审核状态 0 待审核 1 审核通过 2 审核驳回
private Integer status; //状态
......
......@@ -45,7 +45,8 @@ public class OrderChildImage implements HasKey<Integer> {
@AllArgsConstructor
public enum Type {
LOAD(1, "装货磅单图片"),
UNLOAD(2, "卸货磅单图片")
UNLOAD(2, "卸货磅单图片"),
DRIVER_CANCEL(3, "司机取消")
;
......
......@@ -1026,6 +1026,29 @@ public class OrderChildServiceImpl implements OrderChildService {
return;
}
if (param.getCancelType() != null){
orderChild.setCancelType(param.getCancelType());
orderChild.setCancelRemark(OrderChildEnum.CancelType.getByCode(param.getCancelType()).orElse(OrderChildEnum.CancelType.OTHER).getMsg());
}
else {
orderChild.setCancelRemark(param.getRemark());
}
// 图片
List<OrderChildImage> imageList = new ArrayList<>();
if (param.getImageList() != null){
for (String item : param.getImageList()) {
OrderChildImage image = new OrderChildImage();
image.setChildNo(orderChild.getChildNo());
image.setType(OrderChildImage.Type.DRIVER_CANCEL.getCode());
image.setImage(item);
imageList.add(image);
}
}
if (!imageList.isEmpty()){
orderChildImageDao.batchSaveEntity(imageList);
}
// 禁止取消
if (orderChild.getStatus() >= OrderChildEnum.Status.LOAD.getCode()) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_CANCEL_FORBID);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论