| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438 | package cn.com.usky.iot.data.service;import java.text.SimpleDateFormat;import java.util.Date;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import cn.com.usky.iot.admin.dao.YtiotTAdminDao;import cn.com.usky.iot.admin.dao.YtiotVUserCompanyDao;import cn.com.usky.iot.alarm.dao.YtiotVAlarmDao;import cn.com.usky.iot.company.dao.YtiotVCompanyDao;import cn.com.usky.iot.data.dao.YtiotVDataDao;import cn.com.usky.iot.entity.YtiotTAdmin;import cn.com.usky.iot.entity.YtiotTArea;import cn.com.usky.iot.entity.YtiotVCompany;import cn.com.usky.iot.entity.YtiotVCompanyId;import cn.com.usky.iot.entity.YtiotVHj;import cn.com.usky.iot.entity.YtiotVHjId;import cn.com.usky.iot.entity.YtiotVRtu;import cn.com.usky.iot.entity.YtiotVRtuId;import cn.com.usky.iot.entity.YtiotVSj;import cn.com.usky.iot.entity.YtiotVSjId;import cn.com.usky.iot.entity.YtiotVSync;import cn.com.usky.iot.entity.YtiotVSyncData;import cn.com.usky.iot.entity.YtiotVSyncDataId;import cn.com.usky.iot.entity.YtiotVSyncId;import cn.com.usky.iot.entity.YtiotVSyncStatus;import cn.com.usky.iot.entity.YtiotVSyncStatusId;import cn.com.usky.iot.entity.YtiotVUsercompany;import cn.com.usky.iot.entity.YtiotVUsercompanyId;import cn.com.usky.utils.MD5Util;import net.sf.json.JSONArray;import net.sf.json.JSONObject;import java.util.Calendar;public class YtiotVDataServiceImpl implements YtiotVDataService {	private YtiotVDataDao ytiotVDataDao;	private YtiotVCompanyDao ytiotVCompanyDao; 	private YtiotVUserCompanyDao ytiotVUserCompanyDao;	private YtiotVAlarmDao ytiotVAlarmDao;	private YtiotTAdminDao ytiotTAdminDao;	public YtiotVDataDao getYtiotVDataDao() {		return ytiotVDataDao;	}	public void setYtiotVDataDao(YtiotVDataDao ytiotVDataDao) {		this.ytiotVDataDao = ytiotVDataDao;	}	public YtiotVCompanyDao getYtiotVCompanyDao() {		return ytiotVCompanyDao;	}	public void setYtiotVCompanyDao(YtiotVCompanyDao ytiotVCompanyDao) {		this.ytiotVCompanyDao = ytiotVCompanyDao;	}	public YtiotVUserCompanyDao getYtiotVUserCompanyDao() {		return ytiotVUserCompanyDao;	}	public void setYtiotVUserCompanyDao(YtiotVUserCompanyDao ytiotVUserCompanyDao) {		this.ytiotVUserCompanyDao = ytiotVUserCompanyDao;	}	public YtiotTAdminDao getYtiotTAdminDao() {		return ytiotTAdminDao;	}	public void setYtiotTAdminDao(YtiotTAdminDao ytiotTAdminDao) {		this.ytiotTAdminDao = ytiotTAdminDao;	}	public YtiotVAlarmDao getYtiotVAlarmDao() {		return ytiotVAlarmDao;	}	public void setYtiotVAlarmDao(YtiotVAlarmDao ytiotVAlarmDao) {		this.ytiotVAlarmDao = ytiotVAlarmDao;	}	public boolean chk_string_param(String param) {		if(param==null)			return true;		if(param.indexOf("=")>=0)			return false;		if(param.indexOf("\'")>=0)			return false;		if(param.indexOf("\"")>=0)			return false;		return true;	}	public String chkhw(String hqlwhere){		if(hqlwhere==null)			return " where ";		else			return hqlwhere+" and ";	}	public String fieldname(String name) {		if(name.equals("company_code"))			return "companyCode";		if(name.equals("device_id"))			return "deviceId";		if(name.equals("device_name"))			return "deviceName";		if(name.equals("install_time"))			return "installTime";		if(name.equals("sync_id"))			return "syncId";		if(name.equals("table_name"))			return "tableName";		if(name.equals("data_time"))			return "dataTime";		if(name.equals("native_id"))			return "nativeId";		if(name.equals("point_code"))			return "pointCode";		if(name.equals("point_data"))			return "pointData";		if(name.equals("owner_name"))			return "ownerName";		if(name.equals("owner_id"))			return "ownerId";		return name;	}		@Override	public String getSyncPointVList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		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;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}			if(q_json.has("dwtype")) {				if((q_json.optJSONObject("dwtype")!=null)&&(q_json.optJSONObject("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("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(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("orderIdx", Integer.parseInt(Start)+i+1);					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);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}	@Override	public String getSyncDataVList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}			if(q_json.has("dwtype")) {				if((q_json.optJSONObject("dwtype")!=null)&&(q_json.optJSONObject("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("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);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}	@Override	public String getSyncDataQList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}			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);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}	@Override	public String getSyncwaterDataVList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String device_type = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}					for(int i=0;i<2;i++) {						if(i==0)							dwtype_list = "2";						else							dwtype_list += ","+"5";					}								for(int i=0;i<2;i++) {						if(i==0)							point_code_list = "2";						else							point_code_list += ","+"3"+","+"4";					}							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("time_start")?q_json.getString("time_start"):null;			data_time_end = q_json.has("time_end")?q_json.getString("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)&&(!V_LOGINNAME.equals("admin"))&&(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_list+") ";		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.getSyncStatusCount(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 data_time ";					} else {			order_str = " order by device_id ";			dir = "DESC";		}		if(totalCount>0) {			List<?> list = ytiotVDataDao.SyncStatusQuery(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++) {					YtiotVSyncStatus o = (YtiotVSyncStatus)list.get(i);					YtiotVSyncStatusId oid = o.getId();					@SuppressWarnings("rawtypes")					Map<String, Comparable> map = new HashMap<String, Comparable>();					if(oid.getDwtype()==2) {						map.put("device_type", "水表");					}else {						map.put("device_type", "液位");					}					map.put("orderIdx", Integer.parseInt(Start)+i+1);					map.put("company", oid.getCompany());					map.put("company_code", oid.getCompanyCode());					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_name", oid.getPointName());					map.put("point_data", oid.getPointData());					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray.add(jSONObject);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}	@Override	public String getSyncDataRList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}								dwtype= "6";						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);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}	@Override	public String getSyncrtuDataVList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String device_type = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}//					for(int i=0;i<2;i++) {//						if(i==0)//							dwtype_list = "2";//						else//							dwtype_list += ","+"5";//					}			dwtype = "6";			point_code = "64";												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("time_start")?q_json.getString("time_start"):null;			data_time_end = q_json.has("time_end")?q_json.getString("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)&&(!V_LOGINNAME.equals("admin"))&&(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_list+") ";		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")+" > ("+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.getSyncStatusCount(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 data_time ";					} else {			order_str = " order by device_id ";			dir = "DESC";		}		if(totalCount>0) {			List<?> list = ytiotVDataDao.SyncStatusQuery(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++) {					YtiotVSyncStatus o = (YtiotVSyncStatus)list.get(i);					YtiotVSyncStatusId oid = o.getId();					@SuppressWarnings("rawtypes")					Map<String, Comparable> map = new HashMap<String, Comparable>();					map.put("device_type", "RTU");					map.put("orderIdx", Integer.parseInt(Start)+i+1);					map.put("company", oid.getCompany());					map.put("company_code", oid.getCompanyCode());					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_name", oid.getPointName());					map.put("point_data", oid.getPointData());					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray.add(jSONObject);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncDataFList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}								dwtype= "7";						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);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncfileDataFexcelList(String queryJson)			throws Exception {		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}								dwtype= "7";						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;			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) {			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);				}				json.put("result", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncwaterDataFexcelList(String queryJson)			throws Exception {		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}						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;			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) {			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);				}				json.put("result", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncDataFexcelList(String queryJson)			throws Exception {		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}			//			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;			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) {			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);				}				json.put("result", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncrtuDataFexcelList(String queryJson)			throws Exception {		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}								dwtype= "6";						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;			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) {			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);				}				json.put("result", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncfireDataVList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String device_type = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String id = null;		String id_list = null;		String company = null;		String data_time_start = null;		String data_time_end = null;		String name = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncDataVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}//					for(int i=0;i<2;i++) {//						if(i==0)//							dwtype_list = "2";//						else//							dwtype_list += ","+"5";//					}			dwtype = "7";			point_code = "64";												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("time_start")?q_json.getString("time_start"):null;			data_time_end = q_json.has("time_end")?q_json.getString("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.equals("admin")) {		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_list+") ";		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")+" > ("+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.getSyncStatusCount(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 data_time ";					} else {			order_str = " order by device_id ";			dir = "DESC";		}				if(totalCount>0) {			List<?> list = ytiotVDataDao.SyncStatusQuery(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++) {					YtiotVSyncStatus o = (YtiotVSyncStatus)list.get(i);					YtiotVSyncStatusId oid = o.getId();										@SuppressWarnings("rawtypes")					Map<String, Comparable> map = new HashMap<String, Comparable>();					map.put("device_type", "电气火灾");					map.put("orderIdx", Integer.parseInt(Start)+i+1);					map.put("company", oid.getCompany());					map.put("company_code", oid.getCompanyCode());					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_name", oid.getPointName());					map.put("point_data", oid.getPointData());					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray.add(jSONObject);				}				json.put("RESULT", jSONArray);			}					}		return json.toString();	}		@Override	public String getSyncStatusVList(String queryJson, String page, String start, String limit, String sort)			throws Exception {		// TODO Auto-generated method stub		String company = null;		String company_code = null;		String company_code_list = null;		String device_id = null;		String device_id_list = null;		String dwtype = null;		String dwtype_list = null;		String point_code = null;		String point_code_list = null;		String Company_Code_List = null;		String V_LOGINNAME = 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", "getSyncStatusVList");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			company = q_json.has("company")?q_json.getString("company"):null;			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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.optJSONObject("device_id")!=null)&&(q_json.optJSONObject("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");			}			if(q_json.has("dwtype")) {				if((q_json.optJSONObject("dwtype")!=null)&&(q_json.optJSONObject("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("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");			}			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) {			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!=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+") ";		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")+" ("+device_id_list+") ";		if(dwtype!=null) {			if(dwtype.equals("2")||dwtype.equals("5"))				hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("dwtype")+" in (2,5) ";			else				hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("dwtype")+" = "+dwtype+" ";		}		if(dwtype_list!=null)			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("dwtype")+" in ("+dwtype+") ";		if(point_code!=null)			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("point_code")+" = "+point_code+" ";		if(point_code_list!=null)			hqlwhere = chkhw(hqlwhere)+" u.id."+fieldname("point_code")+" in ("+point_code+") ";		int totalCount = ytiotVDataDao.getSyncStatusCount(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";		}		if(totalCount>0) {			List<?> list = ytiotVDataDao.SyncStatusQuery(hqlwhere, order_str, dir, Start, Limit);			if(list.size()>0) {				Date date = new Date();				Calendar calendar = Calendar.getInstance();				calendar.setTime(date);				calendar.add(Calendar.DATE, -1);				date = calendar.getTime();				SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");				String datime =df.format(date);				for(int i=0;i<list.size();i++) {					YtiotVSyncStatus o = (YtiotVSyncStatus)list.get(i);					YtiotVSyncStatusId oid = o.getId();					String bzsql15 = null;					bzsql15 = "SELECT device_id,IF((data_time<'"+datime+"'),0,1) AS connected FROM ytiot_v_sync_status WHERE device_id = '"+oid.getDeviceId().toString()+"' AND point_code = 2";					List bzlist15 = ytiotVAlarmDao.queryBySQL(bzsql15);					Object [] bzrow = (Object [])bzlist15.get(0);					@SuppressWarnings("rawtypes")					Map<String, Comparable> map = new HashMap<String, Comparable>();					map.put("ordIdx", Integer.parseInt(Start)+i+1);					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("point_code", oid.getPointCode());					map.put("point_data", oid.getPointData());					map.put("connected", Integer.parseInt(bzrow[1].toString())==1?"正常":"离线");					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray.add(jSONObject);				}				json.put("RESULT", jSONArray);			}		}		json.put("page", Page);		json.put("start", Start);		json.put("limit", Limit);		return json.toString();	}	@Override	public String getSyncStatusVListByCompany(String queryJson) throws Exception {		// TODO Auto-generated method stub		String company = null;		String company_code = null;		String company_code_list = null;		String Company_Code_List = null;		String dwtype = null;		String point_code = null;		String V_LOGINNAME = null;		String V_PASSWORD = null;		String QUERY_FROM = null;		String COMMSTATUS = null;		String hqlwhere = null;		String cqlwhere = null;		int E_STATUS=-1;		JSONObject q_json = null;		JSONArray jSONArray = new JSONArray();		JSONObject json = new JSONObject();		json.put("action", "getSyncStatusVListByCompany");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			company = q_json.has("company")?q_json.getString("company"):null;			dwtype = q_json.has("dwtype")?q_json.getString("dwtype"):null;			point_code = q_json.has("point_code")?q_json.getString("point_code"):null;			QUERY_FROM = q_json.has("QUERY_FROM")?q_json.getString("QUERY_FROM"):null;			COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null;			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("company_code").isArray())) {					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");				}else					company_code = q_json.getString("company_code");			}			V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null;			V_PASSWORD = q_json.has("V_PASSWORD")?q_json.getString("V_PASSWORD"):null;		}		if((V_LOGINNAME!=null)&&(V_PASSWORD!=null)) {			List list = ytiotTAdminDao.query(" where u.VLoginname='"+V_LOGINNAME+"' and u.VPassword='"					+MD5Util.EncoderByMd5(MD5Util.EncoderByMd5(V_PASSWORD))+"' ", null, null, null, null);			if(list.size()>0) {				YtiotTAdmin o = (YtiotTAdmin)list.get(0);				E_STATUS = Integer.parseInt(o.getEStatus());			}		}		if(E_STATUS==1) {			if(company!=null) {				cqlwhere = chkhw(cqlwhere)+" u.id."+fieldname("owner_name")+" like '%"+company+"%' ";			}			if(!V_LOGINNAME.equals("admin")) {				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();					}				}			}			List vlist = ytiotVAlarmDao.queryBySQL("select count(*) as count, company_code from ytiot_v_video group by company_code");			if(company_code!=null)				cqlwhere = chkhw(cqlwhere) + " u.id."+fieldname("owner_id")+" like '%"+company_code+"%' ";			if(company_code_list!=null)				cqlwhere = chkhw(cqlwhere) + " u.id."+fieldname("owner_id")+" in ("+company_code_list+") ";			else if(Company_Code_List!=null)				cqlwhere = chkhw(cqlwhere) + " u.id."+fieldname("owner_id")+" in ("+Company_Code_List+") ";			SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//			if((QUERY_FROM!=null)&&(COMMSTATUS!=null)&&(QUERY_FROM.equals("FRONTPAGE")&&(COMMSTATUS.equals("NO")))) {//				@SuppressWarnings("rawtypes")//				List c_list = ytiotVCompanyDao.query(cqlwhere, null, null, null, null);//				//			}else {				Company_Code_List = null;				@SuppressWarnings("rawtypes")				List c_list = ytiotVCompanyDao.query(cqlwhere, null, null, null, null);				float maxlng=0,minlng=0,maxlat=0,minlat=0;				int count=0;				if(c_list.size()>0) {					for(int i=0;i<c_list.size();i++) {						boolean fireAlarm=false,waterAlarm=false,rtuAlarm=false,efireAlarm=false,otherAlarm=false;						YtiotVCompany com = (YtiotVCompany)c_list.get(i);						YtiotVCompanyId ComId = com.getId();						if(i==0)							Company_Code_List = ComId.getOwnerId();						else							Company_Code_List += ","+ComId.getOwnerId();						Map<String, Comparable> cmap = new HashMap<String, Comparable>();						cmap.put("id", i+1);						cmap.put("company_name", ComId.getOwnerName());						cmap.put("fulladdress", ComId.getFulladdress());						cmap.put("xmlx", ComId.getXmlx());						cmap.put("username", ComId.getUsername());						cmap.put("phone", ComId.getPhone());						if(dwtype==null) {							String[] gis = ComId.getPosition().split(",");							if(gis.length==2) {								float lng = Float.parseFloat(gis[0]);								float lat = Float.parseFloat(gis[1]);								if((lng>100)&&(lng<150)&&(lat>20)&&(lat<70)) {									if(count==0) {										maxlng = lng;										minlng = lng;										maxlat = lat;										minlat = lat;									}else {										if(maxlng<lng)											maxlng=lng;										if(minlng>lng)											minlng=lng;										if(maxlat<lat)											maxlat=lat;										if(minlat>lat)											minlat=lat;									}									count++;								}								cmap.put("lng", lng);								cmap.put("lat", lat);							}else {								cmap.put("lng", 0.0);								cmap.put("lat", 0.0);							}						}						cmap.put("company_code", ComId.getOwnerId());						cmap.put("building_name", ComId.getBuildingName());						cmap.put("rtmp", ComId.getRtmp());						if(dwtype!=null) {							JSONArray a_point = new JSONArray();							hqlwhere = " where u.id."+fieldname("company_code")+" ='"+ComId.getOwnerId()+"' ";							if(dwtype.equals("2")||dwtype.equals("5"))								hqlwhere += " and ( u.id.dwtype='2' or u.id.dwtype='5' ) ";							else								hqlwhere += " and u.id.dwtype='"+dwtype+"' ";							if(point_code!=null)								hqlwhere += " and u.id.pointCode="+point_code+" ";							List list = ytiotVDataDao.SyncStatusQuery(hqlwhere, null, null, null, null);							cmap.put("list_count", list.size());							if(list.size()>0) {								for(int j=0;j<list.size();j++) {									YtiotVSyncStatus o = (YtiotVSyncStatus)list.get(j);									YtiotVSyncStatusId oid = o.getId();									@SuppressWarnings("rawtypes")									Map<String, Comparable> map = new HashMap<String, Comparable>();									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("name", oid.getName());									map.put("point_code", oid.getPointCode());									map.put("point_data", oid.getPointData());									JSONObject JObject = JSONObject.fromObject(map);									a_point.add(JObject);									if(dwtype==null) { 										if(oid.getPointCode().equals("0")) {											if(!oid.getPointData().equals("0")) {												if(oid.getDwtype()==1)													fireAlarm = true;												else if(oid.getDwtype()==2)													waterAlarm = true;												else if(oid.getDwtype()==5)													waterAlarm = true;												else if(oid.getDwtype()==6)													rtuAlarm = true;												else if(oid.getDwtype()==7)													efireAlarm = true;												else													otherAlarm = true;											}										}									}								}							}							cmap.put("point_list", a_point);						}else {							if(ComId.getD1a()>ComId.getD1ac())								fireAlarm = true;							if((ComId.getD0a()+ComId.getD2a())>(ComId.getD0ac()+ComId.getD2ac()))								waterAlarm = true;							if(ComId.getD6a()>ComId.getD6ac())								otherAlarm = true;						}						cmap.put("fire_alarm", fireAlarm);						cmap.put("water_alarm", waterAlarm);						cmap.put("rtu_alarm", rtuAlarm);						cmap.put("efire_alarm", efireAlarm);						cmap.put("other_alarm", otherAlarm);						if(ComId.getOwnerId().equals("10122"))							cmap.put("has_video", true);						else							cmap.put("has_video", false);						JSONObject jSONObject = JSONObject.fromObject(cmap);						jSONArray.add(jSONObject);					}					if(dwtype==null) {						json.put("avelng", (maxlng+minlng)/2);						json.put("avelat", (maxlat+minlat)/2);					}					json.put("RESULT", jSONArray);						}//			}			if((QUERY_FROM!=null)&&(COMMSTATUS!=null)&&(QUERY_FROM.equals("FRONTPAGE")&&(COMMSTATUS.equals("NO")))) {				String sql = "select  count(*) as count, sum(clzt) as sum from ytiot_v_hj where data1<>'U44' "+((Company_Code_List!=null)?" and company_code in ("+Company_Code_List+")":"");				List list2 = null, list3 = null, list4 = null, list5 = null;				JSONArray jSONArray2 = new JSONArray();				JSONArray jSONArray3 = new JSONArray();				JSONArray jSONArray4 = new JSONArray();				sql = "select sum(d0) as d0, sum(d0o) as d0o, sum(d0oc) as d0oc, sum(d0a) as d0a, sum(d0ac) as d0ac, "						+ "  sum(d1) as d1, sum(d1o) as d1o, sum(d1oc) as d1oc, sum(d1a) as d1a, sum(d1ac) as d1ac,"						+ "  sum(d2) as d2, sum(d2o) as d2o, sum(d2oc) as d2oc, sum(d2a) as d2a, sum(d2ac) as d2ac,"						+ "  sum(d6) as d6, sum(d6o) as d6o, sum(d6oc) as d6oc, sum(d6a) as d6a, sum(d6ac) as d6ac, "						+ "  sum(d7) as d7, sum(d7o) as d7o, sum(d7oc) as d7oc, sum(d7a) as d7a, sum(d7ac) as d7ac "						+ " from ytiot_v_company "+((Company_Code_List!=null)?" where owner_id in ("+Company_Code_List+") ":"");				List list = ytiotVAlarmDao.queryBySQL(sql);				if(list.size()>0) {					Object[] objects = (Object[]) list.get(0);					if(Integer.parseInt(objects[8].toString())>Integer.parseInt(objects[9].toString())) 						list2 = ytiotVAlarmDao.HJQuery(" where u.id.data1<>'U44' "+((Company_Code_List!=null)?" and u.id.companyCode in ("+Company_Code_List+") ":""), "order by u.id.id", "desc", "0", "1");												if((Integer.parseInt(objects[3].toString())+Integer.parseInt(objects[13].toString()))							>(Integer.parseInt(objects[4].toString())+Integer.parseInt(objects[14].toString())))						list3 = ytiotVAlarmDao.SJQuery(" where u.id.data1<>'U44'"+((Company_Code_List!=null)?" and u.id.companyCode in ("+Company_Code_List+") ":""), " order by u.id.id ", "desc", "0", "1");					if(Integer.parseInt(objects[18].toString())>Integer.parseInt(objects[19].toString()))						list4 = ytiotVAlarmDao.RTUQuery(" where u.id.data1<>'U44'"+((Company_Code_List!=null)?" and u.id.companyCode in ("+Company_Code_List+") ":" "), " order by u.id.id ", "desc", "0", "1");					if(Integer.parseInt(objects[23].toString())>Integer.parseInt(objects[24].toString()))						list5 = ytiotVAlarmDao.queryBySQL("select id, company_name, name, data1, time, clzt from ytiot_v_efire where data1<>'EF9' "+((Company_Code_List!=null)?" and company_code in ("+Company_Code_List+")":"")+" order by id desc limit 0, 1");					Map map = new HashMap();					map.put("id", "fire_info");					map.put("device", Integer.parseInt(objects[5].toString()));					map.put("out", Integer.parseInt(objects[6].toString()));					map.put("outConfirm", Integer.parseInt(objects[7].toString()));					map.put("alarm", Integer.parseInt(objects[8].toString()));					map.put("alarmConfirm", Integer.parseInt(objects[9].toString()));					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray2.add(jSONObject);					Map map2 = new HashMap();					map2.put("id", "water_info");					map2.put("device", Integer.parseInt(objects[0].toString())+Integer.parseInt(objects[10].toString()));					map2.put("out", Integer.parseInt(objects[1].toString())+Integer.parseInt(objects[11].toString()));					map2.put("outConfirm", Integer.parseInt(objects[2].toString())+Integer.parseInt(objects[12].toString()));					map2.put("alarm", Integer.parseInt(objects[3].toString())+Integer.parseInt(objects[13].toString()));					map2.put("alarmConfirm", Integer.parseInt(objects[4].toString())+Integer.parseInt(objects[14].toString()));					JSONObject jSONObject2 = JSONObject.fromObject(map2);					jSONArray2.add(jSONObject2);					Map map3 = new HashMap();					map3.put("id", "rtu_info");					map3.put("device", Integer.parseInt(objects[15].toString()));					map3.put("out", Integer.parseInt(objects[16].toString()));					map3.put("outConfirm", Integer.parseInt(objects[17].toString()));					map3.put("alarm", Integer.parseInt(objects[18].toString()));					map3.put("alarmConfirm", Integer.parseInt(objects[19].toString()));					JSONObject jSONObject3 = JSONObject.fromObject(map3);					jSONArray2.add(jSONObject3);					Map map4 = new HashMap();					map4.put("id","efire_info");					map4.put("device", Integer.parseInt(objects[20].toString()));					map4.put("out", Integer.parseInt(objects[21].toString()));					map4.put("outConfirm", Integer.parseInt(objects[22].toString()));					map4.put("alarm", Integer.parseInt(objects[23].toString()));					map4.put("alarmConfirm", Integer.parseInt(objects[24].toString()));					JSONObject jSONObject4 = JSONObject.fromObject(map4);					jSONArray2.add(jSONObject4);					list.clear();				}				json.put("confirm_status", jSONArray2);				//				SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");				YtiotVHjId HJid = new YtiotVHjId();				int maxIdx = 0;				Date dTmp = df.parse("1970-01-01 00:00:00");				HJid.setTime(df.parse("1970-01-01 00:00:00"));				if((list2!=null)&&(list2.size()>0)) {					YtiotVHj hj = (YtiotVHj)list2.get(0);					HJid = hj.getId();					if(HJid.getTime().getTime()>=dTmp.getTime())						maxIdx = 2;				}				YtiotVSjId SJid = new YtiotVSjId();				SJid.setTime(df.parse("1970-01-01 00:00:00"));				if((list3!=null)&&(list3.size()>0)) {					YtiotVSj sj = (YtiotVSj)list3.get(0);					SJid = sj.getId();					if(SJid.getTime().getTime()>=dTmp.getTime())						maxIdx = 3;				}				YtiotVRtuId RTUid = new YtiotVRtuId();				RTUid.setTime(df.parse("1970-01-01 00:00:00"));				if((list4!=null)&&(list4.size()>0)) {					YtiotVRtu rtu = (YtiotVRtu)list4.get(0);					RTUid = rtu.getId();					if(RTUid.getTime().getTime()>=dTmp.getTime())						maxIdx = 4;				}				if(list5!=null) {					Object[] objects = (Object[]) list5.get(0);					if(df.parse(objects[4].toString()).getTime()>=dTmp.getTime())						maxIdx = 5;				}				switch(maxIdx) {				case 2:				{					Map map = new HashMap();					map.put("id", 1);					map.put("company", HJid.getCompanyName());					map.put("name", HJid.getName()+((HJid.getData4().length()>0) ?(","+HJid.getData4()):""));					map.put("data", HJid.getData2());					map.put("time", df.format(HJid.getTime()));					map.put("clzt", HJid.getClzt()==1?"已处理":"未处理");					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray3.add(jSONObject);				}					break;				case 3:				{					Map map = new HashMap();					map.put("id", 1);					map.put("company", SJid.getCompanyName());					map.put("name", SJid.getName());					map.put("data", SJid.getData1().equals("WP1")?"低压"							:(SJid.getData1().equals("WP2")?"高压"									:(SJid.getData1().equals("WP3")?"故障"											:(SJid.getData1().equals("WP4")?"离线"													:(SJid.getData1().equals("WP0")?"正常"															:(SJid.getData1().equals("LL1")?"低压"																	:(SJid.getData1().equals("LL2")?"高压"																			:(SJid.getData1().equals("LL3")?"故障"																					:(SJid.getData1().equals("LL0")?"正常":SJid.getData1())))))))));					map.put("time", df.format(SJid.getTime()));					map.put("clzt", SJid.getClzt()==1?"已处理":"未处理");					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray3.add(jSONObject);				}					break;				case 4:				{					Map map = new HashMap();					map.put("id", 1);					map.put("company", RTUid.getCompanyName());					map.put("name", RTUid.getName());					map.put("data", RTUid.getData2());					map.put("time", df.format(RTUid.getTime()));					map.put("clzt", RTUid.getClzt()==1?"已处理":"未处理");					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray3.add(jSONObject);				}					break;				case 5:				{					Object[] objects = (Object[]) list5.get(0);					Map map = new HashMap();					map.put("id", 1);					map.put("company", objects[1].toString());					map.put("name", objects[2].toString());					map.put("data", objects[3].toString().equals("EF0")?"告警撤销"							:objects[3].toString().equals("EF1")?"欠压报警"									:objects[3].toString().equals("EF2")?"过压报警"											:objects[3].toString().equals("EF3")?"过流报警"													:objects[3].toString().equals("EF4")?"漏电报警"															:objects[3].toString().equals("EF5")?"温度1超高报警"																	:objects[3].toString().equals("EF6")?"温度2超高报警"																			:objects[3].toString().equals("EF7")?"温度3超高报警"																					:objects[3].toString().equals("EF8")?"温度4超高报警"																							:objects[3].toString().equals("EF9")?"设备离线"																									:objects[3].toString());					map.put("time", objects[4].toString());					map.put("clzt", objects[5].toString().equals("1")?"已处理":"未处理");					JSONObject jSONObject = JSONObject.fromObject(map);					jSONArray3.add(jSONObject);				}					break;				}				json.put("ALARM_LIST", jSONArray3);			}			json.put("check", "true");		}else {			json.put("check", "false");		}		return json.toString();	}	@Override	public String getSyncDataByDays(String queryJson) throws Exception {		// TODO Auto-generated method stub		String company_code = null;		String company_code_list = null;		String company_name = null;		String device_code = null;		String device_code_list = null;		String time_start = null;		String time_end = null;		String COMMSTATUS = null;		String V_LOGINNAME = null;		String V_PASSWORD = null;		int E_STATUS=-1;		String sqlwhere = null;		JSONObject q_json = null;		JSONArray jSONArray = new JSONArray();		JSONObject json = new JSONObject();		List list2 = null,list3 = null,list4 = null;		json.put("action", "getConfirmStatusByDays");		if(queryJson!=null) {			q_json = JSONObject.fromObject(queryJson);			company_name = q_json.has("company_name")?q_json.getString("company_name"):null;			time_start = q_json.has("time_start")?q_json.getString("time_start"):null;			time_end = q_json.has("time_end")?q_json.getString("time_end"):null;			COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null;			if(q_json.has("company_code")) {				if((q_json.optJSONObject("company_code")!=null)&&(q_json.optJSONObject("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_code")) {				if(q_json.getJSONObject("device_code").isArray()) {					JSONArray j_tmp = q_json.getJSONArray("device_code");					for(int i=0;i<j_tmp.size();i++) {						if(i==0)							device_code_list = j_tmp.getString(i);						else							device_code_list += ","+j_tmp.getString(i);					}				}else					device_code = q_json.getString("device_code");			}			V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null;			V_PASSWORD = q_json.has("V_PASSWORD")?q_json.getString("V_PASSWORD"):null;		}		if((V_LOGINNAME!=null)&&(V_PASSWORD!=null)) {			List list = ytiotTAdminDao.query(" where MD5(u.VLoginname)='"+MD5Util.EncoderByMd5(V_LOGINNAME)+"' and u.VPassword='"					+MD5Util.EncoderByMd5(MD5Util.EncoderByMd5(V_PASSWORD))+"' ", null, null, null, null);			if(list.size()>0) {				YtiotTAdmin o = (YtiotTAdmin)list.get(0);				E_STATUS = Integer.parseInt(o.getEStatus());			}		}		if(E_STATUS==1) {			if(company_name!=null) {				sqlwhere = chkhw(sqlwhere)+" company_name like '%"+company_name+"%' ";			}			if(time_start!=null) {				sqlwhere = chkhw(sqlwhere)+" data_time >= '"+time_start+"' ";			}			if(time_end!=null) {				sqlwhere = chkhw(sqlwhere)+" data_time <= '"+time_end+"' ";			}			if(company_code!=null) {				sqlwhere = chkhw(sqlwhere)+" company_code like '%"+company_code+"%' ";			}			if(company_code_list!=null) {				sqlwhere = chkhw(sqlwhere)+" company_code in ("+company_code_list+") ";			}			if(device_code!=null) {				sqlwhere = chkhw(sqlwhere)+" device_code like '%"+device_code+"%' ";			}			if(device_code_list!=null) {				sqlwhere = chkhw(sqlwhere)+" device_code in ("+device_code_list+") ";			}//			String wheresql = null;//			if(COMMSTATUS!=null) {//				if(COMMSTATUS.equals("NO"))//					wheresql = chkhw(sqlwhere)+" data1 <> 'U44' ";//				else if(COMMSTATUS.equals("ONLY"))//					wheresql = chkhw(sqlwhere)+" data1 = 'U44' ";//			}			List list = ytiotVAlarmDao.queryBySQL(" select DATE_FORMAT(ytiot_v_sync_water.data_time, \"%Y-%m-%d\") as days, count(*) as count, sum(device_code) as sum, company_name from ytiot_v_sync_water "+(sqlwhere)+" group by days order by days desc");			int count=0,sum=0;			JSONArray daylist = new JSONArray();			JSONArray countlist = new JSONArray();			JSONArray sumlist = new JSONArray();			if(list.size()>0) {				int Nrow = 0;				for(Iterator iterator = list.iterator();iterator.hasNext();){
 |