From e8d2211654aadc73afc13be705ada77bdea993ab Mon Sep 17 00:00:00 2001 From: phpcjl <phpcjl@gmail.com> Date: 星期五, 29 十一月 2024 18:26:22 +0800 Subject: [PATCH] 1.添加字段 --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java | 54 ++++++++++++++++- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java | 2 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 5 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java | 7 ++ ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java | 10 ++- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java | 34 +++++++++++ ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java | 2 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java | 2 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java | 4 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java | 2 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java | 12 ++-- 11 files changed, 118 insertions(+), 16 deletions(-) diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java index 9a98d9d..1878f6b 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java @@ -44,6 +44,10 @@ @TableField("variable_point") private BigDecimal variablePoint; + @ApiModelProperty(value = "变动后余额") + @TableField("balance") + private BigDecimal balance; + @ApiModelProperty(value = "变动时间") @TableField("create_time") private LocalDateTime createTime; diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java index 4152c2c..6015842 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java @@ -6,6 +6,7 @@ import com.ruoyi.account.vo.UserPointVO; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.page.TableDataInfo; import com.ruoyi.common.security.utils.SecurityUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -18,6 +19,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalDateTime; +import java.util.List; /** * <p> @@ -49,11 +51,13 @@ */ @GetMapping("/getUserPointDetail") @ApiOperation("获取变更明细") - public R<UserPointDetailVO> getUserPointDetail(@ApiParam("指定日期") LocalDateTime date, - @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " + + public TableDataInfo getUserPointDetail(@ApiParam("指定日期") LocalDateTime date, + @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " + "5 = 门店业绩积分 6 =门店返佣积分7=技师业绩积分8 =转赠积分 9 =做工积分 " + "10 =注册积分)") Integer type){ - return R.ok(); + startPage(); + List<UserPointDetailVO> list = userPointService.getUserPointDetail(SecurityUtils.getUserId(), date, type); + return getDataTable(list); } /** diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java new file mode 100644 index 0000000..7b2f61b --- /dev/null +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java @@ -0,0 +1,34 @@ +package com.ruoyi.account.enums; + +import lombok.Getter; + +@Getter +public enum PointChangeType { + CONSUME(1, "消费积分"), + COMMISSION_RETURN(2, "返佣积分"), + NEW_USER_REFERRAL(3, "拉新人积分"), + EXCHANGE_GOODS(4, "兑换商品"), + STORE_PERFORMANCE(5, "门店业绩积分"), + STORE_COMMISSION_RETURN(6, "门店返佣积分"), + TECHNICIAN_PERFORMANCE(7, "技师业绩积分"), + TRANSFER_POINTS(8, "转赠积分"), + WORK_PERFORMANCE(9, "做工积分"), + REGISTRATION(10, "注册积分"); + + private final int code; + private final String description; + + PointChangeType(int code, String description) { + this.code = code; + this.description = description; + } + + public static PointChangeType fromCode(int code) { + for (PointChangeType type : values()) { + if (type.getCode() == code) { + return type; + } + } + throw new IllegalArgumentException("Invalid code: " + code); + } +} diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/WithdrawalAuditStatus.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java similarity index 91% rename from ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/WithdrawalAuditStatus.java rename to ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java index 3daa060..4788fd6 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/WithdrawalAuditStatus.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java @@ -1,4 +1,4 @@ -package com.ruoyi.account; +package com.ruoyi.account.enums; import lombok.Getter; diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java index 1e104a9..4092f6f 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java @@ -2,7 +2,11 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.account.api.model.UserPoint; +import com.ruoyi.account.vo.UserPointDetailVO; import com.ruoyi.account.vo.UserPointVO; + +import java.time.LocalDateTime; +import java.util.List; /** * <p> @@ -15,4 +19,7 @@ public interface UserPointService extends IService<UserPoint> { UserPointVO getUserPoint(Long userId); + + + List<UserPointDetailVO> getUserPointDetail(Long userId, LocalDateTime date, Integer type); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java index f010f2e..c94835c 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java @@ -1,15 +1,29 @@ package com.ruoyi.account.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.account.mapper.UserPointMapper; +import com.ruoyi.account.api.feignClient.AppUserClient; +import com.ruoyi.account.api.model.AppUser; import com.ruoyi.account.api.model.UserPoint; +import com.ruoyi.account.enums.PointChangeType; +import com.ruoyi.account.mapper.UserPointMapper; import com.ruoyi.account.service.UserPointService; +import com.ruoyi.account.vo.UserPointDetailVO; import com.ruoyi.account.vo.UserPointVO; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + /** * <p> - * 服务实现类 + * 服务实现类 * </p> * * @author luodangjia @@ -17,10 +31,42 @@ */ @Service public class UserPointServiceImpl extends ServiceImpl<UserPointMapper, UserPoint> implements UserPointService { + @Resource + private AppUserClient appUserClient; @Override public UserPointVO getUserPoint(Long userId) { - // TODO 待实现 - return null; + AppUser appUser = appUserClient.getAppUserById(userId); + List<UserPoint> userPointList = list(new LambdaQueryWrapper<UserPoint>() + .eq(UserPoint::getAppUserId, userId)); + + Map<Integer, BigDecimal> userBalanceMap = userPointList.stream() + .collect(Collectors.toMap(UserPoint::getType, UserPoint::getBalance)); + + BigDecimal lavePoint = appUser.getLavePoint(); + UserPointVO userPointVO = new UserPointVO(); + userPointVO.setTotalPoint(lavePoint); + userPointVO.setShopPoint(userBalanceMap.get(PointChangeType.CONSUME.getCode())); + userPointVO.setSharePoint(userBalanceMap.get(PointChangeType.COMMISSION_RETURN.getCode())); + userPointVO.setPullNewPoint(userBalanceMap.get(PointChangeType.NEW_USER_REFERRAL.getCode())); + userPointVO.setShopAchievementPoint(userBalanceMap.get(PointChangeType.STORE_PERFORMANCE.getCode())); + userPointVO.setShopSharePoint(userBalanceMap.get(PointChangeType.STORE_COMMISSION_RETURN.getCode())); + return userPointVO; + } + + @Override + public List<UserPointDetailVO> getUserPointDetail(Long userId, LocalDateTime date, Integer type) { + List<UserPoint> userPointList = list(new LambdaQueryWrapper<UserPoint>() + .eq(UserPoint::getAppUserId, userId)); + if (CollectionUtil.isNotEmpty(userPointList)) { + return userPointList.stream().map(p -> { + UserPointDetailVO userPointDetailVO = new UserPointDetailVO(); + userPointDetailVO.setType(p.getType()); + userPointDetailVO.setVariablePoint(p.getVariablePoint()); + userPointDetailVO.setCreateTime(p.getCreateTime()); + return userPointDetailVO; + }).collect(Collectors.toList()); + } + return Collections.emptyList(); } } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java index ba74390..c6f7b55 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java @@ -1,7 +1,7 @@ package com.ruoyi.account.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.ruoyi.account.WithdrawalAuditStatus; +import com.ruoyi.account.enums.WithdrawalAuditStatus; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.account.api.model.WithdrawalRequests; import com.ruoyi.account.service.AppUserService; diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java index d81b7c9..a3dc126 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java @@ -12,7 +12,7 @@ public class UserPointVO { @ApiModelProperty(value = "总积分") - private Integer totalPoint; + private BigDecimal totalPoint; @ApiModelProperty(value = "消费积分数") private BigDecimal shopPoint; diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java index cd40477..6161981 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java @@ -21,4 +21,6 @@ OrderDetailVO getOrderDetail(Long orderId); boolean check(String orderNumber, Long shopId); + + void writeOff(String code); } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index 07e2af9..d67a708 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -121,4 +121,9 @@ .eq(Order::getShopId, shopId)); return order != null; } + + @Override + public void writeOff(String code) { + + } } diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java index a57807b..e2a2d77 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java @@ -11,6 +11,8 @@ import com.ruoyi.other.api.vo.GetSeckillActivityInfo; import com.ruoyi.other.service.GoodsSeckillService; import com.ruoyi.other.service.SeckillActivityInfoService; +import com.ruoyi.other.vo.SeckillActivityDetailVO; +import com.ruoyi.other.vo.SeckillActivityVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; @@ -49,10 +51,10 @@ */ @GetMapping("/list") @ApiOperation(value = "秒杀活动列表",tags = {"小程序-商城-首页-秒杀活动列表"}) - public AjaxResult list(Goods goods) + public R<List<SeckillActivityVO>> list(Goods goods) { startPage(); - return AjaxResult.success(seckillActivityInfoService.listSeckillActivity(goods)); + return R.ok(seckillActivityInfoService.listSeckillActivity(goods)); } /** @@ -60,16 +62,14 @@ */ @GetMapping("/detail/{id}") @ApiOperation(value = "秒杀活动详情", tags = {"小程序-商城-首页-秒杀活动列表-秒杀活动详情"}) - public AjaxResult detail(@PathVariable("id") Integer id) + public R<SeckillActivityDetailVO> detail(@PathVariable("id") Integer id) { - return AjaxResult.success(seckillActivityInfoService.detail(id)); + return R.ok(seckillActivityInfoService.detail(id)); } /** * 根据商品id和会员等级获取对应的秒杀活动 - * @param info - * @return */ @PostMapping("/getSeckillActivityInfo") public R<GoodsSeckill> getSeckillActivityInfo(@RequestBody GetSeckillActivityInfo info){ -- Gitblit v1.7.1