新增院校时候,创建院校管理员用户

beetlsql3-dev
Mlxa0324 2 years ago
parent 306c52e443
commit 469357d1d9

@ -7,12 +7,13 @@ package com.ibeetl.admin.core.enums;
public enum MenuEnums { public enum MenuEnums {
// 岗位类型 // 岗位类型
JT_01("操作岗位"), JT_01("管理岗位"),
JT_02("操作岗位"), JT_02("操作岗位"),
// 管理岗位子类型 // 管理岗位子类型
JT_S_01("系统管理员"), JT_S_01("系统管理员"),
JT_S_02("教师"), JT_S_02("教师"),
JT_S_04("院校管理员"),
// 操作岗位子类型 // 操作岗位子类型
JT_S_03("学生"); JT_S_03("学生");

@ -1,24 +1,29 @@
package com.ibeetl.admin.core.service; package com.ibeetl.admin.core.service;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.ReflectUtil; import cn.hutool.core.util.ReflectUtil;
import com.ibeetl.admin.core.conf.PasswordConfig.PasswordEncryptService; import com.ibeetl.admin.core.conf.PasswordConfig.PasswordEncryptService;
import com.ibeetl.admin.core.dao.CoreOrgDao; import com.ibeetl.admin.core.dao.CoreOrgDao;
import com.ibeetl.admin.core.dao.CoreUserDao; import com.ibeetl.admin.core.dao.CoreUserDao;
import com.ibeetl.admin.core.entity.CoreOrg; import com.ibeetl.admin.core.entity.CoreOrg;
import com.ibeetl.admin.core.entity.CoreUser; import com.ibeetl.admin.core.entity.CoreUser;
import com.ibeetl.admin.core.enums.MenuEnums;
import com.ibeetl.admin.core.rbac.UserLoginInfo; import com.ibeetl.admin.core.rbac.UserLoginInfo;
import com.ibeetl.admin.core.util.PlatformException; import com.ibeetl.admin.core.util.PlatformException;
import com.ibeetl.admin.core.util.enums.DelFlagEnum; import com.ibeetl.admin.core.util.enums.DelFlagEnum;
import com.ibeetl.admin.core.util.enums.GeneralStateEnum;
import org.beetl.sql.core.SQLManager; import org.beetl.sql.core.SQLManager;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.function.Consumer; import java.util.function.Consumer;
import static com.ibeetl.admin.core.util.enums.GeneralStateEnum.ENABLE;
@Service @Service
@Transactional @Transactional
public class CoreUserService { public class CoreUserService {
@ -37,13 +42,13 @@ public class CoreUserService {
CoreUser query = new CoreUser(); CoreUser query = new CoreUser();
query.setCode(userName); query.setCode(userName);
query.setPassword(passwordEncryptService.password(password)); query.setPassword(passwordEncryptService.password(password));
query.setState(GeneralStateEnum.ENABLE.getValue()); query.setState(ENABLE.getValue());
CoreUser user =userDao.createLambdaQuery().andEq(CoreUser::getCode,userName). CoreUser user =userDao.createLambdaQuery().andEq(CoreUser::getCode,userName).
andEq(CoreUser::getPassword, passwordEncryptService.password(password)).single(); andEq(CoreUser::getPassword, passwordEncryptService.password(password)).single();
if(user==null) { if(user==null) {
throw new PlatformException("用户"+userName+"不存在或者密码错误"); throw new PlatformException("用户"+userName+"不存在或者密码错误");
} }
if(!user.getState().equals(GeneralStateEnum.ENABLE.getValue())){ if(!user.getState().equals(ENABLE.getValue())){
throw new PlatformException("用户"+userName+"已经失效"); throw new PlatformException("用户"+userName+"已经失效");
} }
if(user.getDelFlag()==DelFlagEnum.DELETED.getValue()) { if(user.getDelFlag()==DelFlagEnum.DELETED.getValue()) {
@ -57,6 +62,33 @@ public class CoreUserService {
return loginInfo; return loginInfo;
} }
/**
*
*
* @param userCode Code
* @param password
* @param orgId ID
* @param jobType0
* @param jobType1
*/
public Long createUserBySomeParams(String userCode, String password, Long orgId, MenuEnums jobType0, MenuEnums jobType1 ) {
Assert.isTrue(ObjectUtil.isAllNotEmpty(userCode, password, orgId, jobType0, jobType1), "所有参数均为必传!");
CoreUser user = new CoreUser();
user.setName(userCode);
user.setCode(userCode);
user.setPassword(passwordEncryptService.password(password));
user.setState(ENABLE.getValue());
user.setCreateTime(new Date());
user.setDelFlag(0);
user.setJobType0(jobType0.name());
user.setJobType1(jobType1.name());
user.setState(ENABLE.getValue());
user.setOrgId(orgId);
userDao.insert(user);
return user.getId();
}
public List<CoreOrg> getUserOrg(long userId,long orgId){ public List<CoreOrg> getUserOrg(long userId,long orgId){
List<CoreOrg> orgs = orgDao.queryOrgByUser(userId); List<CoreOrg> orgs = orgDao.queryOrgByUser(userId);

@ -70,7 +70,7 @@ public class UniversitiesColleges extends BaseEntity{
// 院校默认管理员用户ID // 院校默认管理员用户ID
@Dict(type = "core_user.CODE.1=1") @Dict(type = "core_user.CODE.1=1")
private String universitiesCdollegesDefaultAdminUserId; private Long universitiesCdollegesDefaultAdminUserId;
// @FetchSql("select * from core_user where id = #universitiesCdollegesDefaultAdminUserId# ") // @FetchSql("select * from core_user where id = #universitiesCdollegesDefaultAdminUserId# ")
// private CoreUser defaultAdminUser; // private CoreUser defaultAdminUser;
@ -263,11 +263,11 @@ public class UniversitiesColleges extends BaseEntity{
this.universitiesCollegesAuthCode = universitiesCollegesAuthCode; this.universitiesCollegesAuthCode = universitiesCollegesAuthCode;
} }
public String getUniversitiesCdollegesDefaultAdminUserId() { public Long getUniversitiesCdollegesDefaultAdminUserId() {
return universitiesCdollegesDefaultAdminUserId; return universitiesCdollegesDefaultAdminUserId;
} }
public void setUniversitiesCdollegesDefaultAdminUserId(String universitiesCdollegesDefaultAdminUserId) { public void setUniversitiesCdollegesDefaultAdminUserId(Long universitiesCdollegesDefaultAdminUserId) {
this.universitiesCdollegesDefaultAdminUserId = universitiesCdollegesDefaultAdminUserId; this.universitiesCdollegesDefaultAdminUserId = universitiesCdollegesDefaultAdminUserId;
} }

@ -0,0 +1,33 @@
package com.ibeetl.jlw.entity.dto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* <p>
*
* </p>
*
* @author mlx
* @date 2022/10/14
* @modified
*/
@Data
public class CreateUserDTO {
@NotBlank(message = "用户Code不能为空")
private String userCode;
@NotBlank(message = "用户密码不能为空!")
private String password;
// @NotNull(message = "用户机构ID不能为空")
// private Long orgId;
// @NotNull(message = "岗位不能为空!")
// private MenuEnums jobType0;
//
// @NotNull(message = "子岗位不能为空!")
// private MenuEnums jobType1;
}

@ -5,15 +5,18 @@ import cn.hutool.core.util.RandomUtil;
import com.ibeetl.admin.console.service.OrgConsoleService; import com.ibeetl.admin.console.service.OrgConsoleService;
import com.ibeetl.admin.core.entity.CoreOrg; import com.ibeetl.admin.core.entity.CoreOrg;
import com.ibeetl.admin.core.service.CoreBaseService; import com.ibeetl.admin.core.service.CoreBaseService;
import com.ibeetl.admin.core.service.CoreUserService;
import com.ibeetl.jlw.dao.UniversitiesCollegesDao; import com.ibeetl.jlw.dao.UniversitiesCollegesDao;
import com.ibeetl.jlw.entity.SchoolClass; import com.ibeetl.jlw.entity.SchoolClass;
import com.ibeetl.jlw.entity.UniversitiesColleges; import com.ibeetl.jlw.entity.UniversitiesColleges;
import com.ibeetl.jlw.entity.dto.CreateUserDTO;
import com.ibeetl.jlw.web.query.SchoolClassQuery; import com.ibeetl.jlw.web.query.SchoolClassQuery;
import com.ibeetl.jlw.web.query.UniversitiesCollegesQuery; import com.ibeetl.jlw.web.query.UniversitiesCollegesQuery;
import org.beetl.sql.core.SqlId; import org.beetl.sql.core.SqlId;
import org.beetl.sql.core.engine.PageQuery; import org.beetl.sql.core.engine.PageQuery;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Date; import java.util.Date;
@ -21,12 +24,16 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.ibeetl.admin.core.enums.MenuEnums.JT_01;
import static com.ibeetl.admin.core.enums.MenuEnums.JT_S_04;
/** /**
* UniversitiesColleges Service * UniversitiesColleges Service
*/ */
@Service @Service
@Transactional @Transactional
@Validated
public class UniversitiesCollegesService extends CoreBaseService<UniversitiesColleges>{ public class UniversitiesCollegesService extends CoreBaseService<UniversitiesColleges>{
@Resource private UniversitiesCollegesDao universitiesCollegesDao; @Resource private UniversitiesCollegesDao universitiesCollegesDao;
@ -34,6 +41,7 @@ public class UniversitiesCollegesService extends CoreBaseService<UniversitiesCol
@Resource private SchoolClassService schoolClassService; @Resource private SchoolClassService schoolClassService;
@Resource private OrgConsoleService orgConsoleService; @Resource private OrgConsoleService orgConsoleService;
@Resource private CoreUserService coreUserService;
public PageQuery<UniversitiesColleges>queryByCondition(PageQuery query){ public PageQuery<UniversitiesColleges>queryByCondition(PageQuery query){
PageQuery ret = universitiesCollegesDao.queryByCondition(query); PageQuery ret = universitiesCollegesDao.queryByCondition(query);
@ -69,6 +77,9 @@ public class UniversitiesCollegesService extends CoreBaseService<UniversitiesCol
coreOrg.setCreateTime(new Date()); coreOrg.setCreateTime(new Date());
orgConsoleService.insert(coreOrg); orgConsoleService.insert(coreOrg);
// 机构ID
universitiesColleges.setOrgId(coreOrg.getId());
UniversitiesColleges u = new UniversitiesColleges(); UniversitiesColleges u = new UniversitiesColleges();
u.setUniversitiesCollegesId(universitiesColleges.getUniversitiesCollegesId()); u.setUniversitiesCollegesId(universitiesColleges.getUniversitiesCollegesId());
u.setOrgId(coreOrg.getId()); u.setOrgId(coreOrg.getId());
@ -79,6 +90,29 @@ public class UniversitiesCollegesService extends CoreBaseService<UniversitiesCol
return true; return true;
} }
/**
*
*
*
* @param universitiesColleges
* @param dto
*/
public void addAndCreateCoreUser(UniversitiesColleges universitiesColleges, @Validated CreateUserDTO dto) {
// 添加院校信息,添加机构信息,修改院校的授权码
add(universitiesColleges);
// 默认创建院校管理员权限的用户
Long defaultAdminUserId = coreUserService.createUserBySomeParams(
dto.getUserCode(), dto.getPassword(), universitiesColleges.getOrgId(), JT_01, JT_S_04);
// 用户添加成功后将用户ID 回传给该学校的默认管理员字段
UniversitiesColleges u = new UniversitiesColleges();
u.setUniversitiesCollegesId(universitiesColleges.getUniversitiesCollegesId());
u.setUniversitiesCdollegesDefaultAdminUserId(defaultAdminUserId);
universitiesCollegesDao.updateTemplateById(u);
}
public boolean edit(UniversitiesColleges universitiesColleges){ public boolean edit(UniversitiesColleges universitiesColleges){
universitiesCollegesDao.updateTemplateById(universitiesColleges); universitiesCollegesDao.updateTemplateById(universitiesColleges);

@ -10,6 +10,7 @@ import com.ibeetl.admin.core.service.CoreUserService;
import com.ibeetl.admin.core.util.HttpRequestLocal; import com.ibeetl.admin.core.util.HttpRequestLocal;
import com.ibeetl.admin.core.web.JsonResult; import com.ibeetl.admin.core.web.JsonResult;
import com.ibeetl.jlw.entity.UniversitiesColleges; import com.ibeetl.jlw.entity.UniversitiesColleges;
import com.ibeetl.jlw.entity.dto.CreateUserDTO;
import com.ibeetl.jlw.service.UniversitiesCollegesService; import com.ibeetl.jlw.service.UniversitiesCollegesService;
import com.ibeetl.jlw.web.query.UniversitiesCollegesQuery; import com.ibeetl.jlw.web.query.UniversitiesCollegesQuery;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
@ -110,13 +111,14 @@ public class UniversitiesCollegesController{
@PostMapping(MODEL + "/add.json") @PostMapping(MODEL + "/add.json")
@Function("universitiesColleges.add") @Function("universitiesColleges.add")
@ResponseBody @ResponseBody
public JsonResult add(@Validated(ValidateConfig.ADD.class)UniversitiesColleges universitiesColleges, BindingResult result){ public JsonResult add(@Validated(ValidateConfig.ADD.class)UniversitiesColleges universitiesColleges,
@Validated CreateUserDTO createUserDTO, BindingResult result){
if(result.hasErrors()){ if(result.hasErrors()){
return JsonResult.failMessage(result); return JsonResult.failMessage(result);
}else{ }else{
universitiesColleges.setAddTime(new Date()); universitiesColleges.setAddTime(new Date());
universitiesColleges.setUniversitiesCollegesStatus(1); universitiesColleges.setUniversitiesCollegesStatus(1);
universitiesCollegesService.add(universitiesColleges); universitiesCollegesService.addAndCreateCoreUser(universitiesColleges, createUserDTO);
platformService.clearOrgCache(); platformService.clearOrgCache();
return JsonResult.success(); return JsonResult.success();
} }

@ -95,7 +95,7 @@
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label"><span class="req">*</span>用户名:</label> <label class="layui-form-label"><span class="req">*</span>用户名:</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input type="text" name="userName" value="${universitiesColleges.universitiesCdollegesDefaultAdminUserIdText!}" class="layui-input" > <input type="text" name="userCode" value="${universitiesColleges.universitiesCdollegesDefaultAdminUserIdText!}" class="layui-input" >
</div> </div>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">

Loading…
Cancel
Save