add:机构管理增加根据部门批量配置岗位功能
This commit is contained in:
@@ -25,6 +25,6 @@ public interface SarStandardWarningDao extends BaseMapper<EarlyWarningEO> {
|
|||||||
|
|
||||||
public List<WarningDate> getWarningDateOfItems(TermDTO term);
|
public List<WarningDate> getWarningDateOfItems(TermDTO term);
|
||||||
|
|
||||||
public String getStandTextStateByStandId(String standId);
|
public String getStandTextStateByStandId(@Param(value = "standId") String standId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,6 +65,13 @@ public class TsUserController extends BaseController<TsUser> {
|
|||||||
return tsUserService.setPositionBatch(userPositionVO);
|
return tsUserService.setPositionBatch(userPositionVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation("配置岗位")
|
||||||
|
@PostMapping("/positionBatchByOrgId")
|
||||||
|
public ResponseMessage<Object> setPositionBatchByOrgId(@Valid @RequestBody UserPositionBatchVO userPositionVO){
|
||||||
|
return tsUserService.setPositionBatchByOrgId(userPositionVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@ApiOperation("查询当前登录用户权限")
|
@ApiOperation("查询当前登录用户权限")
|
||||||
@GetMapping("/menu")
|
@GetMapping("/menu")
|
||||||
public ResponseMessage<List<SarMenu>> getMenu(){
|
public ResponseMessage<List<SarMenu>> getMenu(){
|
||||||
|
|||||||
@@ -51,6 +51,8 @@ public interface TsUserDao extends BaseMapper<TsUser> {
|
|||||||
|
|
||||||
List<TsUser> userUnderInstitution(@Param("start")Integer start, @Param("end")Integer end,@Param("TsUser") TsUser tsUser,@Param("ids") List<String> ids);
|
List<TsUser> userUnderInstitution(@Param("start")Integer start, @Param("end")Integer end,@Param("TsUser") TsUser tsUser,@Param("ids") List<String> ids);
|
||||||
|
|
||||||
|
List<TsUser> getUserUnderInstitutionAll(@Param("ids") List<String> ids);
|
||||||
|
|
||||||
Integer getUserAndPositionCount(@Param("TsUser") TsUser tsUser);
|
Integer getUserAndPositionCount(@Param("TsUser") TsUser tsUser);
|
||||||
|
|
||||||
Integer userUnderInstitutionCount(@Param("TsUser") TsUser tsUser,@Param("ids") List<String> ids);
|
Integer userUnderInstitutionCount(@Param("TsUser") TsUser tsUser,@Param("ids") List<String> ids);
|
||||||
|
|||||||
@@ -11,4 +11,7 @@ public class UserPositionBatchVO {
|
|||||||
private List<String> userId;
|
private List<String> userId;
|
||||||
@NotNull(message = "positionIds不能为空")
|
@NotNull(message = "positionIds不能为空")
|
||||||
private List<String> positionIds;
|
private List<String> positionIds;
|
||||||
|
@NotNull(message = "orgId不能为空")
|
||||||
|
private String orgId;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,6 +47,8 @@ public interface ITsUserService extends IService<TsUser> {
|
|||||||
|
|
||||||
ResponseMessage<Object> setPositionBatch(UserPositionBatchVO userPositionVO);
|
ResponseMessage<Object> setPositionBatch(UserPositionBatchVO userPositionVO);
|
||||||
|
|
||||||
|
ResponseMessage<Object> setPositionBatchByOrgId(UserPositionBatchVO userPositionVO);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询当前登录的用户权限
|
* 查询当前登录的用户权限
|
||||||
* @return List<SarMenu>
|
* @return List<SarMenu>
|
||||||
|
|||||||
@@ -194,6 +194,71 @@ public class TsUserServiceImpl extends ServiceImpl<TsUserDao, TsUser> implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 配置岗位
|
||||||
|
* @param userPositionVO2:用户、岗位ID
|
||||||
|
* @return ResponseMessage<Object>
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
@Transactional
|
||||||
|
public ResponseMessage<Object> setPositionBatchByOrgId(UserPositionBatchVO userPositionVO2) {
|
||||||
|
|
||||||
|
boolean flag=true;
|
||||||
|
//首先将所有用户查出来
|
||||||
|
List<String> orgIds=new ArrayList<>();
|
||||||
|
orgIds.add(userPositionVO2.getOrgId());
|
||||||
|
List<String> middle=new ArrayList<>();
|
||||||
|
middle.addAll(orgIds);
|
||||||
|
boolean Orgflag=true;
|
||||||
|
while (Orgflag){
|
||||||
|
QueryWrapper<TsInstitution> queryWrapper=new QueryWrapper<>();
|
||||||
|
queryWrapper.in("parent_id",middle);
|
||||||
|
List<TsInstitution> tsmiddle=tsInstitutionService.list(queryWrapper);
|
||||||
|
if (tsmiddle.size()>0){
|
||||||
|
tsmiddle.forEach(tsInstitution -> {
|
||||||
|
middle.add(tsInstitution.getId());
|
||||||
|
});
|
||||||
|
middle.removeAll(orgIds);
|
||||||
|
orgIds.addAll(middle);
|
||||||
|
}else {
|
||||||
|
tsmiddle.forEach(tsInstitution -> {
|
||||||
|
middle.add(tsInstitution.getId());
|
||||||
|
});
|
||||||
|
middle.removeAll(orgIds);
|
||||||
|
orgIds.addAll(middle);
|
||||||
|
Orgflag=false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
orgIds.removeIf(s -> null==s);
|
||||||
|
List<TsUser> allUsers = tsUserDao.getUserUnderInstitutionAll(orgIds);
|
||||||
|
|
||||||
|
for (TsUser user : allUsers) {
|
||||||
|
String userId = user.getUserId();
|
||||||
|
UserPositionVO userPositionVO=new UserPositionVO();
|
||||||
|
userPositionVO.setUserId(userId);
|
||||||
|
userPositionVO.setPositionIds(userPositionVO2.getPositionIds());
|
||||||
|
TsUser tsUser=tsUserDao.selectById(userPositionVO.getUserId());
|
||||||
|
if(tsUser==null){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
List<String> oldPositionIds=tsUserDao.selectPositionIds(userPositionVO.getUserId());
|
||||||
|
Map<String,List<String>> ids= ListUtil.difList(userPositionVO.getPositionIds(),oldPositionIds);
|
||||||
|
List<String> insertIds=ids.get("insert");
|
||||||
|
List<String> deleteIds=ids.get("delete");
|
||||||
|
if(insertIds!=null&&insertIds.size()>0){
|
||||||
|
for(String positionId:insertIds){
|
||||||
|
tsUserDao.addPosition(userPositionVO.getUserId(),positionId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(deleteIds!=null&&deleteIds.size()>0){
|
||||||
|
for(String positionId:deleteIds){
|
||||||
|
tsUserDao.delPosition(userPositionVO.getUserId(),positionId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Result.success();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询当前登录的用户权限
|
* 查询当前登录的用户权限
|
||||||
* @return List<SarMenu>
|
* @return List<SarMenu>
|
||||||
|
|||||||
+1
-1
@@ -121,7 +121,7 @@ select A.* from
|
|||||||
|
|
||||||
|
|
||||||
<select id="getStandTextStateByStandId" resultType="java.lang.String">
|
<select id="getStandTextStateByStandId" resultType="java.lang.String">
|
||||||
SELECT TEXT_STATUS FROM sar_standards_info WHERE ID = #{}
|
SELECT TEXT_STATUS FROM sar_standards_info WHERE ID = #{standId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -48,6 +48,31 @@
|
|||||||
limit #{start},#{end}
|
limit #{start},#{end}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getUserUnderInstitutionAll" resultMap="UserPosition">
|
||||||
|
select u.USID,u.ACCOUNT,u.PASSWORD,u.OPER_USER,u.UNAME,u.SEX,u.USER_SOURCE,u.PHONE,u.EMAIL,u.INSTITUTION_NAME,u.INSTITUTION_ID
|
||||||
|
,u.POSITION_NAME,u.STATE,u.POSITION_ID,u.WORK_NUM,u.EXT_INFO,u.CREATION_TIME,u.MODIFY_TIME,u.VALID_FLAG
|
||||||
|
,u.DISABLE_FLAG,u.UNLOCK_FLAG,u.USER_TYPE,u.SSO_ID,
|
||||||
|
p.id p_id,p.name p_name from ts_user u
|
||||||
|
left join ts_user_position up
|
||||||
|
on u.usid=up.user_id
|
||||||
|
left join ts_position p
|
||||||
|
on up.position_id=p.id
|
||||||
|
where 1=1
|
||||||
|
<if test=" null != ids and ids.size()> 0">
|
||||||
|
and INSTITUTION_ID in
|
||||||
|
<foreach item="id" collection="ids" open="(" separator="," close=")" index="index">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test=" null != ids and ids.size()> 0">
|
||||||
|
order by field(INSTITUTION_ID,
|
||||||
|
<foreach item="id" collection="ids" open="" separator="," close="" index="index">
|
||||||
|
#{id}
|
||||||
|
</foreach>)
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<select id="userUnderInstitution" parameterType="com.adc.da.slrs.sarUser.entity.TsUser" resultMap="UserPosition">
|
<select id="userUnderInstitution" parameterType="com.adc.da.slrs.sarUser.entity.TsUser" resultMap="UserPosition">
|
||||||
select u.USID,u.ACCOUNT,u.PASSWORD,u.OPER_USER,u.UNAME,u.SEX,u.USER_SOURCE,u.PHONE,u.EMAIL,u.INSTITUTION_NAME,u.INSTITUTION_ID
|
select u.USID,u.ACCOUNT,u.PASSWORD,u.OPER_USER,u.UNAME,u.SEX,u.USER_SOURCE,u.PHONE,u.EMAIL,u.INSTITUTION_NAME,u.INSTITUTION_ID
|
||||||
,u.POSITION_NAME,u.STATE,u.POSITION_ID,u.WORK_NUM,u.EXT_INFO,u.CREATION_TIME,u.MODIFY_TIME,u.VALID_FLAG
|
,u.POSITION_NAME,u.STATE,u.POSITION_ID,u.WORK_NUM,u.EXT_INFO,u.CREATION_TIME,u.MODIFY_TIME,u.VALID_FLAG
|
||||||
|
|||||||
Reference in New Issue
Block a user