|
@ -1,6 +1,8 @@
|
|
package com.yihu.jw.care.util;
|
|
package com.yihu.jw.care.util;
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
import com.alibaba.fastjson.serializer.SerializerFeature;
|
|
import com.yihu.jw.care.dao.device.PatientDeviceDao;
|
|
import com.yihu.jw.care.dao.device.PatientDeviceDao;
|
|
import com.yihu.jw.care.dao.pushLog.BasePushRecordLogDao;
|
|
import com.yihu.jw.care.dao.pushLog.BasePushRecordLogDao;
|
|
import com.yihu.jw.entity.base.patient.BasePatientDO;
|
|
import com.yihu.jw.entity.base.patient.BasePatientDO;
|
|
@ -8,6 +10,7 @@ import com.yihu.jw.entity.care.device.DevicePatientDevice;
|
|
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
|
|
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
|
|
import com.yihu.jw.entity.log.BasePushRecordLogEntity;
|
|
import com.yihu.jw.entity.log.BasePushRecordLogEntity;
|
|
import com.yihu.jw.hospital.message.dao.SystemMessageDao;
|
|
import com.yihu.jw.hospital.message.dao.SystemMessageDao;
|
|
|
|
import com.yihu.jw.im.util.ImUtil;
|
|
import com.yihu.jw.patient.dao.BasePatientDao;
|
|
import com.yihu.jw.patient.dao.BasePatientDao;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@ -44,6 +47,8 @@ public class DeviceLostMessageUtil {
|
|
private String wxId;
|
|
private String wxId;
|
|
@Autowired
|
|
@Autowired
|
|
BasePushRecordLogDao basePushRecordLogDao;
|
|
BasePushRecordLogDao basePushRecordLogDao;
|
|
|
|
@Autowired
|
|
|
|
private ImUtil imUtil;
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private RestTemplate restTemplate;
|
|
private RestTemplate restTemplate;
|
|
@ -218,6 +223,9 @@ public class DeviceLostMessageUtil {
|
|
messageDO.setSenderPhoto(patient.get("photo").toString());
|
|
messageDO.setSenderPhoto(patient.get("photo").toString());
|
|
messageDO.setAudioUrl(audioUrl(content));
|
|
messageDO.setAudioUrl(audioUrl(content));
|
|
messageDOS.add(messageDO);
|
|
messageDOS.add(messageDO);
|
|
|
|
|
|
|
|
//socket推送
|
|
|
|
patientMessageSocket(messageDO);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (messageDOS.size()>0){
|
|
if (messageDOS.size()>0){
|
|
@ -242,6 +250,8 @@ public class DeviceLostMessageUtil {
|
|
* @param patientList
|
|
* @param patientList
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void watchOffWear(List<JSONObject> patientList){
|
|
public void watchOffWear(List<JSONObject> patientList){
|
|
List<SystemMessageDO> messageDOS = new ArrayList<>();
|
|
List<SystemMessageDO> messageDOS = new ArrayList<>();
|
|
String contentOne = "{name}{sex} 监测到您没有佩戴手表,建议正确佩戴手表,方便我们对您进行照护。";
|
|
String contentOne = "{name}{sex} 监测到您没有佩戴手表,建议正确佩戴手表,方便我们对您进行照护。";
|
|
@ -252,6 +262,7 @@ public class DeviceLostMessageUtil {
|
|
contentTwo = contentTwo.replace("{name}",jsonObject.getString("name"));
|
|
contentTwo = contentTwo.replace("{name}",jsonObject.getString("name"));
|
|
contentTwo.replace("{sex}",1==jsonObject.getInteger("sex")?"大爷":"大妈");
|
|
contentTwo.replace("{sex}",1==jsonObject.getInteger("sex")?"大爷":"大妈");
|
|
|
|
|
|
|
|
String s = audioUrl(contentTwo);
|
|
messageDO.setTitle("设备未佩戴通知");
|
|
messageDO.setTitle("设备未佩戴通知");
|
|
messageDO.setContent(contentTwo);
|
|
messageDO.setContent(contentTwo);
|
|
messageDO.setType("991");
|
|
messageDO.setType("991");
|
|
@ -265,9 +276,16 @@ public class DeviceLostMessageUtil {
|
|
messageDO.setDel("1");
|
|
messageDO.setDel("1");
|
|
messageDO.setCreateTime(new Date());
|
|
messageDO.setCreateTime(new Date());
|
|
messageDO.setSenderPhoto(jsonObject.getString("photo"));
|
|
messageDO.setSenderPhoto(jsonObject.getString("photo"));
|
|
messageDO.setAudioUrl(audioUrl(contentTwo));
|
|
|
|
|
|
messageDO.setAudioUrl(s);
|
|
messageDOS.add(messageDO);
|
|
messageDOS.add(messageDO);
|
|
|
|
|
|
|
|
JSONObject message = new JSONObject();
|
|
|
|
message.put("title","设备未佩戴通知");
|
|
|
|
message.put("type","991");
|
|
|
|
message.put("content",contentTwo);
|
|
|
|
message.put("audioUrl",s);
|
|
|
|
message.put("content_type",999);
|
|
|
|
imUtil.sendPatientSystemMessage(jsonObject.getString("patient"), JSON.toJSONString(message, SerializerFeature.WriteMapNullValue));
|
|
}
|
|
}
|
|
if (messageDOS.size() > 0) {
|
|
if (messageDOS.size() > 0) {
|
|
BasePushRecordLogEntity logEntity = new BasePushRecordLogEntity();
|
|
BasePushRecordLogEntity logEntity = new BasePushRecordLogEntity();
|
|
@ -288,6 +306,17 @@ public class DeviceLostMessageUtil {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void patientMessageSocket(SystemMessageDO messageDOWatch){
|
|
|
|
JSONObject message = new JSONObject();
|
|
|
|
message.put("title",messageDOWatch.getTitle());
|
|
|
|
message.put("type",messageDOWatch.getType());
|
|
|
|
message.put("content",messageDOWatch.getContent());
|
|
|
|
message.put("audioUrl",messageDOWatch.getAudioUrl());
|
|
|
|
message.put("content_type",999);
|
|
|
|
imUtil.sendPatientSystemMessage(messageDOWatch.getReceiver(), JSON.toJSONString(message, SerializerFeature.WriteMapNullValue));
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
* 手表 报警器 电量低通知
|
|
* 手表 报警器 电量低通知
|
|
* @param patientList
|
|
* @param patientList
|
|
@ -308,6 +337,10 @@ public class DeviceLostMessageUtil {
|
|
switch (jsonObject.getInteger("category_code")){
|
|
switch (jsonObject.getInteger("category_code")){
|
|
case 4:
|
|
case 4:
|
|
if (messageOnOff(3)){
|
|
if (messageOnOff(3)){
|
|
|
|
|
|
|
|
//文字转语音
|
|
|
|
String url = audioUrl(watchContent);
|
|
|
|
|
|
SystemMessageDO messageDOWatch = new SystemMessageDO();
|
|
SystemMessageDO messageDOWatch = new SystemMessageDO();
|
|
messageDOWatch.setTitle("设备电量低通知");
|
|
messageDOWatch.setTitle("设备电量低通知");
|
|
messageDOWatch.setContent(watchContent);
|
|
messageDOWatch.setContent(watchContent);
|
|
@ -322,20 +355,20 @@ public class DeviceLostMessageUtil {
|
|
messageDOWatch.setDel("1");
|
|
messageDOWatch.setDel("1");
|
|
messageDOWatch.setCreateTime(new Date());
|
|
messageDOWatch.setCreateTime(new Date());
|
|
messageDOWatch.setSenderPhoto(jsonObject.getString("photo"));
|
|
messageDOWatch.setSenderPhoto(jsonObject.getString("photo"));
|
|
messageDOWatch.setAudioUrl(audioUrl(watchContent));
|
|
|
|
|
|
messageDOWatch.setAudioUrl(url);
|
|
messageDOSWatch.add(messageDOWatch);
|
|
messageDOSWatch.add(messageDOWatch);
|
|
watchSize+=1;
|
|
watchSize+=1;
|
|
if (StringUtils.isNotBlank(watchName)){
|
|
if (StringUtils.isNotBlank(watchName)){
|
|
watchName+=","+jsonObject.getString("patient");
|
|
|
|
|
|
watchName+=","+jsonObject.getString("name");
|
|
}else {
|
|
}else {
|
|
watchName+=jsonObject.getString("patient");
|
|
|
|
|
|
watchName+=jsonObject.getString("name");
|
|
}
|
|
}
|
|
break;
|
|
|
|
}else {
|
|
|
|
break;
|
|
|
|
|
|
/*socket 推送*/
|
|
|
|
patientMessageSocket(messageDOWatch);
|
|
}
|
|
}
|
|
|
|
break;
|
|
case 7:
|
|
case 7:
|
|
if (messageOnOff(4)){
|
|
|
|
|
|
if (messageOnOff(4)) {
|
|
SystemMessageDO messageDO = new SystemMessageDO();
|
|
SystemMessageDO messageDO = new SystemMessageDO();
|
|
messageDO.setTitle("设备电量低通知");
|
|
messageDO.setTitle("设备电量低通知");
|
|
messageDO.setContent(SosContent);
|
|
messageDO.setContent(SosContent);
|
|
@ -352,16 +385,16 @@ public class DeviceLostMessageUtil {
|
|
messageDO.setSenderPhoto(jsonObject.getString("photo"));
|
|
messageDO.setSenderPhoto(jsonObject.getString("photo"));
|
|
messageDO.setAudioUrl(audioUrl(SosContent));
|
|
messageDO.setAudioUrl(audioUrl(SosContent));
|
|
messageDOSSOS.add(messageDO);
|
|
messageDOSSOS.add(messageDO);
|
|
SOSSize+=1;
|
|
|
|
if (StringUtils.isNotBlank(SOSName)){
|
|
|
|
SOSName+=","+jsonObject.getString("patient");
|
|
|
|
}else {
|
|
|
|
SOSName+=jsonObject.getString("patient");
|
|
|
|
|
|
SOSSize += 1;
|
|
|
|
if (StringUtils.isNotBlank(SOSName)) {
|
|
|
|
SOSName += "," + jsonObject.getString("name");
|
|
|
|
} else {
|
|
|
|
SOSName += jsonObject.getString("patient");
|
|
}
|
|
}
|
|
break;
|
|
|
|
}else {
|
|
|
|
break;
|
|
|
|
|
|
/*socket 推送*/
|
|
|
|
patientMessageSocket(messageDO);
|
|
}
|
|
}
|
|
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|