给用户模块增加检查当前机构是否存在经理
This commit is contained in:
@@ -67,6 +67,9 @@ public class ExceptionConstants {
|
|||||||
//租户不能被删除
|
//租户不能被删除
|
||||||
public static final int USER_LIMIT_TENANT_DELETE_CODE = 500008;
|
public static final int USER_LIMIT_TENANT_DELETE_CODE = 500008;
|
||||||
public static final String USER_LIMIT_TENANT_DELETE_MSG = "抱歉,租户不能被删除";
|
public static final String USER_LIMIT_TENANT_DELETE_MSG = "抱歉,租户不能被删除";
|
||||||
|
//当前机构已经存在经理
|
||||||
|
public static final int USER_LEADER_IS_EXIST_CODE = 500009;
|
||||||
|
public static final String USER_LEADER_IS_EXIST_MSG = "抱歉,当前机构已经存在经理";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色信息
|
* 角色信息
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ public class UserEx extends User{
|
|||||||
|
|
||||||
private String expireTime;
|
private String expireTime;
|
||||||
|
|
||||||
|
private String leaderFlagStr;
|
||||||
|
|
||||||
public String getOrgAbr() {
|
public String getOrgAbr() {
|
||||||
return orgAbr;
|
return orgAbr;
|
||||||
}
|
}
|
||||||
@@ -99,4 +101,12 @@ public class UserEx extends User{
|
|||||||
public void setExpireTime(String expireTime) {
|
public void setExpireTime(String expireTime) {
|
||||||
this.expireTime = expireTime;
|
this.expireTime = expireTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getLeaderFlagStr() {
|
||||||
|
return leaderFlagStr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLeaderFlagStr(String leaderFlagStr) {
|
||||||
|
this.leaderFlagStr = leaderFlagStr;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,4 +32,8 @@ public interface UserMapperEx {
|
|||||||
List<TreeNodeEx> getNextNodeTree(Map<String, Object> parameterMap);
|
List<TreeNodeEx> getNextNodeTree(Map<String, Object> parameterMap);
|
||||||
|
|
||||||
void disableUserByLimit(@Param("tenantId") Long tenantId);
|
void disableUserByLimit(@Param("tenantId") Long tenantId);
|
||||||
|
|
||||||
|
List<User> getListByOrgaId(
|
||||||
|
@Param("id") Long id,
|
||||||
|
@Param("orgaId") Long orgaId);
|
||||||
}
|
}
|
||||||
@@ -110,6 +110,14 @@ public class UserService {
|
|||||||
userType = "普通";
|
userType = "普通";
|
||||||
}
|
}
|
||||||
ue.setUserType(userType);
|
ue.setUserType(userType);
|
||||||
|
//是否经理
|
||||||
|
String leaderFlagStr = "";
|
||||||
|
if("1".equals(ue.getLeaderFlag())) {
|
||||||
|
leaderFlagStr = "是";
|
||||||
|
} else {
|
||||||
|
leaderFlagStr = "否";
|
||||||
|
}
|
||||||
|
ue.setLeaderFlagStr(leaderFlagStr);
|
||||||
}
|
}
|
||||||
}catch(Exception e){
|
}catch(Exception e){
|
||||||
JshException.readFail(logger, e);
|
JshException.readFail(logger, e);
|
||||||
@@ -409,6 +417,14 @@ public class UserService {
|
|||||||
//如果没有选择机构,就不建机构和用户的关联关系
|
//如果没有选择机构,就不建机构和用户的关联关系
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if(ue.getOrgaId()!=null && "1".equals(ue.getLeaderFlag())){
|
||||||
|
//检查当前机构是否存在经理
|
||||||
|
List<User> checkList = userMapperEx.getListByOrgaId(ue.getId(), ue.getOrgaId());
|
||||||
|
if(checkList.size()>0) {
|
||||||
|
throw new BusinessRunTimeException(ExceptionConstants.USER_LEADER_IS_EXIST_CODE,
|
||||||
|
ExceptionConstants.USER_LEADER_IS_EXIST_MSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
//新增用户和机构关联关系
|
//新增用户和机构关联关系
|
||||||
OrgaUserRel oul=new OrgaUserRel();
|
OrgaUserRel oul=new OrgaUserRel();
|
||||||
//机构id
|
//机构id
|
||||||
@@ -554,6 +570,14 @@ public class UserService {
|
|||||||
//如果没有选择机构,就不建机构和用户的关联关系
|
//如果没有选择机构,就不建机构和用户的关联关系
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if(ue.getOrgaId()!=null && "1".equals(ue.getLeaderFlag())){
|
||||||
|
//检查当前机构是否存在经理
|
||||||
|
List<User> checkList = userMapperEx.getListByOrgaId(ue.getId(), ue.getOrgaId());
|
||||||
|
if(checkList.size()>0) {
|
||||||
|
throw new BusinessRunTimeException(ExceptionConstants.USER_LEADER_IS_EXIST_CODE,
|
||||||
|
ExceptionConstants.USER_LEADER_IS_EXIST_MSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
//更新用户和机构关联关系
|
//更新用户和机构关联关系
|
||||||
OrgaUserRel oul = new OrgaUserRel();
|
OrgaUserRel oul = new OrgaUserRel();
|
||||||
//机构和用户关联关系id
|
//机构和用户关联关系id
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
left join jsh_role r on ub.value=concat("[",r.id,"]") and ifnull(r.delete_flag,'0') !='1'
|
left join jsh_role r on ub.value=concat("[",r.id,"]") and ifnull(r.delete_flag,'0') !='1'
|
||||||
where ub.type='UserRole' and ub.key_id=tb.id limit 0,1) roleName
|
where ub.type='UserRole' and ub.key_id=tb.id limit 0,1) roleName
|
||||||
from (
|
from (
|
||||||
select user.id, user.username, user.login_name, user.position, user.email, user.phonenum,
|
select user.id, user.username, user.login_name, user.position, user.leader_flag, user.email, user.phonenum,
|
||||||
user.description, user.remark,user.isystem,org.id as orgaId,user.tenant_id,user.status,org.org_abr,
|
user.description, user.remark,user.isystem,org.id as orgaId,user.tenant_id,user.status,org.org_abr,
|
||||||
rel.user_blng_orga_dspl_seq,rel.id as orgaUserRelId
|
rel.user_blng_orga_dspl_seq,rel.id as orgaUserRelId
|
||||||
FROM jsh_user user
|
FROM jsh_user user
|
||||||
@@ -135,4 +135,13 @@
|
|||||||
update jsh_user set Status='2'
|
update jsh_user set Status='2'
|
||||||
where tenant_id=#{tenantId} and id!=#{tenantId} and Status!='1'
|
where tenant_id=#{tenantId} and id!=#{tenantId} and Status!='1'
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<select id="getListByOrgaId" resultType="com.jsh.erp.datasource.entities.User">
|
||||||
|
select u.*,our.orga_id from jsh_user u
|
||||||
|
left join jsh_orga_user_rel our on u.id=our.user_id
|
||||||
|
where u.leader_flag='1' and orga_id= #{orgaId}
|
||||||
|
<if test="id != null">
|
||||||
|
and u.id != #{id}
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
Reference in New Issue
Block a user