diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/OrderStatusEnum.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/OrderStatusEnum.java index 0d5b01e..e874708 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/OrderStatusEnum.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/OrderStatusEnum.java @@ -16,7 +16,7 @@ public enum OrderStatusEnum { ORDER_PENDING_SHIPMENT(3, "已出库-待收货"), ORDER_AWAITING_RECEIPT(4, "已收货-租赁中"), ORDER_UNDER_LEASE(5, "已退租-待结算"), - ORDER_TERMINATED(6, "已结算-待完成"), + ORDER_TERMINATED(6, "已结算-待确认"), ORDER_FINISHED(7, "已完成"), ORDER_CANCEL(8, "已取消"); diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRecordDto.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRecordDto.java index 01217a5..5b0f901 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRecordDto.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRecordDto.java @@ -23,6 +23,9 @@ public class LeaseRecordDto { @ApiModelProperty(value = "订单编号") private String code; + @ApiModelProperty(value = "装备Id") + private Integer maId; + @ApiModelProperty(value = "装备套数") private Integer maNumber; diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRepairRecord.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRepairRecord.java index 034c560..f47f3f9 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRepairRecord.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/domain/LeaseRepairRecord.java @@ -39,6 +39,9 @@ public class LeaseRepairRecord extends BaseEntity implements Serializable { @ApiModelProperty(value = "装备ID") private Integer maId; + @ApiModelProperty(value = "装备IDs") + private List maIds; + @ApiModelProperty(value = "设备名称") private String deviceName; diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/service/impl/LeaseRepairRecordServiceImpl.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/service/impl/LeaseRepairRecordServiceImpl.java index 45668a8..2af424c 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/service/impl/LeaseRepairRecordServiceImpl.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/lease/service/impl/LeaseRepairRecordServiceImpl.java @@ -26,9 +26,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.math.RoundingMode; -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; +import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -189,8 +187,13 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService { if (leaseRecordDto == null || leaseRecordDto.getOrderId() == null || leaseRecordDto.getCode() == null) { return AjaxResult.error(HttpCodeEnum.TO_PARAM_NULL.getCode(), HttpCodeEnum.TO_PARAM_NULL.getMsg()); } - List list = orderMapper.selectOrderDetailsByOderId(leaseRecordDto.getOrderId()); - List maIdList = list.stream().map(OrderDetailDto::getMaId).collect(Collectors.toList()); + List maIdList = new ArrayList<>(); + if (Objects.isNull(leaseRecordDto.getMaId())) { + List list = orderMapper.selectOrderDetailsByOderId(leaseRecordDto.getOrderId()); + maIdList = list.stream().map(OrderDetailDto::getMaId).collect(Collectors.toList()); + } else { + maIdList = Arrays.asList(leaseRecordDto.getMaId()); + } LeaseRepairRecord leaseRepairRecord = createLeaseRepairRecord(leaseRecordDto); // 校验所有记录是否为空 if (isAllRecordListsEmpty(leaseRecordDto)) { @@ -329,6 +332,7 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService { LeaseRepairRecord leaseRepairRecord = new LeaseRepairRecord(); leaseRepairRecord.setOrderId(leaseRecordDto.getOrderId()); leaseRepairRecord.setOrderStatus(OrderStatusEnum.ORDER_TERMINATED.getStatus()); + leaseRepairRecord.setMaIds(maIdList); result += orderMapper.updateOrder(leaseRepairRecord); // 返回结果 return result > 0 ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg()) diff --git a/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/order/OrderInfoMapper.xml b/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/order/OrderInfoMapper.xml index f7c2e4a..02a8cbf 100644 --- a/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/order/OrderInfoMapper.xml +++ b/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/order/OrderInfoMapper.xml @@ -82,6 +82,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" set order_status = #{orderStatus}, update_time = now() WHERE order_id = #{orderId} + + and ma_id in + + #{item} + +