|
@ -1100,57 +1100,56 @@ public class PatientInfoPlatFormService {
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and ord.patient not in ('"+orgCodes+"') ";
|
|
|
}
|
|
|
|
|
|
String sql1 = "SELECT\n" +
|
|
|
"\t'20' AS OrderType,\n" +
|
|
|
"\tp.archive_type archiveType,\n" +
|
|
|
"\tp.residential_area residentialArea,\n" +
|
|
|
"\tord.id,\n" +
|
|
|
"\tord.patient,\n" +
|
|
|
"\tp.NAME,\n" +
|
|
|
"\t'紧急呼叫' AS serve_desc,\n" +
|
|
|
"\tDATE_FORMAT( ord.create_time, '%Y-%m-%d %H:%i:%S' ) createTime,\n" +
|
|
|
"\tord.`status`,\n" +
|
|
|
"CASE\n" +
|
|
|
"\t\tp.sex \n" +
|
|
|
"\t\tWHEN 1 THEN\n" +
|
|
|
"\t\t'男' \n" +
|
|
|
"\t\tWHEN 2 THEN\n" +
|
|
|
"\t\t'女' ELSE p.sex \n" +
|
|
|
"\tEND AS sex,\n" +
|
|
|
"\tTIMESTAMPDIFF(YEAR,p.birthday,now()) AS age \n" +
|
|
|
"FROM\n" +
|
|
|
"\tbase_emergency_assistance_order ord\n" +
|
|
|
"\tINNER JOIN base_patient p ON ord.patient = p.id \n" +
|
|
|
"\tAND p.del = 1 \n" +
|
|
|
"WHERE\n" +
|
|
|
"\tord.STATUS = 1 "+filter;
|
|
|
String sql2 = "SELECT\n" +
|
|
|
"\t\t'22' AS 'OrderType',\n" +
|
|
|
"\t\tp.archive_type archiveType,\n" +
|
|
|
"\t\tp.residential_area residentialArea,\n" +
|
|
|
"\t\tord.id,\n" +
|
|
|
"\t\tord.patient,\n" +
|
|
|
"\t\tp.NAME,\n" +
|
|
|
"\t\tord.serve_desc,\n" +
|
|
|
"\t\tDATE_FORMAT( ord.create_time, '%Y-%m-%d %H:%i:%S' ) createTime,\n" +
|
|
|
"\t\tord.`status`,\n" +
|
|
|
"\tCASE\n" +
|
|
|
"\t\t\tp.sex \n" +
|
|
|
"\t\t\tWHEN 1 THEN\n" +
|
|
|
"\t\t\t'男' \n" +
|
|
|
"\t\t\tWHEN 2 THEN\n" +
|
|
|
"\t\t\t'女' ELSE p.sex \n" +
|
|
|
"\t\tEND AS sex,\n" +
|
|
|
"\t\tTIMESTAMPDIFF(YEAR,p.birthday,now()) AS age \n" +
|
|
|
"\tFROM\n" +
|
|
|
"\t\tbase_security_monitoring_order ord\n" +
|
|
|
"\t\tINNER JOIN base_patient p ON ord.patient = p.id \n" +
|
|
|
"\t\twhere ord.status = 1"+filter;
|
|
|
String sql1 = " SELECT\n" +
|
|
|
" '20' AS OrderType,\n" +
|
|
|
" p.archive_type archiveType,\n" +
|
|
|
" p.residential_area residentialArea,\n" +
|
|
|
" ord.id,\n" +
|
|
|
" ord.patient,\n" +
|
|
|
" p.name,\n" +
|
|
|
" '紧急呼叫' AS serve_desc,\n" +
|
|
|
" DATE_FORMAT( ord.create_time, '%Y-%m-%d %H:%i:%S' ) createTime,\n" +
|
|
|
" ord.`status`,\n" +
|
|
|
" CASE \n" +
|
|
|
" p.sex \n" +
|
|
|
" WHEN 1 THEN\n" +
|
|
|
" '男' \n" +
|
|
|
" WHEN 2 THEN\n" +
|
|
|
" '女' ELSE p.sex \n" +
|
|
|
" END AS sex,\n" +
|
|
|
" TIMESTAMPDIFF(YEAR,p.birthday,now()) AS age \n" +
|
|
|
" FROM \n" +
|
|
|
" base_emergency_assistance_order ord\n" +
|
|
|
" INNER JOIN base_patient p ON ord.patient = p.id \n" +
|
|
|
" AND p.del = 1 \n" +
|
|
|
" WHERE " +
|
|
|
" ord.STATUS = 1 "+filter;
|
|
|
String sql2 = " SELECT \n" +
|
|
|
" '22' AS 'OrderType',\n" +
|
|
|
" p.archive_type archiveType,\n" +
|
|
|
" p.residential_area residentialArea,\n" +
|
|
|
" ord.id,\n" +
|
|
|
" ord.patient,\n" +
|
|
|
" p.name,\n" +
|
|
|
" ord.serve_desc,\n" +
|
|
|
" DATE_FORMAT( ord.create_time, '%Y-%m-%d %H:%i:%S' ) createTime,\n" +
|
|
|
" ord.`status`,\n" +
|
|
|
" CASE \n" +
|
|
|
" p.sex \n" +
|
|
|
" WHEN 1 THEN\n" +
|
|
|
" '男' \n" +
|
|
|
" WHEN 2 THEN\n" +
|
|
|
" '女' ELSE p.sex \n" +
|
|
|
" END AS sex,\n" +
|
|
|
" TIMESTAMPDIFF(YEAR,p.birthday,now()) AS age \n" +
|
|
|
" FROM\n" +
|
|
|
" base_security_monitoring_order ord \n" +
|
|
|
" INNER JOIN base_patient p ON ord.patient = p.id \n" +
|
|
|
" where ord.status = 1"+filter;
|
|
|
|
|
|
String sql = "select * FROM (" +
|
|
|
"\t"+sql1+" UNION "+sql2 +
|
|
|
"\t) t order by t.createTime desc limit "+page*pageSize+","+pageSize;
|
|
|
" "+sql1+" UNION "+sql2 +
|
|
|
" ) t order by t.createTime desc limit "+page*pageSize+","+pageSize;
|
|
|
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
|
|
|
return PageEnvelop.getSuccessListWithPage("获取成功",list,page,pageSize,this.getWarningCountByEmergencyAndSecurity(filter));
|
|
|
}
|
|
@ -1174,37 +1173,37 @@ public class PatientInfoPlatFormService {
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and idx.user not in ('"+orgCodes+"') ";
|
|
|
}
|
|
|
String sql = "SELECT\n" +
|
|
|
"\t\tidx.id,\n" +
|
|
|
"\t\tidx.user,\n" +
|
|
|
"\t\tidx.`name`,idx.type,\n" +
|
|
|
"\t\tp.archive_type archiveType,\n" +
|
|
|
"\t\tp.residential_area residentialArea,\n" +
|
|
|
"\t\t'健康监测' AS serve_desc,\n" +
|
|
|
"\tTIMESTAMPDIFF(YEAR,p.birthday,now()) AS age, \n" +
|
|
|
"\t\tidx.czrq,\n" +
|
|
|
"\t\tvalue1,\n" +
|
|
|
"\t\tvalue2,\n" +
|
|
|
"\t\tvalue3,\n" +
|
|
|
"\t\tvalue4,\n" +
|
|
|
"\t\tvalue5,\n" +
|
|
|
"\t\tvalue6,\n" +
|
|
|
"\t\tvalue7,\n" +
|
|
|
"\t\ttype,DATE_FORMAT( idx.czrq, '%Y-%m-%d %H:%i:%S' ) createTime, \n" +
|
|
|
"\tCASE\n" +
|
|
|
"\t\t\tp.sex \n" +
|
|
|
"\t\t\tWHEN 1 THEN\n" +
|
|
|
"\t\t\t'男' \n" +
|
|
|
"\t\t\tWHEN 2 THEN\n" +
|
|
|
"\t\t\t'女' ELSE p.sex \n" +
|
|
|
"\t\tEND AS sex\n" +
|
|
|
"\tFROM\n" +
|
|
|
"\t\twlyy_patient_health_index idx\n" +
|
|
|
"\t\tINNER JOIN base_patient p ON idx.USER = p.id AND p.del = 1 \n" +
|
|
|
"\tWHERE\n" +
|
|
|
"\t\tidx.del = 1 \n" +
|
|
|
"\t\tand idx.status=1 \n" +
|
|
|
"\t\tAND idx.type < 3 "+filter+" ORDER By idx.czrq DESC limit "+page*pageSize+","+pageSize;
|
|
|
String sql = " SELECT\n" +
|
|
|
" idx.id,\n" +
|
|
|
" idx.user,\n" +
|
|
|
" idx.`name`,idx.type,\n" +
|
|
|
" p.archive_type archiveType,\n" +
|
|
|
" p.residential_area residentialArea,\n" +
|
|
|
" '健康监测' AS serve_desc,\n" +
|
|
|
" TIMESTAMPDIFF(YEAR,p.birthday,now()) AS age, \n" +
|
|
|
" idx.czrq,\n" +
|
|
|
" value1,\n" +
|
|
|
" value2,\n" +
|
|
|
" value3,\n" +
|
|
|
" value4,\n" +
|
|
|
" value5,\n" +
|
|
|
" value6,\n" +
|
|
|
" value7,\n" +
|
|
|
" type,DATE_FORMAT( idx.czrq, '%Y-%m-%d %H:%i:%S' ) createTime, \n" +
|
|
|
" CASE\n" +
|
|
|
" p.sex \n" +
|
|
|
" WHEN 1 THEN\n" +
|
|
|
" '男' \n" +
|
|
|
" WHEN 2 THEN\n" +
|
|
|
" '女' ELSE p.sex \n" +
|
|
|
" END AS sex\n" +
|
|
|
" FROM\n" +
|
|
|
" wlyy_patient_health_index idx\n" +
|
|
|
" INNER JOIN base_patient p ON idx.USER = p.id AND p.del = 1 \n" +
|
|
|
" WHERE\n" +
|
|
|
" idx.del = 1 \n" +
|
|
|
" and idx.status=1 \n" +
|
|
|
" AND idx.type < 3 "+filter+" ORDER By idx.czrq DESC limit "+page*pageSize+","+pageSize;
|
|
|
List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
|
|
|
if(!ObjectUtils.isEmpty(list)){
|
|
|
//查体征预警信息,偏高偏低
|
|
@ -1235,22 +1234,22 @@ public class PatientInfoPlatFormService {
|
|
|
Long getWarningCountByEmergencyAndSecurity(String filter){
|
|
|
//紧急呼救
|
|
|
String emergencySql = "SELECT count( ord.id ) warningCount \n" +
|
|
|
"\tFROM\n" +
|
|
|
"\t\tbase_emergency_assistance_order ord\n" +
|
|
|
"\t\tINNER JOIN base_patient p ON ord.patient = p.id and p.del=1 \n" +
|
|
|
"\tWHERE\n" +
|
|
|
"\t\t ord.STATUS = 1"+filter;
|
|
|
" FROM " +
|
|
|
" base_emergency_assistance_order ord " +
|
|
|
" INNER JOIN base_patient p ON ord.patient = p.id and p.del=1 \n" +
|
|
|
" WHERE\n" +
|
|
|
" ord.STATUS = 1"+filter;
|
|
|
//安防监护
|
|
|
String securitySql = "SELECT count( ord.id ) warningCount \n" +
|
|
|
"\tFROM\n" +
|
|
|
"\t\tbase_security_monitoring_order ord\n" +
|
|
|
"\t\tINNER JOIN base_patient p ON ord.patient = p.id and p.del=1 \n" +
|
|
|
"\t\tAND ord.STATUS = 1"+filter;
|
|
|
" FROM\n" +
|
|
|
" base_security_monitoring_order ord\n" +
|
|
|
" INNER JOIN base_patient p ON ord.patient = p.id and p.del=1 \n" +
|
|
|
" AND ord.STATUS = 1"+filter;
|
|
|
String sqlCount = "SELECT\n" +
|
|
|
"\tsum( warningCount ) warningCount\n" +
|
|
|
"FROM\n" +
|
|
|
"\t( " + emergencySql + " UNION ALL " + securitySql +
|
|
|
") t";
|
|
|
" sum( warningCount ) warningCount\n" +
|
|
|
" FROM\n" +
|
|
|
" ( " + emergencySql + " UNION ALL " + securitySql +
|
|
|
" ) t";
|
|
|
return jdbcTemplate.queryForObject(sqlCount, Long.class);
|
|
|
}
|
|
|
|
|
@ -1261,14 +1260,14 @@ public class PatientInfoPlatFormService {
|
|
|
*/
|
|
|
Long getWarningCountByHealth(String filter){
|
|
|
String healthSql = "SELECT\n" +
|
|
|
"\tcount( idx.id ) \n" +
|
|
|
"FROM\n" +
|
|
|
"\twlyy_patient_health_index idx\n" +
|
|
|
"\tINNER JOIN base_patient p ON idx.USER = p.id AND p.del = 1 \n" +
|
|
|
"WHERE\n" +
|
|
|
"\tidx.status = 1 \n" +
|
|
|
"\tAND idx.del = 1 \n" +
|
|
|
"\tAND idx.type < 3 \n" + filter;
|
|
|
" count( idx.id ) \n" +
|
|
|
" FROM\n" +
|
|
|
" wlyy_patient_health_index idx\n" +
|
|
|
" INNER JOIN base_patient p ON idx.USER = p.id AND p.del = 1 \n" +
|
|
|
" WHERE\n" +
|
|
|
" idx.status = 1 \n" +
|
|
|
" AND idx.del = 1 \n" +
|
|
|
" AND idx.type < 3 \n" + filter;
|
|
|
return jdbcTemplate.queryForObject(healthSql, Long.class);
|
|
|
}
|
|
|
}
|