|
@ -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);
|