diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java index bd5ee4fd9..0393053a4 100644 --- a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java @@ -161,6 +161,7 @@ public class MemberGroupController extends BaseController { /** * 根据memberGroup查询车辆消费记录 + * /member/memberGroup/queryMemberGroupConsumptionList */ @PostMapping("/queryMemberGroupConsumptionList") public TableDataInfo queryMemberGroupConsumptionList(@RequestBody MemberGroupDTO dto) { diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java index 95a912041..a5549bcb5 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java @@ -27,9 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -315,7 +313,10 @@ public class MemberGroupServiceImpl implements MemberGroupService { Map> listMap = orderList.stream().collect(Collectors.groupingBy(OrderBasicInfo::getMemberId)); MemberGroupConsumptionVO vo = null; for (Map.Entry> entry : listMap.entrySet()) { - List orderBasicInfoList = entry.getValue(); + // 订单根据结算时间倒序,结算时间为null的排在最后(null在前,结算日期正序,之后整个list反转) + List orderBasicInfoList = entry.getValue().stream() + .sorted(Comparator.comparing(OrderBasicInfo::getSettlementTime, Comparator.nullsFirst(Comparator.reverseOrder()))) + .collect(Collectors.toList()); if (CollectionUtils.isEmpty(orderBasicInfoList)) { continue; } @@ -324,11 +325,13 @@ public class MemberGroupServiceImpl implements MemberGroupService { String vinCode = null; String licensePlateNumber = null; BigDecimal totalConsumptionAmount = BigDecimal.ZERO; + Date date = DateUtils.getNowDate(); for (int i = 0; i < orderBasicInfoList.size(); i++) { OrderBasicInfo orderBasicInfo = orderBasicInfoList.get(i); if (i == 0) { vinCode = orderBasicInfo.getVinCode(); licensePlateNumber = orderBasicInfo.getPlateNumber(); + date = orderBasicInfo.getSettlementTime(); } // 订单消费金额 @@ -343,6 +346,7 @@ public class MemberGroupServiceImpl implements MemberGroupService { vo.setVinCode(vinCode); vo.setLicensePlateNumber(licensePlateNumber); vo.setTotalConsumptionAmount(totalConsumptionAmount.toString()); + vo.setLastDate(DateUtils.formatDateTime(date)); } return resultList; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/base/MemberGroupConsumptionVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/base/MemberGroupConsumptionVO.java index 0c9233607..a4a9520e8 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/vo/base/MemberGroupConsumptionVO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/base/MemberGroupConsumptionVO.java @@ -28,4 +28,9 @@ public class MemberGroupConsumptionVO { * 总消费金额 */ private String totalConsumptionAmount; + + /** + * 最近一笔订单的消费时间 + */ + private String lastDate; }