|
@@ -11,6 +11,7 @@ import java.sql.Connection;
|
|
|
import java.sql.PreparedStatement;
|
|
|
import java.sql.ResultSet;
|
|
|
import java.sql.SQLException;
|
|
|
+import java.text.DateFormat;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
@@ -24,74 +25,80 @@ public class DataService {
|
|
|
EquipmentNo equipmentNo =new EquipmentNo();
|
|
|
DataCenterService dataCenterService=new DataCenterService();
|
|
|
DataDeleteService dataDeleteService=new DataDeleteService();
|
|
|
- public DataRepoTable testSelect(String repo_name) throws SQLException {
|
|
|
+ DataTypeService dataTypeService=new DataTypeService();
|
|
|
+ public DataRepoTable testSelect(String repo_name,String table_name,String up_num,String table_comment) throws SQLException {
|
|
|
List valueList=new ArrayList();
|
|
|
List nameList=new ArrayList();
|
|
|
Connection connection = null;
|
|
|
DataRepoTable dataRepoTable=new DataRepoTable();
|
|
|
- String selectSQL2 = "Select * from data_sync_table where repo_name = ?";
|
|
|
+// String selectSQL2 = "Select * from data_sync_table where repo_name = ?";
|
|
|
|
|
|
// String selectSQL2 = "Select * from data_sync_table where table_name = v_report_yljg_yg_cyjl";
|
|
|
PreparedStatement prepStmt = null;
|
|
|
- PreparedStatement prepStmt2 = null;
|
|
|
- String table_name="";
|
|
|
- String table_comment="";
|
|
|
- String num=equipmentNo.getNewEquipmentNo(repo_name);
|
|
|
+// PreparedStatement prepStmt2 = null;
|
|
|
+// String table_name="";
|
|
|
+ String num=equipmentNo.getNewEquipmentNo(repo_name,up_num);
|
|
|
String state="";
|
|
|
+ String type="";
|
|
|
// String num="";
|
|
|
|
|
|
try {
|
|
|
MysqlDataSource basicDS = DataSource.getInstance().getMySqlDS();
|
|
|
connection = basicDS.getConnection();
|
|
|
- prepStmt2 = connection.prepareStatement(selectSQL2);
|
|
|
- prepStmt2.setString(1,repo_name);
|
|
|
- ResultSet rs2 = prepStmt2.executeQuery();
|
|
|
- rs2.next();
|
|
|
- table_name=rs2.getString("table_name");
|
|
|
- table_comment=rs2.getString("table_comment");
|
|
|
String selectSQL = "select * from "+table_name+"";
|
|
|
prepStmt = connection.prepareStatement(selectSQL);
|
|
|
ResultSet rs = prepStmt.executeQuery();
|
|
|
+ int j=0;
|
|
|
+ DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ Date beginTime = new Date();
|
|
|
+ String start = df.format(beginTime);
|
|
|
+ Long begin = beginTime.getTime();
|
|
|
+ System.out.println("任务开始,开始时间为:"+ start);
|
|
|
while(rs.next()){
|
|
|
String resname="";
|
|
|
String resvalue="";
|
|
|
-
|
|
|
+ String valueNum="";
|
|
|
+ j++;
|
|
|
for(int i=1;i<=rs.getMetaData().getColumnCount();i++){
|
|
|
String name2=rs.getMetaData().getColumnName(i);
|
|
|
String value2= rs.getString(i);
|
|
|
+
|
|
|
if(i==1){
|
|
|
- state= dataCenterService.selectState(name2,value2,repo_name);
|
|
|
+// state= dataCenterService.selectState(name2,value2,repo_name);
|
|
|
}
|
|
|
+ type= dataTypeService.selectType(repo_name,name2);
|
|
|
if(StringUtils.isNullOrEmpty(value2)){
|
|
|
continue;
|
|
|
- }else if(name2.equals("AXCP0005")||name2.equals("AHDX6129")
|
|
|
- ||name2.equals("AXCP0002")||name2.equals("AHAP0026")||name2.equals("AHAP1026")
|
|
|
- ||name2.equals("AXZX0001")||name2.equals("AHAP0028")||name2.equals("AHAP0029")
|
|
|
- ||name2.equals("AXZX0010")||name2.equals("AXZX0011")||name2.equals("AHAX1326")
|
|
|
- ||name2.equals("AHAX1328")||name2.equals("AHAX1324")||name2.equals("AHBX3102")
|
|
|
- ||name2.equals("AHBX3116")||name2.equals("AHBX3115")||name2.equals("AXZX0002")
|
|
|
- ||name2.equals("AHDP5010")||name2.equals("AHDP5011")||name2.equals("AHDP5020")
|
|
|
- ||name2.equals("AHDP5021")||name2.equals("AHDP5052")||name2.equals("AHDP5055")
|
|
|
- ||name2.equals("AHDP5057")||name2.equals("AHDP5058")||name2.equals("AHDP5063")
|
|
|
- ||name2.equals("AHDP5330")||name2.equals("AHDP5098")||name2.equals("AHDP5099")
|
|
|
- ||name2.equals("AHDP5110")||name2.equals("AHAX1325") ||name2.equals("AHAE2327")
|
|
|
- ||name2.equals("AXBE0013")||name2.equals("AXBE0021")||name2.equals("AHAE0012")
|
|
|
- ||name2.equals("AXBE0018")||name2.equals("AHAE5004")||name2.equals("AHAE5026")
|
|
|
- ||name2.equals("AHAE5027")||name2.equals("AHAE5029")){
|
|
|
+ }else if(!StringUtils.isNullOrEmpty(type)&&type.equals("0")){
|
|
|
+// else if(name2.equals("AXCP0005")||name2.equals("AHDX6129")
|
|
|
+// ||name2.equals("AXCP0002")||name2.equals("AHAP0026")||name2.equals("AHAP1026")
|
|
|
+// ||name2.equals("AXZX0001")||name2.equals("AHAP0028")||name2.equals("AHAP0029")
|
|
|
+// ||name2.equals("AXZX0010")||name2.equals("AXZX0011")||name2.equals("AHAX1326")
|
|
|
+// ||name2.equals("AHAX1328")||name2.equals("AHAX1324")||name2.equals("AHBX3102")
|
|
|
+// ||name2.equals("AHBX3116")||name2.equals("AHBX3115")||name2.equals("AXZX0002")
|
|
|
+// ||name2.equals("AHDP5010")||name2.equals("AHDP5011")||name2.equals("AHDP5020")
|
|
|
+// ||name2.equals("AHDP5021")||name2.equals("AHDP5052")||name2.equals("AHDP5055")
|
|
|
+// ||name2.equals("AHDP5057")||name2.equals("AHDP5058")||name2.equals("AHDP5063")
|
|
|
+// ||name2.equals("AHDP5330")||name2.equals("AHDP5098")||name2.equals("AHDP5099")
|
|
|
+// ||name2.equals("AHDP5110")||name2.equals("AHAX1325") ||name2.equals("AHAE2327")
|
|
|
+// ||name2.equals("AXBE0013")||name2.equals("AXBE0021")||name2.equals("AHAE0012")
|
|
|
+// ||name2.equals("AXBE0018")||name2.equals("AHAE5004")||name2.equals("AHAE5026")
|
|
|
+// ||name2.equals("AHAE5027")||name2.equals("AHAE5029")){
|
|
|
|
|
|
SM4Utils sm4 = new SM4Utils();
|
|
|
sm4.secretKey = "1234567887654321";
|
|
|
value2=sm4.decryptData_ECB(value2);
|
|
|
|
|
|
- }else if(name2.equals("AXBE9001")||name2.equals("UPDATETIME")||name2.equals("AHDX6145")
|
|
|
- ||name2.equals("AHDX6146")||name2.equals("AHDX6158")||name2.equals("AHDX6177")
|
|
|
- ||name2.equals("AHDX6165")||name2.equals("AHDX6174")||name2.equals("AHDX6159")
|
|
|
- ||name2.equals("AHAE2493")||name2.equals("AHDX6020")||name2.equals("AXCP0039")
|
|
|
- ||name2.equals("AHDP5070")||name2.equals("AHDP5071")||name2.equals("AHDP5112")
|
|
|
- ||name2.equals("AHDP5082")||name2.equals("AHDP5102")||name2.equals("AHDP5039")
|
|
|
- ||name2.equals("AHDP5040")||name2.equals("AHAE2325")||name2.equals("AHAE2328")
|
|
|
- ||name2.equals("AHAE2349")||name2.equals("AXBE0017")||name2.equals("AHAE0041")
|
|
|
- ||name2.equals("AHAE5024")||name2.equals("AHAE5024")){
|
|
|
+ }else if(!StringUtils.isNullOrEmpty(type)&&type.equals("1")){
|
|
|
+// else if(name2.equals("AXBE9001")||name2.equals("UPDATETIME")||name2.equals("AHDX6145")
|
|
|
+// ||name2.equals("AHDX6146")||name2.equals("AHDX6158")||name2.equals("AHDX6177")
|
|
|
+// ||name2.equals("AHDX6165")||name2.equals("AHDX6174")||name2.equals("AHDX6159")
|
|
|
+// ||name2.equals("AHAE2493")||name2.equals("AHDX6020")||name2.equals("AXCP0039")
|
|
|
+// ||name2.equals("AHDP5070")||name2.equals("AHDP5071")||name2.equals("AHDP5112")
|
|
|
+// ||name2.equals("AHDP5082")||name2.equals("AHDP5102")||name2.equals("AHDP5039")
|
|
|
+// ||name2.equals("AHDP5040")||name2.equals("AHAE2325")||name2.equals("AHAE2328")
|
|
|
+// ||name2.equals("AHAE2349")||name2.equals("AXBE0017")||name2.equals("AHAE0041")
|
|
|
+// ||name2.equals("AHAE5024")){
|
|
|
|
|
|
resname+=name2+",";
|
|
|
resvalue+="to_date("+value2+",'yyyymmdd')"+",";
|
|
@@ -101,12 +108,48 @@ public class DataService {
|
|
|
resvalue+="'"+value2+"'"+",";
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+// System.out.println(j);
|
|
|
resname=resname+"UP_NUM"+",DATA_STATE";
|
|
|
resvalue=resvalue+"'"+num+"'"+","+"'"+state+"'";
|
|
|
nameList.add(resname);
|
|
|
valueList.add(resvalue);
|
|
|
+
|
|
|
+ if(j % 10 == 0){
|
|
|
+ Date finishTime = new Date();
|
|
|
+ Long end = finishTime.getTime();
|
|
|
+ long timeLag = end - begin;
|
|
|
+ long day=timeLag/(24*60*60*1000);
|
|
|
+ long hour=(timeLag/(60*60*1000)-day*24);
|
|
|
+ long minute=((timeLag/(60*1000))-day*24*60-hour*60);
|
|
|
+ long s=(timeLag/1000-day*24*60*60-hour*60*60-minute*60);
|
|
|
+ System.out.println("10条数据读取和解密用了 "+day+"天 "+hour+"时 "+minute+"分 "+s+"秒");
|
|
|
+ dataCenterService.insertData(nameList,repo_name,valueList);
|
|
|
+ Date finishTime2 = new Date();
|
|
|
+ Long end2 = finishTime2.getTime();
|
|
|
+ long timeLag2 = end2 - end;
|
|
|
+ long day2=timeLag2/(24*60*60*1000);
|
|
|
+ long hour2=(timeLag2/(60*60*1000)-day2*24);
|
|
|
+ long minute2=((timeLag2/(60*1000))-day2*24*60-hour2*60);
|
|
|
+ long s2=(timeLag2/1000-day2*24*60*60-hour2*60*60-minute2*60);
|
|
|
+ System.out.println("10条数据保存用了 "+day2+"天 "+hour2+"时 "+minute2+"分 "+s2+"秒");
|
|
|
+ nameList.clear();
|
|
|
+ valueList.clear();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(nameList != null && !nameList.isEmpty()) {
|
|
|
+ dataCenterService.insertData(nameList,repo_name,valueList);
|
|
|
}
|
|
|
- dataCenterService.insertData(nameList,repo_name,valueList);
|
|
|
+ Date finishTime = new Date();
|
|
|
+ Long end = finishTime.getTime();
|
|
|
+ long timeLag = end - begin;
|
|
|
+ long day=timeLag/(24*60*60*1000);
|
|
|
+ long hour=(timeLag/(60*60*1000)-day*24);
|
|
|
+ long minute=((timeLag/(60*1000))-day*24*60-hour*60);
|
|
|
+ long s=(timeLag/1000-day*24*60*60-hour*60*60-minute*60);
|
|
|
+ System.out.println("用了 "+day+"天 "+hour+"时 "+minute+"分 "+s+"秒");
|
|
|
+ System.out.println("任务结束,结束时间为:"+ df.format(finishTime));
|
|
|
+ System.out.println("表"+repo_name+"上传了"+j+"条数据到中间库");
|
|
|
dataCenterService.updateData(num,repo_name);
|
|
|
dataDeleteService.DataDelete(repo_name);//清除oracle中数据
|
|
|
dataRepoTable.setTable_name(table_name);
|
|
@@ -116,8 +159,8 @@ public class DataService {
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
}finally {
|
|
|
- if (prepStmt2 != null) {
|
|
|
- prepStmt2.close();
|
|
|
+ if (prepStmt != null) {
|
|
|
+ prepStmt.close();
|
|
|
}
|
|
|
if (connection != null) {
|
|
|
connection.close();
|