|  | @ -46,6 +46,8 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |     @Autowired
 |  |     @Autowired
 | 
												
													
														
															|  |     private BaseDoctorHospitalDao doctorHospitalDao;
 |  |     private BaseDoctorHospitalDao doctorHospitalDao;
 | 
												
													
														
															|  |     @Autowired
 |  |     @Autowired
 | 
												
													
														
															|  | 
 |  |     private DictHospitalDeptDao hospitalDeptDao;
 | 
												
													
														
															|  | 
 |  |     @Autowired
 | 
												
													
														
															|  |     private BaseDoctorDao doctorDao;
 |  |     private BaseDoctorDao doctorDao;
 | 
												
													
														
															|  |     @Autowired
 |  |     @Autowired
 | 
												
													
														
															|  |     private BaseEvaluateScoreService baseEvaluateScoreService;
 |  |     private BaseEvaluateScoreService baseEvaluateScoreService;
 | 
												
											
												
													
														
															|  | @ -131,13 +133,13 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |         if (StringUtils.isNoneBlank(level2_type)){
 |  |         if (StringUtils.isNoneBlank(level2_type)){
 | 
												
													
														
															|  |             //问诊量表格
 |  |             //问诊量表格
 | 
												
													
														
															|  |             //专家咨询数量
 |  |             //专家咨询数量
 | 
												
													
														
															|  |             List<SaveModel> specialistSaveModels = elasticsearchUtil.findDateQuotaLevel0(endDate, endDate, area, level, "4", SaveModel.timeLevel_DDL,null,level2_type);
 |  | 
 | 
												
													
														
															|  | 
 |  |             List<SaveModel> specialistSaveModels = elasticsearchUtil.findDateQuotaLevel0(startDate, endDate, area, level, "4", SaveModel.timeLevel_ZL,null,level2_type);
 | 
												
													
														
															|  |             //协同门诊
 |  |             //协同门诊
 | 
												
													
														
															|  |             List<SaveModel> syngySaveModels = elasticsearchUtil.findDateQuotaLevel1(endDate, endDate, area, level, "1", SaveModel.timeLevel_DDL,"2",null,level2_type);
 |  | 
 | 
												
													
														
															|  | 
 |  |             List<SaveModel> syngySaveModels = elasticsearchUtil.findDateQuotaLevel1(startDate, endDate, area, level, "1", SaveModel.timeLevel_ZL,"2",null,level2_type);
 | 
												
													
														
															|  |             //图文复诊
 |  |             //图文复诊
 | 
												
													
														
															|  |             List<SaveModel> topicSaveModels = elasticsearchUtil.findDateQuotaLevel2(endDate, endDate, area, level, "1", SaveModel.timeLevel_DDL,"1","1",null,level2_type);
 |  | 
 | 
												
													
														
															|  | 
 |  |             List<SaveModel> topicSaveModels = elasticsearchUtil.findDateQuotaLevel2(startDate, endDate, area, level, "1", SaveModel.timeLevel_ZL,"1","1",null,level2_type);
 | 
												
													
														
															|  |             ///视频复诊
 |  |             ///视频复诊
 | 
												
													
														
															|  |             List<SaveModel> vedioSaveModels = elasticsearchUtil.findDateQuotaLevel2(endDate, endDate, area, level, "1", SaveModel.timeLevel_DDL,"1","2",null,level2_type);
 |  | 
 | 
												
													
														
															|  | 
 |  |             List<SaveModel> vedioSaveModels = elasticsearchUtil.findDateQuotaLevel2(startDate, endDate, area, level, "1", SaveModel.timeLevel_ZL,"1","2",null,level2_type);
 | 
												
													
														
															|  |             JSONArray array = new JSONArray();
 |  |             JSONArray array = new JSONArray();
 | 
												
													
														
															|  |             List<String> list = new ArrayList<>();
 |  |             List<String> list = new ArrayList<>();
 | 
												
													
														
															|  |             for (SaveModel saveModel:specialistSaveModels){
 |  |             for (SaveModel saveModel:specialistSaveModels){
 | 
												
											
												
													
														
															|  | @ -150,18 +152,31 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |             for (int i=0;i<list.size();i++){
 |  |             for (int i=0;i<list.size();i++){
 | 
												
													
														
															|  |                 String code = list.get(i);
 |  |                 String code = list.get(i);
 | 
												
													
														
															|  |                 JSONObject jsonObject = new JSONObject();
 |  |                 JSONObject jsonObject = new JSONObject();
 | 
												
													
														
															|  |                 jsonObject.put("code",code);
 |  | 
 | 
												
													
														
															|  | 
 |  |                 Double specialist = 0.0;
 | 
												
													
														
															|  | 
 |  |                 Double topic = 0.0;
 | 
												
													
														
															|  | 
 |  |                 Double vedio =0.0;
 | 
												
													
														
															|  | 
 |  |                 Double synegy =0.0;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                 for (SaveModel saveModel:specialistSaveModels){
 |  |                 for (SaveModel saveModel:specialistSaveModels){
 | 
												
													
														
															|  |                     if (level2_type.equals(SaveModel.deptLevel)){
 |  |                     if (level2_type.equals(SaveModel.deptLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",code);
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDeptName());
 |  |                             jsonObject.put("name",saveModel.getDeptName());
 | 
												
													
														
															|  |                             jsonObject.put("specialist",saveModel.getResult1());
 |  |                             jsonObject.put("specialist",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             specialist = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 |  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDoctorName());
 |  | 
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",area);
 | 
												
													
														
															|  | 
 |  |                             DictHospitalDeptDO dictHospitalDeptDO =  hospitalDeptDao.findByCode(area);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("name",dictHospitalDeptDO.getName());
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorCode",code);
 | 
												
													
														
															|  | 
 |  |                             BaseDoctorDO doctorDO = doctorDao.findById(code);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorJob",doctorDO.getJobTitleName());
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorName",saveModel.getDoctorName());
 | 
												
													
														
															|  |                             jsonObject.put("specialist",saveModel.getResult1());
 |  |                             jsonObject.put("specialist",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             specialist = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }
 |  |                     }
 | 
												
											
												
													
														
															|  | @ -169,14 +184,23 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |                 for (SaveModel saveModel:syngySaveModels){
 |  |                 for (SaveModel saveModel:syngySaveModels){
 | 
												
													
														
															|  |                     if (level2_type.equals(SaveModel.deptLevel)){
 |  |                     if (level2_type.equals(SaveModel.deptLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",code);
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDeptName());
 |  |                             jsonObject.put("name",saveModel.getDeptName());
 | 
												
													
														
															|  |                             jsonObject.put("synegy",saveModel.getResult1());
 |  |                             jsonObject.put("synegy",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             synegy = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 |  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDoctorName());
 |  | 
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",area);
 | 
												
													
														
															|  | 
 |  |                             DictHospitalDeptDO dictHospitalDeptDO =  hospitalDeptDao.findByCode(area);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("name",dictHospitalDeptDO.getName());
 | 
												
													
														
															|  | 
 |  |                             BaseDoctorDO doctorDO = doctorDao.findById(code);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorJob",doctorDO.getJobTitleName());
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorCode",code);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorName",saveModel.getDoctorName());
 | 
												
													
														
															|  |                             jsonObject.put("synegy",saveModel.getResult1());
 |  |                             jsonObject.put("synegy",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             synegy = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }
 |  |                     }
 | 
												
											
												
													
														
															|  | @ -184,14 +208,23 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |                 for (SaveModel saveModel:topicSaveModels){
 |  |                 for (SaveModel saveModel:topicSaveModels){
 | 
												
													
														
															|  |                     if (level2_type.equals(SaveModel.deptLevel)){
 |  |                     if (level2_type.equals(SaveModel.deptLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",code);
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDeptName());
 |  |                             jsonObject.put("name",saveModel.getDeptName());
 | 
												
													
														
															|  |                             jsonObject.put("topic",saveModel.getResult1());
 |  |                             jsonObject.put("topic",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             topic = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 |  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDoctorName());
 |  | 
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",area);
 | 
												
													
														
															|  | 
 |  |                             DictHospitalDeptDO dictHospitalDeptDO =  hospitalDeptDao.findByCode(area);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("name",dictHospitalDeptDO.getName());
 | 
												
													
														
															|  | 
 |  |                             BaseDoctorDO doctorDO = doctorDao.findById(code);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorJob",doctorDO.getJobTitleName());
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorCode",code);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorName",saveModel.getDoctorName());
 | 
												
													
														
															|  |                             jsonObject.put("topic",saveModel.getResult1());
 |  |                             jsonObject.put("topic",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             topic = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }
 |  |                     }
 | 
												
											
												
													
														
															|  | @ -199,18 +232,31 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |                 for (SaveModel saveModel:vedioSaveModels){
 |  |                 for (SaveModel saveModel:vedioSaveModels){
 | 
												
													
														
															|  |                     if (level2_type.equals(SaveModel.deptLevel)){
 |  |                     if (level2_type.equals(SaveModel.deptLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDept())){
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",code);
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDeptName());
 |  |                             jsonObject.put("name",saveModel.getDeptName());
 | 
												
													
														
															|  |                             jsonObject.put("vedio",saveModel.getResult1());
 |  |                             jsonObject.put("vedio",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             vedio = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 |  |                     }else if (level2_type.equals(SaveModel.doctorLevel)){
 | 
												
													
														
															|  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 |  |                         if (code.equalsIgnoreCase(saveModel.getDoctor())){
 | 
												
													
														
															|  |                             jsonObject.put("name",saveModel.getDoctorName());
 |  | 
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("code",area);
 | 
												
													
														
															|  | 
 |  |                             DictHospitalDeptDO dictHospitalDeptDO =  hospitalDeptDao.findByCode(area);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("name",dictHospitalDeptDO.getName());
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorCode",code);
 | 
												
													
														
															|  | 
 |  |                             BaseDoctorDO doctorDO = doctorDao.findById(code);
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorJob",doctorDO.getJobTitleName());
 | 
												
													
														
															|  | 
 |  |                             jsonObject.put("doctorName",saveModel.getDoctorName());
 | 
												
													
														
															|  |                             jsonObject.put("vedio",saveModel.getResult1());
 |  |                             jsonObject.put("vedio",saveModel.getResult1());
 | 
												
													
														
															|  | 
 |  |                             vedio = saveModel.getResult1();
 | 
												
													
														
															|  |                             break;
 |  |                             break;
 | 
												
													
														
															|  |                         }
 |  |                         }
 | 
												
													
														
															|  |                     }
 |  |                     }
 | 
												
													
														
															|  |                 }
 |  |                 }
 | 
												
													
														
															|  | 
 |  |                 Double total1 = topic+vedio ;//图文和视频总和
 | 
												
													
														
															|  | 
 |  |                 Double total = topic+vedio+synegy+specialist;//总和
 | 
												
													
														
															|  | 
 |  |                 jsonObject.put("total1",total1);//图文和视频总和
 | 
												
													
														
															|  | 
 |  |                 jsonObject.put("total",total);//总和
 | 
												
													
														
															|  |                 array.add(jsonObject);
 |  |                 array.add(jsonObject);
 | 
												
													
														
															|  |             }
 |  |             }
 | 
												
													
														
															|  |             object.put("excelData",array);
 |  |             object.put("excelData",array);
 | 
												
											
												
													
														
															|  | @ -589,8 +635,8 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |             }else if (level==5){
 |  |             }else if (level==5){
 | 
												
													
														
															|  |                 for (Map<String,Object> map:mapList){
 |  |                 for (Map<String,Object> map:mapList){
 | 
												
													
														
															|  |                     JSONObject object1 = new JSONObject();
 |  |                     JSONObject object1 = new JSONObject();
 | 
												
													
														
															|  |                     object1.put("deptCode","-");
 |  | 
 | 
												
													
														
															|  |                     object1.put("deptName","-");
 |  | 
 | 
												
													
														
															|  | 
 |  |                     object1.put("deptCode",map.get("dept_code"));
 | 
												
													
														
															|  | 
 |  |                     object1.put("deptName",map.get("dept_name"));
 | 
												
													
														
															|  |                     Long topic = 0L;
 |  |                     Long topic = 0L;
 | 
												
													
														
															|  |                     Long vedio =0L;
 |  |                     Long vedio =0L;
 | 
												
													
														
															|  |                     Long synegy = 0L;
 |  |                     Long synegy = 0L;
 | 
												
											
												
													
														
															|  | @ -616,6 +662,7 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |                     object1.put("synegy",synegy);//协同
 |  |                     object1.put("synegy",synegy);//协同
 | 
												
													
														
															|  |                     object1.put("specialist",specialist);//专家
 |  |                     object1.put("specialist",specialist);//专家
 | 
												
													
														
															|  |                     object1.put("other",other);//其他
 |  |                     object1.put("other",other);//其他
 | 
												
													
														
															|  | 
 |  |                     object1.put("doctor",map.get("id"));
 | 
												
													
														
															|  |                     object1.put("doctorName",map.get("name"));//医生名字
 |  |                     object1.put("doctorName",map.get("name"));//医生名字
 | 
												
													
														
															|  |                     object1.put("doctorJob",map.get("job_title_name"));//医生职称
 |  |                     object1.put("doctorJob",map.get("job_title_name"));//医生职称
 | 
												
													
														
															|  |                     array.add(object1);
 |  |                     array.add(object1);
 | 
												
											
												
													
														
															|  | @ -711,13 +758,20 @@ public class StatisticsEsService {
 | 
												
													
														
															|  |             }else if (level==5){
 |  |             }else if (level==5){
 | 
												
													
														
															|  |                 Set<JSONObject> set = new HashSet<>();
 |  |                 Set<JSONObject> set = new HashSet<>();
 | 
												
													
														
															|  |                 for(SaveModel saveModel:topicModels){
 |  |                 for(SaveModel saveModel:topicModels){
 | 
												
													
														
															|  |                     BaseDoctorDO doctorDO = doctorDao.findById(saveModel.getDoctor());
 |  | 
 | 
												
													
														
															|  |                     JSONObject object1 = new JSONObject();
 |  |                     JSONObject object1 = new JSONObject();
 | 
												
													
														
															|  | 
 |  |                     BaseDoctorDO doctorDO = doctorDao.findById(saveModel.getDoctor());
 | 
												
													
														
															|  | 
 |  |                     List<BaseDoctorHospitalDO> doctorHospitalDOs = doctorHospitalDao.findByDoctorCode(saveModel.getDoctor());
 | 
												
													
														
															|  | 
 |  |                     if (doctorHospitalDOs!=null&&doctorHospitalDOs.size()!=0){
 | 
												
													
														
															|  | 
 |  |                         object1.put("deptCode",doctorHospitalDOs.get(0).getDeptCode());
 | 
												
													
														
															|  | 
 |  |                         object1.put("deptName",doctorHospitalDOs.get(0).getDeptName());
 | 
												
													
														
															|  | 
 |  |                     }else {
 | 
												
													
														
															|  | 
 |  |                         object1.put("deptCode",null);
 | 
												
													
														
															|  | 
 |  |                         object1.put("deptName",null);
 | 
												
													
														
															|  | 
 |  |                     }
 | 
												
													
														
															|  | 
 |  |                     object1.put("doctor",doctorDO.getId());
 | 
												
													
														
															|  |                     object1.put("doctorName",doctorDO.getName());//
 |  |                     object1.put("doctorName",doctorDO.getName());//
 | 
												
													
														
															|  |                     object1.put("doctorJob",doctorDO.getJobTitleName());//
 |  |                     object1.put("doctorJob",doctorDO.getJobTitleName());//
 | 
												
													
														
															|  |                     object1.put("doctor",doctorDO.getId());
 |  |                     object1.put("doctor",doctorDO.getId());
 | 
												
													
														
															|  |                     object1.put("deptCode","-");
 |  | 
 | 
												
													
														
															|  |                     object1.put("deptName","-");
 |  | 
 | 
												
													
														
															|  |                     set.add(object1);
 |  |                     set.add(object1);
 | 
												
													
														
															|  |                 }
 |  |                 }
 | 
												
													
														
															|  |                 for (JSONObject jsonObject:set){
 |  |                 for (JSONObject jsonObject:set){
 |