puzhibing
2025-01-02 210828d1a6947596fe00ab30fcd8725c6714dde4
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,16 +560,29 @@
            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();
    }