Browse Source

fix: Optimize user

master
wangxiang 1 year ago
parent
commit
565d630cc2
  1. 20
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/UserController.java
  2. 5
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/UserService.java
  3. 12
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/AppServiceImpl.java
  4. 21
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java

20
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/UserController.java

@ -120,7 +120,7 @@ public class UserController { @@ -120,7 +120,7 @@ public class UserController {
String execAdminUserId = configService.getValueByKey("app.exec.admin.userId");
KiccUser kiccUser = userService.getUserById(execAdminUserId);
Optional.ofNullable(kiccUser).orElseThrow(() -> new CheckedException("当前系统管理执行用户无效请重新在参数管理中配置!"));
String initUserType = configService.getValueByKey("app.init.deptId");
String initUserType = configService.getValueByKey("app.init.normal.userType");
String initTenantId = configService.getValueByKey("app.init.tenantId");
String initRoleIds = configService.getValueByKey("app.init.roleIds");
@ -152,23 +152,7 @@ public class UserController { @@ -152,23 +152,7 @@ public class UserController {
@PreAuthorize("@pms.hasPermission('user_add')")
public R save(@RequestBody KiccUser user) {
userService.saveUser(user);
// fixme: 推送.APP相关
// 企业内部用户推送类型数据同步
if (StrUtil.equals(user.getUserType(), UserTypeEnum.INTERNAL_USER.getValue())) {
List<User> userList = userService.list(Wrappers.<User>lambdaQuery()
.ne(User::getId, SecurityUtils.getUser().getId())
.notIn(User::getUserType, UserTypeEnum.ENTERPRISE_USER.getValue(), UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.enterpriseUserFanSave(user.getId(), userList);
}
// 创建系统中的用户强制关联内部企业
if (!ArrayUtil.contains(new String[]{
UserTypeEnum.ENTERPRISE_USER.getValue(),
UserTypeEnum.INTERNAL_USER.getValue(),
}, SecurityUtils.<KiccUser>getUser().getUserType())) {
List<User> enterpriseUserList = userService.list(Wrappers.<User>lambdaQuery()
.in(User::getUserType, UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.bindConcernEnterpriseUser(user.getId(), enterpriseUserList);
}
userService.appPushBindEnterpriseInnerUser(user);
return R.ok();
}

5
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/UserService.java

@ -97,4 +97,9 @@ public interface UserService extends IService<User> { @@ -97,4 +97,9 @@ public interface UserService extends IService<User> {
*/
List<KiccUser> getUserByPhone(String phone);
/**
* app消息推送绑定企业内部账户
*/
void appPushBindEnterpriseInnerUser(KiccUser user);
}

12
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/AppServiceImpl.java

@ -2,6 +2,7 @@ package com.cloud.kicc.system.service.impl; @@ -2,6 +2,7 @@ package com.cloud.kicc.system.service.impl;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.javaer.aliyun.sms.SmsClient;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
@ -13,9 +14,12 @@ import com.cloud.kicc.common.core.exception.CheckedException; @@ -13,9 +14,12 @@ import com.cloud.kicc.common.core.exception.CheckedException;
import com.cloud.kicc.common.core.exception.ValidateCodeException;
import com.cloud.kicc.common.data.entity.KiccUser;
import com.cloud.kicc.common.data.entity.SsoUser;
import com.cloud.kicc.common.security.util.SecurityUtils;
import com.cloud.kicc.commonbiz.api.feign.RemotePushConcernFanService;
import com.cloud.kicc.system.api.entity.Dept;
import com.cloud.kicc.system.api.entity.User;
import com.cloud.kicc.system.api.entity.UserRole;
import com.cloud.kicc.system.api.enums.UserTypeEnum;
import com.cloud.kicc.system.service.*;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -49,6 +53,7 @@ public class AppServiceImpl implements AppService { @@ -49,6 +53,7 @@ public class AppServiceImpl implements AppService {
private final DeptService deptService;
private final UserRoleService userRoleService;
private final ISsoUserService iSsoUserService;
private final RemotePushConcernFanService remotePushConcernFanService;
/**
* 发送手机验证码
@ -90,7 +95,7 @@ public class AppServiceImpl implements AppService { @@ -90,7 +95,7 @@ public class AppServiceImpl implements AppService {
String execAdminUserId = configService.getValueByKey("app.exec.admin.userId");
KiccUser kiccUser = userService.getUserById(execAdminUserId);
Optional.ofNullable(kiccUser).orElseThrow(() -> new CheckedException("当前系统管理执行用户无效请重新在参数管理中配置!"));
String initUserType = configService.getValueByKey("app.init.deptId");
String initUserType = configService.getValueByKey("app.init.normal.userType");
String initTenantId = configService.getValueByKey("app.init.tenantId");
String initRoleIds = configService.getValueByKey("app.init.roleIds");
String initPassword = configService.getValueByKey("appid.password");
@ -135,6 +140,11 @@ public class AppServiceImpl implements AppService { @@ -135,6 +140,11 @@ public class AppServiceImpl implements AppService {
ur.setTenantId(initTenantId);
return ur;
}).collect(Collectors.toList()));
// 创建系统中的用户强制关联内部企业
List<User> enterpriseUserList = userService.list(Wrappers.<User>lambdaQuery().in(User::getUserType, UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.bindConcernEnterpriseUser(user.getId(), enterpriseUserList);
// 处理原密码给到APP自动一键登陆
ssoUser.setPassword(initPassword);
return ssoUser;

21
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java

@ -5,16 +5,19 @@ import cn.hutool.core.util.ArrayUtil; @@ -5,16 +5,19 @@ import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cloud.kicc.common.core.constant.SecurityConstants;
import com.cloud.kicc.common.core.exception.CheckedException;
import com.cloud.kicc.common.data.entity.CasUser;
import com.cloud.kicc.common.data.entity.KiccUser;
import com.cloud.kicc.common.security.util.SecurityUtils;
import com.cloud.kicc.commonbiz.api.feign.RemotePushConcernFanService;
import com.cloud.kicc.system.api.entity.Dept;
import com.cloud.kicc.system.api.entity.Role;
import com.cloud.kicc.system.api.entity.User;
import com.cloud.kicc.system.api.entity.UserRole;
import com.cloud.kicc.system.api.enums.UserTypeEnum;
import com.cloud.kicc.system.mapper.UserMapper;
import com.cloud.kicc.system.service.*;
import lombok.AllArgsConstructor;
@ -54,6 +57,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us @@ -54,6 +57,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
private final MenuService menuService;
private final TenantService tenantService;
private final TokenStore tokenStore;
private final RemotePushConcernFanService remotePushConcernFanService;
@Override
@Transactional(rollbackFor = Exception.class)
@ -232,4 +236,21 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us @@ -232,4 +236,21 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
return baseMapper.getUserByParamList(MapUtil.<String, Object>builder("phone", phone).build());
}
@Override
public void appPushBindEnterpriseInnerUser(KiccUser user) {
// fixme: 推送.APP相关
// 企业内部用户推送类型数据同步
if (StrUtil.equals(user.getUserType(), UserTypeEnum.INTERNAL_USER.getValue())) {
List<User> userList = super.list(Wrappers.<User>lambdaQuery()
.ne(User::getId, SecurityUtils.getUser().getId())
.notIn(User::getUserType, UserTypeEnum.ENTERPRISE_USER.getValue(), UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.enterpriseUserFanSave(user.getId(), userList);
}
// 创建系统中的用户强制关联内部企业
if (!ArrayUtil.contains(new String[]{ UserTypeEnum.ENTERPRISE_USER.getValue(), UserTypeEnum.INTERNAL_USER.getValue() }, SecurityUtils.<KiccUser>getUser().getUserType())) {
List<User> enterpriseUserList = super.list(Wrappers.<User>lambdaQuery().in(User::getUserType, UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.bindConcernEnterpriseUser(user.getId(), enterpriseUserList);
}
}
}

Loading…
Cancel
Save