|
@ -0,0 +1,421 @@
|
|
|
package com.yihu.jw.care.service.admin;
|
|
|
|
|
|
import com.yihu.jw.care.dao.assistance.EmergencyAssistanceDao;
|
|
|
import com.yihu.jw.care.dao.message.UrgeReminderRecordDao;
|
|
|
import com.yihu.jw.care.dao.security.SecurityMonitoringOrderDao;
|
|
|
import com.yihu.jw.care.dao.team.BaseTeamMemberDao;
|
|
|
import com.yihu.jw.care.service.common.PermissionService;
|
|
|
import com.yihu.jw.care.util.MessageUtil;
|
|
|
import com.yihu.jw.care.vo.OrgVo;
|
|
|
import com.yihu.jw.care.vo.UserVo;
|
|
|
import com.yihu.jw.doctor.dao.BaseDoctorDao;
|
|
|
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
|
|
|
import com.yihu.jw.entity.care.assistance.EmergencyAssistanceDO;
|
|
|
import com.yihu.jw.entity.care.message.UrgeReminderRecordDO;
|
|
|
import com.yihu.jw.entity.care.securitymonitoring.SecurityMonitoringOrderDO;
|
|
|
import com.yihu.jw.restmodel.web.PageEnvelop;
|
|
|
import com.yihu.jw.util.common.IdCardUtil;
|
|
|
import com.yihu.jw.util.date.DateUtil;
|
|
|
import com.yihu.jw.utils.StringUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* Created by yeshijie on 2022/11/15.
|
|
|
*/
|
|
|
@Service
|
|
|
public class AdminManageService {
|
|
|
|
|
|
@Autowired
|
|
|
private JdbcTemplate jdbcTemplate;
|
|
|
@Resource
|
|
|
private MessageUtil messageUtil;
|
|
|
@Resource
|
|
|
private EmergencyAssistanceDao emergencyAssistanceDao;
|
|
|
@Resource
|
|
|
private SecurityMonitoringOrderDao securityMonitoringOrderDao;
|
|
|
@Resource
|
|
|
private BaseTeamMemberDao baseTeamMemberDao;
|
|
|
@Resource
|
|
|
private PermissionService permissionService;
|
|
|
@Resource
|
|
|
private BaseDoctorDao doctorDao;
|
|
|
@Resource
|
|
|
private UrgeReminderRecordDao urgeReminderRecordDao;
|
|
|
|
|
|
/**
|
|
|
* 获取紧急救助预警中的工单数
|
|
|
*/
|
|
|
public Integer getEmergencyAssistanceNum(){
|
|
|
String sql = "select count(id) from base_emergency_assistance_order where status =1";
|
|
|
return jdbcTemplate.queryForObject(sql,Integer.class);
|
|
|
}
|
|
|
/**
|
|
|
* 工单催促提醒
|
|
|
* 20紧急呼叫22安防工单
|
|
|
*/
|
|
|
public void orderUrgeReminder(String id,String orderType){
|
|
|
synchronized (id.intern()){
|
|
|
UrgeReminderRecordDO recordDO = urgeReminderRecordDao.findByTypeAndOrderId(orderType,id);
|
|
|
if(recordDO==null){
|
|
|
recordDO = new UrgeReminderRecordDO();
|
|
|
recordDO.setOrderId(id);
|
|
|
recordDO.setType(orderType);
|
|
|
urgeReminderRecordDao.save(recordDO);
|
|
|
String sender = permissionService.getUID();
|
|
|
BaseDoctorDO baseDoctorDO = doctorDao.findById(sender);
|
|
|
String patient;
|
|
|
String name;
|
|
|
String teamCode;
|
|
|
if("20".equals(orderType)){
|
|
|
EmergencyAssistanceDO orderDO = emergencyAssistanceDao.findOne(id);
|
|
|
patient = orderDO.getPatient();
|
|
|
name = orderDO.getPatientName();
|
|
|
teamCode = orderDO.getTeamCode();
|
|
|
}else {
|
|
|
SecurityMonitoringOrderDO orderDO = securityMonitoringOrderDao.findOne(id);
|
|
|
patient = orderDO.getPatient();
|
|
|
name = orderDO.getPatientName();
|
|
|
teamCode = orderDO.getTeamCode();
|
|
|
}
|
|
|
List<BaseDoctorDO> doctorDOS = baseTeamMemberDao.findAllMembersByLevel(teamCode,2);
|
|
|
for (BaseDoctorDO doctorDO:doctorDOS){
|
|
|
String dingDingBody = doctorDO.getName()+"社工您好,"+name+"老人的紧急预警还未处理,管理员提醒您及时处理,请进入朝晖云照护应用查看。";
|
|
|
messageUtil.sendDoctorDingdingMessage(doctorDO,null,"text","2",dingDingBody,null,null);
|
|
|
messageUtil.createToDoWorkReminder(doctorDO.getId(),baseDoctorDO.getId(),baseDoctorDO.getName(),id,orderType);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//type 2社工 3助老员 4教师
|
|
|
//2. 社区医院3. 养老机构 4. 托育机构
|
|
|
public List<Map<String,Object>> getOrgList(String type){
|
|
|
if("2".equals(type)){
|
|
|
String sql = "SELECT distinct t.name orgName,t.org_code orgCode" +
|
|
|
" from base_team t,base_team_member tm" +
|
|
|
" WHERE t.id =tm.team_code and t.del=1 and tm.del = '1' ";
|
|
|
return jdbcTemplate.queryForList(sql);
|
|
|
}else {
|
|
|
String filter = "";
|
|
|
String sqltmp = "SELECT GROUP_CONCAT(dict_code) orgCodes from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_older' ";
|
|
|
List<Map<String,Object>> listtmp = jdbcTemplate.queryForList(sqltmp);
|
|
|
if(listtmp.size()>0){
|
|
|
String orgCodes = String.valueOf(listtmp.get(0).get("orgCodes"));
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and a.id not in ('"+orgCodes+"')";
|
|
|
}
|
|
|
//2社工, 3教师,4助老员
|
|
|
String sql = "select code orgCode,name orgName from base_org a where a.del=1 and a.type="+type +filter;
|
|
|
return jdbcTemplate.queryForList(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 管理端通讯录
|
|
|
* type 1照护老人 2社工 3助老员 4教师 5幼儿
|
|
|
*/
|
|
|
public PageEnvelop getUserList(String type,String orgCode, String name, Integer page, Integer size){
|
|
|
PageEnvelop envelop = new PageEnvelop();
|
|
|
String limit = " limit "+(page-1)*size+","+size;
|
|
|
switch (type){
|
|
|
case "1":
|
|
|
envelop = getOlderList(name, limit);
|
|
|
break;
|
|
|
case "2":
|
|
|
envelop = getSocialWorkerList(name,orgCode, limit);
|
|
|
break;
|
|
|
case "3":
|
|
|
envelop = getHelperList(name,orgCode, limit);
|
|
|
break;
|
|
|
case "4":
|
|
|
envelop = getTeacherList(name,orgCode, limit);
|
|
|
break;
|
|
|
case "5":
|
|
|
envelop = getChildList(name, limit);
|
|
|
break;
|
|
|
}
|
|
|
envelop.setPageSize(size);
|
|
|
envelop.setCurrPage(page);
|
|
|
return envelop;
|
|
|
}
|
|
|
|
|
|
public PageEnvelop getOlderList(String name,String limit){
|
|
|
String filter = "";
|
|
|
String sqltmp = "SELECT GROUP_CONCAT(dict_code) orgCodes from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_older' ";
|
|
|
List<Map<String,Object>> listtmp = jdbcTemplate.queryForList(sqltmp);
|
|
|
if(listtmp.size()>0){
|
|
|
String orgCodes = String.valueOf(listtmp.get(0).get("orgCodes"));
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and a.id not in ('"+orgCodes+"')";
|
|
|
}
|
|
|
|
|
|
List<Map<String,Object>> list = findOld(name,null,limit,filter);
|
|
|
Long count = findOldTotal(name,null,filter);
|
|
|
return PageEnvelop.getSuccessListWithPage("查找成功",list,0,0,count);
|
|
|
}
|
|
|
public List<Map<String,Object>> findOld(String name,String residentialArea,String limit,String filter1){
|
|
|
String sql = "SELECT DISTINCT a.id,a.name,a.photo,a.idcard,CAST(IFNULL(a.birthday,'') AS char ) birthday,a.residential_area residentialArea,a.sex " +
|
|
|
",a.ykt_id yktId, case 1 WHEN openid is not null then 1 WHEN a.on_line = '1' then 1 ELSE 0 end as online,IFNULL(sign_status,0) signStatus from base_patient a " +
|
|
|
" WHERE a.archive_type = 1 and a.del = '1' ";
|
|
|
|
|
|
sql+=" and (a.sign_status=1 or (EXISTS (select 1 from wlyy_patient_device pd where pd.user = a.id and pd.del=0))) ";
|
|
|
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and name like '%"+name+"%' ";
|
|
|
}
|
|
|
if(!StringUtil.isBlank(residentialArea)){
|
|
|
sql+= " and residential_area = '"+residentialArea+"' ";
|
|
|
}
|
|
|
sql += filter1;
|
|
|
sql += " GROUP BY a.id,a.name,a.photo,a.idcard,a.birthday,a.residential_area,a.sex,a.ykt_id,online,signStatus ";
|
|
|
sql += " ORDER BY online desc,a.ykt_id desc,signStatus desc";
|
|
|
sql += limit;
|
|
|
List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
|
|
|
for (Map<String,Object> map:list){
|
|
|
String id = map.get("id")+"";
|
|
|
String familySql = "select t2.id,t2.name,t2.sex,t2.mobile,t2.idcard,if(t2.openid is null,0,1) online,t2.photo,t1.family_relation " +
|
|
|
"from base_patient t2 left JOIN base_patient_family_member t1 on t1.family_member = t2.id " +
|
|
|
"where t2.archive_type=3 and t2.del=1 and t1.patient='"+id+"'";
|
|
|
map.put("family",jdbcTemplate.queryForList(familySql));
|
|
|
}
|
|
|
return list;
|
|
|
}
|
|
|
|
|
|
public Long findOldTotal(String name,String residentialArea,String filter){
|
|
|
String sql = "SELECT count(DISTINCT a.id) from base_patient a WHERE a.archive_type = 1 and a.del = '1' ";
|
|
|
|
|
|
sql+=" and (a.sign_status=1 or (EXISTS (select 1 from wlyy_patient_device pd where pd.user = a.id and pd.del=0))) ";
|
|
|
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and name like '%"+name+"%' ";
|
|
|
}
|
|
|
if(!StringUtil.isBlank(residentialArea)){
|
|
|
sql+= " and residential_area = '"+residentialArea+"' ";
|
|
|
}
|
|
|
|
|
|
sql += filter;
|
|
|
return jdbcTemplate.queryForObject(sql,Long.class);
|
|
|
}
|
|
|
|
|
|
public PageEnvelop getSocialWorkerList(String name,String orgCode,String limit){
|
|
|
String filter = "";
|
|
|
if(!StringUtil.isBlank(orgCode)){
|
|
|
filter = " and t.org_code = '"+orgCode+"'";
|
|
|
}else {
|
|
|
String sqltmp = "SELECT GROUP_CONCAT(dict_code) orgCodes from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_org' ";
|
|
|
List<Map<String,Object>> listtmp = jdbcTemplate.queryForList(sqltmp);
|
|
|
if(listtmp.size()>0){
|
|
|
String orgCodes = String.valueOf(listtmp.get(0).get("orgCodes"));
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and t.org_code not in ('"+orgCodes+"')";
|
|
|
}
|
|
|
}
|
|
|
|
|
|
List<OrgVo> list = findSocialWorker(name,limit,filter);
|
|
|
Long count = findSocialWorkerTotal(name,filter);
|
|
|
return PageEnvelop.getSuccessListWithPage("查找成功",list,0,0,count);
|
|
|
}
|
|
|
public List<OrgVo> findSocialWorker(String name,String limit,String fileter){
|
|
|
String sql = "SELECT a.id,a.name,a.photo,a.sex,IFNULL(a.on_line,0) online,a.mobile,t.name orgName,t.org_code orgCode" +
|
|
|
" from base_doctor a,base_team t,base_team_member tm" +
|
|
|
" WHERE a.id=tm.doctor_code and a.doctor_level = 2 and t.id =tm.team_code and t.del=1 and a.del = '1' and tm.del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and a.name like '%"+name+"%' ";
|
|
|
}
|
|
|
sql += fileter;
|
|
|
sql += " ORDER BY online desc";
|
|
|
sql+=limit;
|
|
|
List<UserVo> list = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(UserVo.class));
|
|
|
Map<String,List<UserVo>> userMap = list.stream().collect(Collectors.groupingBy(UserVo::getOrgCode));
|
|
|
Map<String,String> orgMap = list.stream().collect(Collectors.toMap(UserVo::getOrgCode, UserVo::getOrgName,(key1 , key2)-> key2 ));
|
|
|
List<OrgVo> orgVoList = new ArrayList<>();
|
|
|
for (String key:orgMap.keySet()){
|
|
|
String orgName = orgMap.get(key);
|
|
|
OrgVo orgVo = new OrgVo();
|
|
|
orgVo.setOrgName(orgName);
|
|
|
orgVo.setOrgCode(key);
|
|
|
List<UserVo> temList = userMap.get(key);
|
|
|
orgVo.setUserList(temList);
|
|
|
orgVoList.add(orgVo);
|
|
|
}
|
|
|
return orgVoList;
|
|
|
}
|
|
|
|
|
|
public Long findSocialWorkerTotal(String name,String filter){
|
|
|
String sql = "SELECT count(a.id) from base_doctor a,base_team t,base_team_member tm " +
|
|
|
"WHERE a.id=tm.doctor_code and a.doctor_level = 2 and t.id =tm.team_code and t.del=1 and a.del = '1' and tm.del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and a.name like '%"+name+"%' ";
|
|
|
}
|
|
|
sql += filter;
|
|
|
return jdbcTemplate.queryForObject(sql,Long.class);
|
|
|
}
|
|
|
|
|
|
public PageEnvelop getHelperList(String name,String orgCode,String limit){
|
|
|
String filter = "";
|
|
|
if(StringUtil.isBlank(orgCode)){
|
|
|
String sqltmp = "SELECT GROUP_CONCAT(dict_code) orgCodes from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_org' ";
|
|
|
List<Map<String,Object>> listtmp = jdbcTemplate.queryForList(sqltmp);
|
|
|
if(listtmp.size()>0){
|
|
|
String orgCodes = String.valueOf(listtmp.get(0).get("orgCodes"));
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and h.org_code not in ('"+orgCodes+"')";
|
|
|
}
|
|
|
}else {
|
|
|
filter = " and h.org_code ='"+orgCode+"' ";
|
|
|
}
|
|
|
|
|
|
List<OrgVo> list = findHelper(name,limit,filter);
|
|
|
Long count = findHelperTotal(name,filter);
|
|
|
return PageEnvelop.getSuccessListWithPage("查找成功",list,0,0,count);
|
|
|
}
|
|
|
public List<OrgVo> findHelper(String name,String limit,String fileter){
|
|
|
String sql = "SELECT a.id,a.name,a.photo,a.sex,IFNULL(a.on_line,0) online,a.mobile,h.org_name orgName,h.org_code orgCode from base_doctor a,base_doctor_hospital h" +
|
|
|
" WHERE a.id=h.doctor_code and a.doctor_level = 4 and a.del = '1' and h.del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and a.name like '%"+name+"%' ";
|
|
|
}
|
|
|
sql += fileter;
|
|
|
sql += " ORDER BY online desc";
|
|
|
sql+=limit;
|
|
|
List<UserVo> list = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(UserVo.class));
|
|
|
Map<String,List<UserVo>> userMap = list.stream().collect(Collectors.groupingBy(UserVo::getOrgCode));
|
|
|
Map<String,String> orgMap = list.stream().collect(Collectors.toMap(UserVo::getOrgCode, UserVo::getOrgName,(key1 , key2)-> key2 ));
|
|
|
List<OrgVo> orgVoList = new ArrayList<>();
|
|
|
for (String key:orgMap.keySet()){
|
|
|
String orgName = orgMap.get(key);
|
|
|
OrgVo orgVo = new OrgVo();
|
|
|
orgVo.setOrgName(orgName);
|
|
|
orgVo.setOrgCode(key);
|
|
|
List<UserVo> temList = userMap.get(key);
|
|
|
orgVo.setUserList(temList);
|
|
|
orgVoList.add(orgVo);
|
|
|
}
|
|
|
return orgVoList;
|
|
|
}
|
|
|
|
|
|
public Long findHelperTotal(String name,String filter){
|
|
|
String sql = "SELECT count(a.id) from base_doctor a,base_doctor_hospital h WHERE a.id=h.doctor_code and a.doctor_level = 4 and a.del = '1' and h.del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and name like '%"+name+"%' ";
|
|
|
}
|
|
|
sql += filter;
|
|
|
return jdbcTemplate.queryForObject(sql,Long.class);
|
|
|
}
|
|
|
|
|
|
public PageEnvelop getTeacherList(String name,String orgCode,String limit){
|
|
|
String filter = "";
|
|
|
if(StringUtil.isBlank(orgCode)){
|
|
|
String sqltmp = "SELECT GROUP_CONCAT(dict_code) orgCodes from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_org' ";
|
|
|
List<Map<String,Object>> listtmp = jdbcTemplate.queryForList(sqltmp);
|
|
|
if(listtmp.size()>0){
|
|
|
String orgCodes = String.valueOf(listtmp.get(0).get("orgCodes"));
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and h.org_code not in ('"+orgCodes+"')";
|
|
|
}
|
|
|
}else {
|
|
|
filter = " and h.org_code = '"+orgCode+"' ";
|
|
|
|
|
|
}
|
|
|
List<OrgVo> list = findTeacherper(name,limit,filter);
|
|
|
Long count = findTeacherTotal(name,filter);
|
|
|
return PageEnvelop.getSuccessListWithPage("查找成功",list,0,0,count);
|
|
|
}
|
|
|
public List<OrgVo> findTeacherper(String name,String limit,String fileter){
|
|
|
String sql = "SELECT a.id,a.name,a.photo,a.sex,IFNULL(a.on_line,0) online,a.mobile,h.org_name orgName,h.org_code orgCode from base_doctor a,base_doctor_hospital h" +
|
|
|
" WHERE a.id=h.doctor_code and a.doctor_level = 3 and a.del = '1' and h.del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and a.name like '%"+name+"%' ";
|
|
|
}
|
|
|
sql += fileter;
|
|
|
sql += " ORDER BY online desc";
|
|
|
sql+=limit;
|
|
|
List<UserVo> list = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(UserVo.class));
|
|
|
Map<String,List<UserVo>> userMap = list.stream().collect(Collectors.groupingBy(UserVo::getOrgCode));
|
|
|
Map<String,String> orgMap = list.stream().collect(Collectors.toMap(UserVo::getOrgCode, UserVo::getOrgName,(key1 , key2)-> key2 ));
|
|
|
List<OrgVo> orgVoList = new ArrayList<>();
|
|
|
for (String key:orgMap.keySet()){
|
|
|
String orgName = orgMap.get(key);
|
|
|
OrgVo orgVo = new OrgVo();
|
|
|
orgVo.setOrgName(orgName);
|
|
|
orgVo.setOrgCode(key);
|
|
|
List<UserVo> temList = userMap.get(key);
|
|
|
orgVo.setUserList(temList);
|
|
|
orgVoList.add(orgVo);
|
|
|
}
|
|
|
return orgVoList;
|
|
|
}
|
|
|
|
|
|
public Long findTeacherTotal(String name,String filter){
|
|
|
String sql = "SELECT count(a.id) from base_doctor a,base_doctor_hospital h WHERE a.id=h.doctor_code and a.doctor_level = 3 and a.del = '1' and h.del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and name like '%"+name+"%' ";
|
|
|
}
|
|
|
sql += filter;
|
|
|
return jdbcTemplate.queryForObject(sql,Long.class);
|
|
|
}
|
|
|
|
|
|
public PageEnvelop getChildList(String name,String limit){
|
|
|
String filter = "";
|
|
|
String sqltmp = "SELECT GROUP_CONCAT(dict_code) orgCodes from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_child' ";
|
|
|
List<Map<String,Object>> listtmp = jdbcTemplate.queryForList(sqltmp);
|
|
|
if(listtmp.size()>0){
|
|
|
String orgCodes = String.valueOf(listtmp.get(0).get("orgCodes"));
|
|
|
orgCodes = orgCodes.replaceAll(",","','");
|
|
|
filter = " and id not in ('"+orgCodes+"')";
|
|
|
}
|
|
|
|
|
|
List<Map<String,Object>> list = findChild(name,null,limit,filter);
|
|
|
Long count = findChildTotal(name,null,filter);
|
|
|
return PageEnvelop.getSuccessListWithPage("查找成功",list,0,0,count);
|
|
|
}
|
|
|
|
|
|
public List<Map<String,Object>> findChild(String name,String residentialArea,String limit,String filter1){
|
|
|
String sql = "SELECT id,name,photo,mobile,idcard,sex,birthday from base_patient WHERE archive_type = 2 and del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and name like '%"+name+"%' ";
|
|
|
}
|
|
|
if(!StringUtil.isBlank(residentialArea)){
|
|
|
sql+= " and residential_area = '"+residentialArea+"' ";
|
|
|
}
|
|
|
|
|
|
sql += filter1;
|
|
|
sql += " order by id desc";
|
|
|
sql+=limit;
|
|
|
List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
|
|
|
for (Map<String,Object> map:list){
|
|
|
String paientId = map.get("id").toString();
|
|
|
String idcardNo = map.get("idcard") + "";
|
|
|
if(map.get("birthday")!=null){
|
|
|
Date birthday = DateUtil.strToDate(map.get("birthday").toString());
|
|
|
Integer age = IdCardUtil.getAgeByIdcardOrBirthday(idcardNo,birthday);
|
|
|
map.put("age",age);
|
|
|
}else {
|
|
|
Integer age = IdCardUtil.getAgeForIdcard(idcardNo);
|
|
|
map.put("age",age);
|
|
|
}
|
|
|
}
|
|
|
return list;
|
|
|
}
|
|
|
public Long findChildTotal(String name,String residentialArea,String filter){
|
|
|
String sql = "SELECT count(id) from base_patient WHERE archive_type = 2 and del = '1' ";
|
|
|
if(!StringUtil.isBlank(name)){
|
|
|
sql+= " and name like '%"+name+"%' ";
|
|
|
}
|
|
|
if(!StringUtil.isBlank(residentialArea)){
|
|
|
sql+= " and residential_area = '"+residentialArea+"' ";
|
|
|
}
|
|
|
sql += filter;
|
|
|
return jdbcTemplate.queryForObject(sql,Long.class);
|
|
|
}
|
|
|
}
|