53 lines
2.3 KiB
Java
53 lines
2.3 KiB
Java
package WEB-INF.classes.wenrgise.hrms.webtier.action;
|
|
|
|
import java.io.IOException;
|
|
import java.lang.reflect.InvocationTargetException;
|
|
import java.util.ArrayList;
|
|
import java.util.Iterator;
|
|
import javax.servlet.ServletException;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import org.apache.commons.beanutils.BeanUtils;
|
|
import org.apache.struts.action.ActionForm;
|
|
import org.apache.struts.action.ActionForward;
|
|
import org.apache.struts.action.ActionMapping;
|
|
import wenrgise.common.bean.BaseHeaderBean;
|
|
import wenrgise.common.exception.EnrgiseApplicationException;
|
|
import wenrgise.common.exception.EnrgiseSystemException;
|
|
import wenrgise.hrms.bean.HrmLvApplnDtlBean;
|
|
import wenrgise.hrms.businessdelegate.HrmLvApplnBD;
|
|
import wenrgise.hrms.webtier.action.BaseAction;
|
|
import wenrgise.hrms.webtier.form.HrmLvApplnForm;
|
|
|
|
public class HrmLvApplAction extends BaseAction {
|
|
public ActionForward executeImpl(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws EnrgiseApplicationException, EnrgiseSystemException, IllegalAccessException, InvocationTargetException, InstantiationException, ClassNotFoundException, ServletException, IOException {
|
|
HrmLvApplnBD oBd = new HrmLvApplnBD();
|
|
HrmLvApplnForm oForm = (HrmLvApplnForm)form;
|
|
String sFormName = oForm.getClass().getName();
|
|
BaseHeaderBean oBaseHeaderBean = getBaseHeaderBean(sFormName);
|
|
BeanUtils.copyProperties(oBaseHeaderBean, oForm);
|
|
ArrayList arylstDtl = oBd.getLeaveBreakup(oBaseHeaderBean);
|
|
BeanUtils.setProperty(oForm, "arylstLvAppln", arylstDtl);
|
|
oForm.setDays(getHolidayCount(arylstDtl));
|
|
throw new EnrgiseApplicationException("hrm.HrmLvAppln.breakUp", "M");
|
|
}
|
|
|
|
private String getHolidayCount(ArrayList arylstDtl) {
|
|
double dHolidayCount = 0.0D;
|
|
if (arylstDtl != null) {
|
|
Iterator itrDtlList = arylstDtl.iterator();
|
|
while (itrDtlList.hasNext()) {
|
|
HrmLvApplnDtlBean oDtlBean = itrDtlList.next();
|
|
if (!oDtlBean.getTxtHolidayFlag().equalsIgnoreCase("H")) {
|
|
if (!oDtlBean.getTxtHalfDayFlag().equalsIgnoreCase("3")) {
|
|
dHolidayCount += 0.5D;
|
|
continue;
|
|
}
|
|
dHolidayCount++;
|
|
}
|
|
}
|
|
}
|
|
return Double.toString(dHolidayCount);
|
|
}
|
|
}
|