| 
					
				 | 
			
			
				@@ -776,3 +776,154 @@ public class YtiotVDataServiceImpl implements YtiotVDataService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							device_id_list += ","+j_tmp.getString(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					device_id = q_json.getString("device_id");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(dwtype!=null) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if((dwtype.equals("2"))||(dwtype.equals("4"))||(dwtype.equals("5")))
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				{
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					dwtype_list = "2,4,5";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					dwtype=null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//				for(int i=0;i<2;i++) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//					if(i==0)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//						dwtype_list = "2";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//					else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//						dwtype_list += ","+"5";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//				}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(q_json.has("point_code")) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if((q_json.optJSONObject("point_code")!=null)&&(q_json.optJSONObject("point_code").isArray())) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					JSONArray j_tmp = q_json.getJSONArray("point_code");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					for(int i=0;i<j_tmp.size();i++) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if(i==0)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							point_code_list = j_tmp.getString(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							point_code_list += ","+j_tmp.getString(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					point_code = q_json.getString("point_code");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(q_json.has("id")) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if((q_json.optJSONObject("id")!=null)&&(q_json.optJSONObject("id").isArray())) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					JSONArray j_tmp = q_json.getJSONArray("id");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					for(int i=0;i<j_tmp.size();i++) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if(i==0)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							id_list = j_tmp.getString(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							id_list += ","+j_tmp.getString(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					id = q_json.getString("id");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			company = q_json.has("company")?q_json.getString("company"):null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			data_time_start = q_json.has("data_time_start")?q_json.getString("data_time_start"):null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			data_time_end = q_json.has("data_time_end")?q_json.getString("data_time_end"):null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			name = q_json.has("name")?q_json.getString("name"):null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(sort!=null) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			Sort = JSONArray.fromObject(sort);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if((Sort.isArray())&&(Sort.size()>0)) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				JSONObject s_json = Sort.getJSONObject(0);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				order = s_json.has("property")?s_json.getString("property"):order;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				dir = s_json.has("direction")?s_json.getString("direction"):dir;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			json.put("sort", sort);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		Start = start;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		Limit = limit;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		Page = page;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if((V_LOGINNAME!=null)&&(company_code==null)&&(Company_Code_List==null)) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			String where = " where u.id.agentid='"+V_LOGINNAME+"' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List list = ytiotVUserCompanyDao.query(where, null, null, null, null);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(list.size()>0) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for(int i=0;i<list.size();i++) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					YtiotVUsercompany o = (YtiotVUsercompany)list.get(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					YtiotVUsercompanyId oid = o.getId();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(i==0)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						Company_Code_List = oid.getOwnerCode();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					else
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						Company_Code_List += ","+oid.getOwnerCode();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(device_id!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("device_id")+" = '"+device_id+"' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(company!=null) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("owner_name")+" like '%"+company+"%' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(Company_Code_List!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(company_code!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" like '%"+company_code+"%' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(company_code_list!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}			
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(device_id_list!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("device_id")+" in ("+device_id+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(dwtype!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("dwtype")+" = "+dwtype+" ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(dwtype_list!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("dwtype")+" in ("+dwtype_list+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(point_code!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("point_code")+" in ("+point_code+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(point_code_list!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("point_code")+" in ("+point_code_list+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(id!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("id")+" = "+id+" ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(id_list!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("id")+" in ("+id_list+") ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(data_time_start!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("data_time")+" >= '"+data_time_start+"' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(data_time_end!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("data_time")+" <= '"+data_time_end+"' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(name!=null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("name")+" like '%"+name+"%' ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		int totalCount = ytiotVDataDao.getSyncDataCount(hqlwhere);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		json.put("totalCount", totalCount);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(Start!=null){
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(Integer.parseInt(Start)>totalCount){
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				Start = "0";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				Page = "0";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}else if(page==null)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				Page="0";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}else{
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			Start = "0";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			Page = "0";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		json.put("page", Page);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		json.put("start", Start);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		json.put("limit", Limit);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(order!=null) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			order_str = " order by "+fieldname(order)+" ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			order_str = " order by data_time ";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			dir = "DESC";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(totalCount>0) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<?> list = ytiotVDataDao.SyncDataQuery(hqlwhere, order_str, dir, Start, Limit);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(list.size()>0) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for(int i=0;i<list.size();i++) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					YtiotVSyncData o = (YtiotVSyncData)list.get(i);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					YtiotVSyncDataId oid = o.getId();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					@SuppressWarnings("rawtypes")
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					Map<String, Comparable> map = new HashMap<String, Comparable>();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("company", oid.getCompany());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("company_code", oid.getCompanyCode());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("content", oid.getContent());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("data_time", df.format(oid.getDataTime()));
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("device_id", oid.getDeviceId());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("dwtype", oid.getDwtype());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("id", oid.getId());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("name", oid.getName());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("native_id", oid.getNativeId());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("point_code", oid.getPointCode());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					map.put("point_data", oid.getPointData());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					JSONObject jSONObject = JSONObject.fromObject(map);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					jSONArray.add(jSONObject);
 
			 |