From f0bb1e886f6653700b574a16b40e43fc2bb38239 Mon Sep 17 00:00:00 2001 From: wangchao Date: Wed, 22 Jul 2020 15:49:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B1=85=E6=B0=91=E7=AB=AF=E7=A7=AF=E5=88=86?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/UserPointStatisticalDailyDTO.java | 5 +++ .../dto/form/ResiCommonUserIdFormDTO.java | 23 ++++++++++ .../epmet/dto/form/ResiPointRankFormDTO.java | 33 +++++++++++++++ .../dto/result/ResiPointDetailResultDTO.java | 27 ++++++++++++ .../dto/result/ResiPointLogListResultDTO.java | 26 ++++++++++++ .../result/ResiPointLogPeriodResultDTO.java | 42 +++++++++++++++++++ .../result/ResiPointRankListResultDTO.java | 37 ++++++++++++++++ .../dto/result/ResiPointRankResultDTO.java | 27 ++++++++++++ .../dto/result/ResiPointRankingResultDTO.java | 23 ++++++++++ .../epmet-point/epmet-point-server/pom.xml | 2 +- .../epmet/dao/PointVerificationLogDao.java | 15 ++++++- .../com/epmet/dao/UserPointActionLogDao.java | 15 ++++++- .../dao/UserPointStatisticalDailyDao.java | 17 +++++++- .../java/com/epmet/dao/UserPointTotalDao.java | 25 ++++++++++- .../UserPointStatisticalDailyEntity.java | 5 +++ .../service/PointVerificationLogService.java | 11 +++++ .../service/UserPointActionLogService.java | 12 ++++++ .../UserPointStatisticalDailyService.java | 11 +++++ .../impl/PointVerificationLogServiceImpl.java | 34 +++++++++++++++ .../impl/UserPointActionLogServiceImpl.java | 38 +++++++++++++++-- .../UserPointStatisticalDailyServiceImpl.java | 20 +++++++++ .../java/com/epmet/utils/ModuleConstant.java | 29 +++++++++++++ .../mapper/PointVerificationLogDao.xml | 18 +++++++- .../mapper/UserPointActionLogDao.xml | 17 ++++++++ .../mapper/UserPointStatisticalDailyDao.xml | 36 +++++++++++++++- .../resources/mapper/UserPointTotalDao.xml | 25 +++++++++++ 26 files changed, 563 insertions(+), 10 deletions(-) create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiCommonUserIdFormDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiPointRankFormDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointDetailResultDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogListResultDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogPeriodResultDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankListResultDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankResultDTO.java create mode 100644 epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankingResultDTO.java diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/UserPointStatisticalDailyDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/UserPointStatisticalDailyDTO.java index 51291b89ef..3cc6a6008f 100644 --- a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/UserPointStatisticalDailyDTO.java +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/UserPointStatisticalDailyDTO.java @@ -38,6 +38,11 @@ public class UserPointStatisticalDailyDTO implements Serializable { */ private String id; + /** + * 用户Id + * */ + private String userId; + /** * 日 yyyy-MM-dd */ diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiCommonUserIdFormDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiCommonUserIdFormDTO.java new file mode 100644 index 0000000000..af247b84f0 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiCommonUserIdFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description + * @ClassName ResiCommonUserIdFormDTO + * @Auth wangc + * @Date 2020-07-22 14:07 + */ +@Data +public class ResiCommonUserIdFormDTO implements Serializable { + private static final long serialVersionUID = -1961545266124776452L; + + public interface UserId extends CustomerClientShowGroup{} + + @NotBlank(message = "获取不到用户Id",groups = UserId.class) + private String userId; +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiPointRankFormDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiPointRankFormDTO.java new file mode 100644 index 0000000000..e78baf6178 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/form/ResiPointRankFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.Min; +import java.io.Serializable; + +/** + * @Description 查询用户积分总排行、周排行、月排行参数 + * @ClassName ResiPointRankParam + * @Auth wangc + * @Date 2020-07-21 16:22 + */ +@Data +public class ResiPointRankFormDTO implements Serializable { + private static final long serialVersionUID = 1534061512200591149L; + + /** + * 页码 + * */ + @Min(1) + private Integer pageNo; + + /** + * 每页数据条数 + * */ + private Integer pageSize; + + /** + * 时间维度 week month + * */ + private String timeDimension; +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointDetailResultDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointDetailResultDTO.java new file mode 100644 index 0000000000..556b8471e1 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointDetailResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 居民端用户查询累计积分、可用积分 + * @ClassName ResiPointDetailResultDTO + * @Auth wangc + * @Date 2020-07-21 11:06 + */ +@Data +public class ResiPointDetailResultDTO implements Serializable { + private static final long serialVersionUID = -4909273528724428776L; + + /** + * 累计积分 + * */ + private Integer accumulatedPoint; + + /** + * 可用积分 + * */ + private Integer usablePoint; + +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogListResultDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogListResultDTO.java new file mode 100644 index 0000000000..46deb286e9 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogListResultDTO.java @@ -0,0 +1,26 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 用户积分记录列表返参DTO + * @ClassName ResiPointLogListResultDTO + * @Auth wangc + * @Date 2020-07-22 14:03 + */ +@Data +public class ResiPointLogListResultDTO implements Serializable { + private static final long serialVersionUID = 5316430104874305245L; + /** + * 日期 yyyy-MM-dd 字符串 + * */ + private String date; + + /** + * 当日积分记录列表 + * */ + private List dailyList; +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogPeriodResultDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogPeriodResultDTO.java new file mode 100644 index 0000000000..a701328659 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointLogPeriodResultDTO.java @@ -0,0 +1,42 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 用户积分记录时段DTO + * @ClassName ResiPointLogPeriodResultDTO + * @Auth wangc + * @Date 2020-07-22 10:54 + */ +@Data +public class ResiPointLogPeriodResultDTO implements Serializable { + private static final long serialVersionUID = -7686828993714392843L; + + /** + * 日期 yyyy-MM-dd + * */ + private String date; + + /** + * 时段 HH:mm + * */ + private String time; + + /** + * +100 -25 + * */ + private String point; + + /** + * 标题 + * */ + private String title; + + /** + * 备注内容 + * */ + private String remark; + +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankListResultDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankListResultDTO.java new file mode 100644 index 0000000000..0bcf0a4758 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankListResultDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 居民端积分总排行、周排行、月排行接口返参DTO + * @ClassName ResiPointRankListResultDTO + * @Auth wangc + * @Date 2020-07-21 16:48 + */ +@Data +public class ResiPointRankListResultDTO implements Serializable { + private static final long serialVersionUID = 685408245193506541L; + + /** + * 当前用户昵称 + * */ + private String myNickname; + + /** + * 当前用户积分 + * */ + private Integer myPoint; + + /** + * 当前用户排名 + * */ + private Integer myRanking; + + /** + * 积分排名列表 + * */ + private List rankList; +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankResultDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankResultDTO.java new file mode 100644 index 0000000000..54f72cd275 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + + +/** + * @Description 用户积分排名DTO + * @ClassName ResiPointRankResultDTO + * @Auth wangc + * @Date 2020-07-21 14:52 + */ +@Data +public class ResiPointRankResultDTO implements Serializable { + private static final long serialVersionUID = 2095785598460202838L; + + private Integer rank; + + private String userId; + + private String customerId; + + private Integer totalPoint; +} diff --git a/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankingResultDTO.java b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankingResultDTO.java new file mode 100644 index 0000000000..ee551db6e0 --- /dev/null +++ b/epmet-module/epmet-point/epmet-point-client/src/main/java/com/epmet/dto/result/ResiPointRankingResultDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description + * @ClassName ResiPointRankingResultDTO + * @Auth wangc + * @Date 2020-07-21 16:38 + */ +@Data +public class ResiPointRankingResultDTO implements Serializable { + private static final long serialVersionUID = -5073341813089351068L; + + private String nickname; + + private Integer ranking; + + private Integer point; + +} diff --git a/epmet-module/epmet-point/epmet-point-server/pom.xml b/epmet-module/epmet-point/epmet-point-server/pom.xml index 962ba4984e..49ccab5b90 100644 --- a/epmet-module/epmet-point/epmet-point-server/pom.xml +++ b/epmet-module/epmet-point/epmet-point-server/pom.xml @@ -116,7 +116,7 @@ 6379 123456 - true + false 122.152.200.70:8848 fcd6fc8f-ca3a-4b01-8026-2b05cdc5976b diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/PointVerificationLogDao.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/PointVerificationLogDao.java index de8e7a2aab..4791eb6c00 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/PointVerificationLogDao.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/PointVerificationLogDao.java @@ -18,8 +18,12 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.ResiPointLogPeriodResultDTO; import com.epmet.entity.PointVerificationLogEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 核销记录/确认表 @@ -29,5 +33,14 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface PointVerificationLogDao extends BaseDao { - + + /** + * @Description 查询指定用户兑换记录 + * @param userId + * @return + * @author wangc + * @date 2020.07.22 15:38 + **/ + List selectVerificationLog(@Param("userId") String userId); + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointActionLogDao.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointActionLogDao.java index a611054609..6f9ac3fb4c 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointActionLogDao.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointActionLogDao.java @@ -18,8 +18,12 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.ResiPointLogPeriodResultDTO; import com.epmet.entity.UserPointActionLogEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 用户积分行为记录 @@ -29,5 +33,14 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface UserPointActionLogDao extends BaseDao { - + + /** + * @Description 查询用户积分明细,按照时间倒叙 + * @param userId + * @return + * @author wangc + * @date 2020.07.22 13:56 + **/ + List selectPointActionLogList(@Param("userId") String userId); + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointStatisticalDailyDao.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointStatisticalDailyDao.java index 9600a5ed9c..142817ae9f 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointStatisticalDailyDao.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointStatisticalDailyDao.java @@ -18,8 +18,12 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.ResiPointRankResultDTO; import com.epmet.entity.UserPointStatisticalDailyEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 用户积分统计情况 @@ -29,5 +33,16 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface UserPointStatisticalDailyDao extends BaseDao { - + + /** + * @Description 查询客户下周/月度用户积分排行榜 + * @param customerId + * @param dimension + * @param dimensionId + * @return + * @author wangc + * @date 2020.07.22 10:47 + **/ + List selectPointRankWithinTimeZone(@Param("customerId") String customerId,@Param("dimension") String dimension,@Param("dimensionId") String dimensionId); + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointTotalDao.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointTotalDao.java index 082dfb12e6..b50249c020 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointTotalDao.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/dao/UserPointTotalDao.java @@ -18,8 +18,13 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.ResiPointDetailResultDTO; +import com.epmet.dto.result.ResiPointRankResultDTO; import com.epmet.entity.UserPointTotalEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 用户积分总计 @@ -29,5 +34,23 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface UserPointTotalDao extends BaseDao { - + + /** + * @Description 根据用户Id查询他的累计积分以及可用积分 + * @param userId + * @return + * @author wangc + * @date 2020.07.21 13:38 + **/ + ResiPointDetailResultDTO selectPointByUserId(@Param("userId")String userId); + + /** + * @Description 查询客户下的用户累计积分排名榜 + * @param customerId + * @return + * @author wangc + * @date 2020.07.21 15:16 + **/ + List selectUserPointRank(@Param("customerId") String customerId); + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/entity/UserPointStatisticalDailyEntity.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/entity/UserPointStatisticalDailyEntity.java index f83dec624b..907d284425 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/entity/UserPointStatisticalDailyEntity.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/entity/UserPointStatisticalDailyEntity.java @@ -38,6 +38,11 @@ public class UserPointStatisticalDailyEntity extends BaseEpmetEntity { private static final long serialVersionUID = 1L; + /** + * 用户Id + * */ + private String userId; + /** * 日 yyyy-MM-dd */ diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/PointVerificationLogService.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/PointVerificationLogService.java index 55cd81a0d4..54700cbf63 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/PointVerificationLogService.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/PointVerificationLogService.java @@ -20,6 +20,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.PointVerificationLogDTO; +import com.epmet.dto.form.ResiCommonUserIdFormDTO; +import com.epmet.dto.result.ResiPointLogListResultDTO; import com.epmet.entity.PointVerificationLogEntity; import java.util.List; @@ -92,4 +94,13 @@ public interface PointVerificationLogService extends BaseService getMyExchangeRecord(ResiCommonUserIdFormDTO userId); } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointActionLogService.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointActionLogService.java index 895442c190..e385a923c1 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointActionLogService.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointActionLogService.java @@ -20,6 +20,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.UserPointActionLogDTO; +import com.epmet.dto.form.ResiCommonUserIdFormDTO; +import com.epmet.dto.result.ResiPointLogListResultDTO; import com.epmet.entity.UserPointActionLogEntity; import java.util.List; @@ -92,4 +94,14 @@ public interface UserPointActionLogService extends BaseService getMyPointRecord(ResiCommonUserIdFormDTO userId); + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointStatisticalDailyService.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointStatisticalDailyService.java index cd9d329154..b3cdc6443f 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointStatisticalDailyService.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/UserPointStatisticalDailyService.java @@ -20,6 +20,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.UserPointStatisticalDailyDTO; +import com.epmet.dto.form.ResiPointRankFormDTO; +import com.epmet.dto.result.ResiPointRankListResultDTO; import com.epmet.entity.UserPointStatisticalDailyEntity; import java.util.List; @@ -92,4 +94,13 @@ public interface UserPointStatisticalDailyService extends BaseService getMyExchangeRecord(ResiCommonUserIdFormDTO userId) { + List logList = baseDao.selectVerificationLog(userId.getUserId()); + List result = new LinkedList<>(); + if(null != logList && !logList.isEmpty()){ + Map> map = + logList.stream().collect(Collectors.groupingBy(ResiPointLogPeriodResultDTO::getDate)); + + Map> sortedMap = Maps.newLinkedHashMap(); + map.entrySet().stream().sorted(Map.Entry.>comparingByKey().reversed()) + .forEachOrdered(e -> sortedMap.put(e.getKey(), e.getValue())); + map.entrySet().forEach(e -> { + ResiPointLogListResultDTO o = new ResiPointLogListResultDTO(); + o.setDate(e.getKey()); + o.setDailyList(e.getValue()); + result.add(o); + }); + } + return result; + } + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointActionLogServiceImpl.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointActionLogServiceImpl.java index 1fc485a017..bb57179d6c 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointActionLogServiceImpl.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointActionLogServiceImpl.java @@ -25,15 +25,18 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.dao.UserPointActionLogDao; import com.epmet.dto.UserPointActionLogDTO; +import com.epmet.dto.form.ResiCommonUserIdFormDTO; +import com.epmet.dto.result.ResiPointLogListResultDTO; +import com.epmet.dto.result.ResiPointLogPeriodResultDTO; import com.epmet.entity.UserPointActionLogEntity; import com.epmet.service.UserPointActionLogService; +import com.google.common.collect.Maps; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; /** * 用户积分行为记录 @@ -97,4 +100,33 @@ public class UserPointActionLogServiceImpl extends BaseServiceImpl getMyPointRecord(ResiCommonUserIdFormDTO userId) { + List logList = baseDao.selectPointActionLogList(userId.getUserId()); + List result = new LinkedList<>(); + if(null != logList && !logList.isEmpty()){ + Map> map = + logList.stream().collect(Collectors.groupingBy(ResiPointLogPeriodResultDTO::getDate)); + + Map> sortedMap = Maps.newLinkedHashMap(); + map.entrySet().stream().sorted(Map.Entry.>comparingByKey().reversed()) + .forEachOrdered(e -> sortedMap.put(e.getKey(), e.getValue())); + map.entrySet().forEach(e -> { + ResiPointLogListResultDTO o = new ResiPointLogListResultDTO(); + o.setDate(e.getKey()); + o.setDailyList(e.getValue()); + result.add(o); + }); + + } + return result; + } + } \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointStatisticalDailyServiceImpl.java b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointStatisticalDailyServiceImpl.java index 9715199436..6f68297877 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointStatisticalDailyServiceImpl.java +++ b/epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/UserPointStatisticalDailyServiceImpl.java @@ -25,8 +25,11 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.dao.UserPointStatisticalDailyDao; import com.epmet.dto.UserPointStatisticalDailyDTO; +import com.epmet.dto.form.ResiPointRankFormDTO; +import com.epmet.dto.result.ResiPointRankListResultDTO; import com.epmet.entity.UserPointStatisticalDailyEntity; import com.epmet.service.UserPointStatisticalDailyService; +import com.epmet.utils.ModuleConstant; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -97,4 +100,21 @@ public class UserPointStatisticalDailyServiceImpl extends BaseServiceImpl - + + \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointActionLogDao.xml b/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointActionLogDao.xml index e3c1dcc2bc..57c6c0b81f 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointActionLogDao.xml +++ b/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointActionLogDao.xml @@ -21,5 +21,22 @@ + + \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointStatisticalDailyDao.xml b/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointStatisticalDailyDao.xml index 5af194c539..e37642cd78 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointStatisticalDailyDao.xml +++ b/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointStatisticalDailyDao.xml @@ -5,7 +5,8 @@ - + + @@ -21,5 +22,38 @@ + + + \ No newline at end of file diff --git a/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointTotalDao.xml b/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointTotalDao.xml index 3866cce55e..9c372dc78b 100644 --- a/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointTotalDao.xml +++ b/epmet-module/epmet-point/epmet-point-server/src/main/resources/mapper/UserPointTotalDao.xml @@ -18,5 +18,30 @@ + + + + + \ No newline at end of file