From 3f1e7569d9956837d2fa305dd78a7f9583dfa3e5 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期日, 23 七月 2023 18:46:30 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtQuickEntryGetVo.java | 3 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml | 6 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 11 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtAdvertEditDto.java | 3 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/Order.java | 1 ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/PopMapper.xml | 3 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppPopVo.java | 3 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java | 15 + ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/QuickEntryMapper.xml | 2 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppQuickEntryVo.java | 6 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderGetVo.java | 6 ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/AdvertMapper.xml | 2 ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java | 10 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtQuickEntryEditDto.java | 3 ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/BannerMapper.xml | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java | 49 +++++++ ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml | 3 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java | 4 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java | 11 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Advert.java | 5 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/GoodsTotalChangeDto.java | 33 ++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java | 2 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Pop.java | 5 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/PopServiceImpl.java | 19 +- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsTotalService.java | 11 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtAllCustomConfigVo.java | 3 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java | 1 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppPlaceOrderVo.java | 8 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/QuickEntryServiceImpl.java | 19 +- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppGoodsController.java | 4 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java | 25 +++ ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 10 + ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthPageDto.java | 3 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/QuickEntry.java | 5 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 75 ++++++++-- ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml | 8 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppAdvertVo.java | 6 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtPopGetVo.java | 3 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java | 12 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/miniapp/AppHomeController.java | 1 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java | 3 43 files changed, 348 insertions(+), 60 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/GoodsTotalChangeDto.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/GoodsTotalChangeDto.java new file mode 100644 index 0000000..8a85dc5 --- /dev/null +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/GoodsTotalChangeDto.java @@ -0,0 +1,33 @@ +package com.ruoyi.system.api.domain.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @ClassName GoodsTotalChangeDto + * @Description TODO + * @Author jqs + * @Date 2023/7/23 18:02 + * @Version 1.0 + */ +@Data +public class GoodsTotalChangeDto { + + @ApiModelProperty(value = "商品id") + private String goodsId; + + @ApiModelProperty(value = "1下单2退款") + private Integer changeType; + + @ApiModelProperty(value = "数量变化") + private Integer changeNum; + + @ApiModelProperty(value = "金额变化") + private BigDecimal money; + + @ApiModelProperty(value = "人数变化") + private Integer personNum; + +} diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java index b8c0948..0fe5271 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java @@ -85,7 +85,7 @@ * @param activityId * @return R */ - @PostMapping("/startActivity") + @PostMapping("/activity/startActivity") public R startActivity(@RequestBody String activityId); /** @@ -95,6 +95,6 @@ * @param activityId * @return R */ - @PostMapping("/endActivity") + @PostMapping("/activity/endActivity") public R endActivity(@RequestBody String activityId); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java index 8844e7d..1b2d08f 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java @@ -102,6 +102,7 @@ */ @PostMapping("/startActivity") public R startActivity(@RequestBody String activityId){ + activityService.startActivity(activityId); return R.ok(); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java index ca34831..9fcde73 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java @@ -3,8 +3,10 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.goods.service.goods.GoodsFileService; import com.ruoyi.goods.service.goods.GoodsService; +import com.ruoyi.goods.service.goods.GoodsTotalService; import com.ruoyi.goods.service.goods.ShopGoodsService; import com.ruoyi.system.api.domain.dto.AppShopGoodsGetDto; +import com.ruoyi.system.api.domain.dto.GoodsTotalChangeDto; import com.ruoyi.system.api.domain.poji.goods.Goods; import com.ruoyi.system.api.domain.poji.goods.GoodsFile; import com.ruoyi.system.api.domain.poji.goods.ShopGoods; @@ -36,6 +38,9 @@ @Resource private ShopGoodsService shopGoodsService; + + @Resource + private GoodsTotalService goodsTotalService; @PostMapping("/getGoods") public R<Goods> getGoods(@RequestBody String goodsId) @@ -113,4 +118,11 @@ List<MerGoodsPriceListVo> goodsPriceListVoList = goodsService.listGoodsPriceByGoodsId(goodsIds); return R.ok(goodsPriceListVoList); } + + @PostMapping("/changeGoodsTotal") + public R changeGoodsTotal(@RequestBody List<GoodsTotalChangeDto> goodsTotalChangeDtoList) + { + goodsTotalService.changeGoodsTotal(goodsTotalChangeDtoList); + return R.ok(); + } } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppGoodsController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppGoodsController.java index baff41c..d6c9a9e 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppGoodsController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppGoodsController.java @@ -82,7 +82,7 @@ if(userId != null){ Member member = memberService.getMember(userId).getData(); appShoppingCartAddDto.setUserId(userId); - if(appShoppingCartAddDto.getShopId()==null&&member!=null&&member.getRelationShopId()!=null){ + if(member!=null&&member.getBindingFlag()==1&&member.getRelationShopId()!=null){ appShoppingCartAddDto.setShopId(member.getRelationShopId()); } } @@ -97,7 +97,7 @@ if(userId!=null){ Member member = memberService.getMember(userId).getData(); appShoppingCartChangeDto.setUserId(userId); - if(member!=null&&member.getRelationShopId()!=null){ + if(member!=null&&member.getBindingFlag()==1&&member.getRelationShopId()!=null){ appShoppingCartChangeDto.setShopId(member.getRelationShopId()); } } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsTotalService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsTotalService.java index 8d95dfe..b97e99a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsTotalService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsTotalService.java @@ -2,6 +2,9 @@ import com.ruoyi.goods.domain.pojo.goods.GoodsTotal; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.system.api.domain.dto.GoodsTotalChangeDto; + +import java.util.List; /** * <p> @@ -13,4 +16,12 @@ */ public interface GoodsTotalService extends IService<GoodsTotal> { + /** + * @description 更新商品统计 + * @author jqs + * @date 2023/7/23 18:25 + * @param goodsTotalChangeDtoList + * @return void + */ + void changeGoodsTotal(List<GoodsTotalChangeDto> goodsTotalChangeDtoList); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java index eb3e653..d689e18 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java @@ -192,6 +192,18 @@ startDelayTask.setEndTime(activityStartTime); startDelayTask.setRedisKey(DelayTaskEnum.ACTIVITY_START_TASK.getCode() + "-" + activityId); remoteConfigService.addDelayTask(startDelayTask); + }else{ + if(startDelayTask.getEndTime().compareTo(activityStartTime)!=0){ + remoteConfigService.deleteDelayTask(DelayTaskEnum.ACTIVITY_START_TASK.getCode() + "-" + activityId); + redisService.deleteObject(DelayTaskEnum.ACTIVITY_START_TASK.getCode() + "-" + activityId); + redisService.setCacheObject(DelayTaskEnum.ACTIVITY_START_TASK.getCode() + "-" + activityId, activityStartTime, startTimeDifference, TimeUnit.MILLISECONDS); + startDelayTask = new DelayTask(); + startDelayTask.setDelFlag(0); + startDelayTask.setCreateTime(new Date()); + startDelayTask.setEndTime(activityStartTime); + startDelayTask.setRedisKey(DelayTaskEnum.ACTIVITY_START_TASK.getCode() + "-" + activityId); + remoteConfigService.addDelayTask(startDelayTask); + } } // 查询延时任务 DelayTask endDelayTask = remoteConfigService.getDelayTask(DelayTaskEnum.ACTIVITY_END_TASK.getCode() + "-" + activityId).getData(); @@ -204,6 +216,18 @@ endDelayTask.setEndTime(activityEndTime); endDelayTask.setRedisKey(DelayTaskEnum.ACTIVITY_END_TASK.getCode() + "-" + activityId); remoteConfigService.addDelayTask(endDelayTask); + }else{ + if(endDelayTask.getEndTime().compareTo(activityEndTime)!=0){ + remoteConfigService.deleteDelayTask(DelayTaskEnum.ACTIVITY_END_TASK.getCode() + "-" + activityId); + redisService.deleteObject(DelayTaskEnum.ACTIVITY_END_TASK.getCode() + "-" + activityId); + redisService.setCacheObject(DelayTaskEnum.ACTIVITY_END_TASK.getCode() + "-" + activityId, activityEndTime, startTimeDifference, TimeUnit.MILLISECONDS); + endDelayTask = new DelayTask(); + endDelayTask.setDelFlag(0); + endDelayTask.setCreateTime(new Date()); + endDelayTask.setEndTime(activityStartTime); + endDelayTask.setRedisKey(DelayTaskEnum.ACTIVITY_END_TASK.getCode() + "-" + activityId); + remoteConfigService.addDelayTask(endDelayTask); + } } } } @@ -466,6 +490,7 @@ */ @Override public void startActivity(String activityId){ + log.debug(activityId+"活动开始"); Activity activity = this.getById(activityId); if(activity!=null&&activity.getActivityStatus()==0){ activity.setActivityStatus(1); diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java index c383a98..3bdb2d7 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java @@ -181,6 +181,8 @@ appGoodsInfoVo.setSalesPrice(shopGoods.getSalesPrice()); appGoodsInfoVo.setServiceNum(shopGoods.getServiceNum()); } + GoodsTotal goodsTotal = goodsTotalService.getById(goods.getGoodsId()); + appGoodsInfoVo.setSalesNum(goodsTotal.getBuyNumCount()); //活动商品判断 if(appGoodsInfoGetDto.getActivityFlag()==1){ ActivityGoods activityGoods = activityGoodsService.getByGoodsId(appGoodsInfoGetDto.getActivityId(),goods.getGoodsId()); diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java index ddccaad..afafbb8 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java @@ -5,7 +5,11 @@ import com.ruoyi.goods.domain.pojo.goods.GoodsTotal; import com.ruoyi.goods.mapper.goods.GoodsTotalMapper; import com.ruoyi.goods.service.goods.GoodsTotalService; +import com.ruoyi.system.api.domain.dto.GoodsTotalChangeDto; import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; /** * <p> @@ -18,4 +22,49 @@ @Service public class GoodsTotalServiceImpl extends ServiceImpl<GoodsTotalMapper, GoodsTotal> implements GoodsTotalService { + + /** + * @description 更新商品统计 + * @author jqs + * @date 2023/7/23 18:25 + * @param goodsTotalChangeDtoList + * @return void + */ + @Override + public void changeGoodsTotal(List<GoodsTotalChangeDto> goodsTotalChangeDtoList){ + if (goodsTotalChangeDtoList != null && !goodsTotalChangeDtoList.isEmpty()) { + // 创建一个空的GoodsTotal对象 + GoodsTotal goodsTotal; + // 创建一个空的GoodsTotal列表 + List<GoodsTotal> goodsTotalList = new ArrayList<>(); + // 遍历goodsTotalChangeDtoList列表 + for (GoodsTotalChangeDto goodsTotalChangeDto : goodsTotalChangeDtoList) { + // 根据goodsId获取对应的GoodsTotal对象 + goodsTotal = this.getById(goodsTotalChangeDto.getGoodsId()); + // 如果GoodsTotal对象不为空 + if (goodsTotal != null) { + // 根据changeType判断操作类型 + if (goodsTotalChangeDto.getChangeType() == 1) { + // 更新GoodsTotal对象的相关属性 + goodsTotal.setBuyCount(goodsTotal.getBuyCount() + 1); + goodsTotal.setBuyNumCount(goodsTotal.getBuyNumCount() + goodsTotalChangeDto.getChangeNum()); + goodsTotal.setBuyUserCount(goodsTotal.getBuyUserCount() + goodsTotalChangeDto.getPersonNum()); + goodsTotal.setBuyMoneyTotal(goodsTotal.getBuyMoneyTotal().add(goodsTotalChangeDto.getMoney())); + } else { + // 更新GoodsTotal对象的相关属性 + goodsTotal.setBuyCount(goodsTotal.getBuyCount() - 1); + goodsTotal.setBuyNumCount(goodsTotal.getBuyNumCount() - goodsTotalChangeDto.getChangeNum()); + goodsTotal.setBuyUserCount(goodsTotal.getBuyUserCount() - goodsTotalChangeDto.getPersonNum()); + goodsTotal.setBuyMoneyTotal(goodsTotal.getBuyMoneyTotal().subtract(goodsTotalChangeDto.getMoney())); + } + // 将更新后的GoodsTotal对象添加到列表中 + goodsTotalList.add(goodsTotal); + } + } + // 如果goodsTotalList列表不为空,则保存或更新列表中的GoodsTotal对象 + if (!goodsTotalList.isEmpty()) { + this.saveOrUpdateBatch(goodsTotalList); + } + } + } } diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml index a5151f3..d22b484 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml @@ -212,10 +212,10 @@ <if test="param.sort != null and param.sort != ''"> <choose> <when test="param.sort==2"> - ORDER BY salesPrice DESC,tg.create_time DESC + ORDER BY salesPrice ASC,tg.create_time DESC </when> <when test="param.sort==3"> - ORDER BY salesPrice ASC,tg.create_time DESC + ORDER BY salesPrice DESC,tg.create_time DESC </when> <when test="param.sort==4"> ORDER BY tgt.buy_num_count ASC,tg.create_time DESC @@ -223,7 +223,7 @@ <when test="param.sort==5"> ORDER BY tgt.buy_num_count DESC,tg.create_time DESC </when> - <when test="param.sort==2"> + <when test="param.sort==1"> ORDER BY tgt.buy_num_count,tg.create_time DESC </when> <otherwise> diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java index 48553ab..2b2e94c 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java @@ -366,7 +366,7 @@ userIdList = relUserIdList; } } - if(relUserIdList!=null&&!relUserIdList.isEmpty()){ + if(userIdList!=null&&!userIdList.isEmpty()){ List<MemberCoupon> memberCouponList = new ArrayList<>(); MemberCoupon memberCoupon; Integer sendTotal = 0; diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index cb6e64a..e83b6cf 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -1049,7 +1049,15 @@ mgtMemberGetVo.setNickName(member.getNickName()); mgtMemberGetVo.setAvatar(member.getAvatar()); mgtMemberGetVo.setMobile(member.getMobile()); - mgtMemberGetVo.setGender(member.getGender() == 0 ? "男" : member.getGender() == 1 ? "女" : null); + if(member.getGender()!=null){ + if (member.getGender() == 0) { + mgtMemberGetVo.setGender("男"); + } else if (member.getGender() == 1) { + mgtMemberGetVo.setGender("女"); + } + }else { + mgtMemberGetVo.setGender("未知"); + } mgtMemberGetVo.setBirthday(member.getBirthday()); mgtMemberGetVo.setBelongDistrict(member.getBelongDistrict()); mgtMemberGetVo.setCreateTime(member.getCreateTime()); diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml index 7392618..7d89fd4 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml @@ -193,6 +193,7 @@ <if test="param.createEndTime!=null and param.createEndTime!=''"> AND Date(tc.create_time) <= #{param.createEndTime} </if> + ORDER BY tc.create_time </select> <select id="listMgtCouponSimpleVo" resultType="com.ruoyi.member.domain.vo.MgtCouponSimpleListVo"> @@ -239,7 +240,7 @@ ELSE '审核中' END auditStatus FROM t_coupon tc - WHERE tc.del_flag = 0 + WHERE tc.del_flag = 0 AND tc.coupon_from = 2 <if test="param.auditStatus!=null and param.auditStatus!=''"> AND tc.audit_status = #{param.auditStatus} </if> @@ -252,10 +253,11 @@ <if test="param.createEndTime!=null and param.createEndTime!=''"> AND Date(tc.create_time) <= #{param.createEndTime} </if> + ORDER BY tc.create_time </select> <update id="updateCouponTotal"> - UPDATE t_coupon_total set send_count = send_count + #{sendTotal}, send_user_count = send_user_count + sendPerson WHERE coupon_id = #{couponId} + UPDATE t_coupon_total set send_count = send_count + #{sendTotal}, send_user_count = send_user_count + #{sendPerson} WHERE coupon_id = #{couponId} </update> <select id="pagePlatformMerCoupon" resultType="com.ruoyi.member.domain.vo.MerCouponPageVo"> @@ -336,7 +338,7 @@ tc.coupon_id FROM t_coupon tc LEFT JOIN t_member_coupon_record tmcr ON tc.coupon_id = tmcr.coupon_id AND tmcr.user_id = #{userId} - WHERE tc.del_flag = 0 AND tc.coupon_status = 1 AND tc.send_type = 1 AND tmcr.limit_flag = 1 + WHERE tc.del_flag = 0 AND tc.coupon_status = 1 AND tc.audit_status=2 AND tc.send_type = 1 AND tmcr.limit_flag = 1 </select> <select id="getAbleCouponPageVoList" resultType="com.ruoyi.member.domain.vo.AppGetAbleCouponPageVo"> diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml index 8cd639d..bcd8aa2 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml @@ -30,7 +30,7 @@ </resultMap> <sql id="selectMemberVo"> - select user_id, del_flag, member_id, member_no, wx_openid, mini_openid, wx_unionid, relation_shop_id, nick_name, real_name, mobile, gender, referrer, customer_source, level, birthday, create_time, update_time, update_user_id, user_tags, avatar, binding_flag, goods_type from t_member + select user_id, del_flag, member_id, member_no, wx_openid, mini_openid, wx_unionid, relation_shop_id, nick_name, real_name, mobile, gender, referrer, customer_source, level, birthday, create_time, update_time, update_user_id, user_tags, avatar, binding_flag, goods_type,relation_shop_name from t_member </sql> <select id="selectMemberList" parameterType="com.ruoyi.system.api.domain.poji.member.Member" resultMap="MemberResult"> diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java index 9f38a7e..dff442e 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java @@ -2,12 +2,15 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.order.Order; import com.ruoyi.order.domain.vo.*; import com.ruoyi.order.service.order.OrderService; +import com.ruoyi.system.api.constant.SecurityConstant; import com.ruoyi.system.api.domain.dto.AppBaseGetDto; import com.ruoyi.system.api.domain.dto.AppMemberBindingDto; import com.ruoyi.system.api.domain.poji.member.Member; @@ -39,6 +42,9 @@ @Resource private OrderService orderService; + + @Resource + private RedisService redisService; @RequestMapping(value = "/buyGoods", method = RequestMethod.POST) @@ -166,9 +172,14 @@ Order order = orderService.getById(appBaseGetDto.getId()); appPlaceOrderVo.setOrderId(order.getOrderId()); appPlaceOrderVo.setOrderNo(order.getOrderNo()); - appPlaceOrderVo.setPayMoney(order.getPayMoney()); - appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + appPlaceOrderVo.setPayType(order.getPayType()); + appPlaceOrderVo.setUnpaidMoney(order.getPayMoney()); orderService.payBack(order.getOrderId()); + Integer delayTime = 30; + if(redisService.hasKey(SecurityConstant.AUTO_CANCEL_ORDER_TIME)){ + delayTime = redisService.getCacheObject(SecurityConstant.AUTO_CANCEL_ORDER_TIME); + } + appPlaceOrderVo.setPayDeadlineTime(DateUtils.addMinutes(order.getCreateTime(),delayTime)); return R.ok(appPlaceOrderVo); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/Order.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/Order.java index 95d4645..688955d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/Order.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/Order.java @@ -179,6 +179,7 @@ @TableField("change_receivable_money") private BigDecimal changeReceivableMoney; + @Override protected Serializable pkVal() { return this.orderId; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppPlaceOrderVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppPlaceOrderVo.java index 419e012..b57aaec 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppPlaceOrderVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppPlaceOrderVo.java @@ -1,10 +1,12 @@ package com.ruoyi.order.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; +import java.util.Date; /** * @author jqs34 @@ -22,6 +24,9 @@ @ApiModelProperty(value = "订单编号") private String orderNo; + @ApiModelProperty(value = "支付方式1.全款2.订金") + private Integer payType; + @ApiModelProperty(value = "支付金额") private BigDecimal payMoney; @@ -29,7 +34,8 @@ private BigDecimal unpaidMoney; @ApiModelProperty(value = "支付截止时间") - private String payDeadlineTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date payDeadlineTime; @ApiModelProperty(value = "appId") private String appId; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderGetVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderGetVo.java index 6e0f3ab..ba64763 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderGetVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderGetVo.java @@ -1,6 +1,5 @@ package com.ruoyi.order.domain.vo; -import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -43,9 +42,14 @@ @ApiModelProperty(value="应收订金") private BigDecimal receivableDeposit; + @ApiModelProperty(value="订单商品列表") private List<AppUserOrderGoodsPageVo> appUserOrderGoodsPageVoList; + @ApiModelProperty(value = "支付方式1.全款2.订金") + private Integer payType; + + @ApiModelProperty(value="订单支付金额") private BigDecimal payMoney; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java index 54dd9dd..5391a6a 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java @@ -1,10 +1,11 @@ package com.ruoyi.order.domain.vo; -import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; +import java.util.Date; import java.util.List; /** @@ -53,4 +54,12 @@ @ApiModelProperty(value = "核销码") private String verifyCode; + @ApiModelProperty(value = "订单创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "支付截止时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date endTime; + } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java index bb4c29c..bb96a47 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java @@ -590,4 +590,14 @@ * @return List<MgtMapIntTotalVo> */ List<MgtMapIntTotalVo> getStaffActivityMemberTotal(@Param("param")StaffTotalDto staffTotalDto); + + /** + * @description 获取用户商品购买数量 + * @author jqs + * @date 2023/7/23 18:17 + * @param userId + * @param goodsId + * @return Integer + */ + Integer countUserBuyGoodsNum(@Param("userId")Long userId, @Param("goodsId")String goodsId); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index d610779..64336ed 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -19,7 +19,6 @@ import com.ruoyi.order.domain.pojo.order.OrderGoods; import com.ruoyi.order.domain.vo.*; import com.ruoyi.order.mapper.order.OrderMapper; -import com.ruoyi.order.mapper.order.UserServiceRecordMapper; import com.ruoyi.order.service.order.ConsumerGoodsService; import com.ruoyi.order.service.order.OrderGoodsService; import com.ruoyi.order.service.order.OrderService; @@ -101,9 +100,6 @@ private RemoteActivityService remoteActivityService; @Resource - private UserServiceRecordMapper userServiceRecordMapper; - - @Resource private RedisService redisService; @Autowired @@ -153,8 +149,7 @@ merBaseDto.setShopId(appSureOrderDto.getShopId()); // 获取用户优惠券列表 List<AppMemberCouponVo> appMemberCouponVoList = remoteCouponService.listVoMemberCouponByUserId(merBaseDto).getData(); - // 初始化商品优惠券列表 - List<AppMemberCouponVo> appGoodsMemberCouponVoList; + // 将优惠券列表转换为Map,以优惠券ID为键 Map<String, AppMemberCouponVo> appMemberCouponVoMap = appMemberCouponVoList.stream().collect(Collectors.toMap(AppMemberCouponVo::getMemberCouponId, Function.identity())); AppMemberCouponVo appMemberCouponVo; @@ -239,9 +234,6 @@ } } } - if(appMemberCouponVoList != null && !appMemberCouponVoList.isEmpty()){ - appSureOrderGoodsVo.setAppMemberCouponVoList(appMemberCouponVoList); - } appSureOrderGoodsVo.setUseCoupon(useCoupon); appSureOrderGoodsVo.setGoodsTotalPrice(goodsTotalPrice); appSureOrderGoodsVo.setCouponDiscount(discountMoney); @@ -275,8 +267,23 @@ entity.setUseFlag(0); } } + // 过滤商品优惠券列表 + List<AppMemberCouponVo> appGoodsMemberCouponVoList; for(AppSureOrderGoodsVo sureOrderGoodsVo : appSureOrderGoodsVoList) { - sureOrderGoodsVo.setAppMemberCouponVoList(appMemberCouponVoList); + appGoodsMemberCouponVoList = new ArrayList<>(); + for(AppMemberCouponVo entity : appMemberCouponVoList){ + if(StringUtils.isBlank(entity.getRelGoodsIds())||entity.getRelGoodsIds().contains(sureOrderGoodsVo.getGoodsId())){ + if(entity.getCouponType()!=1){ + appGoodsMemberCouponVoList.add(entity); + }else{ + if(entity.getMoneyThreshold().compareTo(sureOrderGoodsVo.getGoodsTotalPrice())>0){ + appGoodsMemberCouponVoList.add(entity); + } + } + + } + } + sureOrderGoodsVo.setAppMemberCouponVoList(appGoodsMemberCouponVoList); } } /*if (appMemberCouponVoList != null && !appMemberCouponVoList.isEmpty()) { @@ -634,19 +641,20 @@ order.setReceivableMoney(orderPayMoney); order.setReceivableDeposit(orderPayDeposit); order.setChangeReceivableMoney(orderPayMoney); - order.setPayType(appPlaceOrderDto.getPayType()); // 根据支付类型计算支付金额 - if (order.getPayType() == 1) { + if (appPlaceOrderDto.getPayType() == 1) { order.setPayMoney(orderPayMoney); order.setOnlinePayMoney(orderPayMoney); appPlaceOrderVo.setPayMoney(orderPayMoney); appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + order.setPayType(1); order.setCloseFlag(1); - } else if (order.getPayType() == 2) { + } else if (appPlaceOrderDto.getPayType() == 2) { order.setPayMoney(orderPayDeposit); order.setOnlinePayMoney(orderPayDeposit); appPlaceOrderVo.setPayMoney(orderPayDeposit); appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + order.setPayType(2); order.setCloseFlag(0); } order.setOrderRemark(appPlaceOrderDto.getOrderRemark()); @@ -680,6 +688,7 @@ delayTask.setEndTime(DateUtils.addMinutes(new Date(),delayTime)); delayTask.setRedisKey(DelayTaskEnum.ORDER_AUTOMATIC_CANCEL.getCode() + "-" + orderId); remoteConfigService.addDelayTask(delayTask); + appPlaceOrderVo.setPayDeadlineTime(DateUtils.addMinutes(order.getCreateTime(),delayTime)); return appPlaceOrderVo; } @@ -860,19 +869,20 @@ order.setReceivableMoney(orderPayMoney); order.setReceivableDeposit(orderPayDeposit); order.setChangeReceivableMoney(orderPayMoney); - order.setPayType(appPlaceActivityDto.getPayType()); // 根据支付类型设置订单支付金额,在线支付金额,订单支付金额,未支付金额,关闭标志 - if (order.getPayType() == 1) { + if (appPlaceActivityDto.getPayType() == 1) { order.setPayMoney(orderPayMoney); order.setOnlinePayMoney(orderPayMoney); appPlaceOrderVo.setPayMoney(orderPayMoney); appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + order.setPayType(1); order.setCloseFlag(1); - } else if (order.getPayType() == 2) { + } else if (appPlaceActivityDto.getPayType() == 2) { order.setPayMoney(orderPayDeposit); order.setOnlinePayMoney(orderPayDeposit); appPlaceOrderVo.setPayMoney(orderPayDeposit); appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + order.setPayType(2); order.setCloseFlag(0); } // 设置订单备注,商品数量,创建时间 @@ -914,6 +924,7 @@ delayTask.setEndTime(DateUtils.addMinutes(new Date(),delayTime)); delayTask.setRedisKey(DelayTaskEnum.ORDER_AUTOMATIC_CANCEL.getCode() + "-" + orderId); remoteConfigService.addDelayTask(delayTask); + appPlaceOrderVo.setPayDeadlineTime(DateUtils.addMinutes(order.getCreateTime(),delayTime)); return appPlaceOrderVo; } @@ -941,6 +952,10 @@ Shop shopTemp = remoteShopService.getShop(shopIdLong).getData(); shopMap.put(shopIdLong, shopTemp); }); + Integer delayTime = 30; + if(redisService.hasKey(SecurityConstant.AUTO_CANCEL_ORDER_TIME)){ + delayTime = redisService.getCacheObject(SecurityConstant.AUTO_CANCEL_ORDER_TIME); + } for (AppUserOrderPageVo appUserOrderPageVo : appUserOrderPageVoList) { shop = shopMap.get(appUserOrderPageVo.getShopId()); appUserOrderPageVo.setShopName(shop.getShopName()); @@ -951,6 +966,7 @@ appUserOrderPageVo.setSameShop(0); } appUserOrderPageVo.setVerifyCode("1-" + appUserOrderPageVo.getOrderId()); + appUserOrderPageVo.setEndTime(DateUtils.addMinutes(appUserOrderPageVo.getCreateTime(),delayTime)); } } return appUserOrderPageVoList; @@ -975,6 +991,7 @@ appUserOrderGetVo.setCouponDiscount(order.getCouponMoney()); appUserOrderGetVo.setReceivableDeposit(order.getReceivableDeposit()); appUserOrderGetVo.setReceivableMoney(order.getReceivableMoney()); + appUserOrderGetVo.setPayType(order.getPayType()); appUserOrderGetVo.setPayMoney(order.getPayMoney()); appUserOrderGetVo.setOrderRemark(order.getOrderRemark()); appUserOrderGetVo.setShopId(order.getShopId()); @@ -1103,6 +1120,10 @@ if (order.getOrderStatus() != 2) { throw new ServiceException(AppErrorConstant.VERIFY_USED); } + ShopRelUserVo shopRelUserVo = remoteShopService.getShopByUserId(merVerifyOrderDto.getUserId()).getData(); + if(!shopRelUserVo.getShopId().equals(order.getShopId())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } order.setOrderStatus(3); order.setUseTime(nowTime); order.setUseUserId(merVerifyOrderDto.getUserId()); @@ -1183,6 +1204,10 @@ @Override public MerVerifyCouponVo sureVerifyCoupon(MerVerifyCouponDto merVerifyCouponDto) { MerVerifyCouponGetVo verifyCouponGetVo = remoteCouponService.getVerifyCoupon(merVerifyCouponDto.getMemberCouponId()).getData(); + ShopRelUserVo shopRelUserVo = remoteShopService.getShopByUserId(merVerifyCouponDto.getUserId()).getData(); + if(!shopRelUserVo.getShopId().equals(verifyCouponGetVo.getMemberCoupon().getShopId())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } // 创建MerVerifyCouponVo对象 MerVerifyCouponVo merVerifyCouponVo = new MerVerifyCouponVo(); // 调用remoteCouponService的getVerifyCoupon方法获取MerVerifyCouponGetVo对象 @@ -1275,6 +1300,10 @@ MemberGiftRecord memberGiftRecord = remoteMemberService.getVerifyPrize(merVerifyPrizeDto.getPrizeId()).getData(); if(memberGiftRecord==null||memberGiftRecord.getVerifyStatus()!=1){ throw new ServiceException(AppErrorConstant.COUPON_USED); + } + ShopRelUserVo shopRelUserVo = remoteShopService.getShopByUserId(merVerifyPrizeDto.getUserId()).getData(); + if(!shopRelUserVo.getShopId().equals(memberGiftRecord.getShopId())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); } Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData(); merVerifyAwardVo.setUserName(member.getNickName()); @@ -1593,6 +1622,7 @@ order.setOnlinePayMoney(new BigDecimal("0.00")); order.setOfflinePayMoney(merNewOrderDto.getPayMoney()); order.setOffPayTime(nowTime); + order.setPayType(1); order.setCloseFlag(1); this.save(order); //创建服务 @@ -3094,6 +3124,8 @@ Boolean haveGoods = false; // 获取订单中的所有商品 List<OrderGoods> orderGoodsList = orderGoodsService.listByOrderId(orderId); + List<GoodsTotalChangeDto> goodsTotalChangeDtoList = new ArrayList<>(); + GoodsTotalChangeDto goodsTotalChangeDto; // 遍历订单中的所有商品,根据商品类型累加收款金额,并标记商品存在状态 for (OrderGoods orderGoods : orderGoodsList) { switch (orderGoods.getGoodsType()) { @@ -3116,7 +3148,18 @@ default: break; } + goodsTotalChangeDto = new GoodsTotalChangeDto(); + goodsTotalChangeDto.setGoodsId(orderGoods.getGoodsId()); + goodsTotalChangeDto.setChangeType(1); + goodsTotalChangeDto.setChangeNum(orderGoods.getBuyNum()); + goodsTotalChangeDto.setMoney(orderGoods.getGoodsReceivableMoney()); + Integer bugGoodsNum = orderMapper.countUserBuyGoodsNum(order.getUserId(),orderGoods.getGoodsId()); + if(bugGoodsNum==null||bugGoodsNum<1){ + goodsTotalChangeDto.setPersonNum(1); + } + goodsTotalChangeDtoList.add(goodsTotalChangeDto); } + //更新商品统计 // 更新商户统计信息 ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto(); shopTotalChangeDto.setShopId(order.getShopId()); diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml index 9d03ec7..928b9ba 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml @@ -35,6 +35,7 @@ <result column="goodsNum" property="goodsNum"/> <result column="shopId" property="shopId" /> <result column="orderFrom" property="orderFrom" /> + <result column="createTime" property="createTime" /> <collection property="appUserOrderGoodsPageVoList" ofType="com.ruoyi.order.domain.vo.AppUserOrderGoodsPageVo"> <result column="orderGoodsId" property="orderGoodsId"/> <result column="goodsId" property="goodsId"/> @@ -263,7 +264,8 @@ tog.goods_price goodsPrice, tog.goods_total_money goodsRealPrice, tog.cycle_num_flag cycleNumFlag, - tog.service_num serviceNum + tog.service_num serviceNum, + toc.create_time createTime FROM t_order toc INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id WHERE toc.del_flag = 0 @@ -1570,4 +1572,11 @@ </if> GROUP BY toc.create_time </select> + + <select id="countUserBuyGoodsNum" resultType="java.lang.Integer"> + SELECT SUM(tog.buy_num) + FROM t_order toc + INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id + WHERE toc.del_flag = 0 AND toc.order_status > 1 AND toc.user_id = #{userId} AND tog.goods_id = #{goodsId} + </select> </mapper> diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthPageDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthPageDto.java index 2b7d04a..8a0a345 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthPageDto.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthPageDto.java @@ -37,4 +37,7 @@ " 7:FROZEN:已冻结\n" + " 8:CANCELED:已作废") private Integer auditStatus; + + @ApiModelProperty(value="商户状态") + private Integer shopStatus; } diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml index 8e3df6c..231e2a4 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml @@ -550,6 +550,9 @@ <if test="param.auditStatus!=null"> AND tsa.audit_status = #{param.auditStatus} </if> + <if test="param.shopStatus!=null and param.shopStatus!=''"> + AND ts.shop_status = #{param.shopStatus} + </if> </select> <select id="shopTotal" resultType="com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo"> diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/miniapp/AppHomeController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/miniapp/AppHomeController.java index d39cf6b..d28964c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/miniapp/AppHomeController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/miniapp/AppHomeController.java @@ -41,7 +41,6 @@ @Resource private AdvertService advertService; - @Resource private PopService popService; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtAdvertEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtAdvertEditDto.java index bdcd0ab..c279c5b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtAdvertEditDto.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtAdvertEditDto.java @@ -26,6 +26,9 @@ @ApiModelProperty(value = "链接类型1.外部2.内部3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java index 6e89bdb..f712e86 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtPopEditDto.java @@ -29,6 +29,9 @@ @ApiModelProperty(value = "跳转类型1.门店详情2.秒杀活动3领券中心4.商城列表5.关于洪瑞堂6.赚取积分7.建议有奖") private Integer jumpType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "跳转id") private String jumpId; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtQuickEntryEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtQuickEntryEditDto.java index aebf000..6391106 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtQuickEntryEditDto.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtQuickEntryEditDto.java @@ -26,6 +26,9 @@ @ApiModelProperty(value = "链接类型1.外部2.内部3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Advert.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Advert.java index f4fa599..fb56804 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Advert.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Advert.java @@ -54,6 +54,11 @@ @TableField("target_type") private Integer targetType; /** + * 链接类型1.手动输入2.选择已有 + */ + @TableField("link_type") + private Integer linkType; + /** * 链接地址 */ @TableField("link_url") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Pop.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Pop.java index 1f408cd..da18b6e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Pop.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/Pop.java @@ -66,6 +66,11 @@ @TableField("link_url") private String linkUrl; /** + * 链接类型1.手动输入2.选择已有 + */ + @TableField("link_type") + private Integer linkType; + /** * 跳转活动id */ @TableField("jump_id") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/QuickEntry.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/QuickEntry.java index 367c8b1..d955391 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/QuickEntry.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/QuickEntry.java @@ -56,6 +56,11 @@ @TableField("target_type") private Integer targetType; /** + * 链接类型1.手动输入2.选择已有 + */ + @TableField("link_type") + private Integer linkType; + /** * 链接地址 */ @TableField("link_url") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppAdvertVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppAdvertVo.java index 2a7141e..761d372 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppAdvertVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppAdvertVo.java @@ -25,9 +25,15 @@ @ApiModelProperty(value = "对象类型1.外链2.内链3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; + @ApiModelProperty(value = "跳转类型1.门店详情2.秒杀活动3领券中心4.商城列表5.关于洪瑞堂6.赚取积分7.建议有奖") + private Integer jumpType; + @ApiModelProperty(value = "跳转id") private String jumpId; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppPopVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppPopVo.java index 047b17c..546afab 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppPopVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppPopVo.java @@ -22,6 +22,9 @@ @ApiModelProperty(value = "对象类型1.外链2.内链3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppQuickEntryVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppQuickEntryVo.java index 7b9384e..8c7eaed 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppQuickEntryVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AppQuickEntryVo.java @@ -25,9 +25,15 @@ @ApiModelProperty(value = "对象类型1.外链2.内链3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; + @ApiModelProperty(value = "跳转类型1.门店详情2.秒杀活动3领券中心4.商城列表5.关于洪瑞堂6.赚取积分7.建议有奖") + private Integer jumpType; + @ApiModelProperty(value = "跳转id") private String jumpId; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtAllCustomConfigVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtAllCustomConfigVo.java index 51b682f..333537c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtAllCustomConfigVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtAllCustomConfigVo.java @@ -75,6 +75,9 @@ @ApiModelProperty(value = "链接类型1.外部2.内部3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtPopGetVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtPopGetVo.java index e1863da..05f122e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtPopGetVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtPopGetVo.java @@ -25,6 +25,9 @@ @ApiModelProperty(value = "链接类型1.外部2.内部3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtQuickEntryGetVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtQuickEntryGetVo.java index c7436c1..0fc354e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtQuickEntryGetVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtQuickEntryGetVo.java @@ -25,6 +25,9 @@ @ApiModelProperty(value = "链接类型1.外部2.内部3.无") private Integer targetType; + @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") + private Integer linkType; + @ApiModelProperty(value = "链接地址") private String linkUrl; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/PopServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/PopServiceImpl.java index 11fcea8..b88451e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/PopServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/PopServiceImpl.java @@ -65,16 +65,6 @@ } // 将管理弹窗编辑DTO的属性复制到管理弹窗中 BeanUtils.copyProperties(mgtPopEditDto, pop); - if(pop.getTargetType()==1){ - pop.setJumpType(null); - pop.setJumpId(null); - }else if(pop.getTargetType()==2){ - pop.setLinkUrl(null); - }else if(pop.getTargetType()==3){ - pop.setLinkUrl(null); - pop.setJumpType(null); - pop.setJumpId(null); - } // 设置创建时间和创建者ID pop.setCreateTime(new Date()); pop.setCreateUserId(mgtPopEditDto.getPopId()); @@ -101,10 +91,17 @@ if(pop.getTargetType()==1){ pop.setJumpType(null); pop.setJumpId(null); + pop.setLinkType(null); }else if(pop.getTargetType()==2){ - pop.setLinkUrl(null); + if(pop.getLinkType()==1){ + pop.setJumpType(null); + pop.setJumpId(null); + }else{ + pop.setLinkUrl(null); + } }else if(pop.getTargetType()==3){ pop.setLinkUrl(null); + pop.setLinkType(null); pop.setJumpType(null); pop.setJumpId(null); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/QuickEntryServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/QuickEntryServiceImpl.java index 42b4ade..40f5e7a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/QuickEntryServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/QuickEntryServiceImpl.java @@ -65,16 +65,6 @@ } // 将管理快速入口编辑DTO的属性复制到管理快速入口中 BeanUtils.copyProperties(mgtQuickEntryEditDto, quickEntry); - if(quickEntry.getTargetType()==1){ - quickEntry.setJumpType(null); - quickEntry.setJumpId(null); - }else if(quickEntry.getTargetType()==2){ - quickEntry.setLinkUrl(null); - }else if(quickEntry.getTargetType()==3){ - quickEntry.setLinkUrl(null); - quickEntry.setJumpType(null); - quickEntry.setJumpId(null); - } // 设置创建时间和创建者ID quickEntry.setCreateTime(new Date()); quickEntry.setCreateUserId(mgtQuickEntryEditDto.getEntryId()); @@ -95,10 +85,17 @@ if(quickEntry.getTargetType()==1){ quickEntry.setJumpType(null); quickEntry.setJumpId(null); + quickEntry.setLinkType(null); }else if(quickEntry.getTargetType()==2){ - quickEntry.setLinkUrl(null); + if(quickEntry.getLinkType()==1){ + quickEntry.setJumpType(null); + quickEntry.setJumpId(null); + }else{ + quickEntry.setLinkUrl(null); + } }else if(quickEntry.getTargetType()==3){ quickEntry.setLinkUrl(null); + quickEntry.setLinkType(null); quickEntry.setJumpType(null); quickEntry.setJumpId(null); } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/AdvertMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/AdvertMapper.xml index b8a49fb..3579590 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/AdvertMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/AdvertMapper.xml @@ -95,8 +95,10 @@ ad_id adId, ad_url adUrl, ad_content adContent, + link_type linkType, target_type targetType, link_url linkUrl, + jump_type jumpType, jump_id jumpId, logo_url logoUrl FROM t_advert WHERE del_flag = 0 ORDER BY create_time DESC LIMIT 1 diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/BannerMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/BannerMapper.xml index 0ea7809..b62505c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/BannerMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/BannerMapper.xml @@ -105,7 +105,7 @@ jump_type jumpType, jump_id jumpId FROM t_banner WHERE del_flag = 0 AND banner_position = 1 - ORDER BY banner_sort DESC,create_time DESC + ORDER BY banner_sort DESC,create_time DESC LIMIT 5 </select> <select id="pageMgtBannerVo" resultType="com.ruoyi.system.domain.vo.MgtBannerPageVo"> diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/PopMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/PopMapper.xml index bbdc3ac..2ee342f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/PopMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/PopMapper.xml @@ -116,7 +116,8 @@ SELECT pop_id popId, pop_url popUrl, - target_type targetType, + link_type linkType, + target_type targetType, link_url linkUrl, jump_type jumpType, jump_id jumpId diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/QuickEntryMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/QuickEntryMapper.xml index b55693b..788901d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/QuickEntryMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/QuickEntryMapper.xml @@ -95,8 +95,10 @@ entry_id entryId, entry_url entryUrl, entry_name entryName, + link_type linkType, target_type targetType, link_url linkUrl, + jump_type jumpType, jump_id jumpId FROM t_quick_entry WHERE del_flag = 0 ORDER BY entry_sort,create_time DESC -- Gitblit v1.7.1