Forráskód Böngészése

3dDisplayEngine YtiotVDataServiceImpl.java 李欣儒 commit at 2020-09-22

李欣儒 4 éve
szülő
commit
8cc2ca2c10
1 módosított fájl, 181 hozzáadás és 0 törlés
  1. 181 0
      3dDisplayEngine/buildingService/YtiotVDataServiceImpl.java

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

@@ -133,3 +133,184 @@ public class YtiotVDataServiceImpl implements YtiotVDataService {
 		String company_code_list = null;
 		String device_id = null;
 		String device_id_list = null;
+		String device_name = null;
+		String dwtype = null;
+		String dwtype_list = null;
+		String id = null;
+		String id_list = null;
+		String install_time_start = null;
+		String install_time_end = null;
+		String Company_Code_List = null;
+		String V_LOGINNAME = null;
+		String unitinfo = null;
+		String hqlwhere = null;
+		String order = null;
+		String dir = null;
+		String Start = null;
+		String Limit = null;
+		String Page = null;
+		String order_str = null;
+		JSONObject q_json = null;
+		JSONArray Sort = null;
+		JSONArray jSONArray = new JSONArray();
+		JSONObject json = new JSONObject();
+		json.put("action", "getSyncPointVList");
+		if(queryJson!=null) {
+			q_json = JSONObject.fromObject(queryJson);
+			if(q_json.has("company_code")) {
+				if(q_json.getJSONObject("company_code").isArray()) {
+					JSONArray j_tmp = q_json.getJSONArray("company_code");
+					for(int i=0;i<j_tmp.size();i++) {
+						if(i==0)
+							company_code_list = j_tmp.getString(i);
+						else
+							company_code_list += ","+j_tmp.getString(i);
+					}
+				}else
+					company_code = q_json.getString("company_code");
+			}
+			if(q_json.has("device_id")) {
+				if(q_json.getJSONObject("device_id").isArray()) {
+					JSONArray j_tmp = q_json.getJSONArray("device_id");
+					for(int i=0;i<j_tmp.size();i++) {
+						if(i==0)
+							device_id_list = j_tmp.getString(i);
+						else
+							device_id_list += ","+j_tmp.getString(i);
+					}
+				}else
+					device_id = q_json.getString("device_id");
+			}
+			device_name = q_json.has("device_name")?q_json.getString("device_name"):null;
+			if(q_json.has("dwtype")) {
+				if(q_json.getJSONObject("dwtype").isArray()) {
+					JSONArray j_tmp = q_json.getJSONArray("dwtype");
+					for(int i=0;i<j_tmp.size();i++) {
+						if(i==0)
+							dwtype_list = j_tmp.getString(i);
+						else
+							dwtype_list += ","+j_tmp.getString(i);
+					}
+				}else
+					dwtype = q_json.getString("dwtype");
+			}
+			if(q_json.has("id")) {
+				if(q_json.getJSONObject("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");
+			}
+			V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null;
+			unitinfo = q_json.has("unitinfo")?q_json.getString("unitinfo"):null;
+			install_time_start = q_json.has("install_time_start")?q_json.getString("install_time_start"):null;
+			install_time_end = q_json.has("install_time_end")?q_json.getString("install_time_end"):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) {
+			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(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!=null)
+			hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_id")+" like '%"+device_id+"%' ";
+		if(device_id_list!=null)
+			hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_id")+" in ("+device_id_list+") ";
+		if(device_name!=null)
+			hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_name")+" like '%"+device_name+"%' ";
+		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(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(install_time_start!=null)
+			hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("install_time")+" >='"+install_time_start+"' ";
+		if(install_time_end!=null)
+			hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("install_time")+" <='"+install_time_end+"' ";
+		if(unitinfo!=null)
+			hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("unitinfo")+" like '%"+unitinfo+"%' ";
+		int totalCount = ytiotVDataDao.getSyncPointCount(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(totalCount>0) {
+			List<?> list = ytiotVDataDao.SyncPointQuery(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++) {
+					YtiotVSync o = (YtiotVSync)list.get(i);
+					YtiotVSyncId oid = o.getId();
+					@SuppressWarnings("rawtypes")
+					Map<String, Comparable> map = new HashMap<String, Comparable>();
+					map.put("company_code", oid.getCompanyCode());
+					map.put("device_id", oid.getDeviceId());
+					map.put("device_name", oid.getDeviceName());
+					map.put("dwtype", oid.getDwtype());
+					map.put("id", oid.getId());
+					map.put("install_time", df.format(oid.getInstallTime()));
+					map.put("rtmp", oid.getRtmp());
+					map.put("sync_id", oid.getSyncId());
+					map.put("tablename", oid.getTableName());
+					map.put("unitinfo", oid.getUnitinfo());
+					JSONObject jSONObject = JSONObject.fromObject(map);
+					jSONArray.add(jSONObject);
+				}
+				json.put("RESULT", jSONArray);
+			}
+		}
+		return json.toString();
+	}
+	@Override
+	public String getSyncDataList(String queryJson)
+			throws Exception {
+		// TODO Auto-generated method stub
+		String company_code = null;
+		String company_code_list = null;