Przeglądaj źródła

3dDisplayEngine YtiotVDataServiceImpl.java 李欣儒 commit at 2021-03-24

李欣儒 4 lat temu
rodzic
commit
c0aaefef77

+ 84 - 0
3dDisplayEngine/buildingService/YtiotVDataServiceImpl.java

@@ -2432,3 +2432,87 @@ public class YtiotVDataServiceImpl implements YtiotVDataService {
 					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;
+			Page = q_json.has("page")?q_json.getString("page"):null;
+			order = q_json.has("order")?q_json.getString("order"):null;
+			dir = q_json.has("dir")?q_json.getString("dir"):null;
+			Start = q_json.has("start")?q_json.getString("start"):null;
+			Limit = q_json.has("limit")?q_json.getString("limit"):null;
+		}
+
+		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) {