Browse Source

大屏接口-设备详情

Shi Kejing 3 năm trước cách đây
mục cha
commit
9772f77a5f

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

@ -914,21 +914,42 @@ public class PatientDeviceService extends BaseJpaService<DevicePatientDevice, Pa
                result.put(ResponseContant.resultFlag,ResponseContant.fail);
                result.put(ResponseContant.resultMsg,"居民未绑定该设备");
            }else {
                String sql = "select dd.photo,GROUP_CONCAT( p.name) as patientName,pd.device_sn,dd.brands,dd.category_code,dd.model,pd.device_name,date_format(pd.czrq,'%Y-%m-%d %H:%i:%S' ) deviceTime " +
                String sql = "select dd.photo,GROUP_CONCAT( p.name) as patientName,pd.device_sn,dd.brands,dd.category_code,dd.model,pd.device_name,date_format(pd.czrq,'%Y-%m-%d %H:%i:%S' ) deviceTime,wd.manufacturer,p.mobile,p.address,p.idcard,wd.device_type  " +
                        "from dm_device dd INNER JOIN wlyy_patient_device pd on dd.category_code = pd.category_code INNER JOIN base_patient p on p.id = pd.user " +
                        " INNER JOIN wlyy_devices wd on dd.model = wd.device_model and pd.device_sn = wd.device_code " +
                        "where 1=1 and  pd.del=0 and pd.device_sn ='"+deviceSn+"' group by pd.device_sn";
                Map<String,Object> devInfo = jdbcTemplate.queryForMap(sql);
                devInfo.put("patient",patient);
                devInfo.put("sosContactsDOS",new ArrayList<>());
                String dataSql= "";
                String recordSql = "";
                List<Map<String , Object>> dataList = new ArrayList<>();
                List<Map<String , Object>> recordList = new ArrayList<>();
                String addresSql = "SELECT sp.org_code orgCode,sp.org_name orgName FROM base_service_package_record spr , base_service_package sp\n" +
                        "WHERE spr.service_package_id = sp.id AND spr.patient = '"+patient+"' AND sp.org_code IS NOT NULL GROUP BY sp.org_code,sp.org_name";
                List<Map<String, Object>> addressList = jdbcTemplate.queryForList(addresSql);
                if (addressList.size() > 0) {
                    devInfo.put("orgName",addressList.get(0).get("orgName"));
                    devInfo.put("orgCode",addressList.get(0).get("orgCode"));
                } else {
                    devInfo.put("orgName","");
                    devInfo.put("orgCode","");
                }
                if ("4".equals(device.getCategoryCode())||"7".equals(device.getCategoryCode())){
                    devInfo.put("sosContactsDOS",contactsService.getPatientSosContacts(patient));
                }
                com.alibaba.fastjson.JSONObject devInfoObj = JSON.parseObject(JSON.toJSONString(devInfo, SerializerFeature.WriteMapNullValue));
                switch (device.getCategoryCode()){
                    case "1"://血压设备
                        dataSql = "SELECT record_date recordDate,value1,value2,value3,value4,value5,value6,value7,type FROM wlyy_patient_health_index WHERE device_sn = '"+deviceSn+"' AND del = 1 ORDER BY sort_date DESC LIMIT 10";
                        dataList = jdbcTemplate.queryForList(dataSql);
                        devInfoObj.put("data",dataList);
                        break;
                    case "2"://血糖设备
                        dataSql = "SELECT record_date recordDate,value1,value2,value3,value4,value5,value6,value7,type FROM wlyy_patient_health_index WHERE device_sn = '"+deviceSn+"' AND del = 1 ORDER BY sort_date DESC LIMIT 10";
                        dataList = jdbcTemplate.queryForList(dataSql);
                        devInfoObj.put("data",dataList);
                        break;
                    case "4"://手表 围栏与轨迹
                        if (StringUtils.isBlank(day)){

+ 24 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/statistics/DetectionPlatformService.java

@ -244,6 +244,16 @@ public class DetectionPlatformService  {
                    "FROM wlyy_patient_device pd,base_patient p WHERE p.id = pd.`user` AND p.del = 1 AND pd.del = 0 AND pd.device_sn = '"+deviceSn+"'";
            List<Map<String , Object>> patientInfoList = jdbcTemplate.queryForList(patientInfoSql);
            if (patientInfoList.size() > 0) {
                String addresSql = "SELECT sp.org_code orgCode,sp.org_name orgName FROM base_service_package_record spr , base_service_package sp\n" +
                        "WHERE spr.service_package_id = sp.id AND spr.patient = '"+patientInfoList.get(0).get("patient")+"' AND sp.org_code IS NOT NULL GROUP BY sp.org_code,sp.org_name";
                List<Map<String, Object>> addressList = jdbcTemplate.queryForList(addresSql);
                if (addressList.size() > 0) {
                    object.put("orgName",addressList.get(0).get("orgName"));
                    object.put("orgCode",addressList.get(0).get("orgCode"));
                } else {
                    object.put("orgName","");
                    object.put("orgCode","");
                }
                categoryCode = patientInfoList.get(0).get("categoryCode").toString();
                object.put("patientName",patientInfoList.get(0).get("patientName"));
                object.put("patient",patientInfoList.get(0).get("patient"));
@ -267,6 +277,18 @@ public class DetectionPlatformService  {
                        dataList = jdbcTemplate.queryForList(dataSql);
                        object.put("data",dataList);
                        break;
                    case "4" :  //只能手表
                        //检测指标
                        //使用数据
                        //监护记录
                        break;
                    case "7" :  //居家安全报警器
                        break;
                    case "13" : //睡眠带
                        String nightRecordSql = "SELECT * FROM base_sleep_night_record WHERE device_sn = '"+deviceSn+"' ORDER BY create_time DESC LIMIT 0,20";
                        List<Map<String , Object>> nightRecordList = jdbcTemplate.queryForList(nightRecordSql);
                        object.put("nightRecordList",nightRecordList);  //起夜记录
                        break;
                    case "14" :
                        dataSql = "SELECT record_time recordDate,`value`,unit,device_type FROM base_device_health_index WHERE device_sn = '"+deviceSn+"' ORDER BY record_time DESC LIMIT 10 ";
                        dataList = jdbcTemplate.queryForList(dataSql);
@ -283,6 +305,8 @@ public class DetectionPlatformService  {
                        recordList = jdbcTemplate.queryForList(recordSql);
                        object.put("record",recordList);
                        break;
                    case "16" : //智能拐杖
                        break;
                }
            } else {
                throw new Exception("无法找到该设备对应使用人");