hxm 3 лет назад
Родитель
Сommit
44eaca6c47
1 измененных файлов с 8 добавлено и 194 удалено
  1. 8 194
      business/im-service/src/main/java/com/yihu/jw/im/service/ImService.java

+ 8 - 194
business/im-service/src/main/java/com/yihu/jw/im/service/ImService.java

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