From b45c961fadf8cb54de00e3e73ce1e9f5cfc712f3 Mon Sep 17 00:00:00 2001 From: hupeng Date: Thu, 18 Apr 2019 21:18:33 +0800 Subject: [PATCH] =?UTF-8?q?[C=E7=AB=AF][=E4=BF=AE=E6=94=B9]:=E4=BC=9A?= =?UTF-8?q?=E5=91=98=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=8D=87=E7=BA=A7=E7=99=BE=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxUserStructureController.java | 2 +- .../controller/WxUserGrantController.java | 58 ++++++++++++------- .../com/iformall/domain/vo/WxCUserVo.java | 20 +++++-- .../service/WxCouponOrderService.java | 6 -- .../service/WxLevelConfigService.java | 2 +- .../impl/WxCUserBasicInfoServiceImpl.java | 2 +- .../impl/WxCouponOrderServiceImpl.java | 5 -- 7 files changed, 54 insertions(+), 41 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxUserStructureController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxUserStructureController.java index b8c1fe47f..0edaa3dba 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WxUserStructureController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxUserStructureController.java @@ -134,7 +134,7 @@ public class WxUserStructureController extends BaseController { WxLevelConfig other = new WxLevelConfig(); //没有等级的会员 - other.setLevel("普通会员"); + other.setLevel(WxLevelConfigService.DEFAULT_LEVEL); WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); other.setCount(wxCUserBasicInfoService.findCount(dto) - levelList.stream().map(WxLevelConfig::getCount).reduce(Long::sum).orElse(0L)); diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index 0d800b8bb..53ce144d2 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -503,29 +503,45 @@ public class WxUserGrantController extends BaseController { WxCUser user = getUser(); WxCUserVo userVo = new WxCUserVo(); 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 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 levelList = wxLevelConfigService.getByTenantId(user.getTenantId()); + if (levelList.size() > 0) + levelTarget = levelList.get(0).getPoints(); + for (int i = 0; i= 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); } diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxCUserVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxCUserVo.java index 074d4e32d..e32e41f2b 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxCUserVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxCUserVo.java @@ -21,8 +21,8 @@ public class WxCUserVo extends WxCUser { private Integer discountRate; private Integer amount; - private Integer couponOrderCount; - + private Integer upgradePercent; + private Integer upgradeScore; public Date getBirthdate() { return birthdate; @@ -89,11 +89,19 @@ public class WxCUserVo extends WxCUser { 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; } } diff --git a/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java index e1b974c9e..9314b254b 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java @@ -156,12 +156,6 @@ public interface WxCouponOrderService { */ int queryPriceTotal(WxCouponOrder wxCouponOrder); - /** - * 查询领取数 - * @return - */ - int queryCountTotal(WxCouponOrder wxCouponOrder); - ////// ------- 卡 /** diff --git a/mallinkService/src/main/java/com/iformall/service/WxLevelConfigService.java b/mallinkService/src/main/java/com/iformall/service/WxLevelConfigService.java index d0dd6d9db..da28d3d6b 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxLevelConfigService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxLevelConfigService.java @@ -12,7 +12,7 @@ public interface WxLevelConfigService { public final static int DEFAULT_MERCHANT_DISCOUNT = 100; - public final static String DEFAULT_LEVEL = "无"; + public final static String DEFAULT_LEVEL = "普通会员"; /** * 根据实体查询分页列表 * diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java index 04e60ba7c..37d3aa1c9 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java @@ -329,7 +329,7 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService { List levels = wxLevelConfigService.getByTenantId(tenentId); WxTags wxTagsBase = new WxTags(); - wxTagsBase.setName("普通会员"); + wxTagsBase.setName(WxLevelConfigService.DEFAULT_LEVEL); wxTagsBase.setTypeId(EnumTagType.ID_51.getCode()); wxTagsBase.setId(0L); tagsMemberLevel.add(wxTagsBase); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 3a1556236..4f0dad893 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -697,11 +697,6 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { return wxCouponOrderMapper.queryPriceTotal(wxCouponOrder); } - @Override - public int queryCountTotal(WxCouponOrder wxCouponOrder) { - return wxCouponOrderMapper.findCount(wxCouponOrder); - } - @Override public ResultData listCardVoAsPage(WxCardCVo record, Integer pageIndex, Integer pageSize) {