Pu Zhibing
2025-01-13 d438c2d73da577b0729176e9a315cde659987b97
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -2,6 +2,10 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.api.feignClient.AppUserClient;
import com.ruoyi.account.api.feignClient.AppUserShopClient;
import com.ruoyi.account.api.model.AppUser;
import com.ruoyi.account.api.model.AppUserShop;
import com.ruoyi.common.core.constant.UserConstants;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.SpringUtils;
@@ -79,6 +83,12 @@
   
   @Resource
   private UserShopService userShopService;
   @Resource
   private AppUserShopClient appUserShopClient;
   @Resource
   private AppUserClient appUserClient;
   
   
   /**
@@ -442,7 +452,9 @@
   @Override
   @Transactional(rollbackFor = Exception.class)
   public int deleteUserByIds(Long[] userIds) {
      for (Long userId : userIds) {
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser = this.getById(userid);
        for (Long userId : userIds) {
         checkUserAllowed(new SysUser(userId));
//            checkUserDataScope(userId);
      }
@@ -450,14 +462,34 @@
//        userRoleMapper.deleteUserRole(userIds);
//        // 删除用户与岗位关联
//        userPostMapper.deleteUserPost(userIds);
      int i = userMapper.deleteUserByIds(userIds);
//      int i = userMapper.deleteUserByIds(userIds);
      List<SysUser> sysUsers = this.listByIds(Arrays.asList(userIds));
      for (SysUser user : sysUsers) {
         if(2 == user.getRoleType()){
            userShopService.remove(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId()).eq(UserShop::getShopId, user.getObjectId()));
         }
            userShopService.remove(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId()).eq(UserShop::getShopId, sysUser.getObjectId()));
            AppUser appUser = appUserClient.getAppUserByPhone1(user.getPhonenumber()).getData();
            if(null != appUser){
               AppUserShop appUserShop = new AppUserShop();
               appUserShop.setAppUserId(appUser.getId());
               appUserShop.setShopId(sysUser.getObjectId());
               appUserShopClient.delAppUserShop(appUserShop);
               int size = appUserShopClient.getAppUserShop(appUser.getId()).getData().size();
               if(size == 0){
                  appUser.setUserType(1);
                  appUserClient.editAppUserById(appUser);
               }
            }
                long count = userShopService.count(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId()));
            if(0 == count){
                    user.setDelFlag("2");
                    this.updateById(user);
                }
            }else{
                user.setDelFlag("2");
                this.updateById(user);
            }
      }
      return i;
      return 0;
   }
   
   /**