package wenrgise.hrms.businessdelegate; import java.rmi.RemoteException; import java.sql.Timestamp; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import javax.ejb.CreateException; import wenrgise.common.bean.BaseHeaderBean; import wenrgise.common.exception.EnrgiseApplicationException; import wenrgise.common.exception.EnrgiseSystemException; import wenrgise.common.utility.EnrgiseUtil; import wenrgise.common.utility.RecordMetaInfo; import wenrgise.common.vo.BaseQueryVO; import wenrgise.common.vo.ThisPageVO; import wenrgise.ejb.common.utility.ServiceLocator; import wenrgise.hrms.bean.HrmEmpAdvAppHdrBean; import wenrgise.hrms.ejb.facade.HrmFacade; import wenrgise.hrms.ejb.facade.HrmFacadeHome; import wenrgise.hrms.vo.HrmEmpAdvAppQueryVO; public class HrmEmpAdvAppBD extends HrmBaseBD { public RecordMetaInfo getHeaderMetaImpl(BaseQueryVO oQueryVO) throws EnrgiseApplicationException, EnrgiseSystemException { try { HrmFacadeHome oHome = (HrmFacadeHome)ServiceLocator.getLocator().getService("HrmFacade"); HrmFacade oHrmFacade = oHome.create(); return oHrmFacade.getHrmEmpAdvAppHdrMetaInfo((HrmEmpAdvAppQueryVO)oQueryVO); } catch (RemoteException oRe) { throw new EnrgiseSystemException(oRe); } catch (CreateException oCrt) { throw new EnrgiseSystemException(oCrt); } } public ArrayList getHeaderRecordImpl(BaseQueryVO oQueryVO, long lStartPosition, long lLastPosition) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException { try { HrmFacadeHome oHome = (HrmFacadeHome)ServiceLocator.getLocator().getService("HrmFacade"); HrmFacade oHrmFacade = oHome.create(); ArrayList oHeaderList = oHrmFacade.getHrmEmpAdvAppHeaderInfo((HrmEmpAdvAppQueryVO)oQueryVO, lStartPosition, lLastPosition); return oHeaderList; } catch (RemoteException oRe) { throw new EnrgiseSystemException(oRe); } catch (CreateException oCrt) { throw new EnrgiseSystemException(oCrt); } } public RecordMetaInfo getTotalDetailRecordCountImpl(String lPrimaryKey, String sScreenName) throws EnrgiseApplicationException, EnrgiseSystemException { RecordMetaInfo oRecordMetaInfo = null; return oRecordMetaInfo; } public ArrayList getDetailRecordImpl(String lPrimaryKey, String sScreenName, long lAbsoluteStart, long lAbsoluteEnd) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException { ArrayList oRet = null; return oRet; } public boolean updateHeaderRecordImpl(BaseHeaderBean oBaseHeaderBean) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException { return true; } public String saveImpl(BaseHeaderBean oBaseHeaderBean, Timestamp oWhenPicked, String sScreenName, String sScreenMode, boolean bHeaderDataChanged, ArrayList oDetailBeanArray, boolean bDetailDataChanged, Timestamp oDetailPicked) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException { try { HrmFacadeHome oHome = (HrmFacadeHome)ServiceLocator.getLocator().getService("HrmFacade"); HrmFacade oHrmFacade = oHome.create(); return oHrmFacade.saveData((HrmEmpAdvAppHdrBean)oBaseHeaderBean, oWhenPicked, sScreenName, sScreenMode, bHeaderDataChanged, oDetailBeanArray, bDetailDataChanged, oDetailPicked, this.oUserInfo); } catch (CreateException oCrtExcep) { throw new EnrgiseSystemException(oCrtExcep); } } public String getInsertDataImpl(BaseQueryVO oQueryVO) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException { return "Only Implementation"; } public String submitImpl(String sButtonName, BaseHeaderBean oBaseHeaderBean, Timestamp oWhenPicked, String sScreenName, String sScreenMode, boolean bHeaderDataChanged, ArrayList oDetailBeanArray, boolean bDetailDataChanged, Timestamp oDetailPicked) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException { try { String sHeaderPrimaryKey = null; HrmFacadeHome oHome = (HrmFacadeHome)ServiceLocator.getLocator().getService("HrmFacade"); HrmFacade oHrmFacade = oHome.create(); if (sButtonName.equalsIgnoreCase("butBulkSettlement")) sHeaderPrimaryKey = oHrmFacade.advAppBulkSettlePayment((HrmEmpAdvAppHdrBean)oBaseHeaderBean, oWhenPicked, sScreenName, sScreenMode, bHeaderDataChanged, oDetailBeanArray, bDetailDataChanged, oDetailPicked, this.oUserInfo); return sHeaderPrimaryKey; } catch (RemoteException oRe) { throw new EnrgiseSystemException(oRe); } catch (CreateException oCrt) { throw new EnrgiseSystemException(oCrt); } } public Map getDisabledFieldsImpl(ThisPageVO oThisPageVO) throws EnrgiseApplicationException, EnrgiseSystemException { HashMap oHashMap = new HashMap(); ArrayList oEnableList = new ArrayList(); ArrayList oDisableList = new ArrayList(); HrmEmpAdvAppHdrBean oHrmEmpAdvAppHdrBean = (HrmEmpAdvAppHdrBean)oThisPageVO.getOHeaderBean(); ArrayList oDetailList = oThisPageVO.getODetailList(); if (!oHrmEmpAdvAppHdrBean.equals(null)) if (oThisPageVO.getScreenMode().equalsIgnoreCase("Q")) { oEnableList.add("butEmployeeNo"); if (EnrgiseUtil.checkString(oHrmEmpAdvAppHdrBean.getEmployeeId())) { oEnableList.add("butAdvanceCode"); } else { oDisableList.add("butAdvanceCode"); } oEnableList.add("butFromDate"); oEnableList.add("butToDate"); oDisableList.add("butDateApplied"); oDisableList.add("amountApplied"); oDisableList.add("sanctionedAmount"); oDisableList.add("butSanctionDate"); oDisableList.add("reason"); oDisableList.add("butApproverNo"); oDisableList.add("remarks"); oDisableList.add("payrollMonth"); oDisableList.add("butBulkSettlement"); oDisableList.add("bulkSettleAmount"); } else if (oThisPageVO.getScreenMode().equalsIgnoreCase("U")) { oDisableList.add("butEmployeeNo"); oDisableList.add("butAdvanceCode"); oDisableList.add("butFromDate"); oDisableList.add("butToDate"); oEnableList.add("butDateApplied"); oEnableList.add("amountApplied"); oEnableList.add("sanctionedAmount"); oEnableList.add("butSanctionDate"); oEnableList.add("reason"); oEnableList.add("butApproverNo"); oEnableList.add("remarks"); if (EnrgiseUtil.checkString(oHrmEmpAdvAppHdrBean.getPaidInstallments())) { if (Integer.parseInt(oHrmEmpAdvAppHdrBean.getPaidInstallments()) > 0) { oDisableList.add("payrollMonth"); } else { oEnableList.add("payrollMonth"); } } else { oEnableList.add("payrollMonth"); } if (EnrgiseUtil.checkString(oHrmEmpAdvAppHdrBean.getBalance())) if (Float.parseFloat(oHrmEmpAdvAppHdrBean.getBalance()) == false) { oDisableList.add("bulkSettleAmount"); oDisableList.add("butBulkSettlement"); oHrmEmpAdvAppHdrBean.setMode("M"); } if (EnrgiseUtil.checkString(oHrmEmpAdvAppHdrBean.getMode())) { if (oHrmEmpAdvAppHdrBean.getMode().equalsIgnoreCase("B")) { oDisableList.add("butBulkSettlement"); oEnableList.add("bulkSettleAmount"); } else if (oHrmEmpAdvAppHdrBean.getMode().equalsIgnoreCase("M")) { oDisableList.add("butBulkSettlement"); oDisableList.add("bulkSettleAmount"); } else { oEnableList.add("butBulkSettlement"); oDisableList.add("bulkSettleAmount"); } } else { oEnableList.add("butBulkSettlement"); oDisableList.add("bulkSettleAmount"); } } else if (oThisPageVO.getScreenMode().equalsIgnoreCase("N")) { oDisableList.add("bulkSettleAmount"); oDisableList.add("butBulkSettlement"); oEnableList.add("butEmployeeNo"); if (EnrgiseUtil.checkString(oHrmEmpAdvAppHdrBean.getEmployeeId())) { oEnableList.add("butAdvanceCode"); } else { oDisableList.add("butAdvanceCode"); } oDisableList.add("butFromDate"); oDisableList.add("butToDate"); oEnableList.add("butDateApplied"); oEnableList.add("amountApplied"); oEnableList.add("sanctionedAmount"); oEnableList.add("butSanctionDate"); oEnableList.add("reason"); oEnableList.add("butApproverNo"); oEnableList.add("remarks"); oEnableList.add("payrollMonth"); } oHashMap.put("D", oDisableList); oHashMap.put("E", oEnableList); return oHashMap; } }