From 6d9cbf0b9f65667c112e84c56eb3fec4a57f02ce Mon Sep 17 00:00:00 2001 From: unknown <yuanhung@ximple.com.tw> Date: Tue, 08 Apr 2014 17:23:12 +0800 Subject: [PATCH] feeder xml --- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DMMSNddUpdateJob.java | 199 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 199 insertions(+), 0 deletions(-) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DMMSNddUpdateJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DMMSNddUpdateJob.java index 0d1f21f..c00edf8 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DMMSNddUpdateJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DMMSNddUpdateJob.java @@ -411,6 +411,199 @@ } + private void doJob2(Connection postsql, String[] info) throws SQLException + { + // double switch (if db = enable -->work) + //Here is check + Date dtnow = new Date(); + //get all file + //dept, count,dist,nei ,y,m,d,t,custom + // HashMap<String> + String typhoonName=""; + String typhoonID=""; + String department=""; + String department_id=""; + String substation=""; + String substation_ufid=""; + String substation_affectCustomers=""; + String substation_nopower=""; + + String mxfmr_name=""; + String mxfmr_ufid=""; + String mxfmr_affectCustomers=""; + String mxfmr_nopower=""; + + String feeder_name=""; + String feeder_id=""; + String feeder_affectCustomers=""; + String feeder_nopower=""; + + String[] tmpArray; + String sTemp; + List<String> arraySQLVals= new ArrayList<String>(); + + if(!jobOnLine(postsql, "nddfeeder")) + { + + return; + } + + String yy="0000"+String.valueOf( dtnow.getYear()+1900); + String mm="00"+String.valueOf( dtnow.getMonth()+1); + String dd="00"+String.valueOf( dtnow.getDate()); + String t0="00"+ String.valueOf( dtnow.getHours()); + String t1="00"+ String.valueOf( dtnow.getMinutes()); + yy= yy.substring(yy.length()-4); + mm= mm.substring(mm.length()-2); + dd= dd.substring(dd.length()-2); + t0= t0.substring(t0.length()-2); + t1= t1.substring(t1.length()-2); + + logger.info("begin nddxml(feeder) to postsql"); + logger.info("getftpfile..."); + String[] xmls= getNDDStrings(info, "feeder_affect_customers.xml") ; + logger.info(String.format("total %d file(s)",xmls.length)); + for(int iRow=0;iRow<xmls.length;iRow++) + { + tmpArray= xmls[iRow].split("\n"); + for(int iLine=0;iLine<tmpArray.length;iLine++) + { + sTemp= findValue(tmpArray[iLine],"typhoonName"); + if(sTemp.length()>0) + { + typhoonName= sTemp; + typhoonID= getTyphoonIDByName(postsql,typhoonName); + // + sTemp= findValue(tmpArray[iLine],"Department id"); + department_id=sTemp; + + sTemp= findValue(tmpArray[iLine],"name"); + department=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"Substation name"); + if(sTemp.length()>0) + { + substation=sTemp; + sTemp= findValue(tmpArray[iLine],"ufid"); + if(sTemp.length()>0) + { + substation_ufid=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"affectCustomers"); + if(sTemp.length()>0) + { + substation_affectCustomers=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"noPowerAll"); + if(sTemp.length()>0) + { + substation_nopower=sTemp; + } + // + arraySQLVals.add(String.format("(%s,%s,%s,%s,%s,'%s','%s','%s','%s',%s,%s,%s,%s,%s,'%s%s')", + typhoonID, + department_id,substation_ufid,"-1","-1", + department,substation," "," ", + substation_affectCustomers,substation_nopower, + yy,mm,dd,t0,t1)); + } + + + sTemp= findValue(tmpArray[iLine],"Mxfmr name"); + if(sTemp.length()>0) + { + mxfmr_name=sTemp; + sTemp= findValue(tmpArray[iLine],"ufid"); + if(sTemp.length()>0) + { + mxfmr_ufid=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"affectCustomers"); + if(sTemp.length()>0) + { + mxfmr_affectCustomers=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"noPowerAll"); + if(sTemp.length()>0) + { + mxfmr_nopower=sTemp; + } + arraySQLVals.add(String.format("(%s,%s,%s,%s,%s,'%s','%s','%s','%s',%s,%s,%s,%s,%s,'%s%s')", + typhoonID, + department_id,substation_ufid,mxfmr_ufid,"-1", + department,substation,mxfmr_name," ", + mxfmr_affectCustomers,mxfmr_nopower, + yy,mm,dd,t0,t1)); + } + + sTemp= findValue(tmpArray[iLine],"Feeder name"); + if(sTemp.length()>0) + { + feeder_name=sTemp; + sTemp= findValue(tmpArray[iLine],"id"); + if(sTemp.length()>0) + { + feeder_id=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"affectCustomers"); + if(sTemp.length()>0) + { + feeder_affectCustomers=sTemp; + } + + sTemp= findValue(tmpArray[iLine],"noPowerAll"); + if(sTemp.length()>0) + { + feeder_nopower=sTemp; + } + arraySQLVals.add(String.format("(%s,%s,%s,%s,%s,'%s','%s','%s','%s',%s,%s,%s,%s,%s,'%s%s')", + typhoonID, + department_id,substation_ufid,mxfmr_ufid,feeder_id, + department,substation,mxfmr_name,feeder_name, + feeder_affectCustomers,feeder_nopower, + yy,mm,dd,t0,t1)); + } + // insert into nddcanton_history (project_id,department_id,county_id,district_id,neighbor_id,affectcustomers,affectcustomersever + //yy,mm,dd,tt + + + } + //!! + + String insertDBSQL= + " insert into ndd.nddfeeder_history (project_id,department_id,substation_id,mxfmr_id,feeder_id,"+ + "department_name,substation_name,mxfmr_name,feeder_name,"+ + "affectCustomers,nopower"+ + ",yy,mm,dd,tt) values "; + for(int j=0;j<arraySQLVals.size();j++) + { + sqlExec(postsql,insertDBSQL + arraySQLVals.get(j) + , + new String[]{}); + + } + + String strSQLUpdateCurr="update ndd.currdata set yy='%s',mm='%s',dd='%s',tt='%s%s' where sr=2"; + sqlExec(postsql, + String.format(strSQLUpdateCurr, + yy,mm,dd,t0,t1 + ) , + new String[]{}); + logger.info(String.format("next xml")); + } + logger.info(String.format("done")); + + + + + } + /* private void doJob(Connection postsql,Connection orcl) throws SQLException { @@ -545,6 +738,12 @@ pgProperties.get("ftppwd"), pgProperties.get("ftpdir") }); + doJob2 (targetDataStore.getConnection(Transaction.AUTO_COMMIT),new String[]{ + pgProperties.get("ftpurl"), + pgProperties.get("ftpuid"), + pgProperties.get("ftppwd"), + pgProperties.get("ftpdir") + }); // doJob( targetDataStore.getConnection(Transaction.AUTO_COMMIT),sourceDataStore.getConnection(Transaction.AUTO_COMMIT) ); } catch (IOException ex) { -- Gitblit v0.0.0-SNAPSHOT