From 6f5e0af7b4e3c4e6d2bcd33bafb6649727e98b37 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 06 六月 2025 18:33:44 +0800
Subject: [PATCH] 开发商户端相关接口
---
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 20 +
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/LotteryEventMapper.java | 11
ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEventPrize.java | 10
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/MerLotteryEventController.java | 39 ++
ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/service/LotteryEventClient.java | 2
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java | 9
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml | 3
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopWinningRecordVo.java | 21 +
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/ILotteryEventService.java | 10
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/UserLotteryEventMapper.xml | 12
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopLotteryDrawListDto.java | 15 +
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopWinningRecordDto.java | 17 +
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/CancelMerOrderDto.java | 16 +
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MerOrderPageDto.java | 6
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/business/MerShopController.java | 14 +
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java | 13
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java | 11
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java | 5
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawVo.java | 19 +
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java | 17
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/IUserLotteryEventService.java | 10
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/UserLotteryEventMapper.java | 16 +
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/DelShopLotteryDrawDto.java | 16 +
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java | 45 ++-
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyAwardVo.java | 2
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 42 ++
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/UserLotteryEventServiceImpl.java | 59 ++++
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/shop/Shop.java | 5
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java | 15 +
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml | 13
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerMemberController.java | 2
ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEvent.java | 26 +
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerConsumerController.java | 2
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/business/MerLotteryEventController.java | 140 +++++++++
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java | 52 +++
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerConsumerGoodsListVo.java | 37 +-
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawListVo.java | 24 +
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java | 16 +
38 files changed, 697 insertions(+), 95 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEvent.java b/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEvent.java
index 4d76a54..124b5f4 100644
--- a/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEvent.java
+++ b/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEvent.java
@@ -4,12 +4,14 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDateTime;
+import java.util.List;
/**
* @author zhibing.pu
@@ -24,66 +26,85 @@
* 主键
*/
@TableId(value = "id", type = IdType.INPUT)
+ @ApiModelProperty("活动id")
private String id;
+ /**
+ * 门店id
+ */
+ @TableField("shop_id")
+ @ApiModelProperty("门店id")
+ private Integer shopId;
/**
* 抽奖名称
*/
@TableField("name")
+ @ApiModelProperty("抽奖名称")
private String name;
/**
* 活动简介名称
*/
@TableField("activity_profile")
+ @ApiModelProperty("活动简介名称")
private String activityProfile;
/**
* 开启方式(1=新注册用户,2=下单,3=分享小程序,4=普通抽奖,5=答题抽奖)
*/
@TableField("activity_type")
+ @ApiModelProperty("开启方式(1=新注册用户,2=下单,3=分享小程序,4=普通抽奖,5=答题抽奖)")
private Integer activityType;
/**
* 可抽奖次数
*/
@TableField("times")
+ @ApiModelProperty("可抽奖次数")
private Integer times;
/**
* 活动开始时间
*/
@TableField("start_time")
+ @ApiModelProperty("活动开始时间")
private LocalDateTime startTime;
/**
* 活动结束时间
*/
@TableField("end_time")
+ @ApiModelProperty("活动结束时间")
private LocalDateTime endTime;
/**
* 分享抽奖间隔天数
*/
@TableField("interval_time")
+ @ApiModelProperty("分享抽奖间隔天数")
private Integer intervalTime;
/**
* 下单支付金额
*/
@TableField("pay_money")
+ @ApiModelProperty("下单支付金额")
private BigDecimal payMoney;
/**
* 答题抽奖正确率%
*/
@TableField("accuracy")
+ @ApiModelProperty("答题抽奖正确率%")
private BigDecimal accuracy;
/**
* 答题时间限制(分钟)
*/
@TableField("answering_time")
+ @ApiModelProperty("答题时间限制(分钟)")
private Integer answeringTime;
/**
* 封面图
*/
@TableField("cover_image")
+ @ApiModelProperty("封面图")
private String coverImage;
/**
* 详情介绍
*/
@TableField("activity_content")
+ @ApiModelProperty("详情介绍")
private String activityContent;
/**
* 删除标记
@@ -104,10 +125,13 @@
* 更新用户id
*/
@TableField("update_user_id")
- private Integer updateUserId;
+ private Long updateUserId;
/**
* 更新时间
*/
@TableField("update_time")
private LocalDateTime updateTime;
+
+ @ApiModelProperty("奖品列表")
+ private List<LotteryEventPrize> prizes;
}
diff --git a/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEventPrize.java b/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEventPrize.java
index 62e27a3..1a7eeae 100644
--- a/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEventPrize.java
+++ b/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/domain/LotteryEventPrize.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@@ -18,36 +19,43 @@
/**
* 主键
*/
- @TableId(value = "id", type = IdType.AUTO)
+ @TableId(value = "id", type = IdType.AUTO)
+ @ApiModelProperty("奖品id")
private String id;
/**
* 抽奖id
*/
@TableField("lottery_event_id")
+ @ApiModelProperty("抽奖id")
private String lotteryEventId;
/**
* 奖品类型(1=优惠券,2=平台商品,3=线下商品,4=积分)
*/
@TableField("prize_type")
+ @ApiModelProperty("奖品类型(1=优惠券,2=平台商品,3=线下商品,4=积分)")
private Integer prizeType;
/**
* 奖品id
*/
@TableField("object_id")
+ @ApiModelProperty("奖品id")
private String objectId;
/**
* 奖品名称
*/
@TableField("object_name")
+ @ApiModelProperty("奖品名称")
private String objectName;
/**
* 奖品数量
*/
@TableField("number")
+ @ApiModelProperty("奖品数量")
private Integer number;
/**
* 中奖率%
*/
@TableField("win_rate")
+ @ApiModelProperty("中奖率%")
private BigDecimal winRate;
}
diff --git a/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/service/LotteryEventClient.java b/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/service/LotteryEventClient.java
index 42b6442..4ce86d5 100644
--- a/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/service/LotteryEventClient.java
+++ b/ruoyi-api/ruoyi-api-goods/src/main/java/com/ruoyi/goods/api/service/LotteryEventClient.java
@@ -23,6 +23,6 @@
* @param activityType
* @return
*/
- @PostMapping("/mer/lotteryEvent/getLotteryEventList")
+ @PostMapping("/lotteryEvent/getLotteryEventList")
R<List<LotteryEvent>> getLotteryEventList(@RequestParam("activityType") Integer activityType);
}
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java
index 9a3e5b7..83dd638 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java
@@ -162,19 +162,24 @@
*/
@TableField("belong_district")
private String belongDistrict;
-
+
@TableField("frozen_flag")
private Integer frozenFlag;
-
+
/**
* 绑定类型1商城订单2活动订单3线下订单4核销优惠券5核销奖品6商户创建7平台变动8商户绑定
*/
@TableField("binding_type")
private Integer bindingType;
-
+ /**
+ * 上次确认服务的id
+ */
+ @TableField("last_service_id")
+ private String lastServiceId;
+
@Override
protected Serializable pkVal() {
return this.userId;
}
-
+
}
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/shop/Shop.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/shop/Shop.java
index 68324fb..f5685ce 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/shop/Shop.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/shop/Shop.java
@@ -222,6 +222,11 @@
@TableField("platform_birthday_flag")
private Integer platformBirthdayFlag;
/**
+ * 抽奖1开2关
+ */
+ @TableField("lottery_draw_flag")
+ private Integer lotteryDrawFlag;
+ /**
* 店铺设置状态
*/
@TableField("shop_custom_status")
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
index f78331b..75e9145 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
@@ -176,6 +176,11 @@
public R saveMemberGiftRecord(MemberGiftRecord memberGiftRecord) {
return R.fail("添加奖品数据失败:" + throwable.getMessage());
}
+
+ @Override
+ public R editMember(Member member) {
+ return R.fail("修改会员失败:" + throwable.getMessage());
+ }
};
}
}
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java
index 54f5d9c..e3d1e8b 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java
@@ -293,4 +293,13 @@
*/
@PostMapping("/member/saveMemberGiftRecord")
R saveMemberGiftRecord(@RequestBody MemberGiftRecord memberGiftRecord);
+
+ /**
+ * 修改会员数据
+ *
+ * @param member
+ * @return
+ */
+ @PostMapping("/member/editMember")
+ R editMember(@RequestBody Member member);
}
\ No newline at end of file
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/business/MerLotteryEventController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/business/MerLotteryEventController.java
index baa4810..52f9647 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/business/MerLotteryEventController.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/business/MerLotteryEventController.java
@@ -1,18 +1,42 @@
package com.ruoyi.goods.controller.business;
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.utils.uuid.IdUtils;
+import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.goods.api.domain.LotteryEvent;
+import com.ruoyi.goods.api.domain.LotteryEventPrize;
+import com.ruoyi.goods.domain.dto.DelShopLotteryDrawDto;
+import com.ruoyi.goods.domain.dto.ShopLotteryDrawListDto;
+import com.ruoyi.goods.domain.dto.ShopWinningRecordDto;
+import com.ruoyi.goods.domain.vo.ShopLotteryDrawListVo;
+import com.ruoyi.goods.domain.vo.ShopLotteryDrawVo;
+import com.ruoyi.goods.domain.vo.ShopWinningRecordVo;
+import com.ruoyi.goods.service.goods.GoodsService;
+import com.ruoyi.goods.service.lottery.ILotteryEventPrizeService;
import com.ruoyi.goods.service.lottery.ILotteryEventService;
-import org.springframework.web.bind.annotation.*;
+import com.ruoyi.goods.service.lottery.IUserLotteryEventService;
+import com.ruoyi.system.api.domain.poji.goods.Goods;
+import com.ruoyi.system.api.domain.poji.shop.Shop;
+import com.ruoyi.system.api.service.RemoteShopService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
+import java.time.LocalDateTime;
import java.util.List;
/**
* @author zhibing.pu
* @Date 2025/5/8 18:13
*/
+@Api(value = "商户端商户相关接口", tags = "商户端商户相关接口", description = "商户端商户相关接口")
@RestController
@RequestMapping("/mer/lotteryEvent")
public class MerLotteryEventController {
@@ -20,19 +44,109 @@
@Resource
private ILotteryEventService lotteryEventService;
+ @Resource
+ private RemoteShopService remoteShopService;
- /**
- * 根据开启方式获取活动列表
- *
- * @param activityType
- * @return
- */
- @ResponseBody
- @PostMapping("/getLotteryEventList")
- public R<List<LotteryEvent>> getLotteryEventList(@RequestParam("activityType") Integer activityType) {
- List<LotteryEvent> list = lotteryEventService.list(new LambdaQueryWrapper<LotteryEvent>().eq(LotteryEvent::getActivityType, activityType)
- .eq(LotteryEvent::getDelFlag, 0).last(" and now() between start_time and end_time"));
- return R.ok(list);
+ @Resource
+ private ILotteryEventPrizeService lotteryEventPrizeService;
+
+ @Resource
+ private IUserLotteryEventService userLotteryEventService;
+
+ @Resource
+ private GoodsService goodsService;
+
+
+ @RequestMapping(value = "/getShopLotteryDrawList", method = RequestMethod.POST)
+ @ApiOperation(value = "获取门店抽奖活动列表【2.0】")
+ public R<ShopLotteryDrawVo> getShopLotteryDrawList(@RequestBody ShopLotteryDrawListDto dto) {
+ Page<ShopLotteryDrawListVo> page = new Page<>();
+ page.setSize(dto.getPageSize());
+ page.setCurrent(dto.getPageNum());
+ Shop shop = remoteShopService.getShop(dto.getShopId()).getData();
+ ShopLotteryDrawVo shopLotteryDrawVo = new ShopLotteryDrawVo();
+ shopLotteryDrawVo.setLotteryDrawFlag(shop.getLotteryDrawFlag());
+ List<ShopLotteryDrawListVo> shopLotteryDrawList = lotteryEventService.getShopLotteryDrawList(page, dto.getShopId());
+ page.setRecords(shopLotteryDrawList);
+ shopLotteryDrawVo.setPage(page);
+ return R.ok(shopLotteryDrawVo);
+ }
+
+ @RequestMapping(value = "/delShopLotteryDraw", method = RequestMethod.POST)
+ @ApiOperation(value = "门店删除抽奖活动【2.0】")
+ public R delShopLotteryDraw(@RequestBody DelShopLotteryDrawDto dto) {
+ LotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
+ if (null == lotteryEvent) {
+ return R.fail("抽奖活动不存在");
+ }
+ if (LocalDateTime.now().isAfter(lotteryEvent.getStartTime())) {
+ return R.fail("删除失败");
+ }
+ if (!lotteryEvent.getShopId().equals(dto.getShopId())) {
+ return R.fail("删除失败");
+ }
+ lotteryEvent.setDelFlag(1);
+ lotteryEventService.updateById(lotteryEvent);
+ return R.ok();
+ }
+
+
+ @RequestMapping(value = "/getShopLotteryDrawInfo", method = RequestMethod.POST)
+ @ApiOperation(value = "获取门店抽奖详情【2.0】")
+ public R<LotteryEvent> getShopLotteryDrawInfo(@RequestBody DelShopLotteryDrawDto dto) {
+ LotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
+ if (null == lotteryEvent) {
+ return R.fail("抽奖活动不存在");
+ }
+ if (!lotteryEvent.getShopId().equals(dto.getShopId())) {
+ return R.fail("查询失败");
+ }
+ List<LotteryEventPrize> list = lotteryEventPrizeService.list(new LambdaQueryWrapper<LotteryEventPrize>().eq(LotteryEventPrize::getLotteryEventId, dto.getId()));
+ lotteryEvent.setPrizes(list);
+ return R.ok(lotteryEvent);
+ }
+
+
+ @RequestMapping(value = "/editShopLotteryDraw", method = RequestMethod.POST)
+ @ApiOperation(value = "保存门店抽奖【2.0】")
+ public R editShopLotteryDraw(@RequestBody LotteryEvent lotteryEvent) {
+ if (lotteryEvent.getId() == null) {
+ lotteryEvent.setId(IdUtils.simpleUUID());
+ }
+ lotteryEvent.setUpdateTime(LocalDateTime.now());
+ lotteryEvent.setUpdateUserId(SecurityUtils.getUserId());
+ lotteryEventService.saveOrUpdate(lotteryEvent);
+ //先删除原有的奖品
+ lotteryEventPrizeService.remove(new LambdaQueryWrapper<LotteryEventPrize>().eq(LotteryEventPrize::getLotteryEventId, lotteryEvent.getId()));
+ //添加新的奖品
+ List<LotteryEventPrize> prizes = lotteryEvent.getPrizes();
+ prizes.forEach(s -> {
+ s.setId(IdUtils.simpleUUID());
+ if (s.getPrizeType() == 2 && StringUtils.isEmpty(s.getObjectName())) {
+ Goods goods = goodsService.getById(s.getObjectId());
+ s.setObjectName(goods.getGoodsName());
+ }
+ s.setLotteryEventId(lotteryEvent.getId());
+ });
+ lotteryEventPrizeService.saveOrUpdateBatch(prizes);
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/getShopWinningRecord", method = RequestMethod.POST)
+ @ApiOperation(value = "获取中奖记录列表【2.0】")
+ public R<Page<ShopWinningRecordVo>> getShopWinningRecord(@RequestBody ShopWinningRecordDto dto) {
+ LotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
+ if (null == lotteryEvent) {
+ return R.fail("抽奖活动不存在");
+ }
+ if (!lotteryEvent.getShopId().equals(dto.getShopId())) {
+ return R.fail("查询失败");
+ }
+ Page<ShopWinningRecordVo> page = new Page<>();
+ page.setSize(dto.getPageSize());
+ page.setCurrent(dto.getPageNum());
+ List<ShopWinningRecordVo> shopWinningRecordVoList = userLotteryEventService.getShopWinningRecord(page, dto.getId());
+ return R.ok(page.setRecords(shopWinningRecordVoList));
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/MerLotteryEventController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/MerLotteryEventController.java
new file mode 100644
index 0000000..357dd78
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/MerLotteryEventController.java
@@ -0,0 +1,39 @@
+package com.ruoyi.goods.controller.concole;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.goods.api.domain.LotteryEvent;
+import com.ruoyi.goods.service.lottery.ILotteryEventService;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @author zhibing.pu
+ * @Date 2025/5/8 18:13
+ */
+@RestController
+@RequestMapping("/lotteryEvent")
+public class MerLotteryEventController {
+
+ @Resource
+ private ILotteryEventService lotteryEventService;
+
+
+ /**
+ * 根据开启方式获取活动列表
+ *
+ * @param activityType
+ * @return
+ */
+ @ResponseBody
+ @PostMapping("/getLotteryEventList")
+ public R<List<LotteryEvent>> getLotteryEventList(@RequestParam("activityType") Integer activityType) {
+ List<LotteryEvent> list = lotteryEventService.list(new LambdaQueryWrapper<LotteryEvent>().eq(LotteryEvent::getActivityType, activityType)
+ .eq(LotteryEvent::getDelFlag, 0).last(" and now() between start_time and end_time"));
+ return R.ok(list);
+ }
+
+
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/DelShopLotteryDrawDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/DelShopLotteryDrawDto.java
new file mode 100644
index 0000000..a2be9f9
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/DelShopLotteryDrawDto.java
@@ -0,0 +1,16 @@
+package com.ruoyi.goods.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data; /**
+ * @author zhibing.pu
+ * @Date 2025/6/5 10:32
+ */
+@ApiModel
+@Data
+public class DelShopLotteryDrawDto {
+ @ApiModelProperty("门店id")
+ private Long shopId;
+ @ApiModelProperty("抽奖活动id")
+ private String id;
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopLotteryDrawListDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopLotteryDrawListDto.java
new file mode 100644
index 0000000..41949f3
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopLotteryDrawListDto.java
@@ -0,0 +1,15 @@
+package com.ruoyi.goods.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtPageDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data; /**
+ * @author zhibing.pu
+ * @Date 2025/6/5 9:23
+ */
+@Data
+@ApiModel
+public class ShopLotteryDrawListDto extends MgtPageDto {
+ @ApiModelProperty(value = "商户id")
+ private Long shopId;
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopWinningRecordDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopWinningRecordDto.java
new file mode 100644
index 0000000..6fd67e8
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/ShopWinningRecordDto.java
@@ -0,0 +1,17 @@
+package com.ruoyi.goods.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtPageDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data; /**
+ * @author zhibing.pu
+ * @Date 2025/6/5 11:24
+ */
+@Data
+@ApiModel
+public class ShopWinningRecordDto extends MgtPageDto {
+ @ApiModelProperty("门店id")
+ private Long shopId;
+ @ApiModelProperty("抽奖id")
+ private String id;
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawListVo.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawListVo.java
new file mode 100644
index 0000000..84bfe63
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawListVo.java
@@ -0,0 +1,24 @@
+package com.ruoyi.goods.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data; /**
+ * @author zhibing.pu
+ * @Date 2025/6/5 9:27
+ */
+@Data
+@ApiModel
+public class ShopLotteryDrawListVo {
+ @ApiModelProperty("数据id")
+ private String id;
+ @ApiModelProperty("抽奖名称")
+ private String name;
+ @ApiModelProperty("简介")
+ private String activityProfile;
+ @ApiModelProperty("抽奖图片")
+ private String coverImage;
+ @ApiModelProperty("抽奖开始时间")
+ private String startTime;
+ @ApiModelProperty("抽奖结束时间")
+ private String endTime;
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawVo.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawVo.java
new file mode 100644
index 0000000..3ddb20b
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopLotteryDrawVo.java
@@ -0,0 +1,19 @@
+package com.ruoyi.goods.domain.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2025/6/5 9:25
+ */
+@Data
+@ApiModel
+public class ShopLotteryDrawVo {
+ @ApiModelProperty(value = "抽奖1开2关")
+ private Integer lotteryDrawFlag;
+ @ApiModelProperty("抽奖列表")
+ private Page<ShopLotteryDrawListVo> page;
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopWinningRecordVo.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopWinningRecordVo.java
new file mode 100644
index 0000000..8717221
--- /dev/null
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/ShopWinningRecordVo.java
@@ -0,0 +1,21 @@
+package com.ruoyi.goods.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data; /**
+ * @author zhibing.pu
+ * @Date 2025/6/5 11:09
+ */
+@Data
+@ApiModel
+public class ShopWinningRecordVo {
+ @ApiModelProperty("用户名")
+ private String userName;
+ @ApiModelProperty("用户电话")
+ private String userPhone;
+ @ApiModelProperty("抽奖时间")
+ private String lotteryTime;
+ @ApiModelProperty("奖品名称")
+ private String awardName;
+
+}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/LotteryEventMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/LotteryEventMapper.java
index 2733f17..1e85866 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/LotteryEventMapper.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/LotteryEventMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.goods.api.domain.LotteryEvent;
import com.ruoyi.goods.domain.vo.AppLotteryEventPageVo;
+import com.ruoyi.goods.domain.vo.ShopLotteryDrawListVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -23,4 +24,14 @@
* @return
*/
List<AppLotteryEventPageVo> pageAppLotteryEvent(Page<AppLotteryEventPageVo> page, @Param("userId") Long userId);
+
+
+ /**
+ * 获取门店抽奖列表
+ *
+ * @param page
+ * @param shopId
+ * @return
+ */
+ List<ShopLotteryDrawListVo> getShopLotteryDrawList(Page<ShopLotteryDrawListVo> page, @Param("shopId") Long shopId);
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/UserLotteryEventMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/UserLotteryEventMapper.java
index 6b75b63..a61e79d 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/UserLotteryEventMapper.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/lottery/UserLotteryEventMapper.java
@@ -1,11 +1,27 @@
package com.ruoyi.goods.mapper.lottery;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.goods.api.domain.UserLotteryEvent;
+import com.ruoyi.goods.domain.vo.ShopWinningRecordVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Map;
/**
* @author zhibing.pu
* @Date 2025/5/12 10:40
*/
public interface UserLotteryEventMapper extends BaseMapper<UserLotteryEvent> {
+
+
+ /**
+ * 获取门店中奖记录
+ *
+ * @param page
+ * @param id
+ * @return
+ */
+ List<Map<String, Object>> getShopWinningRecord(Page<ShopWinningRecordVo> page, @Param("id") String id);
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java
index b83e9cb..c180e93 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java
@@ -13,6 +13,7 @@
import com.ruoyi.goods.api.domain.UserLotteryEventQuestions;
import com.ruoyi.goods.domain.vo.AppLotteryEventPageVo;
import com.ruoyi.goods.domain.vo.LotteryEventVo;
+import com.ruoyi.goods.domain.vo.ShopLotteryDrawListVo;
import com.ruoyi.goods.domain.vo.UserLotteryEventVo;
import com.ruoyi.goods.mapper.lottery.LotteryEventMapper;
import com.ruoyi.goods.service.lottery.ILotteryEventPrizeService;
@@ -198,6 +199,7 @@
case 2:
memberGiftRecord.setGiftType(2);
memberGiftRecord.setGoodsId(userLotteryEvent.getObjectId());
+ memberGiftRecord.setGiftName(userLotteryEvent.getObjectName());
memberGiftRecord.setGoodsNumber(userLotteryEvent.getNumber());
break;
case 3:
@@ -236,4 +238,17 @@
public List<AppLotteryEventPageVo> pageAppLotteryEvent(Page<AppLotteryEventPageVo> page, Long userId) {
return this.baseMapper.pageAppLotteryEvent(page, userId);
}
+
+
+ /**
+ * 获取门店抽奖列表
+ *
+ * @param page
+ * @param shopId
+ * @return
+ */
+ @Override
+ public List<ShopLotteryDrawListVo> getShopLotteryDrawList(Page<ShopLotteryDrawListVo> page, Long shopId) {
+ return this.baseMapper.getShopLotteryDrawList(page, shopId);
+ }
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/UserLotteryEventServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/UserLotteryEventServiceImpl.java
index 3e7c5aa..cbbe0be 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/UserLotteryEventServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/UserLotteryEventServiceImpl.java
@@ -1,10 +1,20 @@
package com.ruoyi.goods.service.impl.lottery;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.goods.api.domain.UserLotteryEvent;
+import com.ruoyi.goods.domain.vo.ShopWinningRecordVo;
import com.ruoyi.goods.mapper.lottery.UserLotteryEventMapper;
import com.ruoyi.goods.service.lottery.IUserLotteryEventService;
+import com.ruoyi.system.api.domain.poji.member.Member;
+import com.ruoyi.system.api.service.RemoteMemberService;
import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
+import java.util.StringJoiner;
+import java.util.stream.Collectors;
/**
* @author zhibing.pu
@@ -12,4 +22,53 @@
*/
@Service
public class UserLotteryEventServiceImpl extends ServiceImpl<UserLotteryEventMapper, UserLotteryEvent> implements IUserLotteryEventService {
+
+ @Resource
+ private RemoteMemberService remoteMemberService;
+
+
+ /**
+ * 获取店铺中中奖记录
+ *
+ * @return
+ */
+ @Override
+ public List<ShopWinningRecordVo> getShopWinningRecord(Page<ShopWinningRecordVo> page, String id) {
+ List<Map<String, Object>> shopWinningRecord = this.baseMapper.getShopWinningRecord(page, id);
+ List<ShopWinningRecordVo> collect = shopWinningRecord.stream().map(item -> {
+ Long user_id = Long.valueOf(item.get("user_id").toString());
+ Member member = remoteMemberService.getMember(user_id).getData();
+
+ String create_time = item.get("create_time").toString();
+ String content = item.get("content").toString();
+ String[] prizes = content.split(",");
+ StringJoiner awardName = new StringJoiner("、");
+ for (String prize : prizes) {
+ String[] split = prize.split("_");
+ String name = "";
+ switch (split[0]) {
+ case "1":
+ name = "优惠券";
+ break;
+ case "2":
+ name = split[2] + "x" + split[3];
+ break;
+ case "3":
+ name = split[2] + "x" + split[3];
+ break;
+ case "4":
+ name = "积分";
+ break;
+ }
+ awardName.add(name);
+ }
+ ShopWinningRecordVo shopWinningRecordVo = new ShopWinningRecordVo();
+ shopWinningRecordVo.setUserName(member.getRealName());
+ shopWinningRecordVo.setUserPhone(member.getMobile());
+ shopWinningRecordVo.setLotteryTime(create_time);
+ shopWinningRecordVo.setAwardName(awardName.toString());
+ return shopWinningRecordVo;
+ }).collect(Collectors.toList());
+ return collect;
+ }
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/ILotteryEventService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/ILotteryEventService.java
index 6ba7f01..29a1855 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/ILotteryEventService.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/ILotteryEventService.java
@@ -6,6 +6,7 @@
import com.ruoyi.goods.api.domain.LotteryEvent;
import com.ruoyi.goods.domain.vo.AppLotteryEventPageVo;
import com.ruoyi.goods.domain.vo.LotteryEventVo;
+import com.ruoyi.goods.domain.vo.ShopLotteryDrawListVo;
import java.util.List;
@@ -42,4 +43,13 @@
* @return
*/
List<AppLotteryEventPageVo> pageAppLotteryEvent(Page<AppLotteryEventPageVo> page, Long userId);
+
+
+ /**
+ * 获取门店的抽奖列表
+ *
+ * @param page
+ * @return
+ */
+ List<ShopLotteryDrawListVo> getShopLotteryDrawList(Page<ShopLotteryDrawListVo> page, Long shopId);
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/IUserLotteryEventService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/IUserLotteryEventService.java
index d4268d1..0c5bffb 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/IUserLotteryEventService.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/lottery/IUserLotteryEventService.java
@@ -1,7 +1,11 @@
package com.ruoyi.goods.service.lottery;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.goods.api.domain.UserLotteryEvent;
+import com.ruoyi.goods.domain.vo.ShopWinningRecordVo;
+
+import java.util.List;
/**
@@ -9,4 +13,10 @@
* @Date 2025/5/12 10:40
*/
public interface IUserLotteryEventService extends IService<UserLotteryEvent> {
+
+
+ /**
+ * 获取店铺中中奖记录
+ */
+ List<ShopWinningRecordVo> getShopWinningRecord(Page<ShopWinningRecordVo> page, String id);
}
diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml
index 08dc23c..0419a27 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml
+++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml
@@ -27,4 +27,17 @@
and a.activity_type in (4, 5)) as aa
order by aa.sort, aa.startTime
</select>
+
+
+ <select id="getShopLotteryDrawList" resultType="com.ruoyi.goods.domain.vo.ShopLotteryDrawListVo">
+ select id,
+ `name`,
+ activity_profile as activityProfile,
+ cover_image as coverImage,
+ DATE_FORMAT(start_time, '%Y-%m-%d %H:%i') as startTime,
+ DATE_FORMAT(end_time, '%Y-%m-%d %H:%i') as endTime
+ from t_lottery_event
+ where shop_id = #{shopId}
+ order by create_time desc
+ </select>
</mapper>
diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/UserLotteryEventMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/UserLotteryEventMapper.xml
index ef8817f..753574d 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/UserLotteryEventMapper.xml
+++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/UserLotteryEventMapper.xml
@@ -1,5 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.lottery.UserLotteryEventMapper">
-
+
+ <select id="getShopWinningRecord" resultType="map">
+ select aa.user_id,
+ DATE_FORMAT(any_value(aa.create_time), '%Y-%m-%d %H:%i') as create_time,
+ GROUP_CONCAT(CONCAT(aa.prize_type, '_', aa.object_id, '_', aa.object_name, '_', aa.number)) as content
+ from (select *
+ from t_user_lottery_event
+ where prize_type != 5 and lottery_event_id = #{id}
+ order by create_time) as aa
+ group by aa.user_id
+ </select>
</mapper>
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerMemberController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerMemberController.java
index 52522ae..2e804c8 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerMemberController.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerMemberController.java
@@ -53,7 +53,7 @@
}
@RequestMapping(value = "/pageMerMember", method = RequestMethod.POST)
- @ApiOperation(value = "分页获取商户绑定会员列表")
+ @ApiOperation(value = "分页获取商户绑定会员列表【2.0】")
public R<Page<MerMemberPageVo>> pageMerMember(@RequestBody MerMemberPageDto merMemberPageDto) {
Long userId = SecurityUtils.getUserId();
Page<MerMemberPageVo> page = new Page<>();
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
index c9af95a..84b8c1b 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
@@ -50,7 +50,7 @@
* @author jqs34
* @date: 2023/4/30 12:49
*/
-
+
@PostMapping("/getMember")
public R<Member> getMember(@RequestBody Long userId) {
Member member = memberService.getByUserId(userId);
@@ -60,6 +60,20 @@
return R.ok(member);
}
+
+ /**
+ * 修改会员数据
+ *
+ * @param member
+ * @return
+ */
+ @PostMapping("/editMember")
+ public R editMember(@RequestBody Member member) {
+ memberService.updateById(member);
+ return R.ok();
+ }
+
+
/**
* 小程序登录
*/
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java
index 1353e22..6fa4fbb 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java
@@ -44,13 +44,16 @@
@ApiModelProperty(value = "用户标签")
private String userTags;
-
+
@ApiModelProperty(value = "商品类型")
private String goodsType;
-
- @ApiModelProperty(value = "最近消费时间",hidden = true)
+
+ @ApiModelProperty(value = "最近消费时间", hidden = true)
private Date lastPayTime;
-
+
@ApiModelProperty(value = "活跃度")
private String memberActiveness;
+
+ @ApiModelProperty(value = "调理问题")
+ private String memberNurse;
}
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 0913eef..639ee84 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
@@ -161,7 +161,8 @@
tm.birthday birthday,
tm.user_tags userTags,
tm.goods_type goodsType,
- tmt.last_service_time lastPayTime
+ tmt.last_service_time lastPayTime,
+ tm.memberNurse
FROM t_member tm
INNER JOIN t_member_total tmt ON tm.member_id = tmt.member_id
WHERE tm.relation_shop_id = #{param.shopId} AND tm.binding_flag = 1
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerConsumerController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerConsumerController.java
index c4dae7b..d20cf53 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerConsumerController.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerConsumerController.java
@@ -43,7 +43,7 @@
private UserServiceRecordService userServiceRecordService;
@RequestMapping(value = "/listMerConsumerGoods", method = RequestMethod.POST)
- @ApiOperation(value = "获取用户服务列表")
+ @ApiOperation(value = "获取用户服务列表【2.0】")
public R<MerConsumerGoodsVo> listMerConsumerGoods(@RequestBody MerConsumerGoodsDto merConsumerGoodsDto) {
Long userId = SecurityUtils.getUserId();
merConsumerGoodsDto.setUserId(userId);
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java
index 8f8a37c..b4c22d6 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java
@@ -5,6 +5,7 @@
import com.ruoyi.common.core.exception.ServiceException;
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.AppErrorConstant;
@@ -16,6 +17,7 @@
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
+import java.util.Date;
import java.util.List;
/**
@@ -71,7 +73,12 @@
Long userId = SecurityUtils.getUserId();
merVerifyCodeDto.setUserId(userId);
String verifyCode = merVerifyCodeDto.getVerifyCode();
- MerVerifyOrderVo merVerifyOrderVo = orderService.verifyOrder(verifyCode,merVerifyCodeDto.getShopId());
+ MerVerifyOrderVo merVerifyOrderVo = null;
+ if (!verifyCode.contains("http")) {
+ merVerifyOrderVo = orderService.verifyOrder(verifyCode, merVerifyCodeDto.getShopId());
+ } else {
+ //三方订单
+ }
return R.ok(merVerifyOrderVo);
}
@@ -80,7 +87,12 @@
public R<MerVerifyOrderVo> sureVerifyOrder(@RequestBody MerVerifyOrderDto merVerifyOrderDto) {
Long userId = SecurityUtils.getUserId();
merVerifyOrderDto.setUserId(userId);
- MerVerifyOrderVo merVerifyOrderVo = orderService.sureVerifyOrder(merVerifyOrderDto);
+ MerVerifyOrderVo merVerifyOrderVo = null;
+ if (!merVerifyOrderDto.getOrderId().contains("http")) {
+ merVerifyOrderVo = orderService.sureVerifyOrder(merVerifyOrderDto);
+ } else {
+ //三方订单
+ }
return R.ok(merVerifyOrderVo);
}
@@ -133,19 +145,43 @@
orderService.createNewOrder(merNewOrderDto);
return R.ok();
}
-
+
@RequestMapping(value = "/pageMerOrder", method = RequestMethod.POST)
- @ApiOperation(value = "获取商户端订单列表")
+ @ApiOperation(value = "获取商户端订单列表【2.0】")
public R<Page<MerOrderPageVo>> pageMerOrder(@RequestBody MerOrderPageDto merOrderPageDto) {
Long userId = SecurityUtils.getUserId();
merOrderPageDto.setUserId(userId);
Page<MerOrderPageVo> page = new Page<>();
page.setSize(merOrderPageDto.getPageSize());
page.setCurrent(merOrderPageDto.getPageNum());
- List<MerOrderPageVo> merOrderPageVoList = orderService.pageMerOrder(page,merOrderPageDto);
+ List<MerOrderPageVo> merOrderPageVoList = orderService.pageMerOrder(page, merOrderPageDto);
return R.ok(page.setRecords(merOrderPageVoList));
}
-
+
+
+ @RequestMapping(value = "/cancelMerOrder", method = RequestMethod.POST)
+ @ApiOperation(value = "商户端取消线下订单【2.0】")
+ public R cancelMerOrder(@RequestBody CancelMerOrderDto dto) {
+ Order order = orderService.getById(dto.getOrderId());
+ if (null == order) {
+ return R.fail("订单不存在");
+ }
+ if (order.getOrderStatus() == 0) {
+ return R.fail("订单已取消");
+ }
+ if (!order.getShopId().equals(dto.getShopId())) {
+ return R.fail("取消失败");
+ }
+ if (3 != order.getOrderFrom()) {
+ return R.fail("取消失败");
+ }
+ order.setOrderStatus(0);
+ order.setCancelTime(new Date());
+ orderService.updateById(order);
+ return R.ok();
+ }
+
+
@RequestMapping(value = "/totalMerOrder", method = RequestMethod.POST)
@ApiOperation(value = "商户端订单管理统计")
public R<MerTotalOrderVo> totalMerOrder(@RequestBody MerOrderPageDto merOrderPageDto) {
@@ -154,9 +190,9 @@
MerTotalOrderVo totalOrderVo = orderService.totalMerOrder(merOrderPageDto);
return R.ok(totalOrderVo);
}
-
+
@RequestMapping(value = "/pageMerMemberOrder", method = RequestMethod.POST)
- @ApiOperation(value = "分页商户端用户收银记录")
+ @ApiOperation(value = "分页商户端用户收银记录【2.0】")
public R<Page<MerMemberOrderVo>> pageMerMemberOrder(@RequestBody MerMemberNoClearOrderDto merMemberNoClearOrderDto) {
Long userId = SecurityUtils.getUserId();
merMemberNoClearOrderDto.setUserId(userId);
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/CancelMerOrderDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/CancelMerOrderDto.java
new file mode 100644
index 0000000..f7a62bc
--- /dev/null
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/CancelMerOrderDto.java
@@ -0,0 +1,16 @@
+package com.ruoyi.order.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data; /**
+ * @author zhibing.pu
+ * @Date 2025/6/5 17:53
+ */
+@Data
+@ApiModel
+public class CancelMerOrderDto {
+ @ApiModelProperty("商户id")
+ private Long shopId;
+ @ApiModelProperty("订单id")
+ private String orderId;
+}
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MerOrderPageDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MerOrderPageDto.java
index d608eec..6e9df12 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MerOrderPageDto.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/MerOrderPageDto.java
@@ -27,7 +27,7 @@
@ApiModelProperty(value = "搜索关键词")
private String keyword;
- @ApiModelProperty(value = "1.全部2.待核销3.已核销")
+ @ApiModelProperty(value = "0.已取消1.全部2.待核销3.已核销")
private Integer type;
@ApiModelProperty(value = "订单开始时间")
@@ -35,7 +35,7 @@
@ApiModelProperty(value = "订单结束时间")
private String endOrderDate;
-
- @ApiModelProperty(value = "订单来源1.店铺商品2.平台秒杀活动3.线下创建")
+
+ @ApiModelProperty(value = "订单来源1.商城2.秒杀活动3.线下创建4.抽奖5.美团6.抖音7.快手")
private Integer orderFrom;
}
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerConsumerGoodsListVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerConsumerGoodsListVo.java
index 27755d9..c54294d 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerConsumerGoodsListVo.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerConsumerGoodsListVo.java
@@ -24,31 +24,34 @@
@ApiModelProperty(value="商品类型1周期2服务3体验4单品")
private Integer goodsType;
-
- @ApiModelProperty(value="商品名称")
+
+ @ApiModelProperty(value = "商品名称")
private String goodsName;
-
- @ApiModelProperty(value="商品标签")
+
+ @ApiModelProperty(value = "商品标签")
private String goodsTags;
-
+
@ApiModelProperty(value = "商品简介")
private String goodsIntroduction;
-
- @ApiModelProperty(value="商品图片")
+
+ @ApiModelProperty(value = "商品图片")
private String goodsPicture;
-
- @ApiModelProperty(value="商品调理问题")
+
+ @ApiModelProperty(value = "商品调理问题")
private String goodsNurses;
-
- @ApiModelProperty(value="周期标记")
+
+ @ApiModelProperty(value = "周期标记")
private Integer cycleNumFlag;
-
- @ApiModelProperty(value="服务次数")
+
+ @ApiModelProperty(value = "服务次数")
private Integer serviceNum;
-
- @ApiModelProperty(value="消耗次数")
+
+ @ApiModelProperty(value = "消耗次数")
private Integer usedNum;
-
- @ApiModelProperty(value="待确认次数")
+
+ @ApiModelProperty(value = "待确认次数")
private Integer sureNum;
+
+ @ApiModelProperty(value = "是否选中")
+ private Boolean optionFlag;
}
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java
index 5271477..63f1660 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java
@@ -1,11 +1,13 @@
package com.ruoyi.order.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.system.api.domain.vo.MerCouponGoodsListVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
+import java.util.List;
/**
* @ClassName MerMemberOrderVo
@@ -55,14 +57,17 @@
@ApiModelProperty(value="未收金额")
private BigDecimal unPaidMoney;
-
- @ApiModelProperty(value="收款时间")
+
+ @ApiModelProperty(value = "收款时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date receiveMoneyTime;
-
- @ApiModelProperty(value="收款金额")
+
+ @ApiModelProperty(value = "收款金额")
private BigDecimal thisReceiveMoney;
-
- @ApiModelProperty(value="收款方式")
+
+ @ApiModelProperty(value = "收款方式")
private String thisReceiveType;
+
+ @ApiModelProperty(value = "商品信息")
+ private List<MerCouponGoodsListVo> goodsList;
}
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyAwardVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyAwardVo.java
index ac68377..199316f 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyAwardVo.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyAwardVo.java
@@ -31,7 +31,7 @@
@ApiModelProperty(value = "奖品来源")
private String giftFrom;
- @ApiModelProperty(value = "礼物类型1优惠券2商品3现金4实物")
+ @ApiModelProperty(value = "礼物类型1优惠券2商品3现金4实物5积分")
private Integer giftType;
@ApiModelProperty(value = "奖品名称")
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
index 59dfddd..b5a1724 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
@@ -1,6 +1,7 @@
package com.ruoyi.order.service.impl.order;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.R;
@@ -87,20 +88,29 @@
public List<AppConsumerPageVo> pageUserConsumerGoods(Page page, AppConsumerPageDto appConsumerPageDto){
return consumerGoodsMapper.pageUserConsumerGoods(page, appConsumerPageDto);
}
-
+
/**
* 获取会员服务商品
+ *
* @param merConsumerGoodsDto
* @return
*/
@Override
- public MerConsumerGoodsVo listMerConsumerGoods(MerConsumerGoodsDto merConsumerGoodsDto){
+ public MerConsumerGoodsVo listMerConsumerGoods(MerConsumerGoodsDto merConsumerGoodsDto) {
MerConsumerGoodsVo merConsumerGoodsVo = new MerConsumerGoodsVo();
- if(merConsumerGoodsDto.getGoodsType()==1){
+ if (merConsumerGoodsDto.getGoodsType() == 1) {
List<MerConsumerGoodsListVo> noSureList = consumerGoodsMapper.listMerNoSureConsumerGoods(merConsumerGoodsDto);
merConsumerGoodsVo.setNoSureList(noSureList);
}
List<MerConsumerGoodsListVo> sureList = consumerGoodsMapper.listMerConsumerGoods(merConsumerGoodsDto);
+ Member member = remoteMemberService.getMember(merConsumerGoodsDto.getUserId()).getData();
+ String lastServiceId = member.getLastServiceId();
+ if (StringUtils.isNotEmpty(lastServiceId)) {
+ List<String> list = JSON.parseArray(lastServiceId, String.class);
+ sureList.forEach(s -> {
+ s.setOptionFlag(list.contains(s.getConsumerGoodsId()));
+ });
+ }
merConsumerGoodsVo.setSureList(sureList);
return merConsumerGoodsVo;
}
@@ -174,13 +184,13 @@
}
}
//判断商品确认次数
- if(sureNum>oldConsumerGoods.getSureNum()){
+ if (sureNum > oldConsumerGoods.getSureNum()) {
throw new ServiceException(AppErrorConstant.GOODS_SURE_FAILED);
- }else{
+ } else {
int surpNum = oldConsumerGoods.getSureNum();
surpNum = surpNum - sureNum;
oldConsumerGoods.setSureNum(surpNum);
- if(surpNum==0){
+ if (surpNum == 0) {
oldConsumerGoods.setDelFlag(1);
}
this.saveOrUpdate(oldConsumerGoods);
@@ -304,20 +314,26 @@
serviceRecord.setConsumerGoodsNames(goodsNames);
userServiceRecordService.saveOrUpdate(serviceRecord);
//服务记录详情
- for(ServiceRecordDetail serviceRecordDetail1 : serviceRecordDetailList){
+ for (ServiceRecordDetail serviceRecordDetail1 : serviceRecordDetailList) {
serviceRecordDetail1.setRecordId(serviceRecord.getId());
}
serviceRecordDetailService.saveBatch(serviceRecordDetailList);
+
+ //保存本次确认的服务商品id,用于下次进入页面后默认勾选上
+ List<String> collect = goodsList.stream().map(MerSureConsumerGoodsListDto::getConsumerGoodsId).collect(Collectors.toList());
+ Member member = remoteMemberService.getMember(merSureConsumerGoodsDto.getUserId()).getData();
+ member.setLastServiceId(JSON.toJSONString(collect));
+ remoteMemberService.editMember(member);
+
//更新商户和会员服务统计
MemberTotalChangeDto memberTotalChange = new MemberTotalChangeDto();
memberTotalChange.setUserId(merSureConsumerGoodsDto.getMemberUserId());
memberTotalChange.setTypeService(2);
memberTotalChange.setServiceCount(serviceCount);
remoteMemberService.changeMemberTotal(memberTotalChange);
- if(!sendData.isEmpty()){
- Member member = remoteMemberService.getMember(userId).getData();
+ if (!sendData.isEmpty()) {
R<Shop> r = remoteShopService.getShop(shopId);
- if(r.getCode() != 200){
+ if (r.getCode() != 200) {
throw new ServiceException(r.getMsg());
}
Shop shop = r.getData();
@@ -327,11 +343,10 @@
Integer number = Integer.valueOf(sendDatum.get("number").toString());
String msg = "{\"name\":\"" + (StringUtils.isEmpty(member.getRealName()) ? member.getNickName() : member.getRealName()) + "\"," +
"\"store\":\"" + shop.getShopName() + "\",\"product\":\"" + product + "\"}";
- if(number == 2){
- MsgUtils.sendMsg(member.getMobile(),"SMS_464376210",msg);
- }
- if(number == 0){
- MsgUtils.sendMsg(member.getMobile(),"SMS_464321234",msg);
+ if (number == 0) {
+ MsgUtils.sendMsg(member.getMobile(), "SMS_464321234", msg);
+ } else {
+ MsgUtils.sendMsg(member.getMobile(), "SMS_464376210", msg);
}
}
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 1ab53ad..1ef2d06 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
@@ -3032,9 +3032,27 @@
if (merMemberNoClearOrderVo.getUnPaidMoney() == null) {
merMemberNoClearOrderVo.setUnPaidMoney(zeroBig);
}
- if(merMemberNoClearOrderVo.getUnPaidMoney().compareTo(zeroBig)<0){
+ if (merMemberNoClearOrderVo.getUnPaidMoney().compareTo(zeroBig) < 0) {
merMemberNoClearOrderVo.setUnPaidMoney(zeroBig);
}
+ List<MerCouponGoodsListVo> goodsList = new ArrayList<>();
+ orderGoodsService.listByOrderId(merMemberNoClearOrderVo.getOrderId()).forEach(orderGoodsVo -> {
+ MerCouponGoodsListVo merCouponGoodsListVo = new MerCouponGoodsListVo();
+ merCouponGoodsListVo.setGoodsId(orderGoodsVo.getGoodsId());
+ merCouponGoodsListVo.setGoodsName(orderGoodsVo.getGoodsName());
+ merCouponGoodsListVo.setGoodsNum(orderGoodsVo.getBuyNum());
+ if (orderGoodsVo.getGoodsType() == 1) {
+ merCouponGoodsListVo.setGoodsType("周期");
+ } else if (orderGoodsVo.getGoodsType() == 2) {
+ merCouponGoodsListVo.setGoodsType("服务");
+ } else if (orderGoodsVo.getGoodsType() == 3) {
+ merCouponGoodsListVo.setGoodsType("体验");
+ } else if (orderGoodsVo.getGoodsType() == 4) {
+ merCouponGoodsListVo.setGoodsType("单品");
+ }
+ goodsList.add(merCouponGoodsListVo);
+ });
+ merMemberNoClearOrderVo.setGoodsList(goodsList);
}
}
return merMemberNoClearOrderVoList;
@@ -4801,17 +4819,17 @@
if (memberGiftRecord.getGiftFrom() == 1) {
BirthdayCard birthdayCard = remoteMemberService.getBirthdayCard().getData();
//判断生日活动状态
- if(birthdayCard!=null&&birthdayCard.getCardStatus()==1){
+ if (birthdayCard != null && birthdayCard.getCardStatus() == 1) {
shop = remoteShopService.getShop(shopId).getData();
//判断指定区域全部店铺
- if(birthdayCard.getAreaFlag()==2&&birthdayCard.getShopFlag()==1&&!StringUtils.checkString(birthdayCard.getDesignatedArea(),shop.getShopCityCode())){
+ if (birthdayCard.getAreaFlag() == 2 && birthdayCard.getShopFlag() == 1 && !StringUtils.checkString(birthdayCard.getDesignatedArea(), shop.getShopCityCode())) {
throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
}
//判断指定店铺
- if(birthdayCard.getShopFlag()==2&&!StringUtils.checkString(birthdayCard.getApplicableShop(),shopId.toString())){
+ if (birthdayCard.getShopFlag() == 2 && !StringUtils.checkString(birthdayCard.getApplicableShop(), shopId.toString())) {
throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
}
- }else{
+ } else {
throw new ServiceException(AppErrorConstant.BIRTHDAY_CARD_ERROR);
}
}
@@ -4819,16 +4837,20 @@
if (memberGiftRecord.getGiftFrom() == 2 && !memberGiftRecord.getShopId().equals(shopId)) {
throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
}
-
+
merVerifyAwardVo.setUserName(member.getRealName());
merVerifyAwardVo.setUserMobile(member.getMobile());
- if (memberGiftRecord.getGiftFrom() == 1) {
- merVerifyAwardVo.setGiftFrom("平台生日卡");
+ if (1 == memberGiftRecord.getPrizeFrom()) {
+ if (memberGiftRecord.getGiftFrom() == 1) {
+ merVerifyAwardVo.setGiftFrom("平台生日卡");
+ } else {
+ merVerifyAwardVo.setGiftFrom("商户生日卡");
+ }
} else {
- merVerifyAwardVo.setGiftFrom("商户生日卡");
+ merVerifyAwardVo.setGiftFrom("平台抽奖");
}
merVerifyAwardVo.setGiftType(memberGiftRecord.getGiftType());
- //礼物类型1优惠券2商品3现金4实物
+ //礼物类型1优惠券2商品3现金4实物5积分
switch (memberGiftRecord.getGiftType()) {
case 1:
merVerifyAwardVo.setGiftName(memberGiftRecord.getCouponName());
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 f6656e0..4370b43 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
@@ -365,24 +365,32 @@
toc.order_status orderStatus,
toc.order_money orderGoodsMoney,
toc.coupon_money couponDiscount,
- CASE toc.pay_type WHEN 1 THEN toc.order_money-toc.coupon_money WHEN 2 THEN toc.order_money-toc.coupon_money-toc.online_pay_money END receivableMoney,
+ CASE toc.pay_type WHEN 1 THEN toc.order_money-toc.coupon_money WHEN 2 THEN
+ toc.order_money-toc.coupon_money-toc.online_pay_money END receivableMoney,
toc.receivable_deposit receivableDeposit,
toc.pay_money payMoney,
- (CASE WHEN null = toc.change_receivable_money or toc.change_receivable_money = 0 THEN toc.receivable_money ELSE toc.change_receivable_money END) relReceiveMoney,
+ (CASE WHEN null = toc.change_receivable_money or toc.change_receivable_money = 0 THEN toc.receivable_money ELSE
+ toc.change_receivable_money END) relReceiveMoney,
CASE toc.pay_type WHEN 1 THEN toc.pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END receiveMoney,
- (CASE WHEN null = toc.change_receivable_money or toc.change_receivable_money = 0 THEN toc.receivable_money ELSE toc.change_receivable_money END) - (CASE toc.pay_type WHEN 1 THEN toc.pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END) unPaidMoney,
+ (CASE WHEN null = toc.change_receivable_money or toc.change_receivable_money = 0 THEN toc.receivable_money ELSE
+ toc.change_receivable_money END) - (CASE toc.pay_type WHEN 1 THEN toc.pay_money WHEN 2 THEN
+ IFNULL(toc.offline_pay_money,0) END) unPaidMoney,
toc.order_remark orderRemark,
toc.create_time createTime,
toc.order_from orderFrom,
- CASE toc.order_from WHEN 1 THEN '商城订单' WHEN 2 THEN CONCAT('平台秒杀活动(',toc.activity_name,')') WHEN 3 THEN '线下创建' END orderFromDesc,
+ CASE toc.order_from WHEN 1 THEN '商城订单' WHEN 2 THEN CONCAT('平台秒杀活动(',toc.activity_name,')') WHEN 3 THEN
+ '线下创建' END orderFromDesc,
toc.activity_name activityName
FROM t_order toc
- WHERE toc.del_flag = 0 AND toc.shop_id = #{param.shopId} and if(toc.order_from = 1, 1 = 1, toc.order_status = 3)<!--临时增加过滤-->
+ WHERE toc.del_flag = 0 AND toc.shop_id = #{param.shopId}
<if test="param.memberUserId != null and param.memberUserId != ''">
AND toc.user_id = #{param.memberUserId}
</if>
+ <if test="param.type != null and param.type ==0 ">
+ AND toc.order_status = 0
+ </if>
<if test="param.type != null and param.type ==1 ">
- AND (toc.order_status = 2 OR toc.order_status = 3)
+ AND toc.order_status in(0, 2, 3)
</if>
<if test="param.type != null and param.type ==2 ">
AND toc.order_status = 2
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/business/MerShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/business/MerShopController.java
index 9b5aaf7..25a399c 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/business/MerShopController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/business/MerShopController.java
@@ -286,4 +286,18 @@
shopAppointableTimeService.updateById(shopAppointableTime);
return R.ok();
}
+
+ @RequestMapping(value = "/getMyShopList", method = RequestMethod.POST)
+ @ApiOperation(value = "获取当前账户可切换的门店列表【2.0】")
+ public R<List<Shop>> getMyShopList() {
+ Long userId = SecurityUtils.getUserId();
+ List<ShopRelUser> shopRelUser = shopRelUserService.getByUserId(userId);
+ List<Shop> collect = shopRelUser.stream().map(e -> {
+ Shop shop = shopService.getById(e.getShopId());
+ return shop;
+ }).collect(Collectors.toList());
+ return R.ok(collect);
+ }
+
+
}
--
Gitblit v1.7.1