|
@ -21,6 +21,7 @@ import com.yihu.jw.entity.hospital.message.SystemMessageDO;
|
|
import com.yihu.jw.im.dao.ConsultDao;
|
|
import com.yihu.jw.im.dao.ConsultDao;
|
|
import com.yihu.jw.im.util.ImUtil;
|
|
import com.yihu.jw.im.util.ImUtil;
|
|
import com.yihu.jw.restmodel.emergency.EmergencyOrderVO;
|
|
import com.yihu.jw.restmodel.emergency.EmergencyOrderVO;
|
|
|
|
import com.yihu.jw.restmodel.web.PageEnvelop;
|
|
import com.yihu.jw.util.common.GpsUtil;
|
|
import com.yihu.jw.util.common.GpsUtil;
|
|
import com.yihu.jw.care.util.MessageUtil;
|
|
import com.yihu.jw.care.util.MessageUtil;
|
|
import com.yihu.jw.doctor.dao.BaseDoctorDao;
|
|
import com.yihu.jw.doctor.dao.BaseDoctorDao;
|
|
@ -215,7 +216,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
public JSONObject getSecurityOrderDetail(String orderID){
|
|
|
|
|
|
public JSONObject getSecurityOrderDetail(String orderID,String doctor){
|
|
JSONObject result = new JSONObject();
|
|
JSONObject result = new JSONObject();
|
|
EmergencyOrderVO emergencyOrderVO = new EmergencyOrderVO();
|
|
EmergencyOrderVO emergencyOrderVO = new EmergencyOrderVO();
|
|
SecurityMonitoringOrderDO orderDO = securityMonitoringOrderDao.findOne(orderID);
|
|
SecurityMonitoringOrderDO orderDO = securityMonitoringOrderDao.findOne(orderID);
|
|
@ -226,6 +227,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
logger.error(failMsg);
|
|
logger.error(failMsg);
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
emergencyOrderVO.setId(orderDO.getId());
|
|
BasePatientDO patientDO = basePatientDao.findById(orderDO.getPatient());
|
|
BasePatientDO patientDO = basePatientDao.findById(orderDO.getPatient());
|
|
Integer statustemp = Integer.valueOf(orderDO.getStatus()+"");
|
|
Integer statustemp = Integer.valueOf(orderDO.getStatus()+"");
|
|
String statusName = "";
|
|
String statusName = "";
|
|
@ -295,10 +297,14 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
Map<String,Object> tmp = new HashMap<>();
|
|
Map<String,Object> tmp = new HashMap<>();
|
|
tmp.put("name","系统预警");
|
|
tmp.put("name","系统预警");
|
|
tmp.put("status",0);
|
|
tmp.put("status",0);
|
|
|
|
tmp.put(statusName,"未读");
|
|
SystemMessageDO messageDO = systemMessageDao.findByRelationCodeAndReceiver(orderDO.getId(),patientId);
|
|
SystemMessageDO messageDO = systemMessageDao.findByRelationCodeAndReceiver(orderDO.getId(),patientId);
|
|
if (messageDO != null){
|
|
if (messageDO != null){
|
|
if (StringUtils.isNotBlank(messageDO.getIsRead())){
|
|
if (StringUtils.isNotBlank(messageDO.getIsRead())){
|
|
tmp.put("status",Integer.parseInt(messageDO.getIsRead()));
|
|
tmp.put("status",Integer.parseInt(messageDO.getIsRead()));
|
|
|
|
if (Integer.parseInt(messageDO.getIsRead())==1){
|
|
|
|
tmp.put(statusName,"已读");
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
arr.add(tmp);
|
|
arr.add(tmp);
|
|
@ -327,8 +333,10 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
Map<String,Object> tmp = new HashMap<>();
|
|
Map<String,Object> tmp = new HashMap<>();
|
|
tmp.put("name","系统预警");
|
|
tmp.put("name","系统预警");
|
|
tmp.put("status",0);
|
|
tmp.put("status",0);
|
|
|
|
tmp.put("statusName","未响应");
|
|
if (emergencyWarnDoctorResponseDao.findByDoctorAndOrderId(doc.getId(),orderDO.getId())!=null){
|
|
if (emergencyWarnDoctorResponseDao.findByDoctorAndOrderId(doc.getId(),orderDO.getId())!=null){
|
|
tmp.put("status",1);
|
|
tmp.put("status",1);
|
|
|
|
tmp.put("statusName","已响应");
|
|
}
|
|
}
|
|
arr.add(tmp);
|
|
arr.add(tmp);
|
|
noticeObj.put("response",arr);
|
|
noticeObj.put("response",arr);
|
|
@ -357,9 +365,20 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
if (null != consult) {
|
|
if (null != consult) {
|
|
String sessionId = orderDO.getPatient() + "_" + consult.getId() + "_" + consult.getType();
|
|
String sessionId = orderDO.getPatient() + "_" + consult.getId() + "_" + consult.getType();
|
|
jsonObject.put("sessionId",sessionId);
|
|
jsonObject.put("sessionId",sessionId);
|
|
|
|
if (1==orderDO.getStatus()&&StringUtils.isNotBlank(doctor)){//查询未读数量
|
|
|
|
try {
|
|
|
|
Integer count = imUtil.UserSessionsUnreadMessageCount(sessionId,doctor);
|
|
|
|
jsonObject.put("UnRead",count);
|
|
|
|
}catch (Exception e){
|
|
|
|
jsonObject.put("sessionId",sessionId);
|
|
|
|
jsonObject.put("UnRead",0);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
else {
|
|
jsonObject.put("sessionId",null);
|
|
jsonObject.put("sessionId",null);
|
|
|
|
jsonObject.put("UnRead",0);
|
|
}
|
|
}
|
|
|
|
|
|
result.put("resultFlag", 1);
|
|
result.put("resultFlag", 1);
|
|
@ -387,34 +406,38 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
orderDO.setEmergencyCancel(emergencyCancel);
|
|
orderDO.setEmergencyCancel(emergencyCancel);
|
|
securityMonitoringOrderDao.save(orderDO);
|
|
securityMonitoringOrderDao.save(orderDO);
|
|
|
|
|
|
result = getSecurityOrderDetail(orderId);
|
|
|
|
|
|
result = getSecurityOrderDetail(orderId,null);
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
public JSONArray getSecurityOrderList(String doctor,String serverDoctor,String patientName, String patient, String status, Integer page, Integer pageSize){
|
|
|
|
|
|
public PageEnvelop getSecurityOrderList(String doctor, String serverDoctor, String patientName, String patient, String status, Integer page, Integer pageSize){
|
|
|
|
String sqlCount = "select count(ord.id) from base_security_monitoring_order ord INNER JOIN base_patient p on p.id = ord.patient " +
|
|
|
|
"where 1=1 ";
|
|
|
|
String fliter = " ";
|
|
String sql = " select p.id patientCode,p.name,p.sex,p.photo,p.idcard,ord.id orderId,ord.number,ord.serve_desc,ord.create_time,ord.`status`,ord.doctor," +
|
|
String sql = " select p.id patientCode,p.name,p.sex,p.photo,p.idcard,ord.id orderId,ord.number,ord.serve_desc,ord.create_time,ord.`status`,ord.doctor," +
|
|
"ord.doctor_name,ord.patient_phone,ord.conclusion_status from base_security_monitoring_order ord INNER JOIN base_patient p on p.id = ord.patient " +
|
|
"ord.doctor_name,ord.patient_phone,ord.conclusion_status from base_security_monitoring_order ord INNER JOIN base_patient p on p.id = ord.patient " +
|
|
"where 1=1 ";
|
|
"where 1=1 ";
|
|
if (StringUtils.isNotBlank(doctor)){
|
|
if (StringUtils.isNotBlank(doctor)){
|
|
sql+=" and EXISTS ( SELECT 1 from base_service_package_sign_record sr,base_service_package_record r, base_service_package_item i ," +
|
|
|
|
|
|
fliter+=" and EXISTS ( SELECT 1 from base_service_package_sign_record sr,base_service_package_record r, base_service_package_item i ," +
|
|
"base_team_member m " +
|
|
"base_team_member m " +
|
|
"where ord.patient = CONVERT(sr.patient USING utf8) and sr.id = r.sign_id and sr.status=1 and " +
|
|
"where ord.patient = CONVERT(sr.patient USING utf8) and sr.id = r.sign_id and sr.status=1 and " +
|
|
" r.service_package_id = i.service_package_id and m.team_code = i.team_code and i.del = 1 and sr.`status`=1 and i.code='preventLost' and m.doctor_code = '"+doctor+"' and m.del = '1') ";
|
|
" r.service_package_id = i.service_package_id and m.team_code = i.team_code and i.del = 1 and sr.`status`=1 and i.code='preventLost' and m.doctor_code = '"+doctor+"' and m.del = '1') ";
|
|
}
|
|
}
|
|
if (StringUtils.isNotBlank(serverDoctor)){
|
|
if (StringUtils.isNotBlank(serverDoctor)){
|
|
sql +=" and ord.doctor = '"+serverDoctor+"' ";
|
|
|
|
|
|
fliter +=" and ord.doctor = '"+serverDoctor+"' ";
|
|
}
|
|
}
|
|
if (StringUtils.isNotBlank(patientName)){
|
|
if (StringUtils.isNotBlank(patientName)){
|
|
sql+=" and (ord.patient_name like '%"+patientName+"%' or p.idcard='"+patientName+"') ";
|
|
|
|
|
|
fliter+=" and (ord.patient_name like '%"+patientName+"%' or p.idcard='"+patientName+"') ";
|
|
}
|
|
}
|
|
if (StringUtils.isNotBlank(patient)){
|
|
if (StringUtils.isNotBlank(patient)){
|
|
sql+=" and ord.patient='"+patient+"' ";
|
|
|
|
|
|
fliter+=" and ord.patient='"+patient+"' ";
|
|
}
|
|
}
|
|
if (StringUtils.isNotBlank(status)){
|
|
if (StringUtils.isNotBlank(status)){
|
|
sql+=" and ord.status='"+Integer.parseInt(status)+"' ";
|
|
|
|
|
|
fliter+=" and ord.status='"+Integer.parseInt(status)+"' ";
|
|
}
|
|
}
|
|
sql+=" order by ord.create_time desc limit " + (page*pageSize) + "," + pageSize;
|
|
|
|
List<Map<String,Object>> sqlResult = jdbcTemplate.queryForList(sql);
|
|
|
|
|
|
Long count = jdbcTemplate.queryForObject(sqlCount+fliter,Long.class);
|
|
|
|
fliter+=" order by ord.create_time desc limit " + (page*pageSize) + "," + pageSize;
|
|
|
|
List<Map<String,Object>> sqlResult = jdbcTemplate.queryForList(sql+fliter);
|
|
|
|
|
|
JSONArray result = new JSONArray();
|
|
JSONArray result = new JSONArray();
|
|
for (Map<String,Object>one:sqlResult){
|
|
for (Map<String,Object>one:sqlResult){
|
|
@ -462,7 +485,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
tmp.put("deviceFlag","0");
|
|
tmp.put("deviceFlag","0");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return result;
|
|
|
|
|
|
return PageEnvelop.getSuccessListWithPage("success",result,page,pageSize,count);
|
|
}
|
|
}
|
|
public List<Map<String,Object>> getSecurityOrderUnCompleteList(String doctor){
|
|
public List<Map<String,Object>> getSecurityOrderUnCompleteList(String doctor){
|
|
List<Map<String,Object>> result = new ArrayList<>();
|
|
List<Map<String,Object>> result = new ArrayList<>();
|
|
@ -638,7 +661,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
// 待接单消息设为已操作, 434 医生接单-- 王五接受了服务工单12345678
|
|
// 待接单消息设为已操作, 434 医生接单-- 王五接受了服务工单12345678
|
|
// messageUtil.createMessage("医生接单","634",doorServiceOrder.getPatient(),doorServiceOrder.getPatientName(),
|
|
// messageUtil.createMessage("医生接单","634",doorServiceOrder.getPatient(),doorServiceOrder.getPatientName(),
|
|
// doorServiceOrder.getId(), doorServiceOrder.getDoctor(),doorServiceOrder.getDoctorName() ,null, doorServiceOrder.getDoctorName() + "接受了服务工单"+ doorServiceOrder.getNumber());
|
|
// doorServiceOrder.getId(), doorServiceOrder.getDoctor(),doorServiceOrder.getDoctorName() ,null, doorServiceOrder.getDoctorName() + "接受了服务工单"+ doorServiceOrder.getNumber());
|
|
return getSecurityOrderDetail(orderId);
|
|
|
|
|
|
return getSecurityOrderDetail(orderId,null);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -721,7 +744,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
// }
|
|
// }
|
|
// pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 30, patient.getOpenid(), patient.getName(), json);
|
|
// pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 30, patient.getOpenid(), patient.getName(), json);
|
|
|
|
|
|
result = getSecurityOrderDetail(orderId);
|
|
|
|
|
|
result = getSecurityOrderDetail(orderId,null);
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
@ -763,7 +786,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
|
|
|
|
return getSecurityOrderDetail(orderId);
|
|
return getSecurityOrderDetail(orderId);
|
|
}*/
|
|
}*/
|
|
return getSecurityOrderDetail(orderId);
|
|
|
|
|
|
return getSecurityOrderDetail(orderId,null);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@ -825,7 +848,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
one.setStatus(SecurityMonitoringOrderDO.Status.complete.getType());//已完成
|
|
one.setStatus(SecurityMonitoringOrderDO.Status.complete.getType());//已完成
|
|
one.setConclusionStatus(2);
|
|
one.setConclusionStatus(2);
|
|
securityMonitoringOrderDao.save(one);
|
|
securityMonitoringOrderDao.save(one);
|
|
return getSecurityOrderDetail(orderId);
|
|
|
|
|
|
return getSecurityOrderDetail(orderId,null);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@ -846,7 +869,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
throw new Exception(failMsg);
|
|
throw new Exception(failMsg);
|
|
}
|
|
}
|
|
securityMonitoringOrderDao.updateConclusionStatus(orderId);
|
|
securityMonitoringOrderDao.updateConclusionStatus(orderId);
|
|
return getSecurityOrderDetail(orderId);
|
|
|
|
|
|
return getSecurityOrderDetail(orderId,null);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@ -901,7 +924,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
|
|
// // 发送微信通知 待付款
|
|
// // 发送微信通知 待付款
|
|
// BasePatientDO patient = basePatientDao.findById(one.getPatient());
|
|
// BasePatientDO patient = basePatientDao.findById(one.getPatient());
|
|
|
|
|
|
return getSecurityOrderDetail(orderId);
|
|
|
|
|
|
return getSecurityOrderDetail(orderId,null);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|