|  | @ -0,0 +1,463 @@
 | 
	
		
			
				|  |  | package com.yihu.jw.care.endpoint.device;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.yihu.jw.care.endpoint.BaseController;
 | 
	
		
			
				|  |  | import com.yihu.jw.care.service.device.PatientHealthIndexService;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.care.device.DevicePatientHealthIndex;
 | 
	
		
			
				|  |  | import io.swagger.annotations.Api;
 | 
	
		
			
				|  |  | import io.swagger.annotations.ApiOperation;
 | 
	
		
			
				|  |  | import io.swagger.annotations.ApiParam;
 | 
	
		
			
				|  |  | import org.apache.commons.lang3.StringUtils;
 | 
	
		
			
				|  |  | import org.json.JSONArray;
 | 
	
		
			
				|  |  | import org.json.JSONObject;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.http.MediaType;
 | 
	
		
			
				|  |  | import org.springframework.jdbc.core.JdbcTemplate;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Controller;
 | 
	
		
			
				|  |  | import org.springframework.web.bind.annotation.*;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.*;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | @Controller
 | 
	
		
			
				|  |  | @RequestMapping(value = "/patient/health_index", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 | 
	
		
			
				|  |  | @Api(description = "患者指标")
 | 
	
		
			
				|  |  | public class PatientHealthController extends BaseController {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private JdbcTemplate jdbcTemplate;
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private PatientHealthIndexService healthIndexService;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 更改接口(包括手动记录的修改和所有的删除)
 | 
	
		
			
				|  |  |      * 血糖  value1 血糖值 value2 1234567血糖时间段
 | 
	
		
			
				|  |  |      * 血压  value1 高压 value2 低压 value3脉搏 value4心率不齐(0否 1是)
 | 
	
		
			
				|  |  |      * 体重 value1 体重值
 | 
	
		
			
				|  |  |      * 腰围 value1 腰围值
 | 
	
		
			
				|  |  |      *  @param recordDate 记录时间
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "/modify", method = RequestMethod.POST)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("更改接口(包括手动记录的修改和所有的删除)")
 | 
	
		
			
				|  |  |     public String modify(@RequestParam long id,
 | 
	
		
			
				|  |  |                          @RequestParam(required = false) String recordDate,
 | 
	
		
			
				|  |  |                          @RequestParam(required = false) String value1,
 | 
	
		
			
				|  |  |                          @RequestParam(required = false) String value2,
 | 
	
		
			
				|  |  |                          @RequestParam(required = false) String value3,
 | 
	
		
			
				|  |  |                          @RequestParam(required = false) String value4) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             healthIndexService.modify(id,recordDate, value1, value2, value3, value4);
 | 
	
		
			
				|  |  |             return write(200, "更改成功!");
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             error(e);
 | 
	
		
			
				|  |  |             return invalidUserException(e, -1, "更改失败!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "/getRecentData", method = RequestMethod.GET)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("患者最近的各项健康信息")
 | 
	
		
			
				|  |  |     public String getRecentData() {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             //新增查询物联网
 | 
	
		
			
				|  |  |             List list = new ArrayList();
 | 
	
		
			
				|  |  |             String patient = getRepUID();
 | 
	
		
			
				|  |  | //            String patient = getUID();
 | 
	
		
			
				|  |  | //            健康指标类型(1血糖,2血压,3体重,4腰围)
 | 
	
		
			
				|  |  |             Map map = healthIndexService.findDataByPatient(patient, 1);
 | 
	
		
			
				|  |  |             Map map1 = healthIndexService.findDataByPatient(patient, 2);
 | 
	
		
			
				|  |  |             Map map2 = healthIndexService.findDataByPatient(patient, 3);
 | 
	
		
			
				|  |  |             Map map3 = healthIndexService.findDataByPatient(patient, 4);
 | 
	
		
			
				|  |  | //            血糖各个时间段取值
 | 
	
		
			
				|  |  |             if (map.size() != 0) {
 | 
	
		
			
				|  |  |                 Map sugar = new HashMap();
 | 
	
		
			
				|  |  |                 Object time = map.get("time");
 | 
	
		
			
				|  |  |                 String isDevice = map.get("isDevice").toString();
 | 
	
		
			
				|  |  |                 Object value1 = map.get("value1");
 | 
	
		
			
				|  |  |                 Object value2 = map.get("value2");
 | 
	
		
			
				|  |  |                 Object value3 = map.get("value3");
 | 
	
		
			
				|  |  |                 Object value4 = map.get("value4");
 | 
	
		
			
				|  |  |                 Object value5 = map.get("value5");
 | 
	
		
			
				|  |  |                 Object value6 = map.get("value6");
 | 
	
		
			
				|  |  |                 Object value7 = map.get("value7");
 | 
	
		
			
				|  |  |                 sugar.put("type", 1);
 | 
	
		
			
				|  |  |                 sugar.put("isDevice", isDevice);
 | 
	
		
			
				|  |  |                 if (time != null) {
 | 
	
		
			
				|  |  |                     sugar.put("time", time);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value1 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value1", value1);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value2 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value2", value2);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value3 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value3", value3);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value4 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value4", value4);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value5 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value5", value5);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value6 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value6", value6);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value7 != null) {
 | 
	
		
			
				|  |  |                     sugar.put("value7", value7);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 list.add(sugar);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            血压  value1高压 value2低压 value3脉搏 value4心率不齐
 | 
	
		
			
				|  |  |             if (map1.size() != 0) {
 | 
	
		
			
				|  |  |                 Map pa = new HashMap();
 | 
	
		
			
				|  |  |                 Object time = map1.get("time");
 | 
	
		
			
				|  |  |                 String isDevice = map1.get("isDevice").toString();
 | 
	
		
			
				|  |  |                 Object value1 = map1.get("value1");
 | 
	
		
			
				|  |  |                 Object value2 = map1.get("value2");
 | 
	
		
			
				|  |  |                 Object value3 = map1.get("value3");
 | 
	
		
			
				|  |  |                 Object value4 = map1.get("value4");
 | 
	
		
			
				|  |  |                 Object value5 = map1.get("value5");
 | 
	
		
			
				|  |  |                 Object value6 = map1.get("value6");
 | 
	
		
			
				|  |  |                 Object value7 = map1.get("value7");
 | 
	
		
			
				|  |  |                 pa.put("type", 2);
 | 
	
		
			
				|  |  |                 pa.put("isDevice", isDevice);
 | 
	
		
			
				|  |  |                 if (time != null) {
 | 
	
		
			
				|  |  |                     pa.put("time", time);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value1 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value1", value1);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value2 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value2", value2);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value3 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value3", value3);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value4 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value4", value4);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value5 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value5", value5);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value6 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value6", value6);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value7 != null) {
 | 
	
		
			
				|  |  |                     pa.put("value7", value7);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 list.add(pa);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            体重 value1 体重
 | 
	
		
			
				|  |  |             if (map2.size() != 0) {
 | 
	
		
			
				|  |  |                 Map weight = new HashMap();
 | 
	
		
			
				|  |  |                 Object time = map2.get("time");
 | 
	
		
			
				|  |  |                 String isDevice = map2.get("isDevice").toString();
 | 
	
		
			
				|  |  |                 Object value1 = map2.get("value1");
 | 
	
		
			
				|  |  |                 Object value2 = map2.get("value2");
 | 
	
		
			
				|  |  |                 Object value3 = map2.get("value3");
 | 
	
		
			
				|  |  |                 Object value4 = map2.get("value4");
 | 
	
		
			
				|  |  |                 Object value5 = map2.get("value5");
 | 
	
		
			
				|  |  |                 Object value6 = map2.get("value6");
 | 
	
		
			
				|  |  |                 Object value7 = map2.get("value7");
 | 
	
		
			
				|  |  |                 weight.put("type", 3);
 | 
	
		
			
				|  |  |                 weight.put("isDevice", isDevice);
 | 
	
		
			
				|  |  |                 if (time != null) {
 | 
	
		
			
				|  |  |                     weight.put("time", time);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value1 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value1", value1);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value2 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value2", value2);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value3 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value3", value3);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value4 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value4", value4);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value5 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value5", value5);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value6 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value6", value6);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value7 != null) {
 | 
	
		
			
				|  |  |                     weight.put("value7", value7);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 list.add(weight);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            腰围 value1腰围
 | 
	
		
			
				|  |  |             if (map3.size() != 0) {
 | 
	
		
			
				|  |  |                 Map waist = new HashMap();
 | 
	
		
			
				|  |  |                 Object time = map3.get("time");
 | 
	
		
			
				|  |  |                 String isDevice = map3.get("isDevice").toString();
 | 
	
		
			
				|  |  |                 Object value1 = map3.get("value1");
 | 
	
		
			
				|  |  |                 Object value2 = map3.get("value2");
 | 
	
		
			
				|  |  |                 Object value3 = map3.get("value3");
 | 
	
		
			
				|  |  |                 Object value4 = map3.get("value4");
 | 
	
		
			
				|  |  |                 Object value5 = map3.get("value5");
 | 
	
		
			
				|  |  |                 Object value6 = map3.get("value6");
 | 
	
		
			
				|  |  |                 Object value7 = map3.get("value7");
 | 
	
		
			
				|  |  |                 waist.put("type", 4);
 | 
	
		
			
				|  |  |                 waist.put("isDevice", isDevice);
 | 
	
		
			
				|  |  |                 if (time != null) {
 | 
	
		
			
				|  |  |                     waist.put("time", time);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value1 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value1", value1);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value2 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value2", value2);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value3 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value3", value3);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value4 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value4", value4);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value5 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value5", value5);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value6 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value6", value6);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 if (value7 != null) {
 | 
	
		
			
				|  |  |                     waist.put("value7", value7);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 list.add(waist);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             return write(200, "查询成功", "data", list);
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             error(e);
 | 
	
		
			
				|  |  |             return error(-1, "查询失败");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "recent", method = RequestMethod.GET)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("患者最近填写的健康指标")
 | 
	
		
			
				|  |  |     public String recent() {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONArray array = healthIndexService.findRecentByPatient(getRepUID());
 | 
	
		
			
				|  |  | //            JSONArray array = healthIndexService.findRecentByPatient(getUID());
 | 
	
		
			
				|  |  |             if (array != null) {
 | 
	
		
			
				|  |  |                 return write(200, "查询成功", "list", array);
 | 
	
		
			
				|  |  |             } else {
 | 
	
		
			
				|  |  |                 return error(-1, "查询失败");
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             error(e);
 | 
	
		
			
				|  |  |             return error(-1, "查询失败");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "last_new", method = RequestMethod.GET)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("获取患者最后填写的健康指标(新)-展会")
 | 
	
		
			
				|  |  |     public String last_new() {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             Map<String, Object> map = new HashMap<>();
 | 
	
		
			
				|  |  |             String patient = getRepUID();
 | 
	
		
			
				|  |  | //            String patient = getUID();
 | 
	
		
			
				|  |  | //            DevicePatientHealthIndex xt = healthIndexService.findLastByPatien(patient, 1);
 | 
	
		
			
				|  |  |             DevicePatientHealthIndex xt = healthIndexService.findLastByPatienIot(patient, 1);
 | 
	
		
			
				|  |  |             if (xt != null) {
 | 
	
		
			
				|  |  |                 map.put("xt", xt);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            DevicePatientHealthIndex xy = healthIndexService.findLastByPatien(patient, 2);
 | 
	
		
			
				|  |  |             DevicePatientHealthIndex xy = healthIndexService.findLastByPatienIot(patient, 2);
 | 
	
		
			
				|  |  |             if (xy != null) {
 | 
	
		
			
				|  |  |                 map.put("xy", xy);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            DevicePatientHealthIndex tz = healthIndexService.findLastByPatien(patient, 3);
 | 
	
		
			
				|  |  |             DevicePatientHealthIndex tz = healthIndexService.findLastByPatienIot(patient, 3);
 | 
	
		
			
				|  |  |             if (tz != null) {
 | 
	
		
			
				|  |  |                 map.put("tz", tz);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            DevicePatientHealthIndex sg = healthIndexService.findLastByPatien(patient, 4);
 | 
	
		
			
				|  |  |             DevicePatientHealthIndex sg = healthIndexService.findLastByPatienIot(patient, 4);
 | 
	
		
			
				|  |  |             if (sg != null) {
 | 
	
		
			
				|  |  |                 map.put("sg", sg);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             DevicePatientHealthIndex xl = healthIndexService.findLastByPatienIot(patient, 5);
 | 
	
		
			
				|  |  |             if (xl != null) {
 | 
	
		
			
				|  |  |                 map.put("xl", xl);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             return write(200, "查询成功", "data", map);
 | 
	
		
			
				|  |  |         } catch (Exception ex) {
 | 
	
		
			
				|  |  |             error(ex);
 | 
	
		
			
				|  |  |             return invalidUserException(ex, -1, ex.getMessage());
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "addPatientHealthIndex", method = RequestMethod.POST)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("新增患者指标")
 | 
	
		
			
				|  |  |     public String addPatientHealthIndex(@ApiParam(name = "data", value = "指标数据", defaultValue = "{\"gi\":\"5.5\",\"gi_type\":\"1\"}")
 | 
	
		
			
				|  |  |                                         @RequestParam(value = "data", required = true) String data,
 | 
	
		
			
				|  |  |                                         @ApiParam(name = "type", value = "指标类型", defaultValue = "1")
 | 
	
		
			
				|  |  |                                         @RequestParam(value = "type", required = true) String type,
 | 
	
		
			
				|  |  |                                         @ApiParam(name = "patient", value = "patient", defaultValue = "1")
 | 
	
		
			
				|  |  |                                         @RequestParam(value = "patient", required = false) String patient) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             if(StringUtils.isBlank(patient)){
 | 
	
		
			
				|  |  |                 patient = getRepUID();
 | 
	
		
			
				|  |  | //                patient = getUID();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             DevicePatientHealthIndex obj = healthIndexService.addPatientHealthIndex(data, type, patient, null);
 | 
	
		
			
				|  |  |             
 | 
	
		
			
				|  |  |             //血糖和血压需要校验
 | 
	
		
			
				|  |  |             if (type.equals("1") || type.equals("2")) {
 | 
	
		
			
				|  |  |                 healthIndexService.verifyHealthIndex(obj.getId());
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             //判断居民的体征预警状态
 | 
	
		
			
				|  |  | //            healthIndexService.handlePatientStandarStatus(obj);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             return success("新增患者指标成功!");
 | 
	
		
			
				|  |  |         } catch (Exception ex) {
 | 
	
		
			
				|  |  |             error(ex);
 | 
	
		
			
				|  |  |             return invalidUserException(ex, -1, ex.getMessage());
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "verifyPatientHealthIndex", method = RequestMethod.POST)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("校验患者指标")
 | 
	
		
			
				|  |  |     public String verifyPatientHealthIndex(@ApiParam(name = "id", value = "指标id", defaultValue = "")
 | 
	
		
			
				|  |  |                                            @RequestParam(value = "id", required = true) Long id) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             healthIndexService.verifyHealthIndex(id);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             return success("校验患者指标成功!");
 | 
	
		
			
				|  |  |         } catch (Exception ex) {
 | 
	
		
			
				|  |  |             return invalidUserException(ex, -1, ex.getMessage());
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "chart", method = RequestMethod.POST)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("根据患者标志获取健康指标(图表)")
 | 
	
		
			
				|  |  |     public String getHealthIndexChartByPatient(@ApiParam(name = "type", value = "指标类型(1血糖,2血压,3体重,4腰围)", defaultValue = "1")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "type", required = true) int type,
 | 
	
		
			
				|  |  |                                                @ApiParam(name = "gi_type", value = "就餐类型0全部", defaultValue = "1")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "gi_type", required = false) int gi_type,
 | 
	
		
			
				|  |  |                                                @ApiParam(name = "begin", value = "开始时间", defaultValue = "2017-05-22 00:00:00")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "begin", required = true) String begin,
 | 
	
		
			
				|  |  |                                                @ApiParam(name = "end", value = "结束时间", defaultValue = "2017-06-02 00:00:00")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "end", required = true) String end) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONArray jsonArray = healthIndexService.findChartByPatient(getUID(),type,gi_type,begin,end);
 | 
	
		
			
				|  |  |             if (jsonArray.length()==0) {
 | 
	
		
			
				|  |  |                 return success("查询成功!");
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             return write(200, "查询成功", "list", jsonArray);
 | 
	
		
			
				|  |  |         } catch (Exception ex) {
 | 
	
		
			
				|  |  |             error(ex);
 | 
	
		
			
				|  |  |             return invalidUserException(ex, -1, "查询失败!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "chart_new", method = RequestMethod.POST)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("根据患者标志获取健康指标(图表)-展会")
 | 
	
		
			
				|  |  |     public String getHealthIndexChartByPatient_new(@ApiParam(name = "type", value = "指标类型(1血糖,2血压,3体重,4腰围)", defaultValue = "1")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "type", required = true) int type,
 | 
	
		
			
				|  |  |                                                @ApiParam(name = "gi_type", value = "就餐类型0全部", defaultValue = "1")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "gi_type", required = false) int gi_type,
 | 
	
		
			
				|  |  |                                                @ApiParam(name = "begin", value = "开始时间", defaultValue = "2017-05-22 00:00:00")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "begin", required = true) String begin,
 | 
	
		
			
				|  |  |                                                @ApiParam(name = "end", value = "结束时间", defaultValue = "2017-06-02 00:00:00")
 | 
	
		
			
				|  |  |                                                @RequestParam(value = "end", required = true) String end) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONArray jsonArray = healthIndexService.findChartByPatient(getRepUID(), type, gi_type, begin, end);
 | 
	
		
			
				|  |  | //            List<DevicePatientHealthIndex> list = healthIndexService.findChartByPatient(getUID(), type, gi_type, begin, end);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             if (jsonArray.length()==0) {
 | 
	
		
			
				|  |  |                 return success("查询成功!");
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             return write(200, "查询成功", "list", jsonArray);
 | 
	
		
			
				|  |  |         } catch (Exception ex) {
 | 
	
		
			
				|  |  |             error(ex);
 | 
	
		
			
				|  |  |             return invalidUserException(ex, -1, "查询失败!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "list", method = RequestMethod.POST)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("患者获取健康指标")
 | 
	
		
			
				|  |  |     public String getHealthIndexByPatient(@ApiParam(name = "type", value = "指标类型(1血糖,2血压,3体重/身高,4腰围)", defaultValue = "1")
 | 
	
		
			
				|  |  |                                           @RequestParam(value = "type", required = true) int type,
 | 
	
		
			
				|  |  |                                           @ApiParam(name = "start", value = "开始时间", defaultValue = "2016-07-23 00:00:00")
 | 
	
		
			
				|  |  |                                           @RequestParam(value = "start", required = true) String start,
 | 
	
		
			
				|  |  |                                           @ApiParam(name = "end", value = "结束时间", defaultValue = "2016-08-23 00:00:00")
 | 
	
		
			
				|  |  |                                           @RequestParam(value = "end", required = true) String end,
 | 
	
		
			
				|  |  |                                           @ApiParam(name = "page", value = "第几页", defaultValue = "1")
 | 
	
		
			
				|  |  |                                           @RequestParam(value = "page", required = true) int page,
 | 
	
		
			
				|  |  |                                           @ApiParam(name = "pagesize", value = "每页几行", defaultValue = "10")
 | 
	
		
			
				|  |  |                                           @RequestParam(value = "pagesize", required = true) int pagesize) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONObject jsonObject = new JSONObject();
 | 
	
		
			
				|  |  |             if (type == 1) {
 | 
	
		
			
				|  |  |                 List<Object> list = healthIndexService.findIndexByPatient2(getUID(), type, start, end, page, pagesize);
 | 
	
		
			
				|  |  |                 jsonObject.put("data",list);
 | 
	
		
			
				|  |  |             }else{
 | 
	
		
			
				|  |  |                 JSONArray jsonArray = healthIndexService.findIndexByPatient(getUID(), type, start, end, page, pagesize);
 | 
	
		
			
				|  |  |                 jsonObject.put("data",jsonArray);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             return write(200, "查询成功", "list", jsonObject);
 | 
	
		
			
				|  |  |         } catch (Exception ex) {
 | 
	
		
			
				|  |  |             error(ex);
 | 
	
		
			
				|  |  |             return invalidUserException(ex, -1, "查询失败!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @RequestMapping(value = "standard", method = RequestMethod.GET)
 | 
	
		
			
				|  |  |     @ResponseBody
 | 
	
		
			
				|  |  |     @ApiOperation("患者健康指标预警值查询")
 | 
	
		
			
				|  |  |     public String standard() {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             JSONArray standardArray = new JSONArray();
 | 
	
		
			
				|  |  |             JSONArray userArray = new JSONArray();
 | 
	
		
			
				|  |  |             // 预警值未设置,返回默认值
 | 
	
		
			
				|  |  |             StringBuffer sb = new StringBuffer();
 | 
	
		
			
				|  |  |             sb.append("[");
 | 
	
		
			
				|  |  |             // 默认血糖(餐前,餐后二小时)
 | 
	
		
			
				|  |  |             sb.append("{min_value_1:"+ PatientHealthIndexService.HEALTH_STANDARD_ST_MIN_BEFORE +", max_value_1: "+ PatientHealthIndexService.HEALTH_STANDARD_ST_MAX_BEFORE +", " +
 | 
	
		
			
				|  |  |                     "min_value_2:"+ PatientHealthIndexService.HEALTH_STANDARD_ST_MIN_AFTER +", max_value_2:"+ PatientHealthIndexService.HEALTH_STANDARD_ST_MAX_AFTER +", type:1},");
 | 
	
		
			
				|  |  |             // 默认血压(收缩压,舒张压)
 | 
	
		
			
				|  |  |             sb.append("{min_value_1:"+ PatientHealthIndexService.HEALTH_STANDARD_SSY_MIN +", max_value_1:"+ PatientHealthIndexService.HEALTH_STANDARD_SSY_MAX +", " +
 | 
	
		
			
				|  |  |                     "min_value_2:"+ PatientHealthIndexService.HEALTH_STANDARD_SZY_MIN +", max_value_2:"+ PatientHealthIndexService.HEALTH_STANDARD_SZY_MAX +", type:2}");
 | 
	
		
			
				|  |  |             sb.append("]");
 | 
	
		
			
				|  |  |             standardArray = new JSONArray(sb.toString());
 | 
	
		
			
				|  |  |             JSONObject json = new JSONObject();
 | 
	
		
			
				|  |  |             json.put("standard", standardArray);
 | 
	
		
			
				|  |  |             json.put("custom", userArray);
 | 
	
		
			
				|  |  |             return write(200, "查询成功", "data", json);
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             error(e);
 | 
	
		
			
				|  |  |             return invalidUserException(e, -1, "查询失败!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | }
 |