|  | @ -4315,200 +4315,11 @@ public class ImService {
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     public MixEnvelop recordByDoctor(String doctor, String id,String type, Integer status,String title, String start_time, String end_time, String patient) { //
 |  |     public MixEnvelop recordByDoctor(String doctor, String id,String type, Integer status,String title, String start_time, String end_time, String patient) { //
 | 
												
													
														
															|  |         String sql = "";
 |  | 
 | 
												
													
														
															|  |         sql = "SELECT " +
 |  | 
 | 
												
													
														
															|  |                 "a.id AS \"id\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.pay_status AS \"payStatus\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.type as \"type\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.outpatient_type as \"outpatientType\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.description AS \"title\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.description AS \"symptoms\",";
 |  | 
 | 
												
													
														
															|  |         if ("xm_ykyy_wx".equals(wxId)) {
 |  | 
 | 
												
													
														
															|  |             if (flag) {
 |  | 
 | 
												
													
														
															|  |                 sql = sql + "date_format(op.create_time,'%Y-%m-%d %H:%i:%S' )  AS \"czrq\",";
 |  | 
 | 
												
													
														
															|  |                 sql = sql + "date_format(op.end_time,'%Y-%m-%d %H:%i:%S' )  AS \"endTime\", ";
 |  | 
 | 
												
													
														
															|  |             } else {
 |  | 
 | 
												
													
														
															|  |                 sql = sql + "to_char(op.create_time,'YYYY-MM-DD hh24:mi:ss')  AS \"czrq\",";
 |  | 
 | 
												
													
														
															|  |                 sql = sql + "to_char(op.end_time,'YYYY-MM-DD hh24:mi:ss')  AS \"endTime\",";
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |         } else {
 |  | 
 | 
												
													
														
															|  |             sql = sql + "date_format(op.create_time,'%Y-%m-%d %H:%i:%S' )  AS \"czrq\",";
 |  | 
 | 
												
													
														
															|  |             sql = sql + "date_format(op.end_time,'%Y-%m-%d %H:%i:%S' )  AS \"endTime\",";
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         sql = sql + "op.status AS \"status\"," +
 |  | 
 | 
												
													
														
															|  |                 "b.evaluate AS \"evaluate\"," +
 |  | 
 | 
												
													
														
															|  |                 "d.name AS \"patientName\"," +
 |  | 
 | 
												
													
														
															|  |                 "d.id as \"patientId\"," +
 |  | 
 | 
												
													
														
															|  |                 "d.idcard as \"patientIdcard\"," +
 |  | 
 | 
												
													
														
															|  |                 "d.sex as \"patientSex\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.consumer as \"consumer\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.consumer_name as \"consumerName\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.consumer_mobile as \"consumerMobile\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.id as \"outpatientId\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.type as \"consultType\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.general_doctor as \"generalDoctor\"," +
 |  | 
 | 
												
													
														
															|  |                 "op.icd10_name as \"icd10Name\"," +
 |  | 
 | 
												
													
														
															|  |                 "d.photo AS \"patientPhoto\" , " +
 |  | 
 | 
												
													
														
															|  |                 "op.doctor as \"doctor\" ," +
 |  | 
 | 
												
													
														
															|  |                 "op.source as \"source\"  ," +
 |  | 
 | 
												
													
														
															|  |                 "op.card_no as \"cardNo\"  ," +
 |  | 
 | 
												
													
														
															|  |                 "op.patient_cancel_value as \"patientCancelValue\" ," +
 |  | 
 | 
												
													
														
															|  |                 "op.patient_cancel_remark as \"patient_cancel_remark\"  " +
 |  | 
 | 
												
													
														
															|  |                 "FROM wlyy_outpatient op LEFT JOIN wlyy_consult a  ON a.relation_code = op.id \n" +
 |  | 
 | 
												
													
														
															|  |                 " LEFT join wlyy_consult_team b on a.id = b.consult" +
 |  | 
 | 
												
													
														
															|  |                 " LEFT JOIN base_patient d on op.patient = d.id " +
 |  | 
 | 
												
													
														
															|  |                 " WHERE 1=1 ";
 |  | 
 | 
												
													
														
															|  |         if (status == null) {
 |  | 
 | 
												
													
														
															|  |             sql += " and op.status = 0 and op.pay_status =1 and op.pay_status =2 and op.pay_status =3";
 |  | 
 | 
												
													
														
															|  |         } else if (status == 0) {
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         } else if (status == 1) {
 |  | 
 | 
												
													
														
															|  |             sql += " and op.status = 0 and op.pay_status =1 ";
 |  | 
 | 
												
													
														
															|  |         } else if (status == 2){
 |  | 
 | 
												
													
														
															|  |             sql += " and op.status = 1";
 |  | 
 | 
												
													
														
															|  |         } else if (status == 3) {
 |  | 
 | 
												
													
														
															|  |             sql += " and op.status = 2";
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         if (org.apache.commons.lang.StringUtils.isNotBlank(doctor)) {
 |  | 
 | 
												
													
														
															|  |             sql += " AND op.doctor='" + doctor + "' ";
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         if (org.apache.commons.lang.StringUtils.isNotBlank(patient)) {
 |  | 
 | 
												
													
														
															|  |             sql += " AND (op.consumer='" + patient + "' or op.patient ='" + patient + "')";
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         if (!StringUtils.isEmpty(title)) {
 |  | 
 | 
												
													
														
															|  |             title = "%" + title + "%";
 |  | 
 | 
												
													
														
															|  |             sql += " and (op.patient_name like '" + title + "' OR op.doctor_name like '" + title + "' OR op.dept_name like '" + title + "' )";
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         if (!StringUtils.isEmpty(start_time)) {
 |  | 
 | 
												
													
														
															|  |             if ("xm_ykyy_wx".equals(wxId)) {
 |  | 
 | 
												
													
														
															|  |                 if (flag) {
 |  | 
 | 
												
													
														
															|  |                     sql += " and op.create_time >= str_to_date('" + start_time + "','YYYY-MM-DD HH24:MI:SS')";
 |  | 
 | 
												
													
														
															|  |                 } else {
 |  | 
 | 
												
													
														
															|  |                     sql += " and op.create_time >= to_date('" + start_time + "','YYYY-MM-DD HH24:MI:SS')";
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |             } else {
 |  | 
 | 
												
													
														
															|  |                 sql += " and op.create_time >= '" + start_time + "'";
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         if (!StringUtils.isEmpty(end_time)) {
 |  | 
 | 
												
													
														
															|  |             if ("xm_ykyy_wx".equals(wxId)) {
 |  | 
 | 
												
													
														
															|  |                 if (flag) {
 |  | 
 | 
												
													
														
															|  |                     sql += " and op.create_time <= str_to_date('" + end_time + "','YYYY-MM-DD HH24:MI:SS')";
 |  | 
 | 
												
													
														
															|  |                 } else {
 |  | 
 | 
												
													
														
															|  |                     sql += " and op.create_time <= to_date('" + end_time + "','YYYY-MM-DD HH24:MI:SS')";
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |             } else {
 |  | 
 | 
												
													
														
															|  |                 sql += " and op.create_time <= '" + end_time + "'";
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         //咨询类型
 |  | 
 | 
												
													
														
															|  |         if (!StringUtils.isEmpty(type)) {
 |  | 
 | 
												
													
														
															|  |             if (type.equalsIgnoreCase("9")) {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.type =1 and op.outpatient_type = 1";
 |  | 
 | 
												
													
														
															|  |             } else if (type.equalsIgnoreCase("16")) {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.type =2 and op.outpatient_type = 1";
 |  | 
 | 
												
													
														
															|  |             } else if (type.equalsIgnoreCase("1")) {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.type =1 and op.outpatient_type = 3";
 |  | 
 | 
												
													
														
															|  |             } else if (type.equalsIgnoreCase("15")) {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.type =3 and op.outpatient_type = 3";
 |  | 
 | 
												
													
														
															|  |             } else if (type.equalsIgnoreCase("17")) {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.type =2 and op.outpatient_type = 3";
 |  | 
 | 
												
													
														
															|  |             } else if (type.equalsIgnoreCase("12")) {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.outpatient_type = 2";
 |  | 
 | 
												
													
														
															|  |             } else {
 |  | 
 | 
												
													
														
															|  |                 sql += " AND op.type in (1,2,3) ";
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         if (!StringUtils.isEmpty(id)) {
 |  | 
 | 
												
													
														
															|  |             sql += " and a.id = '" + id + "'";
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         sql += " ORDER BY op.create_time desc ";
 |  | 
 | 
												
													
														
															|  |         List<Map<String, Object>> List = hibenateUtils.createSQLQuery(sql);//
 |  | 
 | 
												
													
														
															|  |         for (Map<String, Object> map : List) {
 |  | 
 | 
												
													
														
															|  |             if (map.get("patientIdcard") != null) {
 |  | 
 | 
												
													
														
															|  |                 String idcard = map.get("patientIdcard").toString();
 |  | 
 | 
												
													
														
															|  |                 Integer age = IdCardUtil.getAgeForIdcard(idcard);
 |  | 
 | 
												
													
														
															|  |                 map.put("patientAge", age);
 |  | 
 | 
												
													
														
															|  |             } else {
 |  | 
 | 
												
													
														
															|  |                 map.put("patientAge", null);
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |             if (map.get("doctor") != null) {
 |  | 
 | 
												
													
														
															|  |                 String doctorId = map.get("doctor").toString();
 |  | 
 | 
												
													
														
															|  |                 BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(doctorId);
 |  | 
 | 
												
													
														
															|  |                 List<BaseDoctorHospitalDO> doctorHospitalDOS = doctorHospitalDao.findByDoctorCode(doctorId);
 |  | 
 | 
												
													
														
															|  |                 if (doctorHospitalDOS != null && doctorHospitalDOS.size() != 0) {
 |  | 
 | 
												
													
														
															|  |                     map.put("deptName", doctorHospitalDOS.get(0).getDeptName());
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |                 if (baseDoctorDO != null) {
 |  | 
 | 
												
													
														
															|  |                     map.put("doctorName", baseDoctorDO.getName());
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |             if (map.get("outpatientId") != null) {
 |  | 
 | 
												
													
														
															|  |                 WlyyOutpatientDO wlyyOutpatientDO = outpatientDao.findById(map.get("outpatientId").toString());
 |  | 
 | 
												
													
														
															|  |                 map.put("deptName", wlyyOutpatientDO.getDeptName());
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |             if (map.get("outpatientType") != null) {
 |  | 
 | 
												
													
														
															|  |                 if ("3".equalsIgnoreCase(map.get("outpatientType").toString()) && "1".equalsIgnoreCase(map.get("type").toString())) {
 |  | 
 | 
												
													
														
															|  |                     map.put("type", 1);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |                 if ("3".equalsIgnoreCase(map.get("outpatientType").toString()) && "2".equalsIgnoreCase(map.get("type").toString())) {
 |  | 
 | 
												
													
														
															|  |                     map.put("type", 17);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |                 if ("3".equalsIgnoreCase(map.get("outpatientType").toString()) && "3".equalsIgnoreCase(map.get("type").toString())) {
 |  | 
 | 
												
													
														
															|  |                     map.put("type", 15);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |                 if ("1".equalsIgnoreCase(map.get("outpatientType").toString()) && "1".equalsIgnoreCase(map.get("type").toString())) {
 |  | 
 | 
												
													
														
															|  |                     map.put("type", 9);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |                 if ("1".equalsIgnoreCase(map.get("outpatientType").toString()) && "2".equalsIgnoreCase(map.get("type").toString())) {
 |  | 
 | 
												
													
														
															|  |                     map.put("type", 16);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |                 if ("2".equalsIgnoreCase(map.get("outpatientType").toString())) {
 |  | 
 | 
												
													
														
															|  |                     map.put("type", 12);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |             if (map.get("id") != null) {
 |  | 
 | 
												
													
														
															|  |                 if ("1".equals(type) || "15".equals(type) || type.contains(",") || "17".equals(type)) {
 |  | 
 | 
												
													
														
															|  |                     String consultCode = map.get("id").toString();
 |  | 
 | 
												
													
														
															|  |                     List<WlyyConsultAdvice> consultAdvices = wlyyConsultAdviceDao.getByConsult(consultCode);
 |  | 
 | 
												
													
														
															|  |                     StringBuffer content = new StringBuffer();
 |  | 
 | 
												
													
														
															|  |                     for (WlyyConsultAdvice consultAdvice : consultAdvices) {
 |  | 
 | 
												
													
														
															|  |                         content.append(consultAdvice.getAdviceValue() + ",");
 |  | 
 | 
												
													
														
															|  |                     }
 |  | 
 | 
												
													
														
															|  |                     if (content != null && content.length() > 0) {
 |  | 
 | 
												
													
														
															|  |                         System.out.println("content+=====" + content);
 |  | 
 | 
												
													
														
															|  |                         content.deleteCharAt(content.length() - 1);
 |  | 
 | 
												
													
														
															|  |                     }
 |  | 
 | 
												
													
														
															|  |                     map.put("icd10Name", content);
 |  | 
 | 
												
													
														
															|  |                 } else if ("0".equals(type) && null != map.get("outpatientType") && "3".equalsIgnoreCase(map.get("outpatientType").toString())) {
 |  | 
 | 
												
													
														
															|  |                     String consultCode = map.get("id").toString();
 |  | 
 | 
												
													
														
															|  |                     List<WlyyConsultAdvice> consultAdvices = wlyyConsultAdviceDao.getByConsult(consultCode);
 |  | 
 | 
												
													
														
															|  |                     StringBuffer content = new StringBuffer();
 |  | 
 | 
												
													
														
															|  |                     for (WlyyConsultAdvice consultAdvice : consultAdvices) {
 |  | 
 | 
												
													
														
															|  |                         content.append(consultAdvice.getAdviceValue() + ",");
 |  | 
 | 
												
													
														
															|  |                     }
 |  | 
 | 
												
													
														
															|  |                     if (content != null && content.length() > 0) {
 |  | 
 | 
												
													
														
															|  |                         System.out.println("content+=====" + content);
 |  | 
 | 
												
													
														
															|  |                         content.deleteCharAt(content.length() - 1);
 |  | 
 | 
												
													
														
															|  |                     }
 |  | 
 | 
												
													
														
															|  |                     map.put("icd10Name", content);
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         String pushSql = "";
 |  |         String pushSql = "";
 | 
												
													
														
															|  |         pushSql =
 |  |         pushSql =
 | 
												
													
														
															|  |                 "SELECT\n" +
 |  |                 "SELECT\n" +
 | 
												
													
														
															|  |                         "\ta.patient_name AS \"pname\",\n" +
 |  |                         "\ta.patient_name AS \"pname\",\n" +
 | 
												
													
														
															|  |                         "\ta.consumer_name AS \"dname\",\n" +
 |  | 
 | 
												
													
														
															|  | 
 |  |                         "\ta.doctor_name AS \"dname\",\n" +
 | 
												
													
														
															|  |                         "\ta.dept_name AS \"dept\",\n" +
 |  |                         "\ta.dept_name AS \"dept\",\n" +
 | 
												
													
														
															|  |                         "\ta.outpatient_type AS \"type\",\n" +
 |  |                         "\ta.outpatient_type AS \"type\",\n" +
 | 
												
													
														
															|  |                         "\ta.create_time AS \"ctime\",\n" +
 |  |                         "\ta.create_time AS \"ctime\",\n" +
 | 
												
											
												
													
														
															|  | @ -4534,10 +4345,14 @@ public class ImService {
 | 
												
													
														
															|  |             }
 |  |             }
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if (org.apache.commons.lang3.StringUtils.isNotBlank(doctor)) {
 |  |         if (org.apache.commons.lang3.StringUtils.isNotBlank(doctor)) {
 | 
												
													
														
															|  |             pushSql += " AND a.consumer_name like '%" + doctor + "%' ";
 |  | 
 | 
												
													
														
															|  | 
 |  |             pushSql += " AND a.doctor = '" + doctor + "' ";
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if (org.apache.commons.lang3.StringUtils.isNotBlank(patient)) {
 |  |         if (org.apache.commons.lang3.StringUtils.isNotBlank(patient)) {
 | 
												
													
														
															|  |             pushSql += " AND a.patient_name like '%" + patient + "%' ";
 |  | 
 | 
												
													
														
															|  | 
 |  |             pushSql += " AND a.patient = '" + patient + "' ";
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         if (!StringUtils.isEmpty(title)) {
 | 
												
													
														
															|  | 
 |  |             title = "%" + title + "%";
 | 
												
													
														
															|  | 
 |  |             pushSql += " and (a.patient_name like '" + title + "' OR a.doctor_name like '" + title + "' OR a.dept_name like '" + title + "' )";
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if (org.apache.commons.lang3.StringUtils.isNotBlank(start_time)) {
 |  |         if (org.apache.commons.lang3.StringUtils.isNotBlank(start_time)) {
 | 
												
													
														
															|  |             if ("xm_ykyy_wx".equals(wxId)) {
 |  |             if ("xm_ykyy_wx".equals(wxId)) {
 | 
												
											
												
													
														
															|  | @ -4559,7 +4374,7 @@ public class ImService {
 | 
												
													
														
															|  |                     pushSql += " and a.create_time <= to_date('" + end_time + " 23:59:59','YYYY-MM-DD HH24:MI:SS')";
 |  |                     pushSql += " and a.create_time <= to_date('" + end_time + " 23:59:59','YYYY-MM-DD HH24:MI:SS')";
 | 
												
													
														
															|  |                 }
 |  |                 }
 | 
												
													
														
															|  |             } else {
 |  |             } else {
 | 
												
													
														
															|  |                 sql += " AND a.create_time <='" + end_time + " 23:59:59'";
 |  | 
 | 
												
													
														
															|  | 
 |  |                 pushSql += " AND a.create_time <='" + end_time + " 23:59:59'";
 | 
												
													
														
															|  |             }
 |  |             }
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         pushSql = pushSql + "\tORDER BY a.create_time desc ";
 |  |         pushSql = pushSql + "\tORDER BY a.create_time desc ";
 | 
												
											
												
													
														
															|  | @ -4569,7 +4384,6 @@ public class ImService {
 | 
												
													
														
															|  |         return MixEnvelop.getSuccessListWithPage2(BaseHospitalRequestMapping.Prescription.api_success, mapList);
 |  |         return MixEnvelop.getSuccessListWithPage2(BaseHospitalRequestMapping.Prescription.api_success, mapList);
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     public List<Map<String, Object>> doctorUpcomingList2(String doctorCode, String type) {
 |  |     public List<Map<String, Object>> doctorUpcomingList2(String doctorCode, String type) {
 | 
												
													
														
															|  |         String sql = "";
 |  |         String sql = "";
 | 
												
													
														
															|  |         if ("1,15,17".equals(type)) {
 |  |         if ("1,15,17".equals(type)) {
 |