72 lines
1.8 KiB
Java
72 lines
1.8 KiB
Java
package com.tenwa.lease.app.message;
|
|
|
|
import com.amarsoft.are.jbo.JBOTransaction;
|
|
import com.amarsoft.awe.util.SqlObject;
|
|
import com.amarsoft.awe.util.Transaction;
|
|
|
|
|
|
public class UpdateMessageHandler {
|
|
private String sparam;
|
|
private String ids;
|
|
public String getIds() {
|
|
return ids;
|
|
}
|
|
|
|
public void setIds(String ids) {
|
|
this.ids = ids;
|
|
}
|
|
|
|
public String getSparam() {
|
|
return sparam;
|
|
}
|
|
|
|
public void setSparam(String sparam) {
|
|
this.sparam = sparam;
|
|
}
|
|
|
|
public String MultiUpdate(JBOTransaction tx) throws Exception{
|
|
String[] paramArray=sparam.split("@");
|
|
String[] keyArray={"if_loan_money","loan_bank","loan_contract_no","loan_principal","loan_rate"};
|
|
this.setIds(ids.substring(1, ids.length()-1).replaceAll("\"", ""));
|
|
String[] idArray=ids.split("@");
|
|
|
|
StringBuffer sql=new StringBuffer("update lc_source_of_funds set ");
|
|
StringBuffer setSQLStr=new StringBuffer ("");
|
|
String setSQL="";
|
|
StringBuffer idbuffer=new StringBuffer ("");
|
|
for(int i=0;i<paramArray.length;i++){
|
|
if(paramArray[i]!=null&&!"".equals(paramArray[i])) {
|
|
setSQLStr.append(keyArray[i]+"='"+paramArray[i]+"'"+" @");
|
|
}
|
|
}
|
|
for(int i=0;i<idArray.length;i++){
|
|
idbuffer.append("'"+idArray[i]+"'");
|
|
if(i!=idArray.length-1)idbuffer.append(",");
|
|
}
|
|
String idstr=" where id in ("+idbuffer+")";
|
|
setSQL=setSQLStr.substring(0, setSQLStr.length()-1).replaceAll("@", ",");
|
|
sql.append(setSQL);
|
|
sql.append(idstr);
|
|
Transaction Sqlca =null;
|
|
try{
|
|
Sqlca = Transaction.createTransaction(tx);
|
|
SqlObject asql = new SqlObject(sql.toString());
|
|
Sqlca.executeSQL(asql);
|
|
return "true";
|
|
}catch(Exception e){
|
|
e.printStackTrace();
|
|
if(Sqlca != null){
|
|
Sqlca.rollback();
|
|
Sqlca=null;
|
|
}
|
|
return "false";
|
|
}finally{
|
|
if(Sqlca != null){
|
|
Sqlca.commit();
|
|
Sqlca.disConnect();
|
|
Sqlca=null;
|
|
}
|
|
}
|
|
}
|
|
}
|