|
@@ -1,5 +1,6 @@
|
|
|
package com.kcim.service.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.kcim.constants.NumberConstant;
|
|
|
import com.kcim.controller.request.QualificationManageAdjustRequest;
|
|
@@ -45,35 +46,26 @@ public class QualificationManageServiceImpl extends ServiceImpl<QualificationApp
|
|
|
//返回的集合
|
|
|
List<QualificationManage> listReturn = new ArrayList<>();
|
|
|
|
|
|
- //资质集合
|
|
|
+ //所有有效的资质
|
|
|
List<Qualification> qualificationList = qualificationRepository.list();
|
|
|
+ Map<String, Qualification> qualificationMap = qualificationList.stream().collect(Collectors.toMap(Qualification::getCode, vo -> vo, (a, b) -> b));
|
|
|
|
|
|
//资质分类集合
|
|
|
List<QualificationType> qualificationTypeList = qualificationTypeRepository.list();
|
|
|
-
|
|
|
- //人员列表
|
|
|
- List<UserInfo> empList = userInfoRepository.list();
|
|
|
- Map<Long,UserInfo> empMap = empList.stream().collect(Collectors.toMap(UserInfo::getId, vo -> vo, (a, b) -> b));
|
|
|
+ Map<String, QualificationType> qualificationTypeMap = qualificationTypeList.stream().collect(Collectors.toMap(QualificationType::getCode, vo -> vo, (a, b) -> b));
|
|
|
|
|
|
//有效的资质授权
|
|
|
List<QualificationApply> list = qualificationApplyRepository.listByQualification();
|
|
|
|
|
|
for(QualificationApply qualificationApply : list){
|
|
|
|
|
|
- //医生信息
|
|
|
- //qualificationApply.setUserInfo(empMap.get(qualificationApply.getUserId()));
|
|
|
-
|
|
|
- //调整历史-调整人姓名
|
|
|
-// for(QualificationApplyAdjust adjust : qualificationApply.getApplyAdjust()){
|
|
|
-// adjust.setAdjustUserName(empMap.get(adjust.getUserId()).getName());
|
|
|
-// }
|
|
|
+ //资质字典信息
|
|
|
+ Qualification qualification = qualificationMap.get(qualificationApply.getQualificationCode());
|
|
|
|
|
|
- //资质字典
|
|
|
- Qualification qualification = qualificationList.stream().filter(q -> q.getCode().equals(qualificationApply.getQualificationCode())).findFirst().get();
|
|
|
//资质名称
|
|
|
String qualificationName = qualification.getName();
|
|
|
//资质分类
|
|
|
- QualificationType qualificationType = qualificationTypeList.stream().filter(t -> t.getCode().equals(qualification.getQualificationTypeCode())).findFirst().get();
|
|
|
+ QualificationType qualificationType = qualificationTypeMap.get(qualification.getQualificationTypeCode());
|
|
|
//资质分类编码
|
|
|
String typeCode = qualificationType.getCode();
|
|
|
//资质分类名称
|
|
@@ -86,7 +78,6 @@ public class QualificationManageServiceImpl extends ServiceImpl<QualificationApp
|
|
|
}
|
|
|
//分类过滤
|
|
|
if(!qualificationTypeCode.equals("0")){
|
|
|
- //List<String> typeCodeList = qualificationServiceImpl.getQualificationTypeCodeRecursion(qualificationTypeList,qualificationTypeCode);
|
|
|
List<String> typeCodeList = qualificationService.getQualificationTypeCodeRecursion(qualificationTypeList,qualificationTypeCode);
|
|
|
if(!typeCodeList.contains(typeCode)){
|
|
|
continue;
|
|
@@ -111,46 +102,22 @@ public class QualificationManageServiceImpl extends ServiceImpl<QualificationApp
|
|
|
QualificationManage newItem = new QualificationManage();
|
|
|
//资质字典
|
|
|
newItem.setQualification(qualification);
|
|
|
- //医生列表
|
|
|
-// if(qualificationApply.getCurrentStatus().equals("授权中")){
|
|
|
-// newItem.setDoctorList(qualificationApply.getUserInfo().getName());
|
|
|
-// }
|
|
|
-// else{
|
|
|
-// newItem.setDoctorList(""); //新建时如果不是授权中状态,则给一个空字符串,避免出现null文本
|
|
|
-// }
|
|
|
- //申请列表
|
|
|
-// List<QualificationApply> applyList = new ArrayList<>();
|
|
|
-// applyList.add(qualificationApply);
|
|
|
-// newItem.setApplyList(applyList);
|
|
|
-
|
|
|
listReturn.add(newItem);
|
|
|
}
|
|
|
- //更新项
|
|
|
-// else{
|
|
|
-// //医生列表
|
|
|
-// if(qualificationApply.getCurrentStatus().equals("授权中")){
|
|
|
-// String newDoctorList = returnItem.get().getDoctorList() + "," + qualificationApply.getUserInfo().getName();
|
|
|
-// newDoctorList = StringUtils.trimLeadingCharacter(newDoctorList,','); //去掉最左边的逗号
|
|
|
-// returnItem.get().setDoctorList(newDoctorList);
|
|
|
-// }
|
|
|
-// //申请列表
|
|
|
-// returnItem.get().getApplyList().add(qualificationApply);
|
|
|
-// }
|
|
|
}
|
|
|
|
|
|
- //设置「允许重新授权状态」,已过期的授权,如果没有对应的授权中的人时,才可以重新授权
|
|
|
-// for(QualificationManage item : listReturn ){
|
|
|
-// for(QualificationApply apply : item.getApplyList()){
|
|
|
-// if(apply.getCurrentStatus().equals("已过期")) {
|
|
|
-// if(item.getApplyList().stream().filter(a -> a.getCurrentStatus().equals("授权中"))
|
|
|
-// .noneMatch(a -> a.getUserId().equals(apply.getUserId()))) {
|
|
|
-// apply.setAllowReAuthorize(NumberConstant.ONE);
|
|
|
-// }
|
|
|
-// }
|
|
|
-// }
|
|
|
-// }
|
|
|
+ // 对listReturn进行分页处理
|
|
|
+ int total = listReturn.size();
|
|
|
+ int startIndex = (current - 1) * pageSize;
|
|
|
+ int endIndex = Math.min(startIndex + pageSize, total);
|
|
|
+
|
|
|
+ // 如果起始索引超出范围,则返回空列表
|
|
|
+ List<QualificationManage> pagedList = new ArrayList<>();
|
|
|
+ if (startIndex < total) {
|
|
|
+ pagedList = listReturn.subList(startIndex, endIndex);
|
|
|
+ }
|
|
|
|
|
|
- return new PageUtils(listReturn, Math.toIntExact(listReturn.size()),pageSize,current);
|
|
|
+ return new PageUtils(pagedList, total, pageSize, current);
|
|
|
}
|
|
|
|
|
|
@Override
|