From c8ea2d96f5b0522a09f3203ae98fe796084d2d15 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期六, 04 一月 2025 09:34:21 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/qijisheng

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java |   52 +++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 11 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
index 94f5316..8c95d49 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.system.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.StringUtils;
@@ -548,8 +549,7 @@
      */
     @ResponseBody
     @PostMapping("/saveShopUser")
-    public R saveShopUser(@RequestBody SysUser user){
-        Integer shopId = user.getObjectId();
+    public R<Long> saveShopUser(@RequestBody SysUser user){
         SysUser one = userService.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getPhonenumber, user.getPhonenumber()).eq(SysUser::getDelFlag, "0")
                 .eq(SysUser::getStatus, "0").eq(SysUser::getRoleType, 2).eq(SysUser::getAppUserId, user.getAppUserId()));
         if(null == one){
@@ -560,17 +560,47 @@
             userRole.setUserId(user.getUserId());
             userRole.setRoleId(2L);
             userRoleService.save(userRole);
-        }else{
-            user = one;
         }
-        //添加门店关系数据
-        UserShop userShop = userShopService.getOne(new LambdaQueryWrapper<UserShop>().eq(UserShop::getShopId, shopId).eq(UserShop::getUserId, user.getAppUserId()));
-        if(null == userShop){
-            userShop = new UserShop();
-            userShop.setUserId(user.getUserId().intValue());
-            userShop.setShopId(user.getObjectId());
-            userShopService.save(userShop);
+        return R.ok(user.getUserId());
+    }
+
+
+    /**
+     * 删除门店管理员账号
+     * @param objectId
+     * @param roleType
+     * @return
+     */
+    @PostMapping("/user/delShopUser")
+    public R delShopUser(@RequestParam("objectId") Integer objectId, @RequestParam("roleType") Integer roleType){
+        List<SysUser> list = userService.list(new LambdaUpdateWrapper<SysUser>().eq(SysUser::getObjectId, objectId).eq(SysUser::getRoleType, roleType)
+                .eq(SysUser::getDelFlag, "0").eq(SysUser::getStatus, "0"));
+        for (SysUser sysUser : list) {
+            List<UserShop> list1 = userShopService.list(new LambdaUpdateWrapper<UserShop>().eq(UserShop::getUserId, sysUser.getUserId()));
+            List<Integer> collect = list1.stream().map(UserShop::getShopId).collect(Collectors.toList());
+            if(collect.contains(objectId) && collect.size() == 1){
+                sysUser.setDelFlag("2");
+                userService.updateById(sysUser);
+            }
+            userShopService.remove(new LambdaUpdateWrapper<UserShop>().eq(UserShop::getUserId, sysUser.getUserId()).eq(UserShop::getShopId, objectId));
         }
         return R.ok();
     }
+
+
+
+    @ResponseBody
+    @GetMapping("/switchShop")
+    @ApiOperation(value = "切换门店", tags = {"门店后台-首页"})
+    public R switchShop(@PathVariable("shopId") Integer shopId){
+        Long userid = tokenService.getLoginUser().getUserid();
+        UserShop one = userShopService.getOne(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, userid).eq(UserShop::getShopId, shopId));
+        if(null == one){
+            return R.fail("切换失败");
+        }
+        SysUser sysUser = userService.getById(userid);
+        sysUser.setObjectId(shopId);
+        userService.updateById(sysUser);
+        return R.ok();
+    }
 }

--
Gitblit v1.7.1