Browse Source

手表睡眠数据

liubing 3 years ago
parent
commit
5671d70f42

+ 21 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/statistics/DetectionPlatformEndpoint.java

@ -230,6 +230,27 @@ public class DetectionPlatformEndpoint extends EnvelopRestEndpoint {
        }
    }
    @ApiOperation("获取患者手表X1睡吧数据")
    @RequestMapping(value = "getX1SleepInfo", method = RequestMethod.GET)
    public ObjEnvelop getX1SleepInfo(@ApiParam(name = "patient") @RequestParam(value = "patient", required = false) String patient,
                                     @ApiParam(name = "deviceSn") @RequestParam(value = "deviceSn", required = false) String deviceSn,
                                     @ApiParam(name = "day") @RequestParam(value = "day", required = false) String day) {
        try {
            if (StringUtils.isBlank(patient) && StringUtils.isBlank(deviceSn)) {
                return ObjEnvelop.getError("请求参数");
            }
            org.json.JSONObject result = patientDeviceService.getX1SleepInfo(patient, deviceSn, day);
            if (ResponseContant.success == result.getInt(ResponseContant.resultFlag)) {
                return ObjEnvelop.getSuccess("获取成功", result.get(ResponseContant.resultMsg));
            } else {
                return ObjEnvelop.getError(result.getString(ResponseContant.resultMsg));
            }
        } catch (Exception e) {
            return failedObjEnvelopException2(e);
        }
    }
    @ApiOperation("获取烟雾/燃气浓度列表")
    @RequestMapping(value = "getSmokeOrGasList", method = RequestMethod.GET)
    public ListEnvelop getSmokeOrGasList(@ApiParam(name = "deviceSn") @RequestParam(value = "deviceSn", required = true) String deviceSn,

+ 26 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/device/PatientDeviceService.java

@ -1201,6 +1201,32 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
        return result;
    }
    public JSONObject getX1SleepInfo(String patient,String deviceSn,String day){
        JSONObject result = new JSONObject();
        String sql = " select * from base_sleep_x1device where 1=1 ";
        if (StringUtils.isNotBlank(patient)){
            sql +=" and patient='"+patient+"'";
        }
        if (StringUtils.isNotBlank(deviceSn)){
            sql += " and device_sn='"+deviceSn+"' ";
        }
        if (StringUtils.isNotBlank(day)){
            sql +=" and create_time>='"+day+" 00:00:00' and create_time<'"+day+" 23:59:59' ";
        }else   {
            sql +=" order by create_time desc ";
        }
        sql +=" limit 1 ";
        List<BaseSleepX1device> list = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(BaseSleepX1device.class));
        if (list.size()>0){
            result.put(ResponseContant.resultFlag,ResponseContant.success);
            result.put(ResponseContant.resultMsg,list.get(0));
        }else {
            result.put(ResponseContant.resultFlag,ResponseContant.fail);
            result.put(ResponseContant.resultMsg,"无睡眠数据!");
        }
        return result;
    }
    /**
     * 烟感、气感设备浓度列表获取
     */

+ 29 - 10
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/security/SecurityMonitoringOrderService.java

@ -47,6 +47,7 @@ import com.yihu.jw.util.common.LatitudeUtils;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.util.entity.EntityUtils;
import com.yihu.mysql.query.BaseJpaService;
import jdk.nashorn.internal.runtime.FindProperty;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -2230,10 +2231,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
                if (deviceSns.size() > 0) {
                    deviceSn = deviceSns.get(0);
                }
                if (deviceSns.size() > 0) {
                    deviceSn = deviceSns.get(0);
                }
                object.put("deviceCode", deviceSn);
                object.put("deviceSn", deviceSn);
                switch (topicItem) {
                    case "actionTrack":
@ -2265,6 +2263,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
                        break;
                }
                object.put("patientInfo", patientTmp);
                object.put("deviceSn", deviceSn);
                monitorInfos.add(object);
            }
            result.put("topicInfo", monitorInfos);
@ -2331,7 +2330,6 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
                    " where  pd.user = sr.patient and pd.del=0 and pd.category_code in (" + categoryCode + ") and FIND_IN_SET('" + topicItemTmp + "',dd.service_topic)) ";
        }
        if ("preventLost".equals(topicItem)) {//有绑定围栏的居民
            fliter += " and EXISTS (select 1 from wlyy_patient_safe_area sf where sf.patient = p.id and sf.del=1 and sf.manage_status=1) ";
        }
@ -2355,12 +2353,32 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
                com.alibaba.fastjson.JSONObject object = new com.alibaba.fastjson.JSONObject();
                String deviceSn = "";
                List<String> deviceSns = jdbcTemplate.queryForList("select pd.device_sn from wlyy_patient_device pd INNER JOIN dm_device dd " +
                        " on pd.device_id = dd.id where  pd.user = '" + patientTmp.get("id").toString() + "' and pd.del=0  and pd.category_code in (" + categoryCode + ") and FIND_IN_SET('" + topicItemTmp + "',dd.service_topic)", String.class);
                if (deviceSns.size() > 0) {
                    deviceSn = deviceSns.get(0);
                if ("emergencyAssistance".equals(topicItem)){
                    sql = "select pd.device_sn,dd.category_code from wlyy_patient_device pd INNER JOIN dm_device dd " +
                    " on pd.device_id = dd.id where  pd.user = '" + patientTmp.get("id").toString() + "' and pd.del=0  and pd.category_code in (" + categoryCode + ")";
                    List<Map<String,Object>> deviceSns = jdbcTemplate.queryForList(sql);
                    if (deviceSns.size() > 0) {
                        boolean findFlag = false;
                        for (Map<String,Object> tmp:deviceSns){
                            if("4".equals(tmp.get("category_code").toString())){
                                deviceSn = tmp.get("device_sn").toString();
                                findFlag=true;
                            }
                        }
                        if (!findFlag){
                            deviceSn = deviceSns.get(0).get("device_sn").toString();
                        }
                    }
                    object.put("deviceSn", deviceSn);
                }else {
                    sql = "select pd.device_sn from wlyy_patient_device pd INNER JOIN dm_device dd " +
                    " on pd.device_id = dd.id where  pd.user = '" + patientTmp.get("id").toString() + "' and pd.del=0  and pd.category_code in (" + categoryCode + ") and FIND_IN_SET('" + topicItemTmp + "',dd.service_topic)";
                    List<String> deviceSns = jdbcTemplate.queryForList(sql, String.class);
                    if (deviceSns.size() > 0) {
                        deviceSn = deviceSns.get(0);
                    }
                    object.put("deviceSn", deviceSn);
                }
                object.put("deviceSn", deviceSn);
                switch (topicItem) {
                    case "actionTrack":
@ -2434,6 +2452,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
                        break;
                }
                object.put("patientInfo", patientTmp);
                object.put("deviceSn", deviceSn);
                monitorInfos.add(object);
            }
            result.put("topicInfo", monitorInfos);