冗余修正

This commit is contained in:
syruan 2025-10-13 21:05:22 +08:00
parent 225fe39491
commit 1792a84d4f
1 changed files with 28 additions and 60 deletions

View File

@ -191,7 +191,7 @@ public class OrderServiceImpl implements OrderService {
BigDecimal totalReliefPrice = BigDecimal.ZERO;
for (OrderDetailDto detailDto : list) {
detailDto.setOriginDays(detailDto.getDays());
if (Objects.nonNull(detailDto) && String.valueOf(OrderStatusEnum.ORDER_FINISHED.getStatus()).equals(detailDto.getOrderStatus())) {
if (String.valueOf(OrderStatusEnum.ORDER_FINISHED.getStatus()).equals(detailDto.getOrderStatus())) {
detailDto.setDays(detailDto.getDateDays() == null ? detailDto.getDays() : String.valueOf(detailDto.getDateDays()));
if (detailDto.getChangeCost() != null) {
totalRentalPrice = totalRentalPrice.add(detailDto.getChangeCost());
@ -215,9 +215,7 @@ public class OrderServiceImpl implements OrderService {
dto.setDetailsList(list);
Optional<OrderDetailDto> minOrderStatus = list.stream()
.min((p1, p2) -> Integer.compare(Integer.parseInt(p1.getOrderStatus()), Integer.parseInt(p2.getOrderStatus())));
if (minOrderStatus.isPresent()) {
dto.setOrderStatus(minOrderStatus.get().getOrderStatus());
}
minOrderStatus.ifPresent(orderDetailDto -> dto.setOrderStatus(orderDetailDto.getOrderStatus()));
//根据订单id去lease_repair_record表中查询是否已填写退租检修信息
int count = leaseRepairRecordMapper.selectLeaseContent(String.valueOf(dto.getOrderId()));
if (count > 0) {
@ -261,10 +259,8 @@ public class OrderServiceImpl implements OrderService {
OrderInfoDto orderInfoDto = orderMapper.getOrderDetailsById(dto);
List<OrderDetailDto> list = orderMapper.selectOrderDetailsByOrderId(dto.getOrderId().toString());
Optional<OrderDetailDto> minOrderStatus = list.stream()
.min((p1, p2) -> Integer.compare(Integer.parseInt(p1.getOrderStatus()), Integer.parseInt(p2.getOrderStatus())));
if (minOrderStatus.isPresent()) {
orderInfoDto.setOrderStatus(minOrderStatus.get().getOrderStatus());
}
.min(Comparator.comparingInt(p -> Integer.parseInt(p.getOrderStatus())));
minOrderStatus.ifPresent(orderDetailDto -> orderInfoDto.setOrderStatus(orderDetailDto.getOrderStatus()));
orderInfoDto.setPhoneNumber(Sm4Utils.decrypt(orderInfoDto.getPhoneNumber()));
orderInfoDto.setStartTime(list.get(0).getRentBeginTime());
orderInfoDto.setEndTime(list.get(0).getRentEndTime());
@ -292,10 +288,6 @@ public class OrderServiceImpl implements OrderService {
/**
* 计算两个日期之间的天数差
*
* @param preOutboundTimeStr
* @param rentEndTime
* @return
*/
public static long calculateDaysDifference(String preOutboundTimeStr, Date rentEndTime) {
try {
@ -323,14 +315,9 @@ public class OrderServiceImpl implements OrderService {
/**
* java.util.Date 转换为 java.time.LocalDate
*
* @param date
* @return
*/
public static LocalDate convertToLocalDate(Date date) {
return Instant.ofEpochMilli(date.getTime())
.atZone(ZoneId.systemDefault())
.toLocalDate();
return Instant.ofEpochMilli(date.getTime()).atZone(ZoneId.systemDefault()).toLocalDate();
}
@Override
@ -342,6 +329,12 @@ public class OrderServiceImpl implements OrderService {
dto.setBuyerCompany(Optional.ofNullable(SecurityUtils.getLoginUser().getSysUser().getCompanyId()).orElse(SecurityUtils.getLoginUser().getSysUser().getDeptId()).intValue());
}
List<OrderInfoDto> orderInfoDto = orderMapper.getOrderStatusCount(dto);
OrderInfoDto infoDto = getOrderInfoDto(orderInfoDto);
orderInfoDto.add(0, infoDto);
return orderInfoDto;
}
private static OrderInfoDto getOrderInfoDto(List<OrderInfoDto> orderInfoDto) {
int total = 0;
OrderInfoDto infoDto = new OrderInfoDto();
if (!CollectionUtils.isEmpty(orderInfoDto)) {
@ -355,8 +348,7 @@ public class OrderServiceImpl implements OrderService {
}
infoDto.setOrderCount(total);
}
orderInfoDto.add(0, infoDto);
return orderInfoDto;
return infoDto;
}
@Override
@ -398,20 +390,12 @@ public class OrderServiceImpl implements OrderService {
orderMapper.updateDeviceStatus(dto);
}
}
// String sendMessage = sendMsgToSms(Arrays.asList(dtos.get(0).getBuyerPhoneNumber(), dtos.get(0).getSellerPhoneNumber()), orderInfoDto.getOrderCode() + "订单,退租成功");
// if (StringUtils.isBlank(sendMessage)) {
// System.err.println("短信发送失败");
// } else {
// System.out.println("短信发送消息:" + sendMessage);
// }
}
}
// 取消
if (orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_CANCEL.getStatus().toString())) {
if (dtos.size() > 0 && CollectionUtil.isNotEmpty(dtos)) {
if (!dtos.isEmpty() && CollectionUtil.isNotEmpty(dtos)) {
for (OrderDetailDto dto : dtos) {
// sendMsgToSms(Arrays.asList(dtos.get(0).getBuyerPhoneNumber(), dtos.get(0).getSellerPhoneNumber()), dto.getOrderCode() + "订单已被取消");
dto.setMaStatus(MaStatusEnum.LISTING.getCode().toString());
orderMapper.updateDeviceStatus(dto);
}
@ -420,11 +404,9 @@ public class OrderServiceImpl implements OrderService {
// 订单完成修改装备为下架状态
if (orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_FINISHED.getStatus().toString())) {
if (!dtos.isEmpty() && CollectionUtil.isNotEmpty(dtos)) {
String orderCode = "";
if (CollectionUtil.isNotEmpty(orderInfoDto.getMaIds())) {
for (OrderDetailDto dto : dtos) {
if (orderInfoDto.getMaIds().contains(dto.getMaId())) {
orderCode = dto.getOrderCode();
dto.setMaStatus(MaStatusEnum.ON_HIRE.getCode().toString());
orderMapper.updateDeviceStatus(dto);
}
@ -435,32 +417,27 @@ public class OrderServiceImpl implements OrderService {
orderMapper.updateDeviceStatus(dto);
}
}
// sendMsgToSms(Arrays.asList(dtos.get(0).getBuyerPhoneNumber(), dtos.get(0).getSellerPhoneNumber()), orderCode + "订单已完成。");
}
}
String userName = SecurityUtils.getLoginUser().getUsername();
Integer i = orderMapper.updateOrderStatus(orderInfoDto.getOrderId(), orderInfoDto.getMaIds(), orderInfoDto.getOrderStatus(), userName, orderInfoDto.getOrderRemark());
if (!CollectionUtils.isEmpty(dtos)) {
OptionalInt minOrderStatus = dtos.stream().mapToInt(o -> Integer.parseInt(o.getOrderStatus())).min();
if (minOrderStatus.isPresent()) {
TmTask tmTask = new TmTask();
tmTask.setTaskType(TmTaskTypeEnum.TM_TASK_ORDER.getTaskTypeId());
tmTask.setTaskStatus(minOrderStatus.getAsInt());
tmTask.setCode(dtos.get(0).getOrderCode());
if (orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_PENDING_SHIPMENT.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_TERMINATED.getStatus().toString())) {
tmTask.setNoticeCompanyId(tmTask.getBuyerCompanyId());
// sendMsgToSms(Arrays.asList(dtos.get(0).getBuyerPhoneNumber()), dtos.get(0).getOrderCode() + "订单已接单,请注意查收。");
TmTask tmTask = new TmTask();
tmTask.setTaskType(TmTaskTypeEnum.TM_TASK_ORDER.getTaskTypeId());
tmTask.setTaskStatus(minOrderStatus.getAsInt());
tmTask.setCode(dtos.get(0).getOrderCode());
if (orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_PENDING_SHIPMENT.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_TERMINATED.getStatus().toString())) {
tmTask.setNoticeCompanyId(tmTask.getBuyerCompanyId());
} else if (orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_RECEIVE.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_AWAITING_RECEIPT.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_UNDER_LEASE.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_REPAIRED.getStatus().toString())) {
tmTask.setNoticeCompanyId(tmTask.getSellerCompanyId());
// sendMsgToSms(Arrays.asList(dtos.get(0).getBuyerPhoneNumber()), dtos.get(0).getOrderCode() + "订单已接单,请注意查收。");
}
tmTaskMapper.updateTaskStatus(tmTask);
} else if (orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_RECEIVE.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_AWAITING_RECEIPT.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_UNDER_LEASE.getStatus().toString()) ||
orderInfoDto.getOrderStatus().equals(OrderStatusEnum.ORDER_REPAIRED.getStatus().toString())) {
tmTask.setNoticeCompanyId(tmTask.getSellerCompanyId());
}
tmTaskMapper.updateTaskStatus(tmTask);
}
try {
if (!dtos.isEmpty() && CollectionUtil.isNotEmpty(dtos)) {
@ -469,9 +446,6 @@ public class OrderServiceImpl implements OrderService {
bmMessage.setCreateTime(DateUtils.getNowDate());
Map<String, String> maMachineMap = remoteConfig.getDictValue(MaterialConstants.DICT_TYPE_ORDER_STATUS);
bmMessage.setMessageContent("您好,您的订单状态已变更为" + maMachineMap.get(orderInfoDto.getOrderStatus()) + ",请及时查看");
// if (Objects.equals(orderInfoDto.getOrderStatus(), OrderStatusEnum.ORDER_AWAITING_RECEIPT.getStatus().toString())) {
// sendMsgToSms(Arrays.asList(dto.getSellerPhoneNumber()), dto.getOrderCode() + "订单已确认收货。");
// }
bmMessage.setMessageType(String.valueOf(MessageTypeEnum.ORDER_MESSAGE.getType()));
bmMessage.setUuid(String.valueOf(UUID.randomUUID()));
bmMessage.setFromCompany(0L);
@ -634,9 +608,7 @@ public class OrderServiceImpl implements OrderService {
dto.setDetailsList(list);
Optional<OrderDetailDto> minOrderStatus = list.stream()
.min((p1, p2) -> Integer.compare(Integer.parseInt(p1.getOrderStatus()), Integer.parseInt(p2.getOrderStatus())));
if (minOrderStatus.isPresent()) {
dto.setOrderStatus(minOrderStatus.get().getOrderStatus());
}
minOrderStatus.ifPresent(orderDetailDto -> dto.setOrderStatus(orderDetailDto.getOrderStatus()));
//根据订单id去lease_repair_record表中查询是否已填写退租检修信息
int count = leaseRepairRecordMapper.selectLeaseContent(String.valueOf(dto.getOrderId()));
if (count > 0) {
@ -687,9 +659,6 @@ public class OrderServiceImpl implements OrderService {
/**
* 获取单个订单取件码
*
* @param dto
* @return
*/
@Override
public int getOrderCode(OrderDetailDto dto) {
@ -704,8 +673,7 @@ public class OrderServiceImpl implements OrderService {
}
/**
* @param orderId
* @return
* 订单确认
*/
@Override
public AjaxResult orderConfirm(String orderId) {