diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java index e4a0fe757..4043d2df1 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java @@ -92,6 +92,23 @@ public class WxCUserBasicInfoController extends BaseController { @Autowired private WxCreditHistoryService wxCreditHistoryService; + private void updateLevelParam(WxCUserBasicInfo info) { + List levelList = wxLevelConfigService.getByTenantInfo(ifParentUpdateTenantInfo()); + levelList = levelList.stream() + .sorted(Comparator.comparing(WxLevelConfig::getPoints)) + .collect(Collectors.toList()); + for (int levelIndex = 0; levelIndex < levelList.size(); levelIndex++) { + WxLevelConfig l = levelList.get(levelIndex); + if(l.getId().equals(info.getLevelId())){ + Integer levelStartScore = l.getPoints(); + Integer levelEndScore = levelIndex + 1 < levelList.size() ? levelList.get(levelIndex + 1).getPoints() : null; + info.setLevelStartScore(levelStartScore); + info.setLevelEndScore(levelEndScore); + break; + } + } + } + private void setUserInfoLevel(WxCUserBasicInfo info) { if (info.getPoins() == null || info.getPoins() == 0) { @@ -170,6 +187,9 @@ public class WxCUserBasicInfoController extends BaseController { if (StringUtils.isBlank(wxCUserBasicInfo.getName())) { wxCUserBasicInfo.setName(null); } + if (wxCUserBasicInfo.getLevelId() != null){ + updateLevelParam(wxCUserBasicInfo); + } } wxCUserBasicInfo.undateFinalTenantId(ifParentUpdateTenantInfo()); wxCUserBasicInfo.setSortColumns(BaseEntity.SortField.wcubiActiveTime_DESC); @@ -177,7 +197,7 @@ public class WxCUserBasicInfoController extends BaseController { if (page.getSize() > 0) { for (WxCUserBasicInfo info : page.getList()) { -// setUserInfoLevel(info); + setUserInfoLevel(info); setUserInfoCarCount(info); info.setCreditStartTime(wxCUserBasicInfo.getCreditStartTime()); info.setCreditEndTime(wxCUserBasicInfo.getCreditEndTime()); diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java index 4917b11ce..835143eb9 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java @@ -123,6 +123,13 @@ public class WxCUserBasicInfo extends TenantEntityWithoutFinalTenantId { @io.swagger.annotations.ApiModelProperty(value="会员等级",name="level") private String level; + @TableField(exist = false) + private Long levelId; + @TableField(exist = false) + private Integer levelStartScore; + @TableField(exist = false) + private Integer levelEndScore; + @TableField(exist = false) private List levelList; diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index b22e3a764..b1baaea25 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -36,10 +36,8 @@ wcubi.`id`,wcubi.`phone`,wcubi.`birthdate`,wcubi.`education`,wcubi.`sex`,wcubi.`height`,wcubi.`weight`,wcubi.`id_card`,wcubi.`email`, wcubi.`address`,wcubi.`poins`,wcubi.`tag_id`,wcubi.`create_date`,wcubi.`update_date`, wcubi.`final_tenant_id`,wcubi.`tenant_id`,wcubi.`parent_tenant_id`,wcubi.`name`,wcubi.`nick_name`, - wcubi.`avatar_url`,wcubi.`credit`,wcubi.`active_time`,wcubi.`login_count`,wcubi.`act_record`,wcubi.`qr_code` - ,(select level from wx_level_config - where poins >= points and tenant_id=wcubi.final_tenant_id - order by points desc limit 1 ) level,wcubi.score_date,wcubi.status + wcubi.`avatar_url`,wcubi.`credit`,wcubi.`active_time`,wcubi.`login_count`,wcubi.`act_record`,wcubi.`qr_code`, + wcubi.score_date,wcubi.status @@ -82,12 +80,12 @@ and wcubi.`address` like concat('%', #{address},'%') - - and wcubi.`poins` = #{poins} + + and wcubi.poins >= #{levelStartScore} - - and wcubi.`credit` = #{credit} + + and wcubi.poins < #{levelEndScore} @@ -144,16 +142,10 @@ @@ -191,12 +183,12 @@ and wcubi.`address` like concat('%', #{basicInfo.address},'%') - - and wcubi.`poins` = #{basicInfo.poins} + + and wcubi.poins >= #{basicInfo.levelStartScore} - - and wcubi.`credit` = #{basicInfo.credit} + + and wcubi.poins < #{basicInfo.levelEndScore} @@ -266,16 +258,10 @@