apzl_leasing/src_tenwa/quartz/ObtainUpdataContractStatus.java
2022-07-27 09:48:38 +08:00

65 lines
2.8 KiB
Java

package quartz;
import java.util.List;
import java.util.Map;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import com.amarsoft.are.jbo.JBOException;
import com.amarsoft.are.util.StringFunction;
import com.amarsoft.awe.util.SqlObject;
import com.amarsoft.awe.util.Transaction;
import com.base.util.QuartzUtil;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.lease.app.quartzmession.JobInitUserName;
public class ObtainUpdataContractStatus implements Job{
private JobInitUserName jboName;
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
String startime = StringFunction.getTodayNow();
Object userId = arg0.getTrigger().getJobDataMap().get("CurUserId");
String curUserId = userId == null? "system" : userId.toString();
Transaction sqlca = null ;
try {
sqlca = Transaction.createTransaction("als");
sqlca.getConnection().setAutoCommit(true);
/*String sql = "update lb_contract_info lci set lci.ap_contract_status="+
" (SELECT cl.itemname FROM " +
" ( SELECT contract_number, MAX( inputtime ) AS inputtime, business_status FROM business_status WHERE contract_number LIKE 'BQAP(%' GROUP BY contract_number ) bs " +
" LEFT JOIN business_status cs ON bs.contract_number = cs.contract_number " +
" AND bs.inputtime = cs.inputtime " +
" LEFT JOIN ( SELECT itemno, itemname FROM code_library WHERE codeno = 'BusinessStatus' ) cl ON cs.business_status = cl.itemno " +
" where bs.contract_number=lci.CONTRACT_NO) " +
" where ((ap_contract_status<>'攣끽써헌' and ap_contract_status<>'瓊품써헌') or ap_contract_status is null) ";
List<Map<String,String>> list = DataOperatorUtil.getDataBySql("select ID,CONTRACT_NO from lb_contract_info where BUSINESSTYPE ='1' and ((ap_contract_status<>'攣끽써헌' and ap_contract_status<>'瓊품써헌') or ap_contract_status is null) ");
String contractStatus = null ;
if(list!=null && list.size()>0) {
System.out.println("gengxindeshuju="+list.size());
for (Map<String, String> map : list) {
contractStatus = sqlca.getString("select getAPBusinessStatus('"+map.get("CONTRACT_NO")+"') from dual");
sqlca.executeSQL(new SqlObject("update lb_contract_info set ap_contract_status = '"+contractStatus+"' where id='"+map.get("ID")+"'"));
sqlca.commit();
}
}*/
sqlca.executeSQL(new SqlObject("call proc_update_contract_status() "));
QuartzUtil.insertLog(startime, "quartz.ObtainUpdataContractStatus", "success", "냥묘", curUserId);
} catch (Exception e) {
QuartzUtil.insertLog(startime, "quartz.ObtainUpdataContractStatus", "error", "呵겨", curUserId);
e.printStackTrace();
}finally{
try {
if(sqlca !=null){
sqlca.disConnect();
}
} catch (JBOException e) {
e.printStackTrace();
}
}
}
}