提交 acfa365b authored 作者: huyufan's avatar huyufan

Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into…

Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into v5.7_break_contract_reverse_20231020
......@@ -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 = "1")
private Integer cancelType;
@ApiModelProperty(value = "取消原因", example = "信息错误")
@NotBlank(message = "取消原因不能为空")
private String remark;
@ApiModelProperty(value = "图片列表")
......
......@@ -108,8 +108,12 @@ 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 = "司机取消详细原因", example = "司机取消详细原因")
private String cancelDetail;
@ApiModelProperty(value = "磅单审核状态 0 待审核 1 审核通过 2 审核驳回", example = "0")
private Integer poundStatus;
@ApiModelProperty(value = "磅单审核驳回原因", example = "交货信息错误")
......
......@@ -79,9 +79,12 @@ 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;
@ApiModelProperty(value = "司机取消详细原因", example = "司机取消详细原因")
private String cancelDetail;
@ApiModelProperty(value = "状态", example = "0")
private Integer status;
......
......@@ -11,10 +11,7 @@ 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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
/**
* @ClassName GoodsOrderController
......@@ -37,7 +34,7 @@ public class OrderGoodsLogController {
@ApiOperation(value = "货单日志列表", notes = "<br>By:刘海泉")
@PostMapping("/pageOrderGoodsList")
public Result<PageData<OrderGoodsLogVO>> pageOrderGoodsLog(@RequestParam @Validated OrderGoodsLogParam param) {
public Result<PageData<OrderGoodsLogVO>> pageOrderGoodsLog(@RequestBody @Validated OrderGoodsLogParam param) {
IPage<OrderGoodsLogVO> page = orderGoodsLogService.pageOrderGoodsLog(param);
return Result.page(page.getRecords(), page.getTotal(), page.getPages());
}
......
......@@ -70,6 +70,8 @@ public class OrderChild implements HasKey<Integer> {
private BigDecimal freight; //运费(分)
private String cancelRemark; //取消原因
private Integer cancelType; //司机取消原因类型
private String cancelDetail; //司机取消详细原因
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,30 @@ 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());
orderChild.setCancelDetail(param.getRemark());
}
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 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论