Commit 8428183f authored by zhangwanglin's avatar zhangwanglin

Merge remote-tracking branch 'origin/dev_ch_master' into dev_nursing_records_20230214

parents cc0bf2da c80f0408
...@@ -14,6 +14,8 @@ ...@@ -14,6 +14,8 @@
disable.real_name realName, disable.real_name realName,
task.fcd fcd, task.fcd fcd,
disable.certi_code certiCode, disable.certi_code certiCode,
disable.disease_desc diseaseDesc,
disable.adress_detail operAddress,
report.pol_no polNo, report.pol_no polNo,
report.remark remark, report.remark remark,
disable.BIRTHDAY birthday, disable.BIRTHDAY birthday,
......
...@@ -117,6 +117,10 @@ public class ChDisableApply extends PageInfo implements Serializable { ...@@ -117,6 +117,10 @@ public class ChDisableApply extends PageInfo implements Serializable {
private Long srvOrganId; private Long srvOrganId;
/** /**
* 是否首次申请 初次申请,争议复评,定期复评,变更评定
*/
private Long reviewFrequency;
/**
* 代办人姓名 * 代办人姓名
*/ */
private String operName; private String operName;
......
package com.hungraim.ltc.pojo.entity.disable; package com.hungraim.ltc.pojo.entity.disable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
...@@ -8,7 +11,9 @@ import lombok.Data; ...@@ -8,7 +11,9 @@ import lombok.Data;
*/ */
@Data @Data
@TableName("CH_FND_DISEASE_TYPE") @TableName("CH_FND_DISEASE_TYPE")
@KeySequence("SEQ_CH_FND_DISEASE_TYPE")
public class ChFndDiseaseType { public class ChFndDiseaseType {
@TableId(type = IdType.INPUT)
private Integer diseTypeId; private Integer diseTypeId;
private String diseTypeCode; private String diseTypeCode;
private Integer parDiseTypeId; private Integer parDiseTypeId;
......
...@@ -103,5 +103,10 @@ public class ChSrvTask implements Serializable { ...@@ -103,5 +103,10 @@ public class ChSrvTask implements Serializable {
*/ */
private Long webEndEmp; private Long webEndEmp;
/**
* 终止计划原因
*/
private String endReason;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }
\ No newline at end of file
package com.hungraim.ltc.pojo.entity.system;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@Data
@TableName("LTC_RESOURCE_INTERFACE")
public class SystemResourceinterface {
private Long resourceId;
private Long interfaceId;
}
package com.hungraim.ltc.pojo.vo;
import com.hungraim.ltc.pojo.entity.disable.ChFndDiseaseType;
import lombok.Data;
import java.util.List;
@Data
public class ChFndDiseaseTypeListVO {
private List<ChFndDiseaseType> chFndDiseaseTypes;
}
...@@ -91,4 +91,8 @@ public class TaskDistributionVO { ...@@ -91,4 +91,8 @@ public class TaskDistributionVO {
private String refuseReason; private String refuseReason;
//备注 //备注
private String refuseRemark; private String refuseRemark;
//诊断详情
private String diseaseDesc;
//现住地址详细地址
private String operAddress;
} }
...@@ -51,6 +51,11 @@ public class SrvTaskInfoVO implements Serializable { ...@@ -51,6 +51,11 @@ public class SrvTaskInfoVO implements Serializable {
*/ */
private String taskStatus; private String taskStatus;
/**
* 终止计划原因
*/
private String endReason;
// /** // /**
// * 服务计划附件 // * 服务计划附件
// */ // */
......
...@@ -22,5 +22,7 @@ public class ReqUserInfo { ...@@ -22,5 +22,7 @@ public class ReqUserInfo {
private Long organId; private Long organId;
private Long srvOrganId; private Long srvOrganId;
private String organName;
private String srvOrganName;
} }
...@@ -11,7 +11,13 @@ public class TokenParsingUtil { ...@@ -11,7 +11,13 @@ public class TokenParsingUtil {
//解析token //解析token
String subToken = token.substring(AuthConstants.JWT_PREFIX.length()); String subToken = token.substring(AuthConstants.JWT_PREFIX.length());
String claims = JwtHelper.decode(subToken).getClaims(); String claims = JwtHelper.decode(subToken).getClaims();
Integer rid = (Integer) JSONObject.parseObject(claims).get(id); Integer rid;
if(JSONObject.parseObject(claims).get(id)==null || JSONObject.parseObject(claims).get(id).equals("")){
rid=0;
}else {
rid = (Integer) JSONObject.parseObject(claims).get(id);
}
return rid; return rid;
} }
} }
...@@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; ...@@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.hungraim.ltc.constant.AuthConstants; import com.hungraim.ltc.constant.AuthConstants;
import com.hungraim.ltc.pojo.entity.system.SystemInterface; import com.hungraim.ltc.pojo.entity.system.SystemInterface;
import com.hungraim.ltc.pojo.entity.system.SystemRoleResource;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.ListUtils; import org.apache.commons.collections4.ListUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -87,14 +88,14 @@ public class AuthorizationManager implements ReactiveAuthorizationManager<Author ...@@ -87,14 +88,14 @@ public class AuthorizationManager implements ReactiveAuthorizationManager<Author
String[] splitpath = path.split("/"); String[] splitpath = path.split("/");
String pathNew = "/" + splitpath[1] + "/" + splitpath[2] + "/*"; String pathNew = "/" + splitpath[1] + "/" + splitpath[2] + "/*";
Set<String> authorities = new HashSet<>(); Set<String> authorities = new HashSet<>();
Map<String, List<Long>> rolesResources = redisTemplate.opsForHash().entries(AuthConstants.PERMISSION_ROLES_RESOURCE_KEY); Map<String, List<SystemRoleResource>> rolesResources = redisTemplate.opsForHash().entries(AuthConstants.PERMISSION_ROLES_RESOURCE_KEY);
Map<String, List<SystemInterface>> interfaces = redisTemplate.opsForHash().entries(AuthConstants.PERMISSION_RESOURCE_INTERFACE_KEY); Map<String, List<String>> interfaces = redisTemplate.opsForHash().entries(AuthConstants.PERMISSION_RESOURCE_INTERFACE_KEY);
List<Long> resources = rolesResources.get(roleId); List<SystemRoleResource> resources = rolesResources.get(roleId);
for (Long resource : resources) { for (SystemRoleResource resource : resources) {
List<SystemInterface> systemInterfaces = interfaces.get(resource.toString()); List<String> systemInterfaces = interfaces.get(resource.getResourceId().toString());
if (systemInterfaces != null && systemInterfaces.size() > 0) { if (systemInterfaces != null && systemInterfaces.size() > 0) {
for (SystemInterface iter : systemInterfaces) { for (String iter : systemInterfaces) {
if (pathMatcher.match(iter.getInterfaceUrl(), pathNew)) { if (pathMatcher.match(iter, pathNew)) {
authorities.addAll(Convert.toList(String.class, roleId)); authorities.addAll(Convert.toList(String.class, roleId));
} }
} }
......
package com.hungraim.ltc.governance.controller; package com.hungraim.ltc.governance.controller;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hungraim.ltc.governance.dao.FndDiseaseTypeMapper;
import com.hungraim.ltc.governance.service.NursingServiceItemsService; import com.hungraim.ltc.governance.service.NursingServiceItemsService;
import com.hungraim.ltc.pojo.entity.disable.ChCfgSrvDisableLevel; import com.hungraim.ltc.pojo.entity.disable.ChCfgSrvDisableLevel;
import com.hungraim.ltc.pojo.entity.disable.ChFndDiseaseType;
import com.hungraim.ltc.pojo.entity.disable.ChServiceType; import com.hungraim.ltc.pojo.entity.disable.ChServiceType;
import com.hungraim.ltc.pojo.entity.serviceManage.ChSrvOrganProject; import com.hungraim.ltc.pojo.entity.serviceManage.ChSrvOrganProject;
import com.hungraim.ltc.pojo.vo.ChFndDiseaseTypeListVO;
import com.hungraim.ltc.pojo.vo.disable.ChServiceTypeVo; import com.hungraim.ltc.pojo.vo.disable.ChServiceTypeVo;
import com.hungraim.ltc.pojo.vo.disable.SrvModeVo; import com.hungraim.ltc.pojo.vo.disable.SrvModeVo;
import com.hungraim.ltc.pojo.vo.governance.OrganProjectVO; import com.hungraim.ltc.pojo.vo.governance.OrganProjectVO;
...@@ -164,4 +168,44 @@ public class NursingServiceItemsController { ...@@ -164,4 +168,44 @@ public class NursingServiceItemsController {
return Result.success(list); return Result.success(list);
} }
/**
* 查询疾病类型
*
* @param parDiseTypeId 父疾病类型id 不传值默认查询所有一级疾病类型
*/
@RequestMapping("/fndDiseaseList")
public Result<List<ChFndDiseaseType>> fndDiseaseList(String parDiseTypeId) {
List<ChFndDiseaseType> chFndDiseaseTypes = nursingServiceItemsService.fndDiseaseList(parDiseTypeId);
return Result.success(chFndDiseaseTypes);
}
/**
* 查询所有疾病数据
*/
@RequestMapping("/fndAllDisease")
public Result<List<ChFndDiseaseType>> fndAllDisease() {
List<ChFndDiseaseType> chFndDiseaseTypes = nursingServiceItemsService.fndAllDisease();
return Result.success(chFndDiseaseTypes);
}
/**
* 修改疾病数据
*
* @param chFndDiseaseTypes 疾病修改的信息
* @return 返回执行结果
*/
@PostMapping("/saveDisease")
public Result saveDisease( ChFndDiseaseTypeListVO chFndDiseaseTypes) {
log.info("saveDisease");
log.info(JSONObject.toJSONString(chFndDiseaseTypes.getChFndDiseaseTypes()));
if (chFndDiseaseTypes.getChFndDiseaseTypes() == null || chFndDiseaseTypes.getChFndDiseaseTypes().size() <= 0) {
return Result.failed(ResultCode.REQUEST_PARAM_ERROR);
}
nursingServiceItemsService.saveDisease(chFndDiseaseTypes.getChFndDiseaseTypes());
return Result.success();
}
} }
package com.hungraim.ltc.governance.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hungraim.ltc.pojo.entity.disable.ChFndDiseaseType;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
/**
* 疾病类型Mapper
*
* @author czz
*/
@Mapper
@Repository
public interface FndDiseaseTypeMapper extends BaseMapper<ChFndDiseaseType> {
}
...@@ -2,6 +2,7 @@ package com.hungraim.ltc.governance.service; ...@@ -2,6 +2,7 @@ package com.hungraim.ltc.governance.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hungraim.ltc.pojo.entity.disable.ChCfgSrvDisableLevel; import com.hungraim.ltc.pojo.entity.disable.ChCfgSrvDisableLevel;
import com.hungraim.ltc.pojo.entity.disable.ChFndDiseaseType;
import com.hungraim.ltc.pojo.entity.disable.ChServiceType; import com.hungraim.ltc.pojo.entity.disable.ChServiceType;
import com.hungraim.ltc.pojo.entity.serviceManage.ChSrvOrganProject; import com.hungraim.ltc.pojo.entity.serviceManage.ChSrvOrganProject;
import com.hungraim.ltc.pojo.vo.disable.ChServiceTypeVo; import com.hungraim.ltc.pojo.vo.disable.ChServiceTypeVo;
...@@ -42,4 +43,24 @@ public interface NursingServiceItemsService { ...@@ -42,4 +43,24 @@ public interface NursingServiceItemsService {
void deleteSrvModel(Long modeId); void deleteSrvModel(Long modeId);
List<ChServiceTypeVo> queryServiceTypeList(); List<ChServiceTypeVo> queryServiceTypeList();
/**
* 查询疾病类型
*
* @param parDiseTypeId 父疾病类型id
*/
List<ChFndDiseaseType> fndDiseaseList(String parDiseTypeId);
/**
* 查询所有疾病数据
*/
List<ChFndDiseaseType> fndAllDisease();
/**
* 修改疾病数据
*
* @param chFndDiseaseTypes
* @return 返回执行结果
*/
void saveDisease(List<ChFndDiseaseType> chFndDiseaseTypes);
} }
...@@ -2,12 +2,14 @@ package com.hungraim.ltc.governance.service.impl; ...@@ -2,12 +2,14 @@ package com.hungraim.ltc.governance.service.impl;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hungraim.ltc.api.SrvModeFeignService; import com.hungraim.ltc.api.SrvModeFeignService;
import com.hungraim.ltc.governance.dao.*; import com.hungraim.ltc.governance.dao.*;
import com.hungraim.ltc.governance.service.NursingServiceItemsService; import com.hungraim.ltc.governance.service.NursingServiceItemsService;
import com.hungraim.ltc.pojo.entity.SysConfig.ChCfgSrvMode; import com.hungraim.ltc.pojo.entity.SysConfig.ChCfgSrvMode;
import com.hungraim.ltc.pojo.entity.disable.ChCfgSrvDisableLevel; import com.hungraim.ltc.pojo.entity.disable.ChCfgSrvDisableLevel;
import com.hungraim.ltc.pojo.entity.disable.ChFndDiseaseType;
import com.hungraim.ltc.pojo.entity.disable.ChServiceType; import com.hungraim.ltc.pojo.entity.disable.ChServiceType;
import com.hungraim.ltc.pojo.entity.disable.ChServiceTypeDetailed; import com.hungraim.ltc.pojo.entity.disable.ChServiceTypeDetailed;
import com.hungraim.ltc.pojo.entity.serviceManage.ChSrvOrganProject; import com.hungraim.ltc.pojo.entity.serviceManage.ChSrvOrganProject;
...@@ -18,6 +20,7 @@ import com.hungraim.ltc.util.Result; ...@@ -18,6 +20,7 @@ import com.hungraim.ltc.util.Result;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
...@@ -34,6 +37,7 @@ public class NursingServiceItemsServiceImpl implements NursingServiceItemsServic ...@@ -34,6 +37,7 @@ public class NursingServiceItemsServiceImpl implements NursingServiceItemsServic
private final SrvModeFeignService srvModeFeignService; private final SrvModeFeignService srvModeFeignService;
private final ServiceTypeMapper serviceTypeMapper; private final ServiceTypeMapper serviceTypeMapper;
private final ServiceTypeDetailedMapper serviceTypeDetailedMapper; private final ServiceTypeDetailedMapper serviceTypeDetailedMapper;
private final FndDiseaseTypeMapper fndDiseaseTypeMapper;
@Override @Override
public Page<OrganProjectVO> organProjectList(Page<OrganProjectVO> page, String organIds, String name, String status) { public Page<OrganProjectVO> organProjectList(Page<OrganProjectVO> page, String organIds, String name, String status) {
...@@ -130,4 +134,39 @@ public class NursingServiceItemsServiceImpl implements NursingServiceItemsServic ...@@ -130,4 +134,39 @@ public class NursingServiceItemsServiceImpl implements NursingServiceItemsServic
} }
return chServiceTypeVoList; return chServiceTypeVoList;
} }
@Override
public List<ChFndDiseaseType> fndAllDisease() {
QueryWrapper<ChFndDiseaseType> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("IS_VALID", "0");
queryWrapper.orderByAsc("DISE_TYPE_ID");
return fndDiseaseTypeMapper.selectList(queryWrapper);
}
@Override
public List<ChFndDiseaseType> fndDiseaseList(String parDiseTypeId) {
QueryWrapper<ChFndDiseaseType> queryWrapper = new QueryWrapper<>();
//queryWrapper.eq("IS_VALID", "0");
if (StringUtils.isNotBlank(parDiseTypeId)) {
queryWrapper.eq("PAR_DISE_TYPE_ID", parDiseTypeId);
} else {
queryWrapper.and(wrapper -> wrapper.isNull("PAR_DISE_TYPE_ID").or().eq("PAR_DISE_TYPE_ID", ""));
}
return fndDiseaseTypeMapper.selectList(queryWrapper);
}
@Transactional(rollbackFor = Exception.class)
@Override
public void saveDisease(List<ChFndDiseaseType> chFndDiseaseTypes){
//遍历修改的列表
chFndDiseaseTypes.stream().forEach(e->{
if(e.getDiseTypeId() == null){
fndDiseaseTypeMapper.insert(e);
}else{
fndDiseaseTypeMapper.updateById(e);
}
});
}
} }
package com.hungraim.ltc.governance.service.impl; package com.hungraim.ltc.governance.service.impl;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hungraim.ltc.api.AccountFeignService; import com.hungraim.ltc.api.AccountFeignService;
import com.hungraim.ltc.api.AttachFeignService; import com.hungraim.ltc.api.AttachFeignService;
...@@ -124,6 +126,7 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -124,6 +126,7 @@ public class SrvTaskServiceImpl implements SrvTaskService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public void addOrUpdateSrvTask(SrvTaskInfoListVO param) { public void addOrUpdateSrvTask(SrvTaskInfoListVO param) {
log.info("制定服务信息:" + JSONObject.toJSON(param));
String programId = param.getProgramId(); String programId = param.getProgramId();
String disabInfoId = param.getDisabInfoId(); String disabInfoId = param.getDisabInfoId();
List<SrvTaskInfoVO> taskList = param.getTaskList(); List<SrvTaskInfoVO> taskList = param.getTaskList();
...@@ -149,6 +152,15 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -149,6 +152,15 @@ public class SrvTaskServiceImpl implements SrvTaskService {
// 修改服务计划 // 修改服务计划
chSrvTaskDetailMapper.delete(new QueryWrapper<ChSrvTaskDetail>().eq("srv_task_id", Long.parseLong(srvTaskId)));//删除原来的计划详情 chSrvTaskDetailMapper.delete(new QueryWrapper<ChSrvTaskDetail>().eq("srv_task_id", Long.parseLong(srvTaskId)));//删除原来的计划详情
this.insertTaskDetail(Long.parseLong(srvTaskId), taskDetails); this.insertTaskDetail(Long.parseLong(srvTaskId), taskDetails);
//修改服务计划
ChSrvTask chSrvTask = new ChSrvTask();
UpdateWrapper updateWrapper = new UpdateWrapper();
updateWrapper.eq("SRV_TASK_ID",srvTaskId);
//状态 未分配:0;已分配:1;已终止2
updateWrapper.set("STATUS",srvTaskInfoVO.getTaskStatus());
updateWrapper.set("END_REASON",srvTaskInfoVO.getEndReason());
srvTaskMapper.update(null,updateWrapper);
//修改附件 //修改附件
// this.updateAttachs(srvTaskInfoVO.getListAttach(), Long.parseLong(srvTaskId)); // this.updateAttachs(srvTaskInfoVO.getListAttach(), Long.parseLong(srvTaskId));
} }
......
...@@ -162,7 +162,9 @@ ...@@ -162,7 +162,9 @@
--服务人员资质名称 --服务人员资质名称
empType.TYPE_NAME empTypeName, empType.TYPE_NAME empTypeName,
--服务人员资质名称 --服务人员资质名称
task.STATUS taskStatus task.STATUS taskStatus,
--终止计划原因
task.END_REASON endReason
from ch_srv_task task--服务计划 from ch_srv_task task--服务计划
left join ch_srv_organ_emp emp on task.srv_emp_id = emp.emp_id--护理人员 left join ch_srv_organ_emp emp on task.srv_emp_id = emp.emp_id--护理人员
left join CH_CFG_SRV_EMP_TYPE empType on emp.emp_type_id = empType.EMP_TYPE_ID--护理人员资质 left join CH_CFG_SRV_EMP_TYPE empType on emp.emp_type_id = empType.EMP_TYPE_ID--护理人员资质
......
...@@ -25,6 +25,6 @@ public class InitResourceRoleCacheRunner implements CommandLineRunner { ...@@ -25,6 +25,6 @@ public class InitResourceRoleCacheRunner implements CommandLineRunner {
@Override @Override
public void run(String... args) { public void run(String... args) {
resourceService.refreshPermissionRolesCache(); // resourceService.refreshPermissionRolesCache();
} }
} }
...@@ -5,6 +5,8 @@ import cn.hutool.core.util.StrUtil; ...@@ -5,6 +5,8 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.hungraim.ltc.constant.Gender; import com.hungraim.ltc.constant.Gender;
import com.hungraim.ltc.pojo.entity.disable.ChFndOrgan;
import com.hungraim.ltc.pojo.entity.disable.ChSrvOrgan;
import com.hungraim.ltc.pojo.entity.system.SystemUser; import com.hungraim.ltc.pojo.entity.system.SystemUser;
import com.hungraim.ltc.pojo.entity.system.SystemUserRole; import com.hungraim.ltc.pojo.entity.system.SystemUserRole;
import com.hungraim.ltc.pojo.vo.system.ReqUserInfo; import com.hungraim.ltc.pojo.vo.system.ReqUserInfo;
...@@ -16,6 +18,7 @@ import com.hungraim.ltc.system.service.impl.SystemUserServiceImpl; ...@@ -16,6 +18,7 @@ import com.hungraim.ltc.system.service.impl.SystemUserServiceImpl;
import com.hungraim.ltc.util.CheckStrength; import com.hungraim.ltc.util.CheckStrength;
import com.hungraim.ltc.util.Result; import com.hungraim.ltc.util.Result;
import com.hungraim.ltc.util.ResultCode; import com.hungraim.ltc.util.ResultCode;
import com.hungraim.ltc.util.TokenParsingUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
...@@ -172,7 +175,9 @@ public class UserController { ...@@ -172,7 +175,9 @@ public class UserController {
* @return * @return
*/ */
@PostMapping("/queryUsers") @PostMapping("/queryUsers")
public Result queryUsers(ReqUserInfo reqUserInfo) { public Result queryUsers(@RequestHeader("Authorization") String token,ReqUserInfo reqUserInfo) {
long srvOrganId = TokenParsingUtil.TokenParsing(token, "srvOrganId");
long organId = TokenParsingUtil.TokenParsing(token, "organId");
QueryWrapper<SystemUser> systemUserQueryWrapper = new QueryWrapper<>(); QueryWrapper<SystemUser> systemUserQueryWrapper = new QueryWrapper<>();
if (!StrUtil.isBlankIfStr(reqUserInfo.getName())) { if (!StrUtil.isBlankIfStr(reqUserInfo.getName())) {
...@@ -185,7 +190,16 @@ public class UserController { ...@@ -185,7 +190,16 @@ public class UserController {
if (!StrUtil.isBlankIfStr(reqUserInfo.getEnable())) { if (!StrUtil.isBlankIfStr(reqUserInfo.getEnable())) {
systemUserQueryWrapper.and(wrapper -> wrapper.lambda().eq(SystemUser::getUserStatus, reqUserInfo.getEnable())); systemUserQueryWrapper.and(wrapper -> wrapper.lambda().eq(SystemUser::getUserStatus, reqUserInfo.getEnable()));
} }
if (srvOrganId!=0) {
systemUserQueryWrapper.and(wrapper -> wrapper.lambda().eq(SystemUser::getSrvOrganId, srvOrganId));
}
if (organId!=0) {
systemUserQueryWrapper.and(wrapper -> wrapper.lambda().eq(SystemUser::getOrganId, organId));
}
List<SystemUser> users = userInfoService.list(systemUserQueryWrapper); List<SystemUser> users = userInfoService.list(systemUserQueryWrapper);
List<ChFndOrgan> chFndOrganList = userInfoService.fndAllOrgans();
List<ChSrvOrgan> chSrvOrganList = userInfoService.srvOrganLists();
List<ReqUserInfo> resUsers = users.stream().map(user -> { List<ReqUserInfo> resUsers = users.stream().map(user -> {
ReqUserInfo userInfo = new ReqUserInfo(); ReqUserInfo userInfo = new ReqUserInfo();
userInfo.setId(user.getUserId()); userInfo.setId(user.getUserId());
...@@ -196,6 +210,12 @@ public class UserController { ...@@ -196,6 +210,12 @@ public class UserController {
userInfo.setGender(Gender.MAN.getCode().equals(user.getGender()) ? Gender.MAN.getDesc() : Gender.WOMAN.getDesc()); userInfo.setGender(Gender.MAN.getCode().equals(user.getGender()) ? Gender.MAN.getDesc() : Gender.WOMAN.getDesc());
userInfo.setOrganId(user.getOrganId()); userInfo.setOrganId(user.getOrganId());
userInfo.setSrvOrganId(user.getSrvOrganId()); userInfo.setSrvOrganId(user.getSrvOrganId());
if(userInfo.getOrganId()!=null && userInfo.getOrganId()>0 && userInfo.getSrvOrganId()!=null && !userInfo.getSrvOrganId().equals("0")){
List<ChFndOrgan> collect = chFndOrganList.stream().filter(chFndOrgan -> chFndOrgan.getOrganId().equals(user.getOrganId().toString())).collect(Collectors.toList());
List<ChSrvOrgan> chSrvOrgans = chSrvOrganList.stream().filter(chSrvOrgan -> chSrvOrgan.getSrvOrganId().equals(user.getSrvOrganId().intValue())).collect(Collectors.toList());
userInfo.setOrganName(collect.get(0).getOrganName());
userInfo.setSrvOrganName(chSrvOrgans.get(0).getSrvOrganName());
}
return userInfo; return userInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
return Result.success(resUsers); return Result.success(resUsers);
......
...@@ -3,6 +3,8 @@ package com.hungraim.ltc.system.dao; ...@@ -3,6 +3,8 @@ package com.hungraim.ltc.system.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hungraim.ltc.pojo.entity.system.SystemInterface; import com.hungraim.ltc.pojo.entity.system.SystemInterface;
import com.hungraim.ltc.pojo.entity.system.SystemResource; import com.hungraim.ltc.pojo.entity.system.SystemResource;
import com.hungraim.ltc.pojo.entity.system.SystemResourceinterface;
import com.hungraim.ltc.pojo.entity.system.SystemRoleResource;
import org.apache.ibatis.annotations.*; import org.apache.ibatis.annotations.*;
import java.util.List; import java.util.List;
...@@ -14,14 +16,17 @@ import java.util.List; ...@@ -14,14 +16,17 @@ import java.util.List;
@Mapper @Mapper
public interface SystemInterfaceMapper extends BaseMapper<SystemInterface> { public interface SystemInterfaceMapper extends BaseMapper<SystemInterface> {
@Select("SELECT a.INTERFACE_ID,a.INTERFACE_URL FROM LTC_INTERFACE a,LTC_RESOURCE_INTERFACE e where a.INTERFACE_ID=e.INTERFACE_ID and e.RESOURCE_ID=#{resourceId}") @Select("SELECT a.INTERFACE_ID,a.INTERFACE_URL FROM LTC_INTERFACE a")
List<SystemInterface> listInterface(Long resourceId); List<SystemInterface> listInterface();
@Select("select c.RESOURCE_ID,c.INTERFACE_ID from LTC_RESOURCE_INTERFACE c")
List<SystemResourceinterface> listResourceInterface();
@Select("select b.ROLE_ID from LTC_ROLE b") @Select("select b.ROLE_ID from LTC_ROLE b")
List<Long> listRole(); List<Long> listRole();
@Select("select c.RESOURCE_ID from LTC_ROLE_RESOURCE c WHERE c.ROLE_ID=#{roleId}") @Select("select c.RESOURCE_ID,c.ROLE_ID from LTC_ROLE_RESOURCE c")
List<Long> listRoleResource(Long roleId); List<SystemRoleResource> listRoleResource();
} }
...@@ -2,8 +2,13 @@ package com.hungraim.ltc.system.dao; ...@@ -2,8 +2,13 @@ package com.hungraim.ltc.system.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hungraim.ltc.pojo.entity.disable.ChFndOrgan;
import com.hungraim.ltc.pojo.entity.disable.ChSrvOrgan;
import com.hungraim.ltc.pojo.entity.system.SystemUser; import com.hungraim.ltc.pojo.entity.system.SystemUser;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/** /**
* 用户 * 用户
...@@ -12,4 +17,11 @@ import org.apache.ibatis.annotations.Mapper; ...@@ -12,4 +17,11 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface SystemUserMapper extends BaseMapper<SystemUser> { public interface SystemUserMapper extends BaseMapper<SystemUser> {
@Select("select ORGAN_ID,ORGAN_NAME from CH_FND_ORGAN")
List<ChFndOrgan> fndAllOrgans();
@Select("select SRV_ORGAN_ID,SRV_ORGAN_NAME from CH_SRV_ORGAN")
List<ChSrvOrgan> srvOrganLists();
} }
package com.hungraim.ltc.system.service; package com.hungraim.ltc.system.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.hungraim.ltc.pojo.entity.disable.ChFndOrgan;
import com.hungraim.ltc.pojo.entity.disable.ChSrvOrgan;
import com.hungraim.ltc.pojo.entity.system.SystemUser; import com.hungraim.ltc.pojo.entity.system.SystemUser;
import java.util.List;
/** /**
* @author hubin * @author hubin
*/ */
public interface ISystemUserService extends IService<SystemUser> { public interface ISystemUserService extends IService<SystemUser> {
List<ChFndOrgan> fndAllOrgans();
List<ChSrvOrgan> srvOrganLists();
} }
...@@ -3,6 +3,8 @@ package com.hungraim.ltc.system.service.impl; ...@@ -3,6 +3,8 @@ package com.hungraim.ltc.system.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hungraim.ltc.constant.AuthConstants; import com.hungraim.ltc.constant.AuthConstants;
import com.hungraim.ltc.pojo.entity.system.SystemInterface; import com.hungraim.ltc.pojo.entity.system.SystemInterface;
import com.hungraim.ltc.pojo.entity.system.SystemResourceinterface;
import com.hungraim.ltc.pojo.entity.system.SystemRoleResource;
import com.hungraim.ltc.system.dao.SystemInterfaceMapper; import com.hungraim.ltc.system.dao.SystemInterfaceMapper;
import com.hungraim.ltc.system.service.ISystemInterfaceService; import com.hungraim.ltc.system.service.ISystemInterfaceService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -11,6 +13,7 @@ import org.springframework.data.redis.core.RedisTemplate; ...@@ -11,6 +13,7 @@ import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
/** /**
* @author mq * @author mq
...@@ -34,29 +37,39 @@ public class SystemInterfaceServiceImpl extends ServiceImpl<SystemInterfaceMappe ...@@ -34,29 +37,39 @@ public class SystemInterfaceServiceImpl extends ServiceImpl<SystemInterfaceMappe
@Override @Override
public void listResourceInterface() { public void listResourceInterface() {
try {
redisTemplate.delete(AuthConstants.PERMISSION_RESOURCE_INTERFACE_KEY); redisTemplate.delete(AuthConstants.PERMISSION_RESOURCE_INTERFACE_KEY);
redisTemplate.delete(AuthConstants.PERMISSION_ROLES_RESOURCE_KEY); redisTemplate.delete(AuthConstants.PERMISSION_ROLES_RESOURCE_KEY);
Map<String, List<Long>> roleResourcesMap = new TreeMap<>(); Map<String, List<SystemRoleResource>> roleResourcesMap = new TreeMap<>();
Map<String, List<SystemInterface>> stringStringHashMap = new HashMap<>(); Map<String, List<String>> stringStringHashMap = new HashMap<>();
//角色数据
List<Long> roles = systemInterfaceMapper.listRole(); List<Long> roles = systemInterfaceMapper.listRole();
String roleId; //角色和资源数据
for (Long role : roles) { List<SystemRoleResource> roleResources = systemInterfaceMapper.listRoleResource();
List<Long> roleResources = systemInterfaceMapper.listRoleResource(role); //资源和接口数据
//保存资源和接口 List<SystemResourceinterface> resourceInterface = systemInterfaceMapper.listResourceInterface();
for (Long roleResource:roleResources){ //接口数据
List<SystemInterface> systemInterfaces=systemInterfaceMapper.listInterface(roleResource); List<SystemInterface> systemInterfaces = systemInterfaceMapper.listInterface();
stringStringHashMap.put(roleResource.toString(),systemInterfaces); roles.stream().forEach(role -> {
} //角色和资源数据
// 转换 roles -> ROLE_{roleId} List<SystemRoleResource> roleResourceList = roleResources.stream().filter(roleResource -> roleResource.getRoleId().equals(role)).collect(Collectors.toList());
roleId=AuthConstants.AUTHORITY_PREFIX + role; roleResourceList.stream().forEach(roleResource -> {
//保存角色和资源 //资源和接口数据
roleResourcesMap.put(roleId,roleResources); List<SystemResourceinterface> resourceinterfaceList = resourceInterface.stream().filter(role2 -> role2.getResourceId().equals(roleResource.getResourceId())).collect(Collectors.toList());
} List<String> systemResourceinterfaces = new ArrayList<>();
resourceinterfaceList.stream().forEach(resourceinterface->{
List<SystemInterface> collect = systemInterfaces.stream().filter(role2 -> role2.getInterfaceId().equals(resourceinterface.getInterfaceId())).collect(Collectors.toList());
systemResourceinterfaces.add(collect.get(0).getInterfaceUrl());
});
//资源和接口
stringStringHashMap.put(roleResource.getResourceId().toString(),systemResourceinterfaces);
});
//角色和资源
roleResourcesMap.put(AuthConstants.AUTHORITY_PREFIX + role.toString(),roleResourceList);
});
redisTemplate.opsForHash().putAll(AuthConstants.PERMISSION_ROLES_RESOURCE_KEY, roleResourcesMap); redisTemplate.opsForHash().putAll(AuthConstants.PERMISSION_ROLES_RESOURCE_KEY, roleResourcesMap);
redisTemplate.opsForHash().putAll(AuthConstants.PERMISSION_RESOURCE_INTERFACE_KEY, stringStringHashMap); redisTemplate.opsForHash().putAll(AuthConstants.PERMISSION_RESOURCE_INTERFACE_KEY, stringStringHashMap);
}catch (RuntimeException e){
e.printStackTrace();
}
} }
} }
...@@ -2,6 +2,8 @@ package com.hungraim.ltc.system.service.impl; ...@@ -2,6 +2,8 @@ package com.hungraim.ltc.system.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hungraim.ltc.pojo.entity.disable.ChFndOrgan;
import com.hungraim.ltc.pojo.entity.disable.ChSrvOrgan;
import com.hungraim.ltc.pojo.entity.system.SystemUser; import com.hungraim.ltc.pojo.entity.system.SystemUser;
import com.hungraim.ltc.system.dao.SystemUserMapper; import com.hungraim.ltc.system.dao.SystemUserMapper;
import com.hungraim.ltc.system.dao.SystemUserRoleMapper; import com.hungraim.ltc.system.dao.SystemUserRoleMapper;
...@@ -9,6 +11,7 @@ import com.hungraim.ltc.system.service.ISystemUserService; ...@@ -9,6 +11,7 @@ import com.hungraim.ltc.system.service.ISystemUserService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
/** /**
* @author hubin * @author hubin
...@@ -23,4 +26,13 @@ public class SystemUserServiceImpl extends ServiceImpl<SystemUserMapper, SystemU ...@@ -23,4 +26,13 @@ public class SystemUserServiceImpl extends ServiceImpl<SystemUserMapper, SystemU
private SystemUserRoleMapper userRoleMapper; private SystemUserRoleMapper userRoleMapper;
@Override
public List<ChFndOrgan> fndAllOrgans() {
return userMapper.fndAllOrgans();
}
@Override
public List<ChSrvOrgan> srvOrganLists() {
return userMapper.srvOrganLists();
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment