|
|
@@ -13,6 +13,7 @@ import cn.iocoder.yudao.framework.datapermission.core.annotation.DataPermission;
|
|
|
import cn.iocoder.yudao.framework.tenant.config.TenantProperties;
|
|
|
import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
|
|
|
import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils;
|
|
|
+import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
|
|
|
@@ -26,6 +27,7 @@ import cn.iocoder.yudao.module.system.dal.dataobject.tenant.TenantPackageDO;
|
|
|
import cn.iocoder.yudao.module.system.dal.mysql.tenant.TenantMapper;
|
|
|
import cn.iocoder.yudao.module.system.enums.permission.RoleCodeEnum;
|
|
|
import cn.iocoder.yudao.module.system.enums.permission.RoleTypeEnum;
|
|
|
+import cn.iocoder.yudao.module.system.service.dept.DeptService;
|
|
|
import cn.iocoder.yudao.module.system.service.dict.DictDataService;
|
|
|
import cn.iocoder.yudao.module.system.service.dict.DictTypeService;
|
|
|
import cn.iocoder.yudao.module.system.service.permission.MenuService;
|
|
|
@@ -36,13 +38,13 @@ import cn.iocoder.yudao.module.system.service.tenant.handler.TenantMenuHandler;
|
|
|
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
|
|
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import jakarta.annotation.Resource;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
|
|
|
-import jakarta.annotation.Resource;
|
|
|
import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
import java.util.Optional;
|
|
|
@@ -80,6 +82,8 @@ public class TenantServiceImpl implements TenantService {
|
|
|
@Resource
|
|
|
private MenuService menuService;
|
|
|
@Resource
|
|
|
+ private DeptService deptService;
|
|
|
+ @Resource
|
|
|
private DictTypeService dictTypeService;
|
|
|
@Resource
|
|
|
private DictDataService dictDataService;
|
|
|
@@ -139,6 +143,8 @@ public class TenantServiceImpl implements TenantService {
|
|
|
Long roleId = createRole(tenantPackage);
|
|
|
// 创建用户,并分配角色
|
|
|
Long userId = createUser(roleId, createReqVO);
|
|
|
+ // 创建部门
|
|
|
+ createDept(createReqVO);
|
|
|
// 修改租户的管理员
|
|
|
tenantMapper.updateById(new TenantDO().setId(tenant.getId()).setContactUserId(userId));
|
|
|
});
|
|
|
@@ -160,6 +166,53 @@ public class TenantServiceImpl implements TenantService {
|
|
|
return userId;
|
|
|
}
|
|
|
|
|
|
+ private void createDept(TenantSaveReqVO createReqVO) {
|
|
|
+ // 顶级
|
|
|
+ DeptSaveReqVO deptSaveReqVO = new DeptSaveReqVO();
|
|
|
+ deptSaveReqVO.setName(createReqVO.getName());
|
|
|
+ deptSaveReqVO.setParentId(0L);
|
|
|
+ deptSaveReqVO.setSort(0);
|
|
|
+ deptSaveReqVO.setStatus(0);
|
|
|
+ deptSaveReqVO.setCode("top");
|
|
|
+ Long topDeptId = deptService.createDept(deptSaveReqVO);
|
|
|
+
|
|
|
+ // 虚拟
|
|
|
+ /* DeptSaveReqVO deptSaveReqVO1 = new DeptSaveReqVO();
|
|
|
+ deptSaveReqVO1.setName("作业(虚拟)分组");
|
|
|
+ deptSaveReqVO1.setParentId(topDeptId);
|
|
|
+ deptSaveReqVO1.setSort(1);
|
|
|
+ deptSaveReqVO1.setStatus(0);
|
|
|
+ deptSaveReqVO1.setCode("jtdept");
|
|
|
+ Long deptId1 = deptService.createDept(deptSaveReqVO1);
|
|
|
+
|
|
|
+ // 上锁
|
|
|
+ DeptSaveReqVO deptSaveReqVO2 = new DeptSaveReqVO();
|
|
|
+ deptSaveReqVO2.setName("上锁");
|
|
|
+ deptSaveReqVO2.setParentId(deptId1);
|
|
|
+ deptSaveReqVO2.setSort(1);
|
|
|
+ deptSaveReqVO2.setStatus(0);
|
|
|
+ deptSaveReqVO2.setCode("jtlocker");
|
|
|
+ deptService.createDept(deptSaveReqVO2);
|
|
|
+
|
|
|
+ // 共锁
|
|
|
+ DeptSaveReqVO deptSaveReqVO3 = new DeptSaveReqVO();
|
|
|
+ deptSaveReqVO3.setName("共锁");
|
|
|
+ deptSaveReqVO3.setParentId(deptId1);
|
|
|
+ deptSaveReqVO3.setSort(1);
|
|
|
+ deptSaveReqVO3.setStatus(0);
|
|
|
+ deptSaveReqVO3.setCode("jtcolocker");
|
|
|
+ deptService.createDept(deptSaveReqVO3);
|
|
|
+
|
|
|
+ // 参与人
|
|
|
+ DeptSaveReqVO deptSaveReqVO4 = new DeptSaveReqVO();
|
|
|
+ deptSaveReqVO4.setName("参与人");
|
|
|
+ deptSaveReqVO4.setParentId(deptId1);
|
|
|
+ deptSaveReqVO4.setSort(1);
|
|
|
+ deptSaveReqVO4.setStatus(0);
|
|
|
+ deptSaveReqVO4.setCode("jtdrawer");
|
|
|
+ deptService.createDept(deptSaveReqVO4);*/
|
|
|
+ }
|
|
|
+
|
|
|
private Long createRole(TenantPackageDO tenantPackage) {
|
|
|
// 创建角色
|
|
|
RoleSaveReqVO reqVO = new RoleSaveReqVO();
|