|
@@ -10,10 +10,10 @@ import com.diagbot.util.EntityUtil;
|
|
|
import com.diagbot.util.ListUtil;
|
|
|
import com.diagbot.util.StringUtil;
|
|
|
import com.diagbot.util.SysUserUtils;
|
|
|
-import com.diagbot.vo.FilterByDeptVO;
|
|
|
import com.diagbot.vo.FilterPageByDeptVO;
|
|
|
-import com.diagbot.vo.HPFilterByDeptVO;
|
|
|
-import com.diagbot.vo.QcresultFilterByDeptVO;
|
|
|
+import com.diagbot.vo.FilterVO;
|
|
|
+import com.diagbot.vo.HomePageFilterVO;
|
|
|
+import com.diagbot.vo.QcresultFilterVO;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
@@ -30,6 +30,7 @@ import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+
|
|
|
/**
|
|
|
* @Description:主任医生相关首页
|
|
|
* @Author:zhaops
|
|
@@ -51,39 +52,39 @@ public class ConsoleByDeptFacade {
|
|
|
/**
|
|
|
* 出院人数统计-按科室
|
|
|
*
|
|
|
- * @param filterByDeptVO
|
|
|
+ * @param filterVO
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String, Object> leaveHosCountByDept(FilterByDeptVO filterByDeptVO) {
|
|
|
+ public Map<String, Object> leaveHosCountByDept(FilterVO filterVO) {
|
|
|
Map<String, Object> retMap = new LinkedHashMap<>();
|
|
|
String hospitalId = SysUserUtils.getCurrentHospitalID();
|
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
|
- String startDate = filterFacade.getStartDateStr(filterByDeptVO.getType(), null);
|
|
|
- String endDate = filterFacade.getEndDateStr(filterByDeptVO.getType(), null);
|
|
|
- filterByDeptVO.setHospitalId(hospitalId);
|
|
|
- filterByDeptVO.setUserId(Long.valueOf(userId));
|
|
|
- filterByDeptVO.setStartDate(startDate);
|
|
|
- filterByDeptVO.setEndDate(endDate);
|
|
|
- HPFilterByDeptVO hpFilterByDeptVO = new HPFilterByDeptVO();
|
|
|
- BeanUtil.copyProperties(filterByDeptVO, hpFilterByDeptVO);
|
|
|
+ String startDate = filterFacade.getStartDateStr(filterVO.getType(), null);
|
|
|
+ String endDate = filterFacade.getEndDateStr(filterVO.getType(), null);
|
|
|
+ filterVO.setHospitalId(hospitalId);
|
|
|
+ filterVO.setUserId(Long.valueOf(userId));
|
|
|
+ filterVO.setStartDate(startDate);
|
|
|
+ filterVO.setEndDate(endDate);
|
|
|
+ HomePageFilterVO homePageFilterVO = new HomePageFilterVO();
|
|
|
+ BeanUtil.copyProperties(filterVO, homePageFilterVO);
|
|
|
//关联科室
|
|
|
- Map<String, Object> deptMap = getDeptByUser(filterByDeptVO);
|
|
|
+ Map<String, Object> deptMap = getDeptByUser(filterVO);
|
|
|
if (deptMap == null) {
|
|
|
return retMap;
|
|
|
}
|
|
|
//出院总人数
|
|
|
- List<NumDTO> totleNumList = behospitalInfoFacade.homePageCountByDept(hpFilterByDeptVO);
|
|
|
+ List<NumDTO> totleNumList = behospitalInfoFacade.homePageCountByDept(homePageFilterVO);
|
|
|
Map<String, NumDTO> totleMap = ListUtil.isEmpty(totleNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(totleNumList, "name");
|
|
|
//死亡人数
|
|
|
- hpFilterByDeptVO.setDeath(1);
|
|
|
- List<NumDTO> deathNumList = behospitalInfoFacade.homePageCountByDept(hpFilterByDeptVO);
|
|
|
+ homePageFilterVO.setDeath(1);
|
|
|
+ List<NumDTO> deathNumList = behospitalInfoFacade.homePageCountByDept(homePageFilterVO);
|
|
|
Map<String, NumDTO> deathMap = ListUtil.isEmpty(deathNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(deathNumList, "name");
|
|
|
//手术人数
|
|
|
- List<NumDTO> operationNumList = behospitalInfoFacade.homePageCountForOperationByDept(filterByDeptVO);
|
|
|
+ List<NumDTO> operationNumList = behospitalInfoFacade.homePageCountForOperationByDept(filterVO);
|
|
|
Map<String, NumDTO> operationMap = ListUtil.isEmpty(operationNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(operationNumList, "name");
|
|
@@ -110,47 +111,47 @@ public class ConsoleByDeptFacade {
|
|
|
/**
|
|
|
* 病历数统计-按科室
|
|
|
*
|
|
|
- * @param filterByDeptVO
|
|
|
+ * @param filterVO
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String, Object> mrCountByDept(FilterByDeptVO filterByDeptVO) {
|
|
|
+ public Map<String, Object> mrCountByDept(FilterVO filterVO) {
|
|
|
DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
Map<String, Object> retMap = new LinkedHashMap<>();
|
|
|
String hospitalId = SysUserUtils.getCurrentHospitalID();
|
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
|
- String startDate = filterFacade.getStartDateStr(filterByDeptVO.getType(), null);
|
|
|
- String endDate = filterFacade.getEndDateStr(filterByDeptVO.getType(), null);
|
|
|
- filterByDeptVO.setHospitalId(hospitalId);
|
|
|
- filterByDeptVO.setUserId(Long.valueOf(userId));
|
|
|
- filterByDeptVO.setStartDate(startDate);
|
|
|
- filterByDeptVO.setEndDate(endDate);
|
|
|
- QcresultFilterByDeptVO qcresultFilterByDeptVO = new QcresultFilterByDeptVO();
|
|
|
- BeanUtil.copyProperties(filterByDeptVO, qcresultFilterByDeptVO);
|
|
|
+ String startDate = filterFacade.getStartDateStr(filterVO.getType(), null);
|
|
|
+ String endDate = filterFacade.getEndDateStr(filterVO.getType(), null);
|
|
|
+ filterVO.setHospitalId(hospitalId);
|
|
|
+ filterVO.setUserId(Long.valueOf(userId));
|
|
|
+ filterVO.setStartDate(startDate);
|
|
|
+ filterVO.setEndDate(endDate);
|
|
|
+ QcresultFilterVO qcresultFilterVO = new QcresultFilterVO();
|
|
|
+ BeanUtil.copyProperties(filterVO, qcresultFilterVO);
|
|
|
//关联科室
|
|
|
- Map<String, Object> deptMap = getDeptByUser(filterByDeptVO);
|
|
|
+ Map<String, Object> deptMap = getDeptByUser(filterVO);
|
|
|
if (deptMap == null) {
|
|
|
return retMap;
|
|
|
}
|
|
|
//质控病历总数
|
|
|
- List<NumDTO> totleNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterByDeptVO);
|
|
|
+ List<NumDTO> totleNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterVO);
|
|
|
Map<String, NumDTO> totleMap = ListUtil.isEmpty(totleNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(totleNumList, "name");
|
|
|
//甲级病历
|
|
|
- qcresultFilterByDeptVO.setLevel("甲");
|
|
|
- List<NumDTO> firstNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterByDeptVO);
|
|
|
+ qcresultFilterVO.setLevel("甲");
|
|
|
+ List<NumDTO> firstNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterVO);
|
|
|
Map<String, NumDTO> firstMap = ListUtil.isEmpty(firstNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(firstNumList, "name");
|
|
|
//乙级病历
|
|
|
- qcresultFilterByDeptVO.setLevel("乙");
|
|
|
- List<NumDTO> secondNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterByDeptVO);
|
|
|
+ qcresultFilterVO.setLevel("乙");
|
|
|
+ List<NumDTO> secondNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterVO);
|
|
|
Map<String, NumDTO> secondMap = ListUtil.isEmpty(secondNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(secondNumList, "name");
|
|
|
//丙级病历
|
|
|
- qcresultFilterByDeptVO.setLevel("丙");
|
|
|
- List<NumDTO> thirdNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterByDeptVO);
|
|
|
+ qcresultFilterVO.setLevel("丙");
|
|
|
+ List<NumDTO> thirdNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterVO);
|
|
|
Map<String, NumDTO> thirdMap = ListUtil.isEmpty(thirdNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(thirdNumList, "name");
|
|
@@ -224,36 +225,36 @@ public class ConsoleByDeptFacade {
|
|
|
/**
|
|
|
* 各模块缺陷占比排名-按科室
|
|
|
*
|
|
|
- * @param filterByDeptVO
|
|
|
+ * @param filterVO
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String, Object> entryCountGroupByCaseAndDept(FilterByDeptVO filterByDeptVO) {
|
|
|
+ public Map<String, Object> entryCountGroupByCaseAndDept(FilterVO filterVO) {
|
|
|
DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
Map<String, Object> retMap = new LinkedHashMap<>();
|
|
|
String hospitalId = SysUserUtils.getCurrentHospitalID();
|
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
|
- String startDate = filterFacade.getStartDateStr(filterByDeptVO.getType(), null);
|
|
|
- String endDate = filterFacade.getEndDateStr(filterByDeptVO.getType(), null);
|
|
|
- filterByDeptVO.setHospitalId(hospitalId);
|
|
|
- filterByDeptVO.setUserId(Long.valueOf(userId));
|
|
|
- filterByDeptVO.setStartDate(startDate);
|
|
|
- filterByDeptVO.setEndDate(endDate);
|
|
|
- if (filterByDeptVO.getLimitCount() == null || filterByDeptVO.getLimitCount().equals(0)) {
|
|
|
- filterByDeptVO.setLimitCount(10);
|
|
|
+ String startDate = filterFacade.getStartDateStr(filterVO.getType(), null);
|
|
|
+ String endDate = filterFacade.getEndDateStr(filterVO.getType(), null);
|
|
|
+ filterVO.setHospitalId(hospitalId);
|
|
|
+ filterVO.setUserId(Long.valueOf(userId));
|
|
|
+ filterVO.setStartDate(startDate);
|
|
|
+ filterVO.setEndDate(endDate);
|
|
|
+ if (filterVO.getLimitCount() == null || filterVO.getLimitCount().equals(0)) {
|
|
|
+ filterVO.setLimitCount(10);
|
|
|
}
|
|
|
- Integer limitCount = filterByDeptVO.getLimitCount();
|
|
|
- QcresultFilterByDeptVO qcresultFilterByDeptVO = new QcresultFilterByDeptVO();
|
|
|
- BeanUtil.copyProperties(filterByDeptVO, qcresultFilterByDeptVO);
|
|
|
+ Integer limitCount = filterVO.getLimitCount();
|
|
|
+ QcresultFilterVO qcresultFilterVO = new QcresultFilterVO();
|
|
|
+ BeanUtil.copyProperties(filterVO, qcresultFilterVO);
|
|
|
//关联科室
|
|
|
- Map<String, Object> deptMap = getDeptByUser(filterByDeptVO);
|
|
|
+ Map<String, Object> deptMap = getDeptByUser(filterVO);
|
|
|
if (deptMap == null) {
|
|
|
return retMap;
|
|
|
}
|
|
|
- List<NumDTO> mrNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterByDeptVO);
|
|
|
+ List<NumDTO> mrNumList = qcresultInfoFacade.resultCountByDept(qcresultFilterVO);
|
|
|
Map<String, NumDTO> mrMap = ListUtil.isEmpty(mrNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityMap(mrNumList, "name");
|
|
|
- List<DeptNumDTO> qcEntryNumList = qcresultInfoFacade.entryCountGroupByCaseAndDept(filterByDeptVO);
|
|
|
+ List<DeptNumDTO> qcEntryNumList = qcresultInfoFacade.entryCountGroupByCaseAndDept(filterVO);
|
|
|
Map<String, List<DeptNumDTO>> qcEntryMap = ListUtil.isEmpty(qcEntryNumList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityListMap(qcEntryNumList, "deptName");
|
|
@@ -329,30 +330,30 @@ public class ConsoleByDeptFacade {
|
|
|
/**
|
|
|
* 条目缺陷占比-按科室
|
|
|
*
|
|
|
- * @param filterByDeptVO
|
|
|
+ * @param filterVO
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String, Object> entryCountGroupByEntryAndDept(FilterByDeptVO filterByDeptVO) {
|
|
|
+ public Map<String, Object> entryCountGroupByEntryAndDept(FilterVO filterVO) {
|
|
|
DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
Map<String, Object> retMap = new LinkedHashMap<>();
|
|
|
String hospitalId = SysUserUtils.getCurrentHospitalID();
|
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
|
- String startDate = filterFacade.getStartDateStr(filterByDeptVO.getType(), null);
|
|
|
- String endDate = filterFacade.getEndDateStr(filterByDeptVO.getType(), null);
|
|
|
- filterByDeptVO.setHospitalId(hospitalId);
|
|
|
- filterByDeptVO.setUserId(Long.valueOf(userId));
|
|
|
- filterByDeptVO.setStartDate(startDate);
|
|
|
- filterByDeptVO.setEndDate(endDate);
|
|
|
- if (filterByDeptVO.getLimitCount() == null || filterByDeptVO.getLimitCount().equals(0)) {
|
|
|
- filterByDeptVO.setLimitCount(10);
|
|
|
+ String startDate = filterFacade.getStartDateStr(filterVO.getType(), null);
|
|
|
+ String endDate = filterFacade.getEndDateStr(filterVO.getType(), null);
|
|
|
+ filterVO.setHospitalId(hospitalId);
|
|
|
+ filterVO.setUserId(Long.valueOf(userId));
|
|
|
+ filterVO.setStartDate(startDate);
|
|
|
+ filterVO.setEndDate(endDate);
|
|
|
+ if (filterVO.getLimitCount() == null || filterVO.getLimitCount().equals(0)) {
|
|
|
+ filterVO.setLimitCount(10);
|
|
|
}
|
|
|
- Integer limitCount = filterByDeptVO.getLimitCount();
|
|
|
+ Integer limitCount = filterVO.getLimitCount();
|
|
|
//关联科室
|
|
|
- Map<String, Object> deptMap = getDeptByUser(filterByDeptVO);
|
|
|
+ Map<String, Object> deptMap = getDeptByUser(filterVO);
|
|
|
if (deptMap == null) {
|
|
|
return retMap;
|
|
|
}
|
|
|
- List<DeptNumDTO> entryList = qcresultInfoFacade.entryCountGroupByEntryAndDept(filterByDeptVO);
|
|
|
+ List<DeptNumDTO> entryList = qcresultInfoFacade.entryCountGroupByEntryAndDept(filterVO);
|
|
|
Map<String, List<DeptNumDTO>> numListMap = ListUtil.isEmpty(entryList)
|
|
|
? new HashMap<>()
|
|
|
: EntityUtil.makeEntityListMap(entryList, "deptName");
|
|
@@ -428,11 +429,11 @@ public class ConsoleByDeptFacade {
|
|
|
/**
|
|
|
* 用户关联科室
|
|
|
*
|
|
|
- * @param filterByDeptVO
|
|
|
+ * @param filterVO
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String, Object> getDeptByUser(FilterByDeptVO filterByDeptVO) {
|
|
|
- List<DeptBaseDTO> deptList = basDeptInfoFacade.getDeptByUser(filterByDeptVO);
|
|
|
+ public Map<String, Object> getDeptByUser(FilterVO filterVO) {
|
|
|
+ List<DeptBaseDTO> deptList = basDeptInfoFacade.getDeptByUser(filterVO);
|
|
|
if (ListUtil.isNotEmpty(deptList)) {
|
|
|
return EntityUtil.makeMapWithKeyValue(deptList, "deptName", "deptId");
|
|
|
} else {
|
|
@@ -447,12 +448,12 @@ public class ConsoleByDeptFacade {
|
|
|
* @return
|
|
|
*/
|
|
|
public List<DeptBaseDTO> getDept() {
|
|
|
- FilterByDeptVO filterByDeptVO = new FilterByDeptVO();
|
|
|
+ FilterVO filterVO = new FilterVO();
|
|
|
String hospitalId = SysUserUtils.getCurrentHospitalID();
|
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
|
- filterByDeptVO.setHospitalId(hospitalId);
|
|
|
- filterByDeptVO.setUserId(Long.valueOf(userId));
|
|
|
- List<DeptBaseDTO> deptList = basDeptInfoFacade.getDeptByUser(filterByDeptVO);
|
|
|
+ filterVO.setHospitalId(hospitalId);
|
|
|
+ filterVO.setUserId(Long.valueOf(userId));
|
|
|
+ List<DeptBaseDTO> deptList = basDeptInfoFacade.getDeptByUser(filterVO);
|
|
|
return deptList;
|
|
|
}
|
|
|
|