From 10f1422bc8f401b06b1e55ee63b23016d74abce8 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 28 二月 2024 11:34:09 +0800
Subject: [PATCH] 优化商户发券逻辑
---
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java | 182 +++++++++++++++++++++++++++++++++++++++++---
1 files changed, 167 insertions(+), 15 deletions(-)
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
index bb5cf8e..102a0ac 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
@@ -1,23 +1,27 @@
package com.ruoyi.shop.controller.console;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.ruoyi.common.core.constant.CacheConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.ServiceException;
-import com.ruoyi.shop.domain.pojo.shop.ShopRelUser;
-import com.ruoyi.shop.domain.pojo.shop.ShopStaff;
+import com.ruoyi.common.core.utils.bean.BeanUtils;
+import com.ruoyi.common.redis.service.RedisService;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.shop.domain.pojo.shop.*;
import com.ruoyi.shop.service.shop.*;
import com.ruoyi.shop.service.task.MemberTaskService;
import com.ruoyi.shop.service.task.ShopTaskService;
import com.ruoyi.system.api.constant.AppErrorConstant;
-import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
-import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
-import com.ruoyi.system.api.domain.dto.MgtShopIdByCodeDto;
-import com.ruoyi.system.api.domain.dto.ShopTotalChangeDto;
+import com.ruoyi.system.api.domain.dto.*;
import com.ruoyi.system.api.domain.poji.shop.Shop;
+import com.ruoyi.system.api.domain.vo.ShopProportionVo;
import com.ruoyi.system.api.domain.poji.sys.SysUser;
import com.ruoyi.system.api.domain.vo.*;
import com.ruoyi.system.api.model.QwH5LoginVo;
import com.ruoyi.system.api.model.QwUserDetailDto;
import com.ruoyi.system.api.service.RemoteUserService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -26,6 +30,8 @@
import javax.annotation.Resource;
import java.util.List;
import java.util.Optional;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
/**
* @author jqs34
@@ -62,6 +68,29 @@
@Resource
private MemberTaskService memberTaskService;
+ @Resource
+ private ShopAuthenticationService shopAuthenticationService;
+
+ @Resource
+ private ShopProportionService shopProportionService;
+
+ @Resource
+ private RedisService redisService;
+
+ @Autowired
+ private ShopAuthenticationHftxService shopAuthenticationHftxService;
+
+ @PostMapping("/getShopIdsByUserIds")
+ public R<List<Long>> getShopIdsByUserIds(@RequestBody List<Long> userIds)
+ {
+ // 店铺ids
+ List<Long> list = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", userIds)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ return R.ok(list);
+ }
+
/**
* 企业微信H5登录
* @param qwUserDetail
@@ -78,6 +107,12 @@
Long userId = shopStaff.getUserId();
SysUser sysUser = remoteUserService.getSysUser(userId).getData();
Optional.ofNullable(sysUser).orElseThrow(() -> new ServiceException("登录失败,未查询到用户"));
+ Shop shop = shopService.getByShopId(shopStaff.getShopId());
+ if(shop.getFrozenFlag()==1){
+ String userKey = SecurityUtils.getUserKey();
+ redisService.deleteObject(CacheConstants.LOGIN_TOKEN_KEY+userKey);
+ throw new ServiceException("商户已被冻结,请联系管理员",401);
+ }
// 构造登录返回信息
QwH5LoginVo qwH5LoginVo = new QwH5LoginVo();
qwH5LoginVo.setUserid(qwUserDetail.getUserid());
@@ -93,12 +128,47 @@
return R.ok(shop);
}
+ @PostMapping("/getShopSubMchId")
+ public R<String> getShopSubMchId(@RequestBody Long shopId){
+ String subMchid = "";
+ ShopAuthentication authentication = shopAuthenticationService.getByShopId(shopId);
+ if(null != authentication){
+ subMchid = authentication.getSubMchid();
+ }
+ return R.ok(subMchid, "");
+ }
+
+
+ @PostMapping("/getShopHFTXSubMchId")
+ public R<ShopAuthenticationHftxVo> getShopHFTXSubMchId(@RequestBody Long shopId){
+ ShopAuthenticationHftx shopAuthenticationHftx = shopAuthenticationHftxService.getOne(new QueryWrapper<ShopAuthenticationHftx>()
+ .eq("is_delete", 0).eq("shop_id", shopId));
+ ShopAuthenticationHftxVo vo = new ShopAuthenticationHftxVo();
+ BeanUtils.copyProperties(shopAuthenticationHftx, vo);
+ return R.ok(vo, "");
+ }
+
+
+
+ /**
+ * 获取商户分成
+ * @param shopId
+ * @return
+ */
+ @PostMapping("/getShopProportion")
+ public R<ShopProportionVo> getShopProportion(@RequestBody Long shopId){
+ ShopProportion shopProportion = shopProportionService.getByShopId(shopId);
+
+ ShopProportionVo shopProportionVo = new ShopProportionVo();
+ BeanUtils.copyBeanProp(shopProportionVo, shopProportion);
+ return R.ok(shopProportionVo);
+ }
@PostMapping("/getShopByUserId")
public R<ShopRelUserVo> getShopByUserId(@RequestBody Long userId)
{
ShopRelUser shopRelUser = shopRelUserService.getByUserId(userId);
- Optional.ofNullable(shopRelUser).orElseThrow(() -> new ServiceException("未查询到商户信息"));
+ Optional.ofNullable(shopRelUser).orElseThrow(() -> new ServiceException("未查询到用户关联商户"));
ShopRelUserVo shopRelUserVo = new ShopRelUserVo();
shopRelUserVo.setShopId(shopRelUser.getShopId());
shopRelUserVo.setUserName(shopRelUser.getUserName());
@@ -108,10 +178,10 @@
@PostMapping("/getShopByBelongUserId")
public R<ShopRelUserVo> getShopByBelongUserId(@RequestBody Long userId)
{
- Shop shop = shopService.getShopByBelongUserId(userId);
- Optional.ofNullable(shop).orElseThrow(() -> new ServiceException("未查询到商户信息"));
+ List<Shop> shopList = shopService.getShopByBelongUserId(userId);
+ Optional.ofNullable(shopList.get(0)).orElseThrow(() -> new ServiceException("未查询到商户信息"));
ShopRelUserVo shopRelUserVo = new ShopRelUserVo();
- shopRelUserVo.setShopId(shop.getShopId());
+ shopRelUserVo.setShopId(shopList.get(0).getShopId());
return R.ok(shopRelUserVo);
}
@@ -179,11 +249,11 @@
* @date 2023/6/18 16:45
*/
@PostMapping("/boardShopTotal")
- public R<MgtBulletinBoardVo> boardShopTotal()
+ public R<MgtBulletinBoardVo> boardShopTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto)
{
MgtBulletinBoardVo bulletinBoardVo = new MgtBulletinBoardVo();
- MgtBulletinBoardVo bulletinBoardVoShop = shopService.boardShopTotal();
- MgtBulletinBoardVo bulletinBoardVoTask = shopTaskService.boardTaskTotal();
+ MgtBulletinBoardVo bulletinBoardVoShop = shopService.boardShopTotal(boardMemberTotalDto.getUserIds());
+ MgtBulletinBoardVo bulletinBoardVoTask = shopTaskService.boardTaskTotal(boardMemberTotalDto.getUserIds());
bulletinBoardVo.setShopTotal(bulletinBoardVoShop.getShopTotal());
bulletinBoardVo.setDealerTotal(bulletinBoardVoShop.getDealerTotal());
bulletinBoardVo.setAgencyTotal(bulletinBoardVoShop.getAgencyTotal());
@@ -275,9 +345,9 @@
Integer platformCouponFlag = shop.getPlatformCouponFlag();
Integer platformBirthdayFlag = shop.getPlatformBirthdayFlag();
Integer marketingStatus = 0;
- if(platformCouponFlag==1&&platformBirthdayFlag==0){
+ if(platformCouponFlag==1&&platformBirthdayFlag==2){
marketingStatus = 1;
- }else if(platformCouponFlag==0&&platformBirthdayFlag==1){
+ }else if(platformCouponFlag==2&&platformBirthdayFlag==1){
marketingStatus = 2;
}else if(platformCouponFlag==1&&platformBirthdayFlag==1){
marketingStatus = 3;
@@ -285,5 +355,87 @@
return R.ok(marketingStatus);
}
+ /**
+ * @description 修改商户员工
+ * @author jqs
+ * @date 2023/7/19 19:02
+ * @param mgtShopStaffEditDto
+ * @return R
+ */
+ @PostMapping("/editMgtShopStaff")
+ public R editMgtShopStaff(@RequestBody MgtShopStaffEditDto mgtShopStaffEditDto)
+ {
+ shopStaffService.editMgtShopStaff(mgtShopStaffEditDto);
+ return R.ok();
+ }
+ /**
+ * @description
+ * @author jqs
+ * @date 2023/8/10 23:01
+ * @param cityCodes
+ * @return R<List<Long>>
+ */
+ @PostMapping("/listShopIdByCityCode")
+ R<List<Long>> listShopIdByCityCode(@RequestBody List<String> cityCodes){
+ List<Long> shopIdList = shopService.listShopIdByCityCode(cityCodes);
+ return R.ok(shopIdList);
+ }
+
+ @PostMapping("/authShop")
+ R authShop(){
+ shopService.authShop();
+ return R.ok();
+ }
+
+ /**
+ * @description 获取今日任务通知列表
+ * @author jqs
+ * @date 2023/8/29 15:03
+ * @param
+ * @return R<List<MgtUserTaskMsgVo>>
+ */
+ @PostMapping("/getTaskMsgList")
+ R<List<MgtUserTaskMsgVo>> getTaskMsgList(){
+ List<MgtUserTaskMsgVo> userTaskMsgVoList = shopService.getTaskMsgList();
+ return R.ok(userTaskMsgVoList);
+ }
+
+
+
+ /**
+ * @description
+ * @author jqs
+ * @date 2023/8/10 23:01
+ * @param cityCodes
+ * @return R<List<Long>>
+ */
+ @PostMapping("/listShopByCityCode")
+ public R<List<Shop>> listShopByCityCode(@RequestBody List<String> cityCodes){
+ List<Shop> shopIdList = shopService.listShopByCityCode(cityCodes);
+ return R.ok(shopIdList);
+ }
+
+
+ /**
+ * @description
+ * @author jqs
+ * @date 2023/8/10 23:01
+ * @return R<List<Long>>
+ */
+ @PostMapping("/listShopByIds")
+ public R<List<Shop>> listShopByIds(@RequestBody List<String> ids){
+ List<Shop> shopIdList = shopService.listByIds(ids);
+ return R.ok(shopIdList);
+ }
+
+
+ /**
+ * 根据管理员id获取门店
+ * @return
+ */
+ @PostMapping("/getShopBySysUserIds")
+ public List<Shop> getShopBySysUserIds(@RequestBody BoardMemberTotalDto boardMemberTotalDto){
+ return shopService.getShopBySysUserIds(boardMemberTotalDto.getUserIds());
+ }
}
--
Gitblit v1.7.1