diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java b/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java index b967a12..9e9e0d0 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java @@ -305,6 +305,13 @@ public class OrderBiz { // 获取当前登录用户 Long orderInitiatorId = SecurityUtils.getCurrentUserId(); + // 订单处于完成/取消状态/待确认状态,不允许新增任务 + OrderMain orderMain = orderMainService.obtainOrderMainById(orderTaskDTO.getOrderId()); + if (!Objects.equals(orderMain.getMainOrderStatus(), MainOrderStatusEnum.NOT_STARTED.getCode()) || + !Objects.equals(orderMain.getMainOrderStatus(), MainOrderStatusEnum.PROCESSING.getCode())) { + throw new BadRequestException("当前订单状态处于:"+ MainOrderStatusEnum.getInstance(orderMain.getMainOrderStatus()) + ",不允许新增任务"); + } + // 新建订单飞行任务限制(当前飞行员不能存在任务处于未进行,进行中) Long orderId = orderTaskDTO.getOrderId(); orderDetailService.checkOrderDetail(orderId, orderInitiatorId); @@ -395,7 +402,6 @@ public class OrderBiz { orderAllDetailVO.setCustomerId(orderMain.getCustomerId()); orderAllDetailVO.setOrderInitiatorId(orderMain.getOrderInitiatorId()); orderAllDetailVO.setAttractionId(orderMain.getAttractionId()); - orderAllDetailVO.setConfirmStatus(orderMain.getConfirmStatus()); // 获取路线 String routeName = obtainRouteName(orderMain, orderAllDetailVO); @@ -902,7 +908,7 @@ public class OrderBiz { // 是否存在飞行任务(至少存在一个飞行失败或者完成的,才能点击完成,且不能存在未开始,进行中的) List orderDetailList = orderDetailService.queryOrderDetailByOrderId(orderId); if (CollectionUtil.isEmpty(orderDetailList)) { - throw new BadRequestException("该订单不存在飞行任务,无法完成"); + throw new BadRequestException("该订单不存在飞行任务,无法完成订单"); } // 订单不能存在未开始或者进行中的飞行任务 boolean hasFlightTask = orderDetailList.stream().anyMatch(orderDetail -> { @@ -917,10 +923,9 @@ public class OrderBiz { updateOrderMain.setId(orderId); updateOrderMain.setOrderFinishTime(new Date()); if (currentUserType.equals(UserTypeEnum.EMPLOYEES)) { - updateOrderMain.setConfirmStatus(ConfirmStatusEnum.PILOT_CONFIRMED.getCode()); + updateOrderMain.setMainOrderStatus(MainOrderStatusEnum.WAIT_CONFIRM.getCode()); updateOrderMain.setConfirmTime(new Date()); } else { - updateOrderMain.setConfirmStatus(ConfirmStatusEnum.CUSTOMER_CONFIRMED.getCode()); updateOrderMain.setMainOrderStatus(MainOrderStatusEnum.COMPLETED.getCode()); } orderMainService.finishMainOrder(updateOrderMain); diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/OrderMain.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/OrderMain.java index f857eb8..3bfc411 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/OrderMain.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/OrderMain.java @@ -114,11 +114,6 @@ public class OrderMain extends BaseEntity { */ private Date orderFinishTime; - /** - * 确认标识(1是飞行员确认,2是客户已确认,默认0) - */ - private Integer confirmStatus; - /** * 确认时间 */ diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/constant/OrderConstant.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/constant/OrderConstant.java index 748033f..a3a08ac 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/constant/OrderConstant.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/constant/OrderConstant.java @@ -26,7 +26,7 @@ public class OrderConstant { /** * 结算批次号 */ - public static final String SETTLEMENT_BATCH_NO_PREFIX = "JS_"; + public static final String SETTLEMENT_BATCH_NO_PREFIX = "JS-"; /** * 年月日 时分秒 diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java index 0acc491..08fb46b 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java @@ -80,5 +80,11 @@ public class OrderMainPageQueryDTO { @ApiModelProperty(value = "订单状态(支持多个状态查询)") private List mainOrderStatusList; + /** + * 订单编号查询 + */ + @ApiModelProperty(value = "订单编号查询") + private String orderNo; + } diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/enums/MainOrderStatusEnum.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/enums/MainOrderStatusEnum.java index 9d88bd7..46b6695 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/enums/MainOrderStatusEnum.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/enums/MainOrderStatusEnum.java @@ -27,6 +27,10 @@ public enum MainOrderStatusEnum { */ PROCESSING(1, "进行中"), + /** + * 待确认 + */ + WAIT_CONFIRM(4, "待确认"), /** * 已完成 */ diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderAllDetailVO.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderAllDetailVO.java index 560dc58..9217442 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderAllDetailVO.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderAllDetailVO.java @@ -152,12 +152,6 @@ public class OrderAllDetailVO { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date orderFinishTime; - /** - * 确认标识(1是飞行员已确认,2是客户已确认,默认0) - */ - @ApiModelProperty(value = "确认标识(1是飞行员已确认,2是客户已确认,默认0)") - private Integer confirmStatus; - /** * 订单子单信息列表 */ diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderMainPageQueryVO.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderMainPageQueryVO.java index 7fefbec..57a923e 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderMainPageQueryVO.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/vo/OrderMainPageQueryVO.java @@ -23,6 +23,13 @@ public class OrderMainPageQueryVO { */ @ApiModelProperty(value = "ID") private Long id; + + /** + * 订单编号 + */ + @ApiModelProperty(value = "订单编号") + private String orderNo; + /** * 订单类型 */ @@ -32,7 +39,7 @@ public class OrderMainPageQueryVO { /** * 订单状态 */ - @ApiModelProperty(value = "订单状态(0=未进行,1=进行中,2=已完成,3=已取消)") + @ApiModelProperty(value = "订单状态(0=未进行,1=进行中,2=已完成,3=已取消,4=待确认)") private Integer mainOrderStatus; /** diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java index f623580..dc0702a 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java @@ -47,6 +47,7 @@ public class OrderMainServiceImpl extends ServiceImpllambdaUpdate() .eq(OrderMain::getId, updateOrderMain.getId()) .set(OrderMain::getOrderFinishTime, updateOrderMain.getOrderFinishTime()) - .set(OrderMain::getConfirmStatus, updateOrderMain.getConfirmStatus()) .set(ObjectUtil.isNotNull(updateOrderMain.getMainOrderStatus()), OrderMain::getMainOrderStatus, updateOrderMain.getMainOrderStatus()) .set(ObjectUtil.isNotNull(updateOrderMain.getConfirmTime()), @@ -140,8 +140,7 @@ public class OrderMainServiceImpl extends ServiceImpl obtainOrderNotFinish(Date finishTime) { return list(Wrappers.lambdaQuery(OrderMain.class) - .eq(OrderMain::getMainOrderStatus, MainOrderStatusEnum.PROCESSING.getCode()) - .eq(OrderMain::getConfirmStatus, ConfirmStatusEnum.PILOT_CONFIRMED.getCode()) + .eq(OrderMain::getMainOrderStatus, MainOrderStatusEnum.WAIT_CONFIRM.getCode()) .le(OrderMain::getOrderFinishTime, finishTime) ); } diff --git a/aircraft-system/src/main/resources/mapper/order/OrderMainMapper.xml b/aircraft-system/src/main/resources/mapper/order/OrderMainMapper.xml index c92e38a..abf5839 100644 --- a/aircraft-system/src/main/resources/mapper/order/OrderMainMapper.xml +++ b/aircraft-system/src/main/resources/mapper/order/OrderMainMapper.xml @@ -5,9 +5,9 @@ id, order_no, order_type, order_initiator_id, phone, attraction_id, customer_id, - customer_name, route_ids, cargo_weight, total_amount, amount, surcharge_amount, open_id, + route_ids, cargo_weight, total_amount, amount, surcharge_amount, open_id, settlement_status, main_order_status, relevance_status, order_create_time, - order_finish_time, create_time, create_by, update_time, update_by, del_flag + order_finish_time, create_time, create_by, update_time, update_by, del_flag,confirm_time