|  | @ -45,9 +45,6 @@ public class DataInputService {
 | 
												
													
														
															|  |     @Autowired
 |  |     @Autowired
 | 
												
													
														
															|  |     private HBaseAdmin hBaseAdmin;
 |  |     private HBaseAdmin hBaseAdmin;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  |     /**
 | 
												
													
														
															|  |      * 居民设备注册及绑定
 |  |      * 居民设备注册及绑定
 | 
												
													
														
															|  |      */
 |  |      */
 | 
												
											
												
													
														
															|  | @ -129,16 +126,13 @@ public class DataInputService {
 | 
												
													
														
															|  |         String fileName = "";
 |  |         String fileName = "";
 | 
												
													
														
															|  |         String fileAbsPath = "";
 |  |         String fileAbsPath = "";
 | 
												
													
														
															|  |         String rowkey = "";
 |  |         String rowkey = "";
 | 
												
													
														
															|  |         //提取json各项值
 |  | 
 | 
												
													
														
															|  | 
 |  |         //提取json某些项值
 | 
												
													
														
															|  |         JSONObject jsonObject = JSONObject.parseObject(json);
 |  |         JSONObject jsonObject = JSONObject.parseObject(json);
 | 
												
													
														
															|  |         String accessToken= jsonObject.getString("access_token");
 |  |         String accessToken= jsonObject.getString("access_token");
 | 
												
													
														
															|  |         String dataSource = jsonObject.getString("data_source");
 |  |         String dataSource = jsonObject.getString("data_source");
 | 
												
													
														
															|  |         String deviceSn = jsonObject.getString("sn");
 |  |         String deviceSn = jsonObject.getString("sn");
 | 
												
													
														
															|  |         String extCode = jsonObject.getString("ext_code");
 |  |         String extCode = jsonObject.getString("ext_code");
 | 
												
													
														
															|  |         String measuretime = jsonObject.getString("measure_time");
 |  | 
 | 
												
													
														
															|  |         if(null == measuretime){
 |  | 
 | 
												
													
														
															|  |             measuretime = DateUtils.formatDate(new Date(), DateUtil.yyyy_MM_dd_HH_mm_ss);
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         //包含居民身份的数据,对设备数据进行校验绑定,此处包含的信息只有身份证号和用户名以及设备序列号,如果设备库中存在该序号的设备,则对绑定居民进行修改,改为当前居民,如果没有则跳过
 |  |         //包含居民身份的数据,对设备数据进行校验绑定,此处包含的信息只有身份证号和用户名以及设备序列号,如果设备库中存在该序号的设备,则对绑定居民进行修改,改为当前居民,如果没有则跳过
 | 
												
													
														
															|  |         if(jsonObject.containsKey("idcard") && jsonObject.containsKey("username")){
 |  |         if(jsonObject.containsKey("idcard") && jsonObject.containsKey("username")){
 | 
												
													
														
															|  |             String idcard = jsonObject.getString("idcard");
 |  |             String idcard = jsonObject.getString("idcard");
 | 
												
											
												
													
														
															|  | @ -146,53 +140,53 @@ public class DataInputService {
 | 
												
													
														
															|  |             updateBindUser(dataSource,deviceSn,idcard,username);
 |  |             updateBindUser(dataSource,deviceSn,idcard,username);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         try {
 |  | 
 | 
												
													
														
															|  |             rowkey = RowKeyUtils.makeRowKey(accessToken, deviceSn, extCode, DateUtil.dateTimeParse(measuretime).getTime());
 |  | 
 | 
												
													
														
															|  |         } catch (Exception e) {
 |  | 
 | 
												
													
														
															|  |             e.printStackTrace();
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         //将数据存入es
 |  | 
 | 
												
													
														
															|  |         jsonObject.put("_id", new SaveModel().getId());//es的id继承至jestId
 |  | 
 | 
												
													
														
															|  |         jsonObject.put("id", rowkey);//hbase的rowkey
 |  | 
 | 
												
													
														
															|  |         elastricSearchHelper.save(ConstantUtils.esIndex, ConstantUtils.esType, jsonObject.toJSONString());
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         Map<String, Map<String, String>> family = new HashMap<>();
 |  | 
 | 
												
													
														
															|  | //        List<Map<String, String>> columnsA = new ArrayList<>();
 |  | 
 | 
												
													
														
															|  |         Map<String, String> columnsA = new HashMap<>();
 |  | 
 | 
												
													
														
															|  |         Map<String, String> columnsB = new HashMap<>();
 |  | 
 | 
												
													
														
															|  |         //组装A列
 |  | 
 | 
												
													
														
															|  |         columnsA.put("access_token",accessToken);
 |  | 
 | 
												
													
														
															|  |         columnsA.put("data_source",dataSource);
 |  | 
 | 
												
													
														
															|  |         columnsA.put("sn",deviceSn);
 |  | 
 | 
												
													
														
															|  |         columnsA.put("ext_code",extCode);
 |  | 
 | 
												
													
														
															|  |         columnsA.put("device_name",jsonObject.getString("device_name"));
 |  | 
 | 
												
													
														
															|  |         columnsA.put("device_model",jsonObject.getString("device_model"));
 |  | 
 | 
												
													
														
															|  |         family.put(ConstantUtils.tableName,columnsA);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         JSONArray jsonArray = jsonObject.getJSONArray("data");
 |  |         JSONArray jsonArray = jsonObject.getJSONArray("data");
 | 
												
													
														
															|  |         if(null == jsonArray || jsonArray.size() == 0){
 |  |         if(null == jsonArray || jsonArray.size() == 0){
 | 
												
													
														
															|  |             return "json no data";
 |  |             return "json no data";
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         //组装B列
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         List<String> rowkeyList = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  |         List<Map<String,Map<String,String>>> familyList = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         //循环数据,一组数据存一行,生成一个rowkey,并将该rowkey存到es中
 | 
												
													
														
															|  |         for(Object obj:jsonArray){
 |  |         for(Object obj:jsonArray){
 | 
												
													
														
															|  |             JSONObject data = (JSONObject)obj;
 |  |             JSONObject data = (JSONObject)obj;
 | 
												
													
														
															|  |            for(String key:data.keySet()){
 |  | 
 | 
												
													
														
															|  |                columnsB.put(key,data.getString(key));
 |  | 
 | 
												
													
														
															|  |            }
 |  | 
 | 
												
													
														
															|  |            if(data.containsKey("ecg")){
 |  | 
 | 
												
													
														
															|  |                fileName = data.getString("fileName");
 |  | 
 | 
												
													
														
															|  |                fileAbsPath = data.getString("filepath");
 |  | 
 | 
												
													
														
															|  |            }
 |  | 
 | 
												
													
														
															|  | //            columnsA.add(columnsB);
 |  | 
 | 
												
													
														
															|  | 
 |  |             data.put("del","1"); //添加删除标记
 | 
												
													
														
															|  | 
 |  |             try {
 | 
												
													
														
															|  | 
 |  |                 String measuretime = jsonObject.getString("measure_time");
 | 
												
													
														
															|  | 
 |  |                 if(null == measuretime){
 | 
												
													
														
															|  | 
 |  |                     measuretime = DateUtils.formatDate(new Date(), DateUtil.yyyy_MM_dd_HH_mm_ss);
 | 
												
													
														
															|  | 
 |  |                 }
 | 
												
													
														
															|  | 
 |  |                 //生成一份json数据的rowkey
 | 
												
													
														
															|  | 
 |  |                 rowkey = RowKeyUtils.makeRowKey(accessToken,deviceSn, extCode, DateUtil.dateTimeParse(measuretime).getTime());
 | 
												
													
														
															|  | 
 |  |                 data.put("rid",rowkey);//hbase的rowkey
 | 
												
													
														
															|  | 
 |  |                 rowkeyList.add(rowkey);
 | 
												
													
														
															|  | 
 |  |             } catch (Exception e) {
 | 
												
													
														
															|  | 
 |  |                 e.printStackTrace();
 | 
												
													
														
															|  | 
 |  |             }
 | 
												
													
														
															|  | 
 |  |             //组装B列
 | 
												
													
														
															|  | 
 |  |             Map<String, Map<String, String>> family = new HashMap<>();
 | 
												
													
														
															|  | 
 |  |             Map<String, String> columnsB = new HashMap<>();
 | 
												
													
														
															|  | 
 |  |             for(String key:data.keySet()){
 | 
												
													
														
															|  | 
 |  |                 columnsB.put(key,data.getString(key));
 | 
												
													
														
															|  | 
 |  |             }
 | 
												
													
														
															|  | 
 |  |             if(data.containsKey("ecg")){
 | 
												
													
														
															|  | 
 |  |                 fileName = data.getString("fileName");
 | 
												
													
														
															|  | 
 |  |                 fileAbsPath = data.getString("filepath");
 | 
												
													
														
															|  | 
 |  |             }
 | 
												
													
														
															|  | 
 |  |             family.put(ConstantUtils.tableName,columnsB);
 | 
												
													
														
															|  | 
 |  |             familyList.add(family);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         family.put(ConstantUtils.familyB, columnsB);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         //将数据存入es
 | 
												
													
														
															|  | 
 |  |         elastricSearchHelper.save(ConstantUtils.esIndex, ConstantUtils.esType, jsonObject.toJSONString());
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         try {
 |  |         try {
 | 
												
													
														
															|  |             boolean tableExists = hBaseAdmin.isTableExists(ConstantUtils.tableName);
 |  |             boolean tableExists = hBaseAdmin.isTableExists(ConstantUtils.tableName);
 | 
												
													
														
															|  |             if (!tableExists) {
 |  |             if (!tableExists) {
 | 
												
													
														
															|  |                 hBaseAdmin.createTable(ConstantUtils.tableName,ConstantUtils.familyA,ConstantUtils.familyB);
 |  | 
 | 
												
													
														
															|  | 
 |  |                 hBaseAdmin.createTable(ConstantUtils.tableName,ConstantUtils.familyB);
 | 
												
													
														
															|  |             }
 |  |             }
 | 
												
													
														
															|  |             hBaseHelper.add(ConstantUtils.tableName, rowkey, family);
 |  | 
 | 
												
													
														
															|  | 
 |  |             hBaseHelper.addBulk(ConstantUtils.tableName, rowkeyList, familyList);
 | 
												
													
														
															|  |         } catch (Exception e) {
 |  |         } catch (Exception e) {
 | 
												
													
														
															|  |             e.printStackTrace();
 |  |             e.printStackTrace();
 | 
												
													
														
															|  |             //保存日志
 |  |             //保存日志
 |