|  | @ -458,18 +458,17 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public ObjEnvelop calendarPlanDetailList(String planId,Integer searchTask,Integer status,String doctorCode,String executeStartTime,String executeEndTime){
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         String sql = " select d.*,DATE_FORMAT(d.execute_time,'%Y/%m/%d %H:%i') as executeTime ,i.content,i.title from wlyy_specialist.wlyy_rehabilitation_plan_detail d " +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_specialist.wlyy_hospital_service_item h on d.hospital_service_item_id = h.id "+
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_service_item i on i.id = h.service_item_id " +
 | 
	
		
			
				|  |  |         String sql = " select d.*,DATE_FORMAT(d.execute_time,'%Y/%m/%d %H:%i') as executeTime ,i.code,i.name from wlyy_specialist.wlyy_rehabilitation_plan_detail d " +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_rehabilitation_service_item i on i.code = d.hospital_service_item_id  " +
 | 
	
		
			
				|  |  |                 " where d.execute_time>='"+executeStartTime+"' and d.execute_time<='"+executeEndTime+"' and d.plan_id='"+planId+"' " ;
 | 
	
		
			
				|  |  |         if(searchTask!=null){
 | 
	
		
			
				|  |  |             if(searchTask==1){
 | 
	
		
			
				|  |  |                 sql+="and d.doctor='"+doctorCode+"' ";
 | 
	
		
			
				|  |  |             }else if(searchTask==2||searchTask==4||searchTask==3){
 | 
	
		
			
				|  |  |             }/*else if(searchTask==2||searchTask==4||searchTask==3){
 | 
	
		
			
				|  |  |                 sql+=" and i.type="+searchTask+" " ;
 | 
	
		
			
				|  |  |             }else if(searchTask==5){
 | 
	
		
			
				|  |  |                 sql+=" and i.reserve=1 " ;
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             }*/
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         if(status!=null){
 | 
	
		
			
				|  |  |             sql+= "and d.status="+status;
 | 
	
	
		
			
				|  | @ -485,7 +484,7 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      * @throws Exception
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public ObjEnvelop serviceItemList(String planDetailIds,String doctorCode) throws Exception{
 | 
	
		
			
				|  |  |   /*  public ObjEnvelop serviceItemList(String planDetailIds,String doctorCode) throws Exception{
 | 
	
		
			
				|  |  |         String[] s = planDetailIds.split(",");
 | 
	
		
			
				|  |  |         String planDetailList = "";
 | 
	
		
			
				|  |  |         for(String one:s){
 | 
	
	
		
			
				|  | @ -579,6 +578,106 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |             return ObjEnvelop.getSuccess(SpecialistMapping.api_success,resultList);
 | 
	
		
			
				|  |  | //        }
 | 
	
		
			
				|  |  | //        return MixEnvelop.getError("没有该服务项详情信息!");
 | 
	
		
			
				|  |  |     }*/
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 多个康复计划服务项目内容列表
 | 
	
		
			
				|  |  |      * @param planDetailIds
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      * @throws Exception
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public ObjEnvelop serviceItemList(String planDetailIds,String doctorCode) throws Exception{
 | 
	
		
			
				|  |  |         String[] s = planDetailIds.split(",");
 | 
	
		
			
				|  |  |         String planDetailList = "";
 | 
	
		
			
				|  |  |         for(String one:s){
 | 
	
		
			
				|  |  |             planDetailList +=",'"+one+"'";
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         String planDetailResult = StringUtils.isNotEmpty(planDetailList)?planDetailList.substring(1):"";
 | 
	
		
			
				|  |  |         String sql = "select i.name,i.code,d.execute_time,d.hospital_name,d.id,d.status,d.type as detailType,d.expense,d.doctor as executeDoctor," +
 | 
	
		
			
				|  |  |                 " d.doctor_name as executeDoctorName,p.patient ,p.create_user as createDoctor,p.create_user_name as createDoctorName, p.status as planStatus  " +
 | 
	
		
			
				|  |  |                 " from wlyy_specialist.wlyy_rehabilitation_plan_detail d " +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_specialist.wlyy_rehabilitation_service_item i on i.code = d.hospital_service_item_id " +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_specialist.wlyy_patient_rehabilitation_plan p on d.plan_id=p.id " +
 | 
	
		
			
				|  |  |                 " where d.id in ("+planDetailResult+") order BY d.execute_time ASC ";
 | 
	
		
			
				|  |  |         List<Map<String,Object>> serviceItemList = jdbcTemplate.queryForList(sql);
 | 
	
		
			
				|  |  | //        if(serviceItemList.size()>0){
 | 
	
		
			
				|  |  | //            Map<String,Object> serviceItem = serviceItemList.get(0);
 | 
	
		
			
				|  |  |         List<Map<String,Object>> resultList = new ArrayList<>();
 | 
	
		
			
				|  |  |         for(Map<String,Object> one:serviceItemList){
 | 
	
		
			
				|  |  |             Map<String,Object> resultMap = new HashMap<>();
 | 
	
		
			
				|  |  |             Integer isMyTask = 0;
 | 
	
		
			
				|  |  |             if(StringUtils.isNotEmpty(doctorCode)&&doctorCode.equals(one.get("executeDoctor")+"")){
 | 
	
		
			
				|  |  |                 isMyTask=1;
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             resultMap.put("isMyTask",isMyTask);//0不是自己的任务,1是自己的任务
 | 
	
		
			
				|  |  | //            if(!(one.get("specialistDoctor")+"").equals((one.get("create_user")+""))){
 | 
	
		
			
				|  |  | //                executeDoctorList.add(one.get("create_user_name")+"");
 | 
	
		
			
				|  |  | //            }
 | 
	
		
			
				|  |  |             List<String> executeDoctorList = new ArrayList<>();
 | 
	
		
			
				|  |  |             executeDoctorList.add(one.get("executeDoctorName")+"");
 | 
	
		
			
				|  |  |             resultMap.put("executeDoctorList",executeDoctorList);//执行医生名称列表
 | 
	
		
			
				|  |  |             resultMap.put("executeDoctorCode",one.get("executeDoctor")+"");//执行医生code
 | 
	
		
			
				|  |  |             resultMap.put("executeDoctorName",one.get("executeDoctorName")+"");//执行医生code
 | 
	
		
			
				|  |  |             resultMap.put("specialistDoctorCode",one.get("createDoctor")+"");//创建人(专科)医生code
 | 
	
		
			
				|  |  |             resultMap.put("specialistDoctorName",one.get("createDoctorName")+"");//创建人(专科)医生名字
 | 
	
		
			
				|  |  |             resultMap.put("title",one.get("name"));//项目标题
 | 
	
		
			
				|  |  |             resultMap.put("planDetaiId",one.get("id"));//计划服务项目id
 | 
	
		
			
				|  |  |             resultMap.put("shortExecuteTime",DateUtil.dateToStr((Date) one.get("execute_time"),DateUtil.HH_MM));//项目标题
 | 
	
		
			
				|  |  |             resultMap.put("content",one.get("name"));//项目内容
 | 
	
		
			
				|  |  |             resultMap.put("hospitalName",one.get("hospital_name"));//地点
 | 
	
		
			
				|  |  |             resultMap.put("executeTime",one.get("execute_time"));//执行时间
 | 
	
		
			
				|  |  |             DecimalFormat df = new DecimalFormat("0.00");
 | 
	
		
			
				|  |  |             resultMap.put("expense", one.get("expense")!=null?df.format(((Integer)one.get("expense")*1.00)/100.00):0);//收费
 | 
	
		
			
				|  |  |             resultMap.put("reserve",null);//是否需要预约(1预约、0不预约)
 | 
	
		
			
				|  |  |             resultMap.put("planStatus",one.get("planStatus"));//计划的状态
 | 
	
		
			
				|  |  |             Integer status = Integer.valueOf(one.get("status").toString());//状态(0未完成,1已完成,2已预约)
 | 
	
		
			
				|  |  |             String statusName = "";
 | 
	
		
			
				|  |  |             switch (status){
 | 
	
		
			
				|  |  |                 case 0:{statusName="未完成";break;}
 | 
	
		
			
				|  |  |                 case 1:{statusName="已完成";break;}
 | 
	
		
			
				|  |  |                 case 2:{statusName="已预约";break;}
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             resultMap.put("statusName",statusName);//状态
 | 
	
		
			
				|  |  |             //指导与汇报
 | 
	
		
			
				|  |  |             List<GuidanceMessageLogDO> messageList = guidanceMessageLogDao.findByPlanDetailId(one.get("id").toString());
 | 
	
		
			
				|  |  |             List<Map<String,Object>> messageMapList = new ArrayList<>();
 | 
	
		
			
				|  |  |             for(GuidanceMessageLogDO one2:messageList){
 | 
	
		
			
				|  |  |                 Map<String,Object> map = new HashMap<>();
 | 
	
		
			
				|  |  |                 map.put("doctorName",one2.getDoctorName());
 | 
	
		
			
				|  |  |                 map.put("adminTeamName",one2.getAdminTeamName());
 | 
	
		
			
				|  |  |                 map.put("content",one2.getContent());
 | 
	
		
			
				|  |  |                 map.put("contentType",one2.getContentType());
 | 
	
		
			
				|  |  |                 map.put("createTime",DateUtil.dateToStr(one2.getCreateTime(),"MM-dd HH:mm"));
 | 
	
		
			
				|  |  |                 messageMapList.add(map);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |            /* Integer itemType = (Integer) one.get("itemType");*/
 | 
	
		
			
				|  |  |             resultMap.put("messageList",messageMapList);//指导与汇报记录
 | 
	
		
			
				|  |  |             resultMap.put("patient",one.get("patient"));
 | 
	
		
			
				|  |  |             resultMap.put("itemType",null);
 | 
	
		
			
				|  |  |             resultMap.put("detaiType",one.get("detaiType"));
 | 
	
		
			
				|  |  |             resultMap.put("status",status);//状态
 | 
	
		
			
				|  |  |             //是否完成任务
 | 
	
		
			
				|  |  |             List<RehabilitationOperateRecordsDO> operateList = rehabilitationOperateRecordsDao.findByRehabilitationDetailId(one.get("id").toString());
 | 
	
		
			
				|  |  |             Integer operate = 0;
 | 
	
		
			
				|  |  |             if(operateList.size()>0){
 | 
	
		
			
				|  |  |                 operate =1;
 | 
	
		
			
				|  |  |                 RehabilitationOperateRecordsDO temp = operateList.get(0);
 | 
	
		
			
				|  |  |                 operate =1;
 | 
	
		
			
				|  |  |                 Date completeTime = temp.getCompleteTime();
 | 
	
		
			
				|  |  |                 String completeTimeStr = DateUtil.dateToStr(completeTime,DateUtil.YYYY_MM_DD_HH_MM);
 | 
	
		
			
				|  |  |                 resultMap.put("completeTime",completeTimeStr);//完成时间
 | 
	
		
			
				|  |  |                 resultMap.put("operatorDoctorName",temp.getDoctorName());//执行医生名称
 | 
	
		
			
				|  |  |                 resultMap.put("node",temp.getNode());
 | 
	
		
			
				|  |  |                 resultMap.put("relationRecordImg",(temp.getRelationRecordImg()!=null&&StringUtils.isNotEmpty(temp.getRelationRecordImg()))?(new JSONArray(temp.getRelationRecordImg())):null);//json格式
 | 
	
		
			
				|  |  |                 resultMap.put("relationRecordCode",temp.getRelationRecordCode());
 | 
	
		
			
				|  |  |                 resultMap.put("completeTimeShort",DateUtil.dateToStr(completeTime,"yyyy/MM/dd"));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             resultMap.put("operate",operate);//是否完成任务(默认0:未完成,1:已完成)
 | 
	
		
			
				|  |  |             resultList.add(resultMap);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return ObjEnvelop.getSuccess(SpecialistMapping.api_success,resultList);
 | 
	
		
			
				|  |  | //        }
 | 
	
		
			
				|  |  | //        return MixEnvelop.getError("没有该服务项详情信息!");
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
	
		
			
				|  | @ -690,6 +789,7 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         Map<String,Object> resultMap = new HashMap<>();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         //个人基础信息(康复机构)
 | 
	
		
			
				|  |  |         String patientInfoSql = " SELECT DISTINCT hospital_name from wlyy_specialist.wlyy_rehabilitation_plan_detail d LEFT JOIN wlyy_specialist.wlyy_patient_rehabilitation_plan p on d.plan_id=p.id " +
 | 
	
		
			
				|  |  |                 " where p.patient='"+patientCode+"' and p.status=1 ";
 | 
	
	
		
			
				|  | @ -788,6 +888,8 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             map.put("planTypeName",planTypeName);//安排类型名称
 | 
	
		
			
				|  |  |             map.put("statusName",statusName);//状态名称
 | 
	
		
			
				|  |  |             map.put("medicalRecordsCode",one.getMedicalRecordsCode());//住院code
 | 
	
		
			
				|  |  |             map.put("adviceContent",one.getAdviceContent());//康复建议
 | 
	
		
			
				|  |  |             //已完成
 | 
	
		
			
				|  |  |             Integer allFinishCount = rehabilitationDetailDao.findByStatusAndPlanId(1,one.getId());
 | 
	
		
			
				|  |  |             map.put("allFinishCount",allFinishCount);//已完成
 | 
	
	
		
			
				|  | @ -874,8 +976,8 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |         Map<String,Object> resultMap = new HashMap<>();
 | 
	
		
			
				|  |  |         //近期康复相关记录
 | 
	
		
			
				|  |  | //        String currentTime = DateUtil.getStringDate();
 | 
	
		
			
				|  |  |         String planDetailSql = " select d.*,i.content,i.title,s.complete_time from wlyy_specialist.wlyy_rehabilitation_plan_detail d LEFT JOIN wlyy_hospital_service_item h on d.hospital_service_item_id=h.id" +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_service_item i on i.id=h.service_item_id LEFT JOIN wlyy_specialist.wlyy_patient_rehabilitation_plan p on d.plan_id=p.id" +
 | 
	
		
			
				|  |  |         String planDetailSql = " select d.*,h.name,h.code,s.complete_time from wlyy_specialist.wlyy_rehabilitation_plan_detail d LEFT JOIN wlyy_rehabilitation_service_item h on d.hospital_service_item_id=h.code" +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_specialist.wlyy_patient_rehabilitation_plan p on d.plan_id=p.id" +
 | 
	
		
			
				|  |  |                 " left join wlyy_rehabilitation_operate_records s on s.rehabilitation_detail_id=d.id " +
 | 
	
		
			
				|  |  |                 " where d.status=1 and p.patient='"+patientCode+"' ";
 | 
	
		
			
				|  |  |         if(StringUtils.isNotEmpty(startTime)){
 | 
	
	
		
			
				|  | @ -895,8 +997,8 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |         for(Map<String,Object> one:planDetails){
 | 
	
		
			
				|  |  |             Date executeTimeDate = (Date)one.get("complete_time");
 | 
	
		
			
				|  |  |             String executeTime = DateUtil.dateToStr(executeTimeDate,"yyyy/MM/dd HH:mm");
 | 
	
		
			
				|  |  |             String content = one.get("content")+"";
 | 
	
		
			
				|  |  |             String title = one.get("title")+"";
 | 
	
		
			
				|  |  |             String content = one.get("code")+"";
 | 
	
		
			
				|  |  |             String title = one.get("name")+"";
 | 
	
		
			
				|  |  |             Integer status = (Integer)one.get("status");
 | 
	
		
			
				|  |  |             String statusName = "";
 | 
	
		
			
				|  |  |             switch (status){
 | 
	
	
		
			
				|  | @ -917,8 +1019,8 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |             planDetailList.add(map);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         resultMap.put("planDetailList",planDetailList);//康复相关记录列表
 | 
	
		
			
				|  |  |         String planDetailCountSql = " select d.status as num from wlyy_specialist.wlyy_rehabilitation_plan_detail d LEFT JOIN wlyy_hospital_service_item h on d.hospital_service_item_id=h.id" +
 | 
	
		
			
				|  |  |                 " LEFT JOIN wlyy_service_item i on i.id=h.service_item_id LEFT JOIN wlyy_specialist.wlyy_patient_rehabilitation_plan p on d.plan_id=p.id where p.patient='"+patientCode+"'";
 | 
	
		
			
				|  |  |         String planDetailCountSql = " select d.status as num from wlyy_specialist.wlyy_rehabilitation_plan_detail d LEFT JOIN wlyy_rehabilitation_service_item h on d.hospital_service_item_id=h.code" +
 | 
	
		
			
				|  |  |                 "  LEFT JOIN wlyy_specialist.wlyy_patient_rehabilitation_plan p on d.plan_id=p.id where p.patient='"+patientCode+"'";
 | 
	
		
			
				|  |  |         List<Map<String,Object>> planDetailList2 = jdbcTemplate.queryForList(planDetailCountSql);
 | 
	
		
			
				|  |  |         Integer planDetailFinish = 0;
 | 
	
		
			
				|  |  |         Integer planDetailUnfinish = 0;
 | 
	
	
		
			
				|  | @ -1255,6 +1357,9 @@ public class RehabilitationManageService {
 | 
	
		
			
				|  |  |             resultMap.put("planTitle",p.getTitle());
 | 
	
		
			
				|  |  |             resultMap.put("status", p.getStatus());
 | 
	
		
			
				|  |  |             resultMap.put("patientImg", p.getPatientImg());
 | 
	
		
			
				|  |  |             resultMap.put("adviceContent",p.getAdviceContent());
 | 
	
		
			
				|  |  |             resultMap.put("medicalRecordsCode",p.getMedicalRecordsCode());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | //        resultMap.put("healthyCondition",healthyCondition);
 | 
	
		
			
				|  |  |         return ObjEnvelop.getSuccess(SpecialistMapping.api_success,resultMap);
 |