|  | @ -4,14 +4,18 @@ import com.alibaba.fastjson.JSONArray;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | import com.fasterxml.jackson.databind.ObjectMapper;
 | 
	
		
			
				|  |  | import com.yihu.iot.datainput.service.DataInputService;
 | 
	
		
			
				|  |  | import com.yihu.iot.service.common.MyJdbcTemplate;
 | 
	
		
			
				|  |  | import com.yihu.mysql.query.BaseJpaService;
 | 
	
		
			
				|  |  | import org.slf4j.Logger;
 | 
	
		
			
				|  |  | import org.slf4j.LoggerFactory;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.jdbc.core.BeanPropertyRowMapper;
 | 
	
		
			
				|  |  | import org.springframework.jdbc.core.JdbcTemplate;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.HashMap;
 | 
	
		
			
				|  |  | import java.util.LinkedHashMap;
 | 
	
		
			
				|  |  | import java.util.List;
 | 
	
		
			
				|  |  | import java.util.Map;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | /**
 | 
	
	
		
			
				|  | @ -31,6 +35,76 @@ public class IotAnalyzerService extends BaseJpaService<WlyyIotD, WlyyIotDDao> {
 | 
	
		
			
				|  |  |     private String accessToken = "yituoHouse";
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     ObjectMapper objectMapper;
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private MyJdbcTemplate myJdbcTemplate;
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private JdbcTemplate jdbcTemplate;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 初始化把奕拓小屋数据存入es
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public void initIntoEs(){
 | 
	
		
			
				|  |  |         String id = "";
 | 
	
		
			
				|  |  |         String sqlM = "SELECT * FROM wlyy_iot_m WHERE id >? and create_time is not null ORDER BY id limit 2";
 | 
	
		
			
				|  |  |         String sqlD = "SELECT * from wlyy_iot_d WHERE mid = ?";
 | 
	
		
			
				|  |  |         List<WlyyIotM> list = jdbcTemplate.query(sqlM, new Object[] {id}, new BeanPropertyRowMapper<>(WlyyIotM.class));
 | 
	
		
			
				|  |  |         while (list.size()>0){
 | 
	
		
			
				|  |  |             list.forEach(wlyyIotM->{
 | 
	
		
			
				|  |  |                 List<WlyyIotD> wlyyIotDList = jdbcTemplate.query(sqlD, new Object[] {wlyyIotM.getId()}, new BeanPropertyRowMapper<>(WlyyIotD.class));
 | 
	
		
			
				|  |  |                 JSONObject json = new JSONObject();
 | 
	
		
			
				|  |  |                 json.put("sn", wlyyIotM.getSn());
 | 
	
		
			
				|  |  |                 JSONObject ext_code = new JSONObject();
 | 
	
		
			
				|  |  |                 ext_code.put("UnitNo",wlyyIotM.getUnitNo());
 | 
	
		
			
				|  |  |                 ext_code.put("UnitName",wlyyIotM.getUnitName());
 | 
	
		
			
				|  |  |                 ext_code.put("DoctorId",wlyyIotM.getDoctorId());
 | 
	
		
			
				|  |  |                 ext_code.put("DoctorName",wlyyIotM.getDoctorName());
 | 
	
		
			
				|  |  |                 ext_code.put("RecordNo",wlyyIotM.getRecordNo());
 | 
	
		
			
				|  |  |                 ext_code.put("MacAddr",wlyyIotM.getMacAddr());
 | 
	
		
			
				|  |  |                 json.put("ext_code",ext_code.toJSONString());
 | 
	
		
			
				|  |  |                 json.put("device_name",wlyyIotM.getDeviceName());
 | 
	
		
			
				|  |  |                 json.put("device_model",wlyyIotM.getDeviceModel());
 | 
	
		
			
				|  |  |                 json.put("idcard",wlyyIotM.getIdCardNo());
 | 
	
		
			
				|  |  |                 json.put("username",wlyyIotM.getUserName());
 | 
	
		
			
				|  |  |                 json.put("access_token",accessToken);
 | 
	
		
			
				|  |  |                 json.put("data_source",dataSource);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |                 Map<String,Map<String,Object>> map2 = new HashMap<String, Map<String, Object>>();
 | 
	
		
			
				|  |  |                 for(WlyyIotD iotD:wlyyIotDList){
 | 
	
		
			
				|  |  |                     String value =  "EcgData".equals(iotD.getCode())?iotD.getContent():iotD.getValue();
 | 
	
		
			
				|  |  |                     if(map2.containsKey(iotD.getType())){
 | 
	
		
			
				|  |  |                         map2.get(iotD.getType()).put(iotD.getCode(),iotD.getValue());
 | 
	
		
			
				|  |  |                     }else{
 | 
	
		
			
				|  |  |                         Map<String,Object> map = new HashMap<>();
 | 
	
		
			
				|  |  |                         map.put(iotD.getCode(),iotD.getValue());
 | 
	
		
			
				|  |  |                         map2.put(iotD.getType(),map);
 | 
	
		
			
				|  |  |                     }
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |                 for (Map.Entry entry : map2.entrySet()) {
 | 
	
		
			
				|  |  |                     String code = entry.getKey().toString();
 | 
	
		
			
				|  |  |                     Map<String,Object> valueMap = (HashMap)entry.getValue();
 | 
	
		
			
				|  |  |                     JSONArray jsonArray = new JSONArray();
 | 
	
		
			
				|  |  |                     JSONObject js = new JSONObject();
 | 
	
		
			
				|  |  |                     js.put("measure_time",wlyyIotM.getMeasureTime());//测量时间
 | 
	
		
			
				|  |  |                     js.put("del",1);
 | 
	
		
			
				|  |  |                     js.put("status","0");
 | 
	
		
			
				|  |  |                     js.put("type",code);
 | 
	
		
			
				|  |  |                     analyzerMap(valueMap,js,code);
 | 
	
		
			
				|  |  |                     jsonArray.add(js);
 | 
	
		
			
				|  |  |                     json.put("data",jsonArray);
 | 
	
		
			
				|  |  |                     try {
 | 
	
		
			
				|  |  |                         dataInputService.inputBodySignsData(json.toJSONString());
 | 
	
		
			
				|  |  |                     }catch (Exception e){
 | 
	
		
			
				|  |  |                         e.printStackTrace();
 | 
	
		
			
				|  |  |                     }
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             });
 | 
	
		
			
				|  |  |             logger.info("初始化把奕拓小屋数据存入es,导入"+list.size()+"条,初始id:"+id);
 | 
	
		
			
				|  |  |             id = list.get(list.size()-1).getId();
 | 
	
		
			
				|  |  |             list = jdbcTemplate.query(sqlM, new Object[] {id}, new BeanPropertyRowMapper<>(WlyyIotM.class));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 针对上传的体数据进行基础数据的解析,进行主表数据的存储
 | 
	
	
		
			
				|  | @ -118,7 +192,7 @@ public class IotAnalyzerService extends BaseJpaService<WlyyIotD, WlyyIotDDao> {
 | 
	
		
			
				|  |  |                     LinkedHashMap valueMap = (LinkedHashMap)entry.getValue();
 | 
	
		
			
				|  |  |                     JSONArray jsonArray = new JSONArray();
 | 
	
		
			
				|  |  |                     JSONObject js = new JSONObject();
 | 
	
		
			
				|  |  |                     js.put("measure_time",code);//测量时间
 | 
	
		
			
				|  |  |                     js.put("measure_time",wlyyIotM.getMeasureTime());//测量时间
 | 
	
		
			
				|  |  |                     js.put("del",1);
 | 
	
		
			
				|  |  |                     js.put("status","0");
 | 
	
		
			
				|  |  |                     js.put("type",code);
 | 
	
	
		
			
				|  | @ -140,7 +214,7 @@ public class IotAnalyzerService extends BaseJpaService<WlyyIotD, WlyyIotDDao> {
 | 
	
		
			
				|  |  |         return o == null?"":o.toString();
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public void analyzerMap(Map<String,Object> mapInfo,JSONObject js,String type)throws Exception{
 | 
	
		
			
				|  |  |     public void analyzerMap(Map<String,Object> mapInfo,JSONObject js,String type){
 | 
	
		
			
				|  |  |         int i = 0;
 | 
	
		
			
				|  |  |         for(Object o: mapInfo.values()){
 | 
	
		
			
				|  |  |             String value = o == null?"":o.toString();
 |