|  | @ -246,4 +246,49 @@ public class ArchiveService extends BaseJpaService<ArchiveDO, ArchiveDao> {
 | 
												
													
														
															|  |         Long count = jdbcTemplate.queryForObject(countSql+filters,Long.class);
 |  |         Long count = jdbcTemplate.queryForObject(countSql+filters,Long.class);
 | 
												
													
														
															|  |         return PageEnvelop.getSuccessListWithPage("success",list,page,size,count);
 |  |         return PageEnvelop.getSuccessListWithPage("success",list,page,size,count);
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |     public PageEnvelop<List<Map<String,Object>>> helperArchiveList(String doctorId,String hospital, int page, int size,Integer signStatus,String name){
 | 
												
													
														
															|  | 
 |  |         BaseDoctorDO doctorDO = doctorDao.findById(doctorId);
 | 
												
													
														
															|  | 
 |  |         if (null==doctorDO){
 | 
												
													
														
															|  | 
 |  |             return null;
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         if (4!=doctorDO.getLevel()){
 | 
												
													
														
															|  | 
 |  |             return null;
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         String countSql = " select count(distinct p.id)  ";
 | 
												
													
														
															|  | 
 |  |         String  sql = " SELECT a.create_time,p.openid,p.pad_imei padImei,p.idcard,p.mobile,p.name,p.sex,p.id,p.photo,CAST(a.sign_status AS char) sign_status  " ;
 | 
												
													
														
															|  | 
 |  |         String filter = "from wlyy_archive a,base_patient p WHERE  a.patient = p.id and a.sign_status = 1 and p.del=1 and EXISTS( " +
 | 
												
													
														
															|  | 
 |  |                     "SELECT DISTINCT sr.patient from base_service_package_sign_record sr,base_service_package_record r, " +
 | 
												
													
														
															|  | 
 |  |                     "base_service_package_item i,base_team_member m " +
 | 
												
													
														
															|  | 
 |  |                     "WHERE  sr.id = r.sign_id and sr.patient = a.patient and sr.status=1 and r.service_package_id = i.service_package_id " +
 | 
												
													
														
															|  | 
 |  |                     "and i.del = 1 and m.team_code = r.team_code " ;
 | 
												
													
														
															|  | 
 |  |         if (StringUtils.isNotBlank(hospital)){//
 | 
												
													
														
															|  | 
 |  |             filter += " and m.org_code='"+hospital+"'   ";
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         if(StringUtils.isNotBlank(name)){
 | 
												
													
														
															|  | 
 |  |             filter += " and p.name like '%"+name+"%'";
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         filter+= " and m.del = '1' and sr.`status`=1 ) ";
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         sql= sql+filter+ " group by p.id   "+"LIMIT "+ (page - 1) * size + "," + size ;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
 | 
												
													
														
															|  | 
 |  |         for (Map<String,Object> map :list){
 | 
												
													
														
															|  | 
 |  |             String idcard = map.get("idcard").toString();
 | 
												
													
														
															|  | 
 |  |             String patientId = map.get("id").toString();
 | 
												
													
														
															|  | 
 |  |             String sign_status = map.get("sign_status").toString();
 | 
												
													
														
															|  | 
 |  |             map.put("createTime", map.get("create_time").toString().substring(0,19));
 | 
												
													
														
															|  | 
 |  |             map.put("age", IdCardUtil.getAgeForIdcard(idcard));
 | 
												
													
														
															|  | 
 |  |             if("1".endsWith(sign_status)){
 | 
												
													
														
															|  | 
 |  |                 map.put("servicePackageList",servicePackageService.getServicePackageListByPatient(patientId,null));
 | 
												
													
														
															|  | 
 |  |             }
 | 
												
													
														
															|  | 
 |  |             map.put("deviceType",deviceService.getPatientDeviceCategoryCode(map.get("id").toString()));
 | 
												
													
														
															|  | 
 |  |             List<Map<String,Object>> doctorList = servicePackageService.getServerDoctorAll(map.get("id").toString(),"0","1");
 | 
												
													
														
															|  | 
 |  |             List<Map<String,Object>> helperList = servicePackageService.getServerDoctorAll(map.get("id").toString(),"0","2");
 | 
												
													
														
															|  | 
 |  |             map.put("helper", helperList.size()>0?1:0);
 | 
												
													
														
															|  | 
 |  |             map.put("doctor", doctorList.size()>0?1:0);
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         Long count = jdbcTemplate.queryForObject(countSql+filter,Long.class);
 | 
												
													
														
															|  | 
 |  |         return PageEnvelop.getSuccessListWithPage("success",list,page,size,count);
 | 
												
													
														
															|  | 
 |  |     }
 | 
												
													
														
															|  | }
 |  | }
 |