ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/CouponInfoVo.java
@@ -10,6 +10,7 @@ import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; /** * <p> @@ -116,5 +117,9 @@ @TableField("person_ids") private String personIds; @ApiModelProperty(value = "商品卷对应的商品名称") @TableField(exist = false) private List<String> goodNames; } ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/GoodsClientFallbackFactory.java
@@ -29,6 +29,11 @@ public R<Goods> getGoodsById(Integer id) { return R.fail("根据id获取商品详情失败:" + cause.getMessage()); } @Override public R<List<Goods>> getGoodsById(String [] ids) { return R.fail("根据ids获取商品详情失败:" + cause.getMessage()); } }; } } ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/GoodsClient.java
@@ -34,4 +34,7 @@ */ @PostMapping("/goods/getGoodsById") R<Goods> getGoodsById(@RequestParam("id") Integer id); @PostMapping("/goods/getGoodsByIds") R<List<Goods>> getGoodsById(@RequestParam("ids") String[] ids); } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java
@@ -13,9 +13,13 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.bean.BeanUtils; import com.ruoyi.account.api.vo.PaymentUserCoupon; import com.ruoyi.other.api.domain.Goods; import com.ruoyi.other.api.feignClient.GoodsClient; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.other.api.domain.CouponInfo; @@ -48,6 +52,8 @@ @Resource private UserPointService userPointService; @Resource private GoodsClient goodsClient; @@ -65,6 +71,25 @@ CouponInfo data = couponClient.detail(record.getCouponId()).getData(); CouponInfoVo vo = new CouponInfoVo(); BeanUtils.copyProperties(data,vo); //如果是商品券,将商品名称返回 if (vo.getCouponType()==4){ List<String> goodNames = new ArrayList<>(); if (vo.getForGoodIds().equals("-1")){ goodNames.add("全部商品"); }else{ String[] split = vo.getForGoodIds().split(","); R<List<Goods>> goodsById = goodsClient.getGoodsById(split); if (goodsById.getData()!=null){ for (Goods datum : goodsById.getData()) { goodNames.add(datum.getName()); } } vo.setGoodNames(goodNames); } } record.setCouponInfoVo(vo); if (record.getUseTime()==null){ record.setStatus(1); ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java
@@ -88,6 +88,12 @@ return R.ok(goods); } @ResponseBody @PostMapping("/getGoodsByIds") public R<List<Goods>> getGoodsByIds(@RequestParam("ids") String [] ids){ List<Goods> goods = goodsService.lambdaQuery().in(Goods::getId, ids).eq(Goods::getStatus, 0).list(); return R.ok(goods); } } ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShareController.java
@@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.security.service.TokenService; @@ -109,6 +110,61 @@ } @ApiOperation(value = "添加", tags = {"后台-分享管理"}) @PostMapping("/manage/add") public R<Void> manage(@RequestBody Share share){ Long userid = tokenService.getLoginUser().getUserid(); share.setAddType(1); share.setAuditStatus(ShareAuditStatus.SUCCESS.getCode()); share.setObjectId(userid.toString()); share.setDelFlag(0); shareService.save(share); return R.ok(); } @ApiOperation(value = "编辑", tags = {"后台-分享管理"}) @PostMapping("/manage/edit") public R<Void> manageedit(@RequestBody Share share){ shareService.updateById(share); return R.ok(); } @ApiOperation(value = "删除", tags = {"后台-分享管理"}) @GetMapping("/manage/delete") public R<Void> managedelete(@RequestParam Integer id){ shareService.removeById(id); return R.ok(); } @ApiOperation(value = "列表", tags = {"后台-分享管理"}) @GetMapping("/manage/list") public R<Void> managelist(String name,Integer addType,@RequestParam Integer PageNum,Integer pageSize){ shareService.lambdaQuery().like(name!=null,Share::getName,name).eq(addType!=null,Share::getAddType,addType).page(Page.of(pageSize,pageSize)); return R.ok(); } @ApiOperation(value = "设为小程序分享", tags = {"后台-分享管理"}) @GetMapping("/manage/set") public R<Void> set(@RequestParam Integer id){ //将所有分享设为不是小程序分享 List<Share> list = shareService.lambdaQuery().list(); if (!list.isEmpty()){ for (Share share : list) { } } //设置小程序分享 return R.ok(); } }