|
@ -2921,4 +2921,61 @@ public class StatisticsService {
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取招呼老人基本信息
|
|
|
|
* 签约老人+未签约有设备的
|
|
|
|
*/
|
|
|
|
public JSONObject findTendOld(Integer page,Integer size){
|
|
|
|
|
|
|
|
String sql = "SELECT DISTINCT p.id AS id,p.`name` AS `name`, p.sex AS sex,CASE WHEN LENGTH( p.idcard )= 18 THEN\n" +
|
|
|
|
"\t\tYEAR (\n" +
|
|
|
|
"\t\t\tnow()) - YEAR (\n" +
|
|
|
|
"\t\tsubstring( p.idcard, 7, 8 )) \n" +
|
|
|
|
"\t\tWHEN LENGTH( p.idcard )= 15 THEN\n" +
|
|
|
|
"\t\tYEAR (\n" +
|
|
|
|
"\t\t\tnow()) - YEAR (\n" +
|
|
|
|
"\t\tSTR_TO_DATE( CONCAT( '19', substring( p.idcard, 7, 2 )), '%Y' )) ELSE NULL \n" +
|
|
|
|
"\tEND AS age,\n" +
|
|
|
|
"\tp.mobile AS mobile,\n" +
|
|
|
|
"\tp.address AS address,\n" +
|
|
|
|
"\tt.`name` AS orgName,\n" +
|
|
|
|
"\tGROUP_CONCAT( DISTINCT d.NAME SEPARATOR ',' ) AS doctorName \n" +
|
|
|
|
"FROM base_patient p, base_service_package_sign_record sr, base_service_package_record r,base_service_package_item i, base_service_package pack,base_team t,base_team_member tm,base_doctor d \n" +
|
|
|
|
"WHERE sr.id = r.sign_id AND sr.STATUS = 1 AND r.service_package_id = i.service_package_id AND r.service_package_id = pack.id AND i.del = 1 AND sr.`status` = 1 AND CONVERT ( sr.patient USING utf8 ) = p.id \n" +
|
|
|
|
"\tAND r.team_code = t.id AND tm.team_code = t.id AND d.id = tm.doctor_code AND p.id NOT IN (SELECT DISTINCT dict_code from wlyy_hospital_sys_dict WHERE (dict_name = 'jkzl_child' or dict_name = 'jkzl_older' \n" +
|
|
|
|
" or dict_name = 'jkzl_user' or dict_name = 'jkzl_helper' or dict_name = 'jkzl_teacher' ) and dict_code is not null)\n" +
|
|
|
|
"GROUP BY p.idcard UNION SELECT p.id AS id,p.`name` AS `name`, p.sex AS sex,\n" +
|
|
|
|
"CASE\n" +
|
|
|
|
"\t\tWHEN LENGTH( p.idcard )= 18 THEN\n" +
|
|
|
|
"\t\tYEAR (\n" +
|
|
|
|
"\t\t\tnow()) - YEAR (\n" +
|
|
|
|
"\t\tsubstring( p.idcard, 7, 8 )) \n" +
|
|
|
|
"\t\tWHEN LENGTH( p.idcard )= 15 THEN\n" +
|
|
|
|
"\t\tYEAR (\n" +
|
|
|
|
"\t\t\tnow()) - YEAR (\n" +
|
|
|
|
"\t\tSTR_TO_DATE( CONCAT( '19', substring( p.idcard, 7, 2 )), '%Y' )) ELSE NULL \n" +
|
|
|
|
"\tEND AS age,\n" +
|
|
|
|
"\tp.mobile AS mobile,\n" +
|
|
|
|
"\tp.address AS address,\n" +
|
|
|
|
"\tp.address AS orgName,\n" +
|
|
|
|
"\t'' AS doctorName \n" +
|
|
|
|
"FROM base_patient p INNER JOIN wlyy_patient_device d ON p.id = d.`user` \n" +
|
|
|
|
"WHERE p.sign_status = 0 AND p.del = 1 AND d.del = 0 AND p.id NOT IN (SELECT DISTINCT dict_code from wlyy_hospital_sys_dict WHERE (dict_name = 'jkzl_child' or dict_name = 'jkzl_older' \n" +
|
|
|
|
" or dict_name = 'jkzl_user' or dict_name = 'jkzl_helper' or dict_name = 'jkzl_teacher' ) and dict_code is not null) ORDER BY id\n";
|
|
|
|
|
|
|
|
|
|
|
|
page = (page-1)*size;
|
|
|
|
|
|
|
|
sql += " limit "+page+","+size+"";
|
|
|
|
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
|
|
|
|
|
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
|
jsonObject.put("data",list);
|
|
|
|
jsonObject.put("oldTotal",list.size());
|
|
|
|
|
|
|
|
return jsonObject;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|