📄 temptabledispose.java
字号:
* @param vec1 --- SQL
* @param ablename --- 临时表名
* @param file ----idoc文件
* @return boolean
*/
public boolean dealData(Vector vec1, String tablename, File file,String type) {
DBQueryBean dbquery = new DBQueryBean();
query = new DBQueryBean();
boolean flag = false;
int sign = 0;
if (vec1 == null) {
return false;
}
try {
// 把解析数据插入中间数据库表
flag = query.doAffair(vec1);
if (flag == false) {
throw new Throwable("error");
}
// 写日志
}
catch (Throwable e) {
System.out.println("中间数据库表" + e.toString());
// flag = false;
// 写日志
}
if (!flag) {
for (int i = 0; i < vec1.size(); i++) {
// System.out.println("i = " + i + " --> " + (String) vec1.get(i));
try {
sign = dbquery.Update(vec1.get(i).toString());
if (sign < 0) {
throw new Throwable("error");
}
}
catch (Throwable e1) {
//System.out.println("中间数据库表一行"+e1.toString());
// 写日志
}
if (sign < 0) {
String ts = (String) vec1.get(i);
ts = ts.replaceAll(tablename, "T_" + tablename);
try {
sign = dbquery.Update(ts);
// System.out.println("i = " + i + " --> " + ts);
if (sign >= 0) {
flag = true;
}
if (sign < 0) {
throw new Throwable("error");
}
}
catch (Throwable e2) {
System.out.println("临时数据库表一行" + e2.toString());
//sign = -1;
// 写日志
flag = false;
}
}
}
}
query.close();
dbquery.close();
return flag;
}
//对数据库表的访问控制查询
/**
* @param tablename --- 中间表名称
* @return boolean --- 如果此表可操作则true,否则false
*/
public boolean queryTableAc(String tablename) {
query = new DBQueryBean();
RowSet rowset = null;
boolean flag = false;
String sql = null;
sql = "Select tableid From interface_sy_ac Where tableid = '" + tablename +
"' and("
+ "flag = 1 or flag = 3)";
try {
int num = 0;
rowset = query.Query(sql);
num = rowset.length();
if (num > 0) {
flag = true;
}
else {
flag = false;
}
}
catch (Exception e) {
System.out.println("访问控制" + e.toString());
}
query.close();
return flag;
}
//将数据库表的访问控制标志改为0即此表现正在操作,1表示操作完成
/**
* @param tablename --- 中间表名称
* @return boolean --- 如果操作成功则true,否则false
*/
public boolean updateFlag(String tablename, int f) {
query = new DBQueryBean();
boolean flag = false;
String sql = null;
int sign = 0;
sql = "Update interface_sy_ac Set flag = " + f + " Where tableid = '" +
tablename + "'";
try {
sign = query.Update(sql);
if (sign != -1) {
flag = true;
}
if (sign < 0) {
throw new Throwable("error");
}
}
catch (Throwable e) {
flag = false;
//System.out.println();
}
query.close();
return flag;
}
/**
* 批量处理
* @param vec
* @param type
* @return
*/
//类目使用,DiscountParse(类目折扣)使用,ean,set都用的它,inventory,storeage,publish也用它
public boolean disposeData(Vector vec,File file,String type) {
if (vec==null) return false;
boolean flag = false;
DBQueryBean query = new DBQueryBean();
RowSet rowSet = null;
LogManager log = new LogManager();
Vector l_vec = new Vector();
try {
rowSet = prepareCall(query,type);
}catch(Exception ex) {
ex.printStackTrace();
l_vec.add(0,"");
l_vec.add(1,"");
l_vec.add(2,file.getName());
l_vec.add(3,type);
l_vec.add(4,"");
l_vec.add(5,"out");
l_vec.add(6,"第一次调用prepareCall失败!");
l_vec.add(7,"getDate()");
l_vec.add(8, String.valueOf(vec.size()));
l_vec.add(9,"0");// 0:失败;1:成功
l_vec.add(10,"0");
log.WriteLog(l_vec);
query.close();
return false;
}
try {
flag = query.doAffair(vec);
}catch(Exception ex) {
//
l_vec.add(0,"");
l_vec.add(1,"");
l_vec.add(2,file.getName());
l_vec.add(3,type);
l_vec.add(4,"");
l_vec.add(5,"out");
l_vec.add(6,"批量写入数据库‘" + type + "’不成功!");
l_vec.add(7,"getDate()");
l_vec.add(8, String.valueOf(vec.size()));
l_vec.add(9,"0");// 0:失败;1:成功
l_vec.add(10,"0");
log.WriteDisposeLog(query,l_vec);
query.close();
System.out.println("TempTableDispose's disposeData is Error!");
ex.printStackTrace();
return false;
}
try {
rowSet = prepareCall(query,type);
}catch(Exception ex) {
System.out.println("TempTableDispose's disposeData getRowSet is Error!");
ex.printStackTrace();
query.close();
return false;
}
if (rowSet==null || rowSet.length()<1) {
l_vec.add(0,"");
l_vec.add(1,"");
l_vec.add(2,file.getName());
l_vec.add(3,type);
l_vec.add(4,"");
l_vec.add(5,"out");
l_vec.add(6,"批量写入数据库‘" + type + "’不成功!");
l_vec.add(7,"getDate()");
l_vec.add(8, String.valueOf(vec.size()));
l_vec.add(9,"0");// 0:失败;1:成功
l_vec.add(10,"0");
log.WriteDisposeLog(query,l_vec);
query.close();
return false;
} else {
l_vec.add(0, "");
l_vec.add(1, "");
l_vec.add(2, file.getName());
l_vec.add(3, type);
l_vec.add(4, "");
l_vec.add(5, "out");
l_vec.add(6, "批量写入数据库‘" + type + "’成功!");
l_vec.add(7, "getDate()");
l_vec.add(8, String.valueOf(vec.size()));
l_vec.add(9, "1");// 0:失败;1:成功
l_vec.add(10, "0");// 1:管理员看;0:界面查询
// 修改的数据
log.WriteLog(l_vec);
}
query.close();
return flag;
}
/**
* 处理商品住数据的批量处理
* @param vec1
* @param vec2
* @param type
* @return
*/
//主数据用它
public boolean disposeData(Vector vec1,Vector vec2,File file,String type) {
if (vec1==null || vec1.size()<1) return false;
boolean flag = false;
Vector vec = new Vector();
// 把解析数据插入中间数据库表
try {
vec = Operate.uniteVector(vec, vec1);
vec = Operate.uniteVector(vec, vec2);
flag = disposeData(vec, file, type);
}catch(Exception ex) {
flag = false;
}
return flag;
}
/**
* 调用储存过程
* @param type
* @return
*/
public RowSet prepareCall(DBQueryBean query,String type) {
Vector vec = new Vector();
Object[] obj = new Object[2];
String up_name = "DataSynch";
if (type.equalsIgnoreCase("material")) {
obj[0] = "T_SAPIN_SY_MASTER_Merch";
obj[1] = "SAPIN_SY_MASTER_Merch";
} else if (type.equalsIgnoreCase("price")) {
obj[0] = "T_SAPIN_SY_MASTER_PRICE";
obj[1] = "SAPIN_SY_MASTER_PRICE";
} else if (type.equalsIgnoreCase("ean")) {
obj[0] = "T_SAPIN_SY_MASTER_EAN";
obj[1] = "SAPIN_SY_MASTER_EAN";
} else if (type.equalsIgnoreCase("catalog")) {
obj[0] = "T_SAPIN_SY_MASTER_Merch_CATE";
obj[1] = "SAPIN_SY_MASTER_Merch_CATE";
} else if (type.equalsIgnoreCase("storage")) {
obj[0] = "T_SAPIN_SY_Storage_Info";
obj[1] = "SAPIN_SY_Storage_Info";
} else if (type.equalsIgnoreCase("set")) {
obj[0] = "T_SAPIN_SY_MASTER_SUIT";
obj[1] = "SAPIN_SY_MASTER_SUIT";
} else if (type.equalsIgnoreCase("publish")) {
obj[0] = "T_SAPIN_SY_publishing_List";
obj[1] = "SAPIN_SY_publishing_List";
} else if (type.equalsIgnoreCase("inventory")) {
obj[0] = "T_SAPIN_SY_CheckList_Down";
obj[1] = "SAPIN_SY_CheckList_Down";
} else if (type.equalsIgnoreCase("discount")) {
obj[0] = "T_SAPIN_SY_MASTER_CATE_DISCOUNT";
obj[1] = "SAPIN_SY_MASTER_CATE_DISCOUNT";
}
try {
vec = query.QueryBySP("DataSynch", obj);
}catch(Exception ex) {
System.out.println("TempTableDispose's prepareCall is Error!");
ex.printStackTrace();
return null;
}
RowSet rowSet = null;
try {
if (vec != null && vec.size() > 0)
rowSet = (RowSet) vec.get(0);
//Row row = rowSet.get(0);
}catch(Exception ex) {
System.out.println("discount");
ex.printStackTrace();
rowSet = new RowSet();
}
//System.out.println("row = " + row.get(0) + " - > " + rowSet.length());
// query.close();
return rowSet;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -