退租检修

This commit is contained in:
sxu 2024-12-11 18:09:48 +08:00
parent e130be6e33
commit 3e46f5ae35
5 changed files with 22 additions and 6 deletions

View File

@ -16,7 +16,7 @@ public enum OrderStatusEnum {
ORDER_PENDING_SHIPMENT(3, "已出库-待收货"), ORDER_PENDING_SHIPMENT(3, "已出库-待收货"),
ORDER_AWAITING_RECEIPT(4, "已收货-租赁中"), ORDER_AWAITING_RECEIPT(4, "已收货-租赁中"),
ORDER_UNDER_LEASE(5, "已退租-待结算"), ORDER_UNDER_LEASE(5, "已退租-待结算"),
ORDER_TERMINATED(6, "已结算-待完成"), ORDER_TERMINATED(6, "已结算-待确认"),
ORDER_FINISHED(7, "已完成"), ORDER_FINISHED(7, "已完成"),
ORDER_CANCEL(8, "已取消"); ORDER_CANCEL(8, "已取消");

View File

@ -23,6 +23,9 @@ public class LeaseRecordDto {
@ApiModelProperty(value = "订单编号") @ApiModelProperty(value = "订单编号")
private String code; private String code;
@ApiModelProperty(value = "装备Id")
private Integer maId;
@ApiModelProperty(value = "装备套数") @ApiModelProperty(value = "装备套数")
private Integer maNumber; private Integer maNumber;

View File

@ -39,6 +39,9 @@ public class LeaseRepairRecord extends BaseEntity implements Serializable {
@ApiModelProperty(value = "装备ID") @ApiModelProperty(value = "装备ID")
private Integer maId; private Integer maId;
@ApiModelProperty(value = "装备IDs")
private List<Integer> maIds;
@ApiModelProperty(value = "设备名称") @ApiModelProperty(value = "设备名称")
private String deviceName; private String deviceName;

View File

@ -26,9 +26,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.util.ArrayList; import java.util.*;
import java.util.List;
import java.util.Optional;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -189,8 +187,13 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
if (leaseRecordDto == null || leaseRecordDto.getOrderId() == null || leaseRecordDto.getCode() == null) { if (leaseRecordDto == null || leaseRecordDto.getOrderId() == null || leaseRecordDto.getCode() == null) {
return AjaxResult.error(HttpCodeEnum.TO_PARAM_NULL.getCode(), HttpCodeEnum.TO_PARAM_NULL.getMsg()); return AjaxResult.error(HttpCodeEnum.TO_PARAM_NULL.getCode(), HttpCodeEnum.TO_PARAM_NULL.getMsg());
} }
List<OrderDetailDto> list = orderMapper.selectOrderDetailsByOderId(leaseRecordDto.getOrderId()); List<Integer> maIdList = new ArrayList<>();
List<Integer> maIdList = list.stream().map(OrderDetailDto::getMaId).collect(Collectors.toList()); if (Objects.isNull(leaseRecordDto.getMaId())) {
List<OrderDetailDto> list = orderMapper.selectOrderDetailsByOderId(leaseRecordDto.getOrderId());
maIdList = list.stream().map(OrderDetailDto::getMaId).collect(Collectors.toList());
} else {
maIdList = Arrays.asList(leaseRecordDto.getMaId());
}
LeaseRepairRecord leaseRepairRecord = createLeaseRepairRecord(leaseRecordDto); LeaseRepairRecord leaseRepairRecord = createLeaseRepairRecord(leaseRecordDto);
// 校验所有记录是否为空 // 校验所有记录是否为空
if (isAllRecordListsEmpty(leaseRecordDto)) { if (isAllRecordListsEmpty(leaseRecordDto)) {
@ -329,6 +332,7 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
LeaseRepairRecord leaseRepairRecord = new LeaseRepairRecord(); LeaseRepairRecord leaseRepairRecord = new LeaseRepairRecord();
leaseRepairRecord.setOrderId(leaseRecordDto.getOrderId()); leaseRepairRecord.setOrderId(leaseRecordDto.getOrderId());
leaseRepairRecord.setOrderStatus(OrderStatusEnum.ORDER_TERMINATED.getStatus()); leaseRepairRecord.setOrderStatus(OrderStatusEnum.ORDER_TERMINATED.getStatus());
leaseRepairRecord.setMaIds(maIdList);
result += orderMapper.updateOrder(leaseRepairRecord); result += orderMapper.updateOrder(leaseRepairRecord);
// 返回结果 // 返回结果
return result > 0 ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg()) return result > 0 ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg())

View File

@ -82,6 +82,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
set order_status = #{orderStatus}, set order_status = #{orderStatus},
update_time = now() update_time = now()
WHERE order_id = #{orderId} WHERE order_id = #{orderId}
<if test="maIds != null and maIds.size() > 0">
and ma_id in
<foreach item="item" collection="maIds" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</update> </update>
<select id="getdeviceCount" resultType="com.bonus.material.device.domain.DevInfo"> <select id="getdeviceCount" resultType="com.bonus.material.device.domain.DevInfo">