74 lines
3.2 KiB
Java
74 lines
3.2 KiB
Java
package com.tenwa.flow.comm.handler;
|
||
import java.text.SimpleDateFormat;
|
||
import java.util.Calendar;
|
||
import java.util.Date;
|
||
|
||
import jbo.com.tenwa.lease.comm.LB_CONTRACT_INFO;
|
||
import jbo.com.tenwa.lease.comm.LB_INSURANCE_INFO;
|
||
import jbo.com.tenwa.lease.comm.LB_UNION_LESSEE;
|
||
|
||
import com.amarsoft.are.jbo.BizObject;
|
||
import com.amarsoft.are.jbo.BizObjectManager;
|
||
import com.amarsoft.are.jbo.JBOException;
|
||
import com.amarsoft.are.jbo.JBOFactory;
|
||
import com.amarsoft.are.jbo.JBOTransaction;
|
||
import com.amarsoft.awe.dw.handler.impl.CommonHandler;
|
||
|
||
|
||
public class LBContinueInsuranceInfoHandler extends CommonHandler {
|
||
|
||
@Override
|
||
protected void afterInsert(JBOTransaction tx, BizObject bo)
|
||
throws Exception {
|
||
String beforeId = this.asPage.getAttribute("BeforeId");
|
||
BizObjectManager liiManager = JBOFactory.getBizObjectManager(LB_INSURANCE_INFO.CLASS_NAME,tx);
|
||
BizObject lii = liiManager.createQuery("ID=:id ").setParameter("id",beforeId).getSingleResult(true);
|
||
lii.setAttributeValue("INSURANCE_STATUS","continuestatus");
|
||
liiManager.saveObject(lii);
|
||
super.afterInsert(tx, bo);
|
||
}
|
||
|
||
@Override
|
||
protected void initDisplayForAdd(BizObject bo) throws Exception {
|
||
String beforeId = this.asPage.getAttribute("BeforeId");
|
||
BizObjectManager liiManager = JBOFactory.getBizObjectManager(LB_INSURANCE_INFO.CLASS_NAME);
|
||
BizObjectManager lciManager = JBOFactory.getBizObjectManager(LB_CONTRACT_INFO.CLASS_NAME);
|
||
BizObjectManager lulManager = JBOFactory.getBizObjectManager(LB_UNION_LESSEE.CLASS_NAME);
|
||
BizObject lii = liiManager.createQuery("ID=:id ").setParameter("id",beforeId).getSingleResult(false);
|
||
bo.setAttributeValue("CONTRACT_ID", lii.getAttribute("CONTRACT_ID").getString());
|
||
|
||
BizObject lci = lciManager.createQuery("ID=:id ").setParameter("id",lii.getAttribute("CONTRACT_ID").getString()).getSingleResult(false);
|
||
BizObject lul = lulManager.createQuery("CONTRACT_ID=:contractid and IS_MAIN='Y' ").setParameter("contractid",lii.getAttribute("CONTRACT_ID").getString()).getSingleResult(false);
|
||
bo.setAttributeValue("CONTRACT_NUMBER", lci.getAttribute("CONTRACT_NUMBER").getString());
|
||
bo.setAttributeValue("CUSTOMER_NAME", lul.getAttribute("CUSTOMER_NAME").getString());
|
||
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
|
||
Date beforeEndDate = format.parse(lii.getAttribute("INSURER_END_DATE").getString());
|
||
Calendar calendar = Calendar.getInstance();
|
||
calendar.setTime(beforeEndDate);
|
||
calendar.add(Calendar.DATE, 1);
|
||
Date startDate = calendar.getTime();
|
||
bo.setAttributeValue("INSURER_START_DATE",format.format(startDate));
|
||
super.initDisplayForAdd(bo);
|
||
}
|
||
|
||
@Override
|
||
protected boolean validityCheck(BizObject bo, boolean isInsert) {
|
||
try {
|
||
this.errors="";
|
||
if(bo.getAttribute("INSURER_START_DATE").getDate().getTime()>=bo.getAttribute("INSURER_END_DATE").getDate().getTime()){
|
||
this.errors+="Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>";
|
||
}
|
||
if(bo.getAttribute("INSURANCE_PREMIUM").getDouble()<=0){
|
||
this.errors+="<EFBFBD><EFBFBD><EFBFBD>ս<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㣡";
|
||
}
|
||
if(this.errors.length()>0){
|
||
return false;
|
||
}
|
||
} catch (JBOException e) {
|
||
// TODO Auto-generated catch block
|
||
e.printStackTrace();
|
||
}
|
||
return super.validityCheck(bo, isInsert);
|
||
}
|
||
}
|