|
@@ -6,6 +6,7 @@ import cn.hutool.extra.pinyin.PinyinUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
|
|
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
@@ -94,6 +95,7 @@ public class DingServiceImpl implements DingService {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ @DSTransactional
|
|
|
@Override
|
|
|
public String getUserToken(GetUserTokenDto dto) {
|
|
|
DynamicDataSourceContextHolder.push(SourceConstant.BASE);
|
|
@@ -105,6 +107,10 @@ public class DingServiceImpl implements DingService {
|
|
|
TenantInfo tenantInfo = tenantInfoService.getOne(Wrappers.<TenantInfo>lambdaQuery()
|
|
|
.eq(TenantInfo::getCorpid, dto.getCorpId()));
|
|
|
|
|
|
+ if (tenantInfo == null) {
|
|
|
+ throw new ServiceException("未知corpId");
|
|
|
+ }
|
|
|
+
|
|
|
sysUser = new SysUser();
|
|
|
OapiV2UserGetResponse.UserGetResponse userDetail = DingUtil.getUserDetail(dto.getCorpId(), userid);
|
|
|
List<Long> deptIdList = userDetail.getDeptIdList();
|
|
@@ -115,12 +121,13 @@ public class DingServiceImpl implements DingService {
|
|
|
sysUser.setDeptId(sysDept.getDeptId());
|
|
|
}
|
|
|
}
|
|
|
+ sysUser.setDdUserId(userid);
|
|
|
sysUser.setTenantId(tenantInfo.getTenantId());
|
|
|
sysUser.setUserName("admin");
|
|
|
sysUser.setNickName(userInfo.getName());
|
|
|
sysUser.setPassword(SecurityUtils.encryptPassword(RandomUtil.randomString(6)));
|
|
|
sysUser.setStatus("0");
|
|
|
- sysUser.setCreateBy(SecurityUtils.getUsername());
|
|
|
+ sysUser.setCreateBy("admin");
|
|
|
sysUser.setCreateTime(new Date());
|
|
|
sysUserService.save(sysUser);
|
|
|
|
|
@@ -225,14 +232,11 @@ public class DingServiceImpl implements DingService {
|
|
|
List<String> tenantIdList = list.stream().map(TenantInfo::getTenantId).collect(Collectors.toList());
|
|
|
|
|
|
if (list.size() > 0) {
|
|
|
-
|
|
|
String tempTenantId;
|
|
|
do {
|
|
|
tempTenantId = tenantId + "-" + RandomUtil.randomString(3);
|
|
|
} while (!tenantIdList.contains(tempTenantId));
|
|
|
-
|
|
|
tenantId = tempTenantId;
|
|
|
-
|
|
|
}
|
|
|
|
|
|
// 创建租户
|