stringStringMap : listTemp) {
+ System.out.println(stringStringMap.get("sql")+":"+stringStringMap.get("threadid"));
+ }
+
+ String sql2_1_1 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=0";
+ String sql2_1_2 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=1";
+ String sql2_1_3 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=2";
+ String sql2_1_4 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=3";
+ String sql2_1_5 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=4";
+ String sql2_1_6 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=5";
+ String sql2_1_7 = "select * from(select * from gantry_pass_center where ishandle=0 and isout=1 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut")+") t where ora_hash(passid,6)=6";
+
+
+ //超时第二种情况--累计金额相等但是没有出口的
+ String sql2_2_1 = "select * from gantry_pass_center where ishandle=0 and isout=0 and payfee_all=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut");
+ //超时第三种情况--没有出口累计金额也不相等的
+ String sql2_3_1 = "select * from gantry_pass_center where ishandle=0 and isout=0 and payfee_all!=obuprovpayfeesumafter and ROUND(TO_NUMBER(sysdate - transtime) * 24 * 60)>" + CommonHelp.GetConfigValue("timeOut") + " and ROUND(TO_NUMBER(sysdate - updatetime) * 24 * 60) > " + CommonHelp.GetConfigValue("lastTimeOut");
+
+
+
+
+ }
+ public static void statTest(JdbcTemplate jdbcTemplate,String sql){
+ try {
+ //s.UpdateState(Thread.currentThread().getId());
+ List list=jdbcTemplate.queryForList(sql);
+ String tollIntervalsId="";
+ String stano="";
+ String roadno="";
+ StringBuilder delete_tradeid=new StringBuilder();
+ if (list.size()>0){
+ for (int i = 0; i < list.size(); i++) {
+ try {
+ Map map=(Map) list.get(i);
+ String[] tollIntervalsId_temp=map.get("TOLLINTERVALID")==null?null:map.get("TOLLINTERVALID").toString().split("\\|");
+ String[] feeGroup_temp=map.get("FEEGROUP")==null?null:map.get("FEEGROUP").toString().split("\\|");
+ String[] payfeeGroup_temp=map.get("PAYFEEGROUP")==null?null:map.get("PAYFEEGROUP").toString().split("\\|");
+ String[] specialtype_temp=null;
+ if (map.get("SPECIALTYPE")!=null){
+ if (map.get("SPECIALTYPE").toString().replace(" ","").length()>0){
+ specialtype_temp=map.get("SPECIALTYPE").toString().split("\\|");
+ }
+ }
+
+ String is_have_gantry_trade_sql="SELECT * FROM gantry_trade_mass where gantryid='" +map.get("GANTRYID").toString() + "' and classdate=TO_DATE('" + map.get("TRANSTIME").toString().substring(0,10) + "', 'yyyy-mm-dd') AND MEDIATYPE = " +map.get("MEDIATYPE") + " AND VEHICLETYPE = " +map.get("VEHICLETYPE");
+ List list_trade_ishave=jdbcTemplate.queryForList(is_have_gantry_trade_sql);
+
+ String boundarytype_sql = "select boundarytype from gantry_table where id='" + map.get("GANTRYID").toString() + "'";
+ List boundary=jdbcTemplate.queryForList(boundarytype_sql);
+ if (boundary.size()>0){
+
+ }
+ int boundarytype=Integer.valueOf(((Map) jdbcTemplate.queryForList(boundarytype_sql).get(0)).get("BOUNDARYTYPE").toString());
+ if (list_trade_ishave.size()>0){
+ int feesuccnum=0;
+ int feefailenum=0;
+ if (map.get("FEECALCRESULT").toString().equals("0") && map.get("TRADERESULT").toString().equals("0")){
+ feesuccnum = 1;
+ }
+ else {
+ feefailenum = 1;
+ }
+// JSONObject temp=new JSONObject(((Map) list_trade_ishave.get(0)).get("SPECIALTYPE").toString());
+// if (specialtype_temp!=null){
+// for (int j = 0; j < specialtype_temp.length; j++) {
+// String special_value="";
+// if (specil_list.contains(Integer.valueOf(specialtype_temp[j]))){
+//
+// }
+// }
+// }
+
+ String update_gantry_trade = "update gantry_trade_mass set boundarytype = " + boundarytype + ", feesuccnum = feesuccnum+" + feesuccnum + ", feefailenum = feefailenum+" + feefailenum + ", specialtype = '' where gantryid = '" + map.get("GANTRYID").toString() + "' and classdate = TO_DATE('" +map.get("TRANSTIME").toString().substring(0,10) + "', 'yyyy-mm-dd') and mediatype = " + map.get("MEDIATYPE") + " and vehicletype = " + map.get("VEHICLETYPE");
+ jdbcTemplate.update(update_gantry_trade);
+
+ }
+ else {
+ String insert_gantry_trade= "insert into gantry_trade_mass (gantryid, classdate, mediatype, vehicletype, boundarytype, feesuccnum, feefailenum, specialtype, feelostnum) values ('" +map.get("GANTRYID").toString() + "', TO_DATE('" + map.get("TRANSTIME").toString().substring(0,10) + "', 'yyyy-mm-dd'), " +map.get("MEDIATYPE") + ", " + map.get("VEHICLETYPE") + ", " + boundarytype + ", 0, 0, '{}', 0) ";
+ jdbcTemplate.update(insert_gantry_trade);
+ }
+
+ if (tollIntervalsId_temp!=null && feeGroup_temp!=null && payfeeGroup_temp!=null){
+ if (tollIntervalsId_temp.length== feeGroup_temp.length && feeGroup_temp.length==payfeeGroup_temp.length){
+ for (int j = 0; j < tollIntervalsId_temp.length; j++) {
+ if (tollIntervalsId_temp[j].length()>=16){
+ tollIntervalsId=tollIntervalsId_temp[j].substring(0,16);
+ String stano_roadno_sql = "select ostano,oroadno from feeunit_table where id='" + tollIntervalsId + "'";
+ List stano_roadno_list=jdbcTemplate.queryForList(stano_roadno_sql);
+ if (stano_roadno_list.size()>0){
+ stano=((Map)stano_roadno_list.get(0)).get("OSTANO").toString();
+ roadno=((Map)stano_roadno_list.get(0)).get("OROADNO").toString();
+ }
+ else {
+ stano="0";
+ roadno="0";
+ }
+
+ String is_have_sql = "SELECT 1 FROM DUAL WHERE EXISTS (SELECT * FROM gantry_stat where FEEUNITID='" + tollIntervalsId + "' and classdate=TO_DATE('" +map.get("TRANSTIME").toString().substring(0,10) + "', 'yyyy-mm-dd') AND MEDIATYPE = " +map.get("MEDIATYPE") + " AND VEHTYPE = " +map.get("VEHICLETYPE") + " AND ROADNO = " + roadno + " and STANO=" + stano + ")";
+ List list_ishave=jdbcTemplate.queryForList(is_have_sql);
+ if (list_ishave.size()>0){
+ String update_sql = "UPDATE GANTRY_STAT SET VEHCOUNT = VEHCOUNT + 1, CASH = TO_NUMBER(CASH) +TO_NUMBER(" + (payfeeGroup_temp[j].replace(" ","").length() == 0 ? "0" : payfeeGroup_temp[j]) + "), INCASH = TO_NUMBER(INCASH) +TO_NUMBER(" + (feeGroup_temp[j].replace(" ","").length() == 0 ? "0" : feeGroup_temp[j]) + ") where FEEUNITID='" + tollIntervalsId + "' and classdate=TO_DATE('" + map.get("TRANSTIME").toString().substring(0,10) + "', 'yyyy-mm-dd') AND MEDIATYPE = " + map.get("MEDIATYPE") + " AND VEHTYPE = " + map.get("VEHICLETYPE") + " AND ROADNO = " + roadno;
+ jdbcTemplate.update(update_sql);
+ }
+ else {
+ String insert_sql = "INSERT INTO GANTRY_STAT(ROADNO,STANO,CLASSDATE,FEEUNITID,MEDIATYPE, VEHTYPE,VEHCLASS,SPECIALTYPE,AXLECOUNT,VEHCOUNT,TRADERESULT,HOLIDAYSTATE,VALIDSTATUS,CASH,INCASH,FEESUMLOCALAFTER,BACKUP1,BACKUP2,BACKUP3,BACKUP4,DATEMARK) VALUES(" + roadno + ", " + stano + ", TO_DATE('" + map.get("TRANSTIME").toString().substring(0,10) + "', 'yyyy-mm-dd'), '" + tollIntervalsId + "', " + map.get("MEDIATYPE") + "," + map.get("VEHICLETYPE") + ", 0, 0, 2, 1, 0, 0, 0," + (payfeeGroup_temp[j].replace(" ","").length() == 0 ? "0" : payfeeGroup_temp[j]) + ", " + (feeGroup_temp[j].replace(" ","").length() == 0 ? "0" : feeGroup_temp[j]) + ", 0, 0, 0, '0','0', SYSDATE)";
+ jdbcTemplate.update(insert_sql);
+ }
+ }
+ }
+
+ }
+
+ }
+
+
+ String delete_sql="delete gantry_pass_stat_temp where tradeid='" +map.get("TRADEID") + "' ";
+ jdbcTemplate.update(delete_sql);
+
+
+ }
+ catch (Exception e){
+ LogClass.error("预分账错误日志:"+e.toString()+","+((Map) list.get(i)).get("TRADEID"));
+ }
+ }
+ }
+
+ Thread.sleep(1000*30);
+
+ }
+ catch (Exception e){
+ LogClass.error("预拆分错误"+e.toString());
+ }
+ }
+
+}
diff --git a/.svn/pristine/df/df325595dda25fb878d8cd9b399404481e5eae9e.svn-base b/.svn/pristine/df/df325595dda25fb878d8cd9b399404481e5eae9e.svn-base
new file mode 100644
index 0000000..2517568
Binary files /dev/null and b/.svn/pristine/df/df325595dda25fb878d8cd9b399404481e5eae9e.svn-base differ
diff --git a/.svn/pristine/e6/e6fc29d9a75d2266b1b007bc63b92f1f4aba8dc4.svn-base b/.svn/pristine/e6/e6fc29d9a75d2266b1b007bc63b92f1f4aba8dc4.svn-base
new file mode 100644
index 0000000..7410049
Binary files /dev/null and b/.svn/pristine/e6/e6fc29d9a75d2266b1b007bc63b92f1f4aba8dc4.svn-base differ
diff --git a/.svn/pristine/e7/e7841388cfd3fd5975089df7d6df0000e63c8c43.svn-base b/.svn/pristine/e7/e7841388cfd3fd5975089df7d6df0000e63c8c43.svn-base
new file mode 100644
index 0000000..e5d663c
Binary files /dev/null and b/.svn/pristine/e7/e7841388cfd3fd5975089df7d6df0000e63c8c43.svn-base differ
diff --git a/.svn/pristine/e9/e930b417a401de6a22c5c34df0aa2739a0846c2c.svn-base b/.svn/pristine/e9/e930b417a401de6a22c5c34df0aa2739a0846c2c.svn-base
new file mode 100644
index 0000000..dc2441c
Binary files /dev/null and b/.svn/pristine/e9/e930b417a401de6a22c5c34df0aa2739a0846c2c.svn-base differ
diff --git a/.svn/pristine/f3/f3b94bacacd1ac1f0b934b7e41debe71e4790ccb.svn-base b/.svn/pristine/f3/f3b94bacacd1ac1f0b934b7e41debe71e4790ccb.svn-base
new file mode 100644
index 0000000..a33408e
--- /dev/null
+++ b/.svn/pristine/f3/f3b94bacacd1ac1f0b934b7e41debe71e4790ccb.svn-base
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: GPA.GAMIN
+
diff --git a/.svn/pristine/f4/f4eb282db958a2f7ecea9c5a66edb73d0c7f4c0e.svn-base b/.svn/pristine/f4/f4eb282db958a2f7ecea9c5a66edb73d0c7f4c0e.svn-base
new file mode 100644
index 0000000..d9426c7
Binary files /dev/null and b/.svn/pristine/f4/f4eb282db958a2f7ecea9c5a66edb73d0c7f4c0e.svn-base differ
diff --git a/.svn/pristine/f7/f7bc0b319b4fa96b2d440ae93034dd69d97ccc99.svn-base b/.svn/pristine/f7/f7bc0b319b4fa96b2d440ae93034dd69d97ccc99.svn-base
new file mode 100644
index 0000000..a11bd29
--- /dev/null
+++ b/.svn/pristine/f7/f7bc0b319b4fa96b2d440ae93034dd69d97ccc99.svn-base
@@ -0,0 +1,29 @@
+package GPA;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+
+public class deleteCenter implements Runnable{
+ private JdbcTemplate jdbcTemplate;
+ private String sql;
+ private boolean runAble;
+ private startGPA s;
+ public deleteCenter(JdbcTemplate jdbcTemplate,String sql,boolean runAble,startGPA s){
+ this.jdbcTemplate=jdbcTemplate;
+ this.sql=sql;
+ this.runAble=runAble;
+ this.s=s;
+ }
+ public deleteCenter(){}
+ @Override
+ public void run() {
+ while (runAble){
+ try {
+// s.UpdateState(Thread.currentThread().getId());
+ jdbcTemplate.update(sql);
+ Thread.sleep(1000*60*60*24);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+}
diff --git a/.svn/pristine/f7/f7ee3a9c241eed61257da0c47e7dd82364be5312.svn-base b/.svn/pristine/f7/f7ee3a9c241eed61257da0c47e7dd82364be5312.svn-base
new file mode 100644
index 0000000..6ba92ab
Binary files /dev/null and b/.svn/pristine/f7/f7ee3a9c241eed61257da0c47e7dd82364be5312.svn-base differ
diff --git a/.svn/pristine/f8/f80925d4d46c8e3880b1c026e9faa6156bd60f36.svn-base b/.svn/pristine/f8/f80925d4d46c8e3880b1c026e9faa6156bd60f36.svn-base
new file mode 100644
index 0000000..f061a2f
--- /dev/null
+++ b/.svn/pristine/f8/f80925d4d46c8e3880b1c026e9faa6156bd60f36.svn-base
@@ -0,0 +1,62 @@
+package GPA;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+
+import java.util.List;
+
+public class GetAllData extends Thread {
+
+ private int threadId;//线程ID
+ private int isTimeOut;
+ private String sql;//sql语句
+ private JdbcTemplate jdbcTemplate;//连接池
+ private List list_PARTICIPANT;
+ private List list_LINE_TABLE;
+ private List list_FEEUNIT_TABLE;
+ private List list_GANTRY_TABLE;
+ private startGPA s;
+ private boolean runAble;
+
+
+ private static boolean flag = true;
+
+ public GetAllData(int threadId, int isTimeOut, String sql, JdbcTemplate jdbcTemplate,List list_PARTICIPANT,List list_LINE_TABLE,List list_FEEUNIT_TABLE,List list_GANTRY_TABLE,boolean runAble,startGPA s){
+ this.threadId=threadId;
+ this.sql=sql;
+ this.isTimeOut=isTimeOut;
+ this.jdbcTemplate=jdbcTemplate;
+ this.list_PARTICIPANT=list_PARTICIPANT;
+ this.list_LINE_TABLE=list_LINE_TABLE;
+ this.list_FEEUNIT_TABLE=list_FEEUNIT_TABLE;
+ this.list_GANTRY_TABLE=list_GANTRY_TABLE;
+ this.s=s;
+ this.runAble=runAble;
+ }
+
+ public static void setStop(){
+ System.out.println("停止线程。。。。");
+ flag=false;
+ }
+
+ @Override
+ public void run() {
+ while (runAble){
+
+ try {
+ s.UpdateState(Thread.currentThread().getId());
+ GPA_DATA gpaData= new GPA_DATA();
+ gpaData.GetAllETCData(sql,isTimeOut,threadId,jdbcTemplate,list_PARTICIPANT,list_LINE_TABLE,list_FEEUNIT_TABLE,list_GANTRY_TABLE);
+
+ Thread.sleep(50);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+
+
+
+
+
+ }
+}
diff --git a/.svn/pristine/fd/fd3eee058cb470bcb4c9377c70ed9e2f0ae22fcd.svn-base b/.svn/pristine/fd/fd3eee058cb470bcb4c9377c70ed9e2f0ae22fcd.svn-base
new file mode 100644
index 0000000..653ede1
--- /dev/null
+++ b/.svn/pristine/fd/fd3eee058cb470bcb4c9377c70ed9e2f0ae22fcd.svn-base
@@ -0,0 +1,53 @@
+package GPA;
+
+import java.io.File;
+import java.io.RandomAccessFile;
+import java.nio.channels.FileChannel;
+import java.nio.channels.FileLock;
+
+public class SingleApplication {
+ public static void makeSingle(String singleId) {
+
+ RandomAccessFile raf = null;
+
+ FileChannel channel = null;
+
+ FileLock lock = null;
+
+
+ try {
+
+ // 在临时文件夹创建一个临时文件,锁住这个文件用来保证应用程序只有一个实例被创建.
+
+ File sf = new File(System.getProperty("java.io.tmpdir") + singleId + ".single");
+
+ sf.deleteOnExit();
+
+ sf.createNewFile();
+
+
+ raf = new RandomAccessFile(sf, "rw");
+
+ channel = raf.getChannel();
+
+ lock = channel.tryLock();
+
+
+ if (lock == null) {
+
+ // 如果没有得到锁,则程序退出.
+
+ // 没有必要手动释放锁和关闭流,当程序退出时,他们会被关闭的.
+
+ throw new Error("An instance of the application is running.");
+
+ }
+
+ } catch (Exception e) {
+
+ e.printStackTrace();
+
+ }
+
+ }
+}
diff --git a/.svn/pristine/ff/fff976079242c9761131865d215b8724c9762445.svn-base b/.svn/pristine/ff/fff976079242c9761131865d215b8724c9762445.svn-base
new file mode 100644
index 0000000..f3631df
--- /dev/null
+++ b/.svn/pristine/ff/fff976079242c9761131865d215b8724c9762445.svn-base
@@ -0,0 +1,107 @@
+
+package com.trkf.feemoduleservice;
+
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.namespace.QName;
+
+
+/**
+ * This object contains factory methods for each
+ * Java content interface and Java element interface
+ * generated in the com.trkf.feemoduleservice package.
+ * An ObjectFactory allows you to programatically
+ * construct new instances of the Java representation
+ * for XML content. The Java representation of XML
+ * content can consist of schema derived interfaces
+ * and classes representing the binding of schema
+ * type definitions, element declarations and model
+ * groups. Factory methods for each of these are
+ * provided in this class.
+ *
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+ private final static QName _GetFeeResponse_QNAME = new QName("http://FeeModuleService.trkf.com/", "getFeeResponse");
+ private final static QName _GetStaFeeResponse_QNAME = new QName("http://FeeModuleService.trkf.com/", "GetStaFeeResponse");
+ private final static QName _GetFee_QNAME = new QName("http://FeeModuleService.trkf.com/", "getFee");
+ private final static QName _GetStaFee_QNAME = new QName("http://FeeModuleService.trkf.com/", "GetStaFee");
+
+ /**
+ * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.trkf.feemoduleservice
+ *
+ */
+ public ObjectFactory() {
+ }
+
+ /**
+ * Create an instance of {@link GetFeeResponse }
+ *
+ */
+ public GetFeeResponse createGetFeeResponse() {
+ return new GetFeeResponse();
+ }
+
+ /**
+ * Create an instance of {@link GetFee }
+ *
+ */
+ public GetFee createGetFee() {
+ return new GetFee();
+ }
+
+ /**
+ * Create an instance of {@link GetStaFee }
+ *
+ */
+ public GetStaFee createGetStaFee() {
+ return new GetStaFee();
+ }
+
+ /**
+ * Create an instance of {@link GetStaFeeResponse }
+ *
+ */
+ public GetStaFeeResponse createGetStaFeeResponse() {
+ return new GetStaFeeResponse();
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link GetFeeResponse }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://FeeModuleService.trkf.com/", name = "getFeeResponse")
+ public JAXBElement createGetFeeResponse(GetFeeResponse value) {
+ return new JAXBElement(_GetFeeResponse_QNAME, GetFeeResponse.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link GetStaFeeResponse }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://FeeModuleService.trkf.com/", name = "GetStaFeeResponse")
+ public JAXBElement createGetStaFeeResponse(GetStaFeeResponse value) {
+ return new JAXBElement(_GetStaFeeResponse_QNAME, GetStaFeeResponse.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link GetFee }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://FeeModuleService.trkf.com/", name = "getFee")
+ public JAXBElement createGetFee(GetFee value) {
+ return new JAXBElement(_GetFee_QNAME, GetFee.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link GetStaFee }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://FeeModuleService.trkf.com/", name = "GetStaFee")
+ public JAXBElement createGetStaFee(GetStaFee value) {
+ return new JAXBElement(_GetStaFee_QNAME, GetStaFee.class, null, value);
+ }
+
+}
diff --git a/.svn/wc.db b/.svn/wc.db
new file mode 100644
index 0000000..51aeb06
Binary files /dev/null and b/.svn/wc.db differ
diff --git a/.svn/wc.db-journal b/.svn/wc.db-journal
new file mode 100644
index 0000000..e69de29
diff --git a/GANTRY_PASS_ALL.iml b/GANTRY_PASS_ALL.iml
new file mode 100644
index 0000000..5e3b34c
--- /dev/null
+++ b/GANTRY_PASS_ALL.iml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/artifacts/GANTRY_PASS_ALL_jar/GANTRY_PASS_ALL.jar b/out/artifacts/GANTRY_PASS_ALL_jar/GANTRY_PASS_ALL.jar
new file mode 100644
index 0000000..fa802d5
Binary files /dev/null and b/out/artifacts/GANTRY_PASS_ALL_jar/GANTRY_PASS_ALL.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/Config/Config.xml b/out/production/GANTRY_PASS_ALL/Config/Config.xml
new file mode 100644
index 0000000..95aab27
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/Config/Config.xml
@@ -0,0 +1,35 @@
+
+
+
+ a.OBUISSUEID,a.GANTRYID,a.FEEPROVBEGINHEX,a.ENTOLLSTATIONHEX,a.PASSID,a.ENTIME,a.PAYFEE,a.FEE,a.DISCOUNTFEE,a.CPUCARDTYPE,a.CPUCARDID,a.OBUSIGN,a.VEHICLEPLATE,a.TOLLINTERVALID,a.PAYFEEGROUP,a.FEEGROUP,a.VEHICLESIGN,a.FEEVEHICLETYPE,a.VEHICLETYPE,a.DISCOUNTTYPE,a.PROVINCEDISCOUNTFEE,a.ORIGINFEE,a.TRANSTIME,a.OBUSN,b.NAME,a.OBUPROVPAYFEESUMAFTER,a.OBUPROVFEESUMAFTER,a.FEESPARE1,a.OBUVEHICLEPLATE,a.CPUVEHICLEPLATE,a.FEESUMLOCALAFTER,a.CPUNETID,a.OBUPROVTRADESUCCNUMAFTER,a.TRADEID,a.VEHICLEUSERTYPE,a.AXLECOUNT,a.LASTGANTRYHEX,a.MEDIATYPE,a.FEECALCRESULT, a.GANTRYTYPE,'' "GANTRYKEY",'' "GANTRYVERIFY",a.OBUFEESUMAFTER,a.OBUTOTALTRADESUCCNUMAFTER,a.NOCARDTIMESAFTER,a.CARDFEESUMAFTER,a.PROVINCENUMAFTER,a.TOTALWEIGHT,a.IDENTIFYVEHICLETYPE,a.VEHICLECLASS,a.TAC,a.TRANSFEE,a.TERMINALTRANSNO,a.TRANSTYPE,a.TERMINALNO,a.ALGORITHMIDENTIFIER,a.RATEVERSION,a.VEHICLEPICID,'' "DECRIPTION",a.OBUMAC,a.KEYVERSION,to_number(substr(a.gantryOrderNum,0,1)) "DIRECTION",a.OBUELECTRICAL,b.GANTRYHEX,a.FEEINFO1,a.FEEINFO2,a.FEEINFO3,a.CPUISSUEID,a.TRADERESULT,a.OBUTRADERESULT,a.VEHICLESEAT
+
+ G001215001000220010|G001215001000220020|S002715001002610010|S002715001002610020|G002515001000610010|G002515001000610020|G002515001000220010|G002515001000220020|G001015003000220010|G001015003000220020|G181715005000810010|G181715005000810020|G004515004001210010|G004515004001210020|G001615004000220010|G001615004000220020|G251115002000220010|G251115002000220020|G006515003001410010|G006515003001410020|G000615001000220010|G000615001000220020|G000715001000220010|G000715001000220020|G005515004010810010|G005515004010810020|G005915001001410010|G005915001001410020|G000615010001410010|G000615010001410020|G000715003004210010|G000715003004210020|G001815001000220010|G001815001000220020|G004515001000220010|G004515001000220020|S003115004001010010|S003115004001010020|G451315001000410010|G451315001000410020
+
+ G001215001000210010|G001215001000210020|S002715001002620010|S002715001002620020|G002515001000210010|G002515001000210020|G002515001000620010|G002515001000620020|G001015003000210010|G001015003000210020|G181715005000820010|G181715005000820020|G001615004000210010|G001615004000210020|G004515004001220010|G004515004001220020|G251115002000210010|G251115002000210020|G000615001000210010|G000615001000210020|G000715001000210010|G000715001000210020|G006515003001420010|G006515003001420020|G005515004010820010|G005515004010820020|G005915001001420010|G005915001001420020|G000615010001420010|G000615010001420020|G000715003004220010|G000715003004220020|G001815001000210010|G001815001000210020|G004515001000210010|G004515001000210020|S003115004001020010|S003115004001020020|G451315001000420010|G451315001000420020
+
+ [{"GANTRYHEX":"160302","GANTRYNAME":"蒙冀界-兴和东","ENSTAHEX":"13000000"},{"GANTRYHEX":"160802","GANTRYNAME":"蒙黑界-阿荣旗南","ENSTAHEX":"23000000"},{"GANTRYHEX":"160B02","GANTRYNAME":"蒙吉界-白音乌苏","ENSTAHEX":"22000000"},{"GANTRYHEX":"160E3E","GANTRYNAME":"平庄主线-平庄","ENSTAHEX":"21000000"},{"GANTRYHEX":"161024","GANTRYNAME":"清水河界-十七沟","ENSTAHEX":"14000000"},{"GANTRYHEX":"161302","GANTRYNAME":"那木斯-金宝屯","ENSTAHEX":"22000000"},{"GANTRYHEX":"161402","GANTRYNAME":"好力堡-甘旗卡","ENSTAHEX":"21000000"},{"GANTRYHEX":"161602","GANTRYNAME":"欧里主线-巴彦塔拉","ENSTAHEX":"22000000"},{"GANTRYHEX":"1703BA","GANTRYNAME":"蒙宁界-乌斯太","ENSTAHEX":"64000000"},{"GANTRYHEX":"17057A","GANTRYNAME":"黑鹰山主线-黑鹰山","ENSTAHEX":"62000000"},{"GANTRYHEX":"1709E2","GANTRYNAME":"三号地-贡宝拉格","ENSTAHEX":"13000000"},{"GANTRYHEX":"1712C8","GANTRYNAME":"巴润别立主线-长流水","ENSTAHEX":"64000000"},{"GANTRYHEX":"171306","GANTRYNAME":"布敦花-查日苏","ENSTAHEX":"21000000"},{"GANTRYHEX":"17163E","GANTRYNAME":"内蒙茅荆坝-美林","ENSTAHEX":"13000000"},{"GANTRYHEX":"171994","GANTRYNAME":"蒙晋界-丰镇","ENSTAHEX":"14000000"},{"GANTRYHEX":"171C2E","GANTRYNAME":"和林格尔主线-新店子互通","ENSTAHEX":"14000000"},{"GANTRYHEX":"171E2C","GANTRYNAME":"蒙陕界-兰家梁","ENSTAHEX":"61000000"},{"GANTRYHEX":"172844","GANTRYNAME":"龙口界-龙口","ENSTAHEX":"14000000"},{"GANTRYHEX":"161328","GANTRYNAME":"化德东至化德界门架","ENSTAHEX":"13000000"},{"GANTRYHEX":"171328","GANTRYNAME":"化德界至化德东门架","ENSTAHEX":"13000000"},{"GANTRYHEX":"160516","GANTRYNAME":"韩家营-兴和南","ENSTAHEX":"13000000"}]
+
+ 0
+
+ ^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z挂学警港澳领试超外0-9]{3,9}_(0|1|2|3|4|5|6|7|11|12)$|^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z0-9][A-Z0-9]{4}应急_(0|1|2|3|4|5|6|7|11|12)$
+
+ 150201
+
+ 4080
+
+ 0
+
+ 30
+
+ 1
+
+ jdbc:oracle:thin:@//10.15.100.5:1521/torcl
+ nmgmpayadmin
+ nmgh90[]
+
+ jdbc:dm://10.115.255.4:5236/NMGGJT
+ NMGGJT
+ 1234567890
+
+ http://10.15.99.78:8081/FeeModuleService/FeeModuleService
+
\ No newline at end of file
diff --git a/out/production/GANTRY_PASS_ALL/GPA/CommonCon.class b/out/production/GANTRY_PASS_ALL/GPA/CommonCon.class
new file mode 100644
index 0000000..d9426c7
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/CommonCon.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/CommonHelp.class b/out/production/GANTRY_PASS_ALL/GPA/CommonHelp.class
new file mode 100644
index 0000000..c0ef5df
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/CommonHelp.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/DBUtil.class b/out/production/GANTRY_PASS_ALL/GPA/DBUtil.class
new file mode 100644
index 0000000..7e55a72
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/DBUtil.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/GAMIN.class b/out/production/GANTRY_PASS_ALL/GPA/GAMIN.class
new file mode 100644
index 0000000..8af02d5
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/GAMIN.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/GMAIN_TEST.class b/out/production/GANTRY_PASS_ALL/GPA/GMAIN_TEST.class
new file mode 100644
index 0000000..52f8a13
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/GMAIN_TEST.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/GPA_DATA.class b/out/production/GANTRY_PASS_ALL/GPA/GPA_DATA.class
new file mode 100644
index 0000000..e812d6f
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/GPA_DATA.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/GetAllData.class b/out/production/GANTRY_PASS_ALL/GPA/GetAllData.class
new file mode 100644
index 0000000..bf97dd1
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/GetAllData.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/GetGantryStat.class b/out/production/GANTRY_PASS_ALL/GPA/GetGantryStat.class
new file mode 100644
index 0000000..145fe41
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/GetGantryStat.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/LogClass$1.class b/out/production/GANTRY_PASS_ALL/GPA/LogClass$1.class
new file mode 100644
index 0000000..e5f9641
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/LogClass$1.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/LogClass.class b/out/production/GANTRY_PASS_ALL/GPA/LogClass.class
new file mode 100644
index 0000000..d64bcdf
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/LogClass.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/SingleApplication.class b/out/production/GANTRY_PASS_ALL/GPA/SingleApplication.class
new file mode 100644
index 0000000..b6a74a0
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/SingleApplication.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/XNY_GPA.class b/out/production/GANTRY_PASS_ALL/GPA/XNY_GPA.class
new file mode 100644
index 0000000..c761e51
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/XNY_GPA.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/deleteCenter.class b/out/production/GANTRY_PASS_ALL/GPA/deleteCenter.class
new file mode 100644
index 0000000..286d008
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/deleteCenter.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/startGPA$State.class b/out/production/GANTRY_PASS_ALL/GPA/startGPA$State.class
new file mode 100644
index 0000000..6ba92ab
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/startGPA$State.class differ
diff --git a/out/production/GANTRY_PASS_ALL/GPA/startGPA.class b/out/production/GANTRY_PASS_ALL/GPA/startGPA.class
new file mode 100644
index 0000000..a630bfe
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/GPA/startGPA.class differ
diff --git a/out/production/GANTRY_PASS_ALL/LogFile/2025-01-07/gantry_pass_all_log_debug_2025-01-07-14.txt b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-07/gantry_pass_all_log_debug_2025-01-07-14.txt
new file mode 100644
index 0000000..1f34b64
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-07/gantry_pass_all_log_debug_2025-01-07-14.txt
@@ -0,0 +1,3 @@
+[2025-01-07 14:26:55.568] DL 日志
+[2025-01-07 14:26:55.568] 1passid查询用时:1463,查询结果:1条
+[2025-01-07 14:31:05.441] 1passid查询用时:14,查询结果:1条
diff --git a/out/production/GANTRY_PASS_ALL/LogFile/2025-01-07/gantry_pass_all_log_info_2025-01-07-14.txt b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-07/gantry_pass_all_log_info_2025-01-07-14.txt
new file mode 100644
index 0000000..e0b67d2
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-07/gantry_pass_all_log_info_2025-01-07-14.txt
@@ -0,0 +1,2 @@
+[2025-01-07 14:31:52.909] DL 日志
+[2025-01-07 14:31:52.909] 1插入汇总结果用时:9904,当前线程共1数据,处理至1条数据,还剩2,PASSID:011501193723011407123920241231062338,出口匹配类型:省内出口,出口ID:G551115018003020010,门架数据自动匹配完成,门架数据自动审计完成
diff --git a/out/production/GANTRY_PASS_ALL/LogFile/2025-01-16/gantry_pass_all_log_debug_2025-01-16-17.txt b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-16/gantry_pass_all_log_debug_2025-01-16-17.txt
new file mode 100644
index 0000000..908f2b1
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-16/gantry_pass_all_log_debug_2025-01-16-17.txt
@@ -0,0 +1,5 @@
+[2025-01-16 17:33:16.403] DL 日志
+[2025-01-16 17:33:16.403] 1passid查询用时:9,查询结果:1条
+[2025-01-16 17:43:27.447] 1passid查询用时:8,查询结果:1条
+[2025-01-16 17:52:27.053] 1passid查询用时:9,查询结果:1条
+[2025-01-16 17:55:27.053] 1passid查询用时:7,查询结果:1条
diff --git a/out/production/GANTRY_PASS_ALL/LogFile/2025-01-16/gantry_pass_all_log_delete_2025-01-16-17.txt b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-16/gantry_pass_all_log_delete_2025-01-16-17.txt
new file mode 100644
index 0000000..4007fd6
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-16/gantry_pass_all_log_delete_2025-01-16-17.txt
@@ -0,0 +1,6 @@
+[2025-01-16 17:33:14.029] DL 日志
+[2025-01-16 17:33:14.029] 测试数据
+[2025-01-16 17:43:25.210] 测试数据
+[2025-01-16 17:52:24.876] 测试数据
+[2025-01-16 17:55:13.411] 测试数据
+[2025-01-16 17:55:24.934] 测试数据
diff --git a/out/production/GANTRY_PASS_ALL/LogFile/2025-01-17/gantry_pass_all_log_delete_2025-01-17-09.txt b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-17/gantry_pass_all_log_delete_2025-01-17-09.txt
new file mode 100644
index 0000000..e092026
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/LogFile/2025-01-17/gantry_pass_all_log_delete_2025-01-17-09.txt
@@ -0,0 +1,2 @@
+[2025-01-17 09:39:17.280] DL 日志
+[2025-01-17 09:39:17.280] 测试数据
diff --git a/out/production/GANTRY_PASS_ALL/META-INF/MANIFEST.MF b/out/production/GANTRY_PASS_ALL/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..a33408e
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: GPA.GAMIN
+
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleService.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleService.class
new file mode 100644
index 0000000..47d4abd
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleService.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleService.wsdl b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleService.wsdl
new file mode 100644
index 0000000..97f94af
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleService.wsdl
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleServiceService.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleServiceService.class
new file mode 100644
index 0000000..8a2968f
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/FeeModuleServiceService.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetFee.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetFee.class
new file mode 100644
index 0000000..dc2441c
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetFee.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetFeeResponse.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetFeeResponse.class
new file mode 100644
index 0000000..aa9fc9f
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetFeeResponse.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetStaFee.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetStaFee.class
new file mode 100644
index 0000000..e5d663c
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetStaFee.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetStaFeeResponse.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetStaFeeResponse.class
new file mode 100644
index 0000000..1ed02e7
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/GetStaFeeResponse.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/ObjectFactory.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/ObjectFactory.class
new file mode 100644
index 0000000..dba9493
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/ObjectFactory.class differ
diff --git a/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/package-info.class b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/package-info.class
new file mode 100644
index 0000000..b9553e7
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/com/trkf/feemoduleservice/package-info.class differ
diff --git a/out/production/GANTRY_PASS_ALL/druid.properties b/out/production/GANTRY_PASS_ALL/druid.properties
new file mode 100644
index 0000000..7cc1ffa
--- /dev/null
+++ b/out/production/GANTRY_PASS_ALL/druid.properties
@@ -0,0 +1,18 @@
+url=jdbc:oracle:oci:@//10.15.100.5:1521/torcl
+#ȱʡģurlԶʶ
+driverClassName=oracle.jdbc.driver.OracleDriver
+username=nmgmpayadmin
+password=nmgh90[]
+
+##ʼĬ0
+initialSize=16
+#Ĭ8
+maxActive=32
+#С
+minIdle=1
+#ȡӵȴʱ䣬λ
+maxWait=10000
+#PreparedStatementĬfalse
+poolPreparedStatements=true
+#PreparedStatementĬ-1棩0ʱԶPreparedStatementԿʡһ
+maxOpenPreparedStatements=20
\ No newline at end of file
diff --git a/out/production/GANTRY_PASS_ALL/lib/HikariCP-3.3.1.jar b/out/production/GANTRY_PASS_ALL/lib/HikariCP-3.3.1.jar
new file mode 100644
index 0000000..476e0c0
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/HikariCP-3.3.1.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/dom4j-2.0.3.jar b/out/production/GANTRY_PASS_ALL/lib/dom4j-2.0.3.jar
new file mode 100644
index 0000000..1ef5c52
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/dom4j-2.0.3.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/fastjson-1.2.83.jar b/out/production/GANTRY_PASS_ALL/lib/fastjson-1.2.83.jar
new file mode 100644
index 0000000..fd843ae
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/fastjson-1.2.83.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/ojdbc6.jar b/out/production/GANTRY_PASS_ALL/lib/ojdbc6.jar
new file mode 100644
index 0000000..8240f40
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/ojdbc6.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/slf4j-api-1.7.25.jar b/out/production/GANTRY_PASS_ALL/lib/slf4j-api-1.7.25.jar
new file mode 100644
index 0000000..0143c09
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/slf4j-api-1.7.25.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/slf4j-simple-1.7.25.jar b/out/production/GANTRY_PASS_ALL/lib/slf4j-simple-1.7.25.jar
new file mode 100644
index 0000000..a7260f3
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/slf4j-simple-1.7.25.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/spring-beans-5.2.16.RELEASE.jar b/out/production/GANTRY_PASS_ALL/lib/spring-beans-5.2.16.RELEASE.jar
new file mode 100644
index 0000000..40dc420
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/spring-beans-5.2.16.RELEASE.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/spring-core-5.2.16.RELEASE.jar b/out/production/GANTRY_PASS_ALL/lib/spring-core-5.2.16.RELEASE.jar
new file mode 100644
index 0000000..74f1ceb
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/spring-core-5.2.16.RELEASE.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/spring-jcl-5.2.16.RELEASE.jar b/out/production/GANTRY_PASS_ALL/lib/spring-jcl-5.2.16.RELEASE.jar
new file mode 100644
index 0000000..1c85dab
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/spring-jcl-5.2.16.RELEASE.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/spring-jdbc-5.2.16.RELEASE.jar b/out/production/GANTRY_PASS_ALL/lib/spring-jdbc-5.2.16.RELEASE.jar
new file mode 100644
index 0000000..acaa0af
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/spring-jdbc-5.2.16.RELEASE.jar differ
diff --git a/out/production/GANTRY_PASS_ALL/lib/spring-tx-5.2.16.RELEASE.jar b/out/production/GANTRY_PASS_ALL/lib/spring-tx-5.2.16.RELEASE.jar
new file mode 100644
index 0000000..3c879ce
Binary files /dev/null and b/out/production/GANTRY_PASS_ALL/lib/spring-tx-5.2.16.RELEASE.jar differ
diff --git a/src/Config/Config.xml b/src/Config/Config.xml
new file mode 100644
index 0000000..95aab27
--- /dev/null
+++ b/src/Config/Config.xml
@@ -0,0 +1,35 @@
+
+
+
+ a.OBUISSUEID,a.GANTRYID,a.FEEPROVBEGINHEX,a.ENTOLLSTATIONHEX,a.PASSID,a.ENTIME,a.PAYFEE,a.FEE,a.DISCOUNTFEE,a.CPUCARDTYPE,a.CPUCARDID,a.OBUSIGN,a.VEHICLEPLATE,a.TOLLINTERVALID,a.PAYFEEGROUP,a.FEEGROUP,a.VEHICLESIGN,a.FEEVEHICLETYPE,a.VEHICLETYPE,a.DISCOUNTTYPE,a.PROVINCEDISCOUNTFEE,a.ORIGINFEE,a.TRANSTIME,a.OBUSN,b.NAME,a.OBUPROVPAYFEESUMAFTER,a.OBUPROVFEESUMAFTER,a.FEESPARE1,a.OBUVEHICLEPLATE,a.CPUVEHICLEPLATE,a.FEESUMLOCALAFTER,a.CPUNETID,a.OBUPROVTRADESUCCNUMAFTER,a.TRADEID,a.VEHICLEUSERTYPE,a.AXLECOUNT,a.LASTGANTRYHEX,a.MEDIATYPE,a.FEECALCRESULT, a.GANTRYTYPE,'' "GANTRYKEY",'' "GANTRYVERIFY",a.OBUFEESUMAFTER,a.OBUTOTALTRADESUCCNUMAFTER,a.NOCARDTIMESAFTER,a.CARDFEESUMAFTER,a.PROVINCENUMAFTER,a.TOTALWEIGHT,a.IDENTIFYVEHICLETYPE,a.VEHICLECLASS,a.TAC,a.TRANSFEE,a.TERMINALTRANSNO,a.TRANSTYPE,a.TERMINALNO,a.ALGORITHMIDENTIFIER,a.RATEVERSION,a.VEHICLEPICID,'' "DECRIPTION",a.OBUMAC,a.KEYVERSION,to_number(substr(a.gantryOrderNum,0,1)) "DIRECTION",a.OBUELECTRICAL,b.GANTRYHEX,a.FEEINFO1,a.FEEINFO2,a.FEEINFO3,a.CPUISSUEID,a.TRADERESULT,a.OBUTRADERESULT,a.VEHICLESEAT
+
+ G001215001000220010|G001215001000220020|S002715001002610010|S002715001002610020|G002515001000610010|G002515001000610020|G002515001000220010|G002515001000220020|G001015003000220010|G001015003000220020|G181715005000810010|G181715005000810020|G004515004001210010|G004515004001210020|G001615004000220010|G001615004000220020|G251115002000220010|G251115002000220020|G006515003001410010|G006515003001410020|G000615001000220010|G000615001000220020|G000715001000220010|G000715001000220020|G005515004010810010|G005515004010810020|G005915001001410010|G005915001001410020|G000615010001410010|G000615010001410020|G000715003004210010|G000715003004210020|G001815001000220010|G001815001000220020|G004515001000220010|G004515001000220020|S003115004001010010|S003115004001010020|G451315001000410010|G451315001000410020
+
+ G001215001000210010|G001215001000210020|S002715001002620010|S002715001002620020|G002515001000210010|G002515001000210020|G002515001000620010|G002515001000620020|G001015003000210010|G001015003000210020|G181715005000820010|G181715005000820020|G001615004000210010|G001615004000210020|G004515004001220010|G004515004001220020|G251115002000210010|G251115002000210020|G000615001000210010|G000615001000210020|G000715001000210010|G000715001000210020|G006515003001420010|G006515003001420020|G005515004010820010|G005515004010820020|G005915001001420010|G005915001001420020|G000615010001420010|G000615010001420020|G000715003004220010|G000715003004220020|G001815001000210010|G001815001000210020|G004515001000210010|G004515001000210020|S003115004001020010|S003115004001020020|G451315001000420010|G451315001000420020
+
+ [{"GANTRYHEX":"160302","GANTRYNAME":"蒙冀界-兴和东","ENSTAHEX":"13000000"},{"GANTRYHEX":"160802","GANTRYNAME":"蒙黑界-阿荣旗南","ENSTAHEX":"23000000"},{"GANTRYHEX":"160B02","GANTRYNAME":"蒙吉界-白音乌苏","ENSTAHEX":"22000000"},{"GANTRYHEX":"160E3E","GANTRYNAME":"平庄主线-平庄","ENSTAHEX":"21000000"},{"GANTRYHEX":"161024","GANTRYNAME":"清水河界-十七沟","ENSTAHEX":"14000000"},{"GANTRYHEX":"161302","GANTRYNAME":"那木斯-金宝屯","ENSTAHEX":"22000000"},{"GANTRYHEX":"161402","GANTRYNAME":"好力堡-甘旗卡","ENSTAHEX":"21000000"},{"GANTRYHEX":"161602","GANTRYNAME":"欧里主线-巴彦塔拉","ENSTAHEX":"22000000"},{"GANTRYHEX":"1703BA","GANTRYNAME":"蒙宁界-乌斯太","ENSTAHEX":"64000000"},{"GANTRYHEX":"17057A","GANTRYNAME":"黑鹰山主线-黑鹰山","ENSTAHEX":"62000000"},{"GANTRYHEX":"1709E2","GANTRYNAME":"三号地-贡宝拉格","ENSTAHEX":"13000000"},{"GANTRYHEX":"1712C8","GANTRYNAME":"巴润别立主线-长流水","ENSTAHEX":"64000000"},{"GANTRYHEX":"171306","GANTRYNAME":"布敦花-查日苏","ENSTAHEX":"21000000"},{"GANTRYHEX":"17163E","GANTRYNAME":"内蒙茅荆坝-美林","ENSTAHEX":"13000000"},{"GANTRYHEX":"171994","GANTRYNAME":"蒙晋界-丰镇","ENSTAHEX":"14000000"},{"GANTRYHEX":"171C2E","GANTRYNAME":"和林格尔主线-新店子互通","ENSTAHEX":"14000000"},{"GANTRYHEX":"171E2C","GANTRYNAME":"蒙陕界-兰家梁","ENSTAHEX":"61000000"},{"GANTRYHEX":"172844","GANTRYNAME":"龙口界-龙口","ENSTAHEX":"14000000"},{"GANTRYHEX":"161328","GANTRYNAME":"化德东至化德界门架","ENSTAHEX":"13000000"},{"GANTRYHEX":"171328","GANTRYNAME":"化德界至化德东门架","ENSTAHEX":"13000000"},{"GANTRYHEX":"160516","GANTRYNAME":"韩家营-兴和南","ENSTAHEX":"13000000"}]
+
+ 0
+
+ ^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z挂学警港澳领试超外0-9]{3,9}_(0|1|2|3|4|5|6|7|11|12)$|^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z0-9][A-Z0-9]{4}应急_(0|1|2|3|4|5|6|7|11|12)$
+
+ 150201
+
+ 4080
+
+ 0
+
+ 30
+
+ 1
+
+ jdbc:oracle:thin:@//10.15.100.5:1521/torcl
+ nmgmpayadmin
+ nmgh90[]
+
+ jdbc:dm://10.115.255.4:5236/NMGGJT
+ NMGGJT
+ 1234567890
+
+ http://10.15.99.78:8081/FeeModuleService/FeeModuleService
+
\ No newline at end of file
diff --git a/src/GPA/CommonCon.java b/src/GPA/CommonCon.java
new file mode 100644
index 0000000..a5035f0
--- /dev/null
+++ b/src/GPA/CommonCon.java
@@ -0,0 +1,18 @@
+package GPA;
+
+
+import javax.sql.DataSource;
+import java.io.InputStream;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.util.Properties;
+
+public class CommonCon {
+
+
+ public Connection getDMCon() throws Exception {
+ Class.forName("dm.jdbc.driver.DmDriver");
+ Connection connection=DriverManager.getConnection(CommonHelp.GetConfigValue("JDBCDM_url"),CommonHelp.GetConfigValue("JDBCDM_user"),CommonHelp.GetConfigValue("JDBCDM_password"));
+ return connection;
+ }
+}
diff --git a/src/GPA/CommonHelp.java b/src/GPA/CommonHelp.java
new file mode 100644
index 0000000..96b2117
--- /dev/null
+++ b/src/GPA/CommonHelp.java
@@ -0,0 +1,2395 @@
+package GPA;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.sun.javafx.collections.MappingChange;
+import com.trkf.feemoduleservice.FeeModuleServiceService;
+import org.dom4j.Document;
+import org.dom4j.Element;
+import org.dom4j.io.SAXReader;
+import org.junit.Test;
+import org.springframework.jdbc.core.JdbcTemplate;
+import sun.management.snmp.jvmmib.EnumJvmRTBootClassPathSupport;
+
+import javax.xml.transform.sax.SAXTransformerFactory;
+import java.io.File;
+import java.io.PushbackInputStream;
+import java.io.UnsupportedEncodingException;
+import java.sql.*;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
+import java.util.Date;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+
+public class CommonHelp {
+
+
+ public static List converToList(ResultSet rs) {
+
+ List list = new ArrayList();
+ ResultSetMetaData rsmd = null;
+ try {
+ rsmd = rs.getMetaData();
+ while (rs.next()) {
+ Map map = new HashMap();
+ for (int i = 1; i <= rsmd.getColumnCount(); i++) {
+ map.put(rsmd.getColumnName(i), rs.getObject(i));
+ }
+
+ list.add(map);
+ }
+ } catch (SQLException throwables) {
+ throwables.printStackTrace();
+ }
+ return list;
+ }
+
+ public static String GetConfigValue(String key) throws Exception {
+ String result = "";
+ //LogClass.debug(CommonHelp.getPath()+File.separator+"Config"+File.separator+"Config.xml");
+ try {
+ SAXReader saxReader = new SAXReader();
+ Document doc =
+ saxReader.read(new File(CommonHelp.getPath() + File.separator + "Config" + File.separator +
+ "Config.xml"));
+ Element root = doc.getRootElement();
+ Element result_e = root.element(key);
+ result = result_e.getStringValue();
+ //LogClass.debug(result);
+ } catch (Exception e) {
+ LogClass.debug(e.toString());
+ } finally {
+ return result;
+ }
+
+
+ }
+
+ public static String getPath() {
+ String path = CommonHelp.class.getProtectionDomain().getCodeSource().getLocation().getPath();
+ if (System.getProperty("os.name").contains("dows")) {
+ path = path.substring(1, path.length());
+ }
+ if (path.contains("jar")) {
+ path = path.substring(0, path.lastIndexOf("."));
+ return path.substring(0, path.lastIndexOf("/"));
+ }
+ return path.replace("target/classes/", "");
+ }
+
+
+ public static List getListBySql(String sql, JdbcTemplate jdbcTemplate) throws Exception {
+
+// String dbType = GetConfigValue("DbType");
+//
+// Connection con = null;
+// if (dbType.equals("1")) {
+// con = new CommonCon().getOraCon();
+// } else if (dbType.equals("2")) {
+// con = new CommonCon().getDMCon();
+// }
+// Statement st = con.createStatement();
+// ResultSet set = st.executeQuery(sql);
+
+
+// ResultSet set=new DBUtil().Query(sql);
+//
+// List resultList = converToList(set);
+
+// if (set != null) {
+// set.close();
+// }
+// if (st != null) {
+// st.close();
+// }
+// if (con != null) {
+// con.close();
+// }
+ //JdbcTemplate jdbcTemplate=new JdbcTemplate(new DBUtil().getDataSource());
+
+ List