From 9c66102a4fae1922aac72dc153e3e76b5856bae3 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期三, 24 一月 2024 15:07:01 +0800
Subject: [PATCH] 数据权限

---
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java |  176 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 167 insertions(+), 9 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 6daa718..c932321 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,22 +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.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.constant.AppErrorConstant;
+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;
@@ -25,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
@@ -61,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
@@ -71,9 +101,18 @@
     {
         String mobile = qwUserDetail.getMobile();
         ShopStaff shopStaff = shopStaffService.getByMobile(mobile);
+        if(shopStaff==null){
+            throw new ServiceException(AppErrorConstant.USER_NO_SHOP);
+        }
         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());
@@ -89,15 +128,60 @@
         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());
+        return R.ok(shopRelUserVo);
+    }
+
+    @PostMapping("/getShopByBelongUserId")
+    public R<ShopRelUserVo> getShopByBelongUserId(@RequestBody Long userId)
+    {
+        List<Shop> shopList = shopService.getShopByBelongUserId(userId);
+        Optional.ofNullable(shopList.get(0)).orElseThrow(() -> new ServiceException("未查询到商户信息"));
+        ShopRelUserVo shopRelUserVo = new ShopRelUserVo();
+        shopRelUserVo.setShopId(shopList.get(0).getShopId());
         return R.ok(shopRelUserVo);
     }
 
@@ -261,13 +345,87 @@
         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;
         }
         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);
+    }
 }

--
Gitblit v1.7.1