| @@ -134,7 +134,7 @@ public class WxUserStructureController extends BaseController { | |||||
| WxLevelConfig other = new WxLevelConfig(); | WxLevelConfig other = new WxLevelConfig(); | ||||
| //没有等级的会员 | //没有等级的会员 | ||||
| other.setLevel("普通会员"); | |||||
| other.setLevel(WxLevelConfigService.DEFAULT_LEVEL); | |||||
| WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); | WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); | ||||
| other.setCount(wxCUserBasicInfoService.findCount(dto) | other.setCount(wxCUserBasicInfoService.findCount(dto) | ||||
| - levelList.stream().map(WxLevelConfig::getCount).reduce(Long::sum).orElse(0L)); | - levelList.stream().map(WxLevelConfig::getCount).reduce(Long::sum).orElse(0L)); | ||||
| @@ -503,29 +503,45 @@ public class WxUserGrantController extends BaseController { | |||||
| WxCUser user = getUser(); | WxCUser user = getUser(); | ||||
| WxCUserVo userVo = new WxCUserVo(); | WxCUserVo userVo = new WxCUserVo(); | ||||
| org.springframework.beans.BeanUtils.copyProperties(user, userVo); | org.springframework.beans.BeanUtils.copyProperties(user, userVo); | ||||
| if (userVo.getScore() == null || userVo.getScore() == 0) { | |||||
| userVo.setLevelName(WxLevelConfigService.DEFAULT_LEVEL); | |||||
| } else { | |||||
| userVo.setLevelName(WxLevelConfigService.DEFAULT_LEVEL); | |||||
| List<WxLevelConfig> levelList = wxLevelConfigService.getByTenantId(user.getTenantId()); | |||||
| for (WxLevelConfig levelConfig : levelList) { | |||||
| if (userVo.getScore() >= levelConfig.getPoints()) { | |||||
| userVo.setLevelId(levelConfig.getId()); | |||||
| userVo.setLevelName(levelConfig.getLevel()); | |||||
| } | |||||
| } | |||||
| WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(user.getId()); | |||||
| if (wxCUserBasicInfo != null) { | |||||
| userVo.setName(wxCUserBasicInfo.getName()); | |||||
| userVo.setBirthdate(wxCUserBasicInfo.getBirthdate()); | |||||
| userVo.setSex(wxCUserBasicInfo.getSex()); | |||||
| userVo.setAddress(wxCUserBasicInfo.getAddress()); | |||||
| if (userVo.getScore() == null) | |||||
| userVo.setScore(0); | |||||
| Integer levelScore = 0; | |||||
| Integer levelTarget= 0; | |||||
| userVo.setLevelName(WxLevelConfigService.DEFAULT_LEVEL); | |||||
| List<WxLevelConfig> levelList = wxLevelConfigService.getByTenantId(user.getTenantId()); | |||||
| if (levelList.size() > 0) | |||||
| levelTarget = levelList.get(0).getPoints(); | |||||
| for (int i = 0; i<levelList.size(); i++) { | |||||
| WxLevelConfig levelConfig = levelList.get(i); | |||||
| if (userVo.getScore() >= levelConfig.getPoints()) { | |||||
| userVo.setLevelId(levelConfig.getId()); | |||||
| userVo.setLevelName(levelConfig.getLevel()); | |||||
| levelScore = levelConfig.getPoints(); | |||||
| if (i+1 < levelList.size()) | |||||
| levelTarget = levelList.get(i+1).getPoints(); | |||||
| } | } | ||||
| } | } | ||||
| WxCouponOrder wxCouponOrder = new WxCouponOrder(); | |||||
| wxCouponOrder.setcUserId(user.getId()); | |||||
| wxCouponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USE_WAIT.getCode()); | |||||
| userVo.setCouponOrderCount(wxCouponOrderService.queryCountTotal(wxCouponOrder)); | |||||
| if (levelTarget == 0) { | |||||
| userVo.setUpgradePercent(0); | |||||
| userVo.setUpgradeScore(0); | |||||
| } else if(levelScore == levelTarget) { | |||||
| userVo.setUpgradePercent(100); | |||||
| userVo.setUpgradeScore(0); | |||||
| } else { | |||||
| userVo.setUpgradePercent((userVo.getScore()-levelScore)*100/(levelTarget-levelScore)); | |||||
| userVo.setUpgradeScore(levelTarget-userVo.getScore()); | |||||
| } | |||||
| WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(user.getId()); | |||||
| if (wxCUserBasicInfo != null) { | |||||
| userVo.setName(wxCUserBasicInfo.getName()); | |||||
| userVo.setBirthdate(wxCUserBasicInfo.getBirthdate()); | |||||
| userVo.setSex(wxCUserBasicInfo.getSex()); | |||||
| userVo.setAddress(wxCUserBasicInfo.getAddress()); | |||||
| } | |||||
| return new ResultData(userVo); | return new ResultData(userVo); | ||||
| } | } | ||||
| @@ -21,8 +21,8 @@ public class WxCUserVo extends WxCUser { | |||||
| private Integer discountRate; | private Integer discountRate; | ||||
| private Integer amount; | private Integer amount; | ||||
| private Integer couponOrderCount; | |||||
| private Integer upgradePercent; | |||||
| private Integer upgradeScore; | |||||
| public Date getBirthdate() { | public Date getBirthdate() { | ||||
| return birthdate; | return birthdate; | ||||
| @@ -89,11 +89,19 @@ public class WxCUserVo extends WxCUser { | |||||
| this.amount = amount; | this.amount = amount; | ||||
| } | } | ||||
| public Integer getCouponOrderCount() { | |||||
| return couponOrderCount; | |||||
| public Integer getUpgradePercent() { | |||||
| return upgradePercent; | |||||
| } | |||||
| public void setUpgradePercent(Integer upgradePercent) { | |||||
| this.upgradePercent = upgradePercent; | |||||
| } | |||||
| public Integer getUpgradeScore() { | |||||
| return upgradeScore; | |||||
| } | } | ||||
| public void setCouponOrderCount(Integer couponOrderCount) { | |||||
| this.couponOrderCount = couponOrderCount; | |||||
| public void setUpgradeScore(Integer upgradeScore) { | |||||
| this.upgradeScore = upgradeScore; | |||||
| } | } | ||||
| } | } | ||||
| @@ -156,12 +156,6 @@ public interface WxCouponOrderService { | |||||
| */ | */ | ||||
| int queryPriceTotal(WxCouponOrder wxCouponOrder); | int queryPriceTotal(WxCouponOrder wxCouponOrder); | ||||
| /** | |||||
| * 查询领取数 | |||||
| * @return | |||||
| */ | |||||
| int queryCountTotal(WxCouponOrder wxCouponOrder); | |||||
| ////// ------- 卡 | ////// ------- 卡 | ||||
| /** | /** | ||||
| @@ -12,7 +12,7 @@ public interface WxLevelConfigService { | |||||
| public final static int DEFAULT_MERCHANT_DISCOUNT = 100; | public final static int DEFAULT_MERCHANT_DISCOUNT = 100; | ||||
| public final static String DEFAULT_LEVEL = "无"; | |||||
| public final static String DEFAULT_LEVEL = "普通会员"; | |||||
| /** | /** | ||||
| * 根据实体查询分页列表 | * 根据实体查询分页列表 | ||||
| * | * | ||||
| @@ -329,7 +329,7 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService { | |||||
| List<WxLevelConfig> levels = wxLevelConfigService.getByTenantId(tenentId); | List<WxLevelConfig> levels = wxLevelConfigService.getByTenantId(tenentId); | ||||
| WxTags wxTagsBase = new WxTags(); | WxTags wxTagsBase = new WxTags(); | ||||
| wxTagsBase.setName("普通会员"); | |||||
| wxTagsBase.setName(WxLevelConfigService.DEFAULT_LEVEL); | |||||
| wxTagsBase.setTypeId(EnumTagType.ID_51.getCode()); | wxTagsBase.setTypeId(EnumTagType.ID_51.getCode()); | ||||
| wxTagsBase.setId(0L); | wxTagsBase.setId(0L); | ||||
| tagsMemberLevel.add(wxTagsBase); | tagsMemberLevel.add(wxTagsBase); | ||||
| @@ -697,11 +697,6 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||||
| return wxCouponOrderMapper.queryPriceTotal(wxCouponOrder); | return wxCouponOrderMapper.queryPriceTotal(wxCouponOrder); | ||||
| } | } | ||||
| @Override | |||||
| public int queryCountTotal(WxCouponOrder wxCouponOrder) { | |||||
| return wxCouponOrderMapper.findCount(wxCouponOrder); | |||||
| } | |||||
| @Override | @Override | ||||
| public ResultData listCardVoAsPage(WxCardCVo record, Integer pageIndex, Integer pageSize) { | public ResultData listCardVoAsPage(WxCardCVo record, Integer pageIndex, Integer pageSize) { | ||||