|
@ -1,12 +1,15 @@
|
|
|
package com.yihu.jw.care.service.doctor;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.yihu.jw.care.dao.doorCoach.BaseDoorCoachOrderDao;
|
|
|
import com.yihu.jw.care.service.role.RoleService;
|
|
|
import com.yihu.jw.doctor.dao.BaseDoctorDao;
|
|
|
import com.yihu.jw.doctor.dao.BaseDoctorHospitalDao;
|
|
|
import com.yihu.jw.doctor.dao.DoctorSpecialDiseaseDao;
|
|
|
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
|
|
|
import com.yihu.jw.entity.care.doorCoach.BaseDoorCoachOrderDO;
|
|
|
import com.yihu.jw.hospital.dict.WlyyHospitalSysDictDao;
|
|
|
import com.yihu.jw.im.service.ImService;
|
|
|
import com.yihu.jw.org.dao.BaseOrgDao;
|
|
|
import com.yihu.jw.restmodel.web.PageEnvelop;
|
|
|
import com.yihu.jw.util.common.IdCardUtil;
|
|
@ -50,6 +53,10 @@ public class CareDoctorService extends BaseJpaService<BaseDoctorDO, BaseDoctorDa
|
|
|
private BaseDoctorHospitalDao doctorHospitalDao;
|
|
|
@Autowired
|
|
|
private JdbcTemplate jdbcTemplate;
|
|
|
@Autowired
|
|
|
private BaseDoorCoachOrderDao baseDoorCoachOrderDao;
|
|
|
@Autowired
|
|
|
private ImService imService;
|
|
|
|
|
|
/**
|
|
|
* 获取医生详情
|
|
@ -228,14 +235,14 @@ public class CareDoctorService extends BaseJpaService<BaseDoctorDO, BaseDoctorDa
|
|
|
List<Map<String,Object>> list = new ArrayList<>();
|
|
|
//未入学
|
|
|
String sql0 = "select Distinct sor.patient from base_course_sales_order_record sor INNER JOIN base_course bc on sor.course_id = bc.id " +
|
|
|
" and bc.del=1 where bc.doctor ='"+doctor+"' and sor.`status` =5 and not EXISTS (select DISTINCT rsr.patient " +
|
|
|
" and bc.del=1 where bc.doctor ='"+doctor+"' and sor.`status` =2 and not EXISTS (select DISTINCT rsr.patient " +
|
|
|
" from base_recruit_students_record rsr INNER JOIN base_org org on rsr.org_code = org.`code` and org.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on rsr.org_code = dh.org_code and dh.del =1 where rsr.patient=sor.patient and " +
|
|
|
" dh.doctor_code='"+doctor+"' and rsr.del<>0 and rsr.`status` = 3 )";
|
|
|
" dh.doctor_code='"+doctor+"' and rsr.del<>0 and rsr.`status` = 2 )";
|
|
|
//已入学
|
|
|
String sql1=" select DISTINCT rsr.patient from base_recruit_students_record rsr INNER JOIN base_org org on rsr.org_code = org.`code` " +
|
|
|
"and org.del=1 INNER JOIN base_doctor_hospital dh on rsr.org_code = dh.org_code and dh.del =1 where dh.doctor_code='"+doctor+"' " +
|
|
|
"and rsr.del<>0 and rsr.`status` = 3 GROUP BY dh.doctor_code ";
|
|
|
"and rsr.del<>0 and rsr.`status` = 2 GROUP BY dh.doctor_code ";
|
|
|
String sql = "select p.id,p.name,p.photo,p.sex,p.idcard,p.openid,p.mobile,group_concat( pd.category_code) deviceType from ( {sqlReplace} )tmp Inner JOIN base_patient p on tmp.patient = p.id " +
|
|
|
" LEFT JOIN wlyy_patient_device pd on pd.`user`=p.id and pd.category_code BETWEEN 1 and 2 GROUP BY p.id ";
|
|
|
String sqlcpunt = "select count(Distinct p.id) from ( {sqlReplace} )tmp Inner JOIN base_patient p on tmp.patient = p.id " +
|
|
@ -275,14 +282,14 @@ public class CareDoctorService extends BaseJpaService<BaseDoctorDO, BaseDoctorDa
|
|
|
Map<String,Long> result = new HashMap<>();
|
|
|
//未入学
|
|
|
String sql0 = "select Distinct sor.patient from base_course_sales_order_record sor INNER JOIN base_course bc on sor.course_id = bc.id " +
|
|
|
" and bc.del=1 where bc.doctor ='"+doctor+"' and sor.`status` =5 and not EXISTS (select DISTINCT rsr.patient " +
|
|
|
" and bc.del=1 where bc.doctor ='"+doctor+"' and sor.`status` =2 and not EXISTS (select DISTINCT rsr.patient " +
|
|
|
" from base_recruit_students_record rsr INNER JOIN base_org org on rsr.org_code = org.`code` and org.del=1 " +
|
|
|
" INNER JOIN base_doctor_hospital dh on rsr.org_code = dh.org_code and dh.del =1 where rsr.patient=sor.patient and " +
|
|
|
" dh.doctor_code='"+doctor+"' and rsr.del<>0 and rsr.`status` = 3 )";
|
|
|
" dh.doctor_code='"+doctor+"' and rsr.del<>0 and rsr.`status` = 2 )";
|
|
|
//已入学
|
|
|
String sql1=" select DISTINCT rsr.patient from base_recruit_students_record rsr INNER JOIN base_org org on rsr.org_code = org.`code` " +
|
|
|
"and org.del=1 INNER JOIN base_doctor_hospital dh on rsr.org_code = dh.org_code and dh.del =1 where dh.doctor_code='"+doctor+"' " +
|
|
|
"and rsr.del<>0 and rsr.`status` = 3 GROUP BY dh.doctor_code ";
|
|
|
"and rsr.del<>0 and rsr.`status` = 2 GROUP BY dh.doctor_code ";
|
|
|
|
|
|
String sqlcpunt = "select count(Distinct p.id) from ( {sqlReplace} )tmp Inner JOIN base_patient p on tmp.patient = p.id " +
|
|
|
" LEFT JOIN wlyy_patient_device pd on pd.`user`=p.id and pd.category_code BETWEEN 1 and 2 ";
|
|
@ -293,4 +300,20 @@ public class CareDoctorService extends BaseJpaService<BaseDoctorDO, BaseDoctorDa
|
|
|
result.put("enrol",count);
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
public JSONObject getNotificationCount(String doctor,Integer type){
|
|
|
JSONObject object = new JSONObject();
|
|
|
// 上门辅导工单 待完成
|
|
|
List<BaseDoorCoachOrderDO> coachOrderDOList = baseDoorCoachOrderDao.getUnFinishOrderByDoctor(doctor);
|
|
|
|
|
|
if (type > 0){
|
|
|
return object;
|
|
|
}else {
|
|
|
Integer unreadMessageCount = imService.SessionsUnreadMessageCountByUserId(doctor);
|
|
|
object.put("unreadMessageCount",unreadMessageCount);
|
|
|
object.put("doorCoachOrder",coachOrderDOList.size());//上门辅导待完成数量
|
|
|
return object;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|