Exemplo n.º 1
0
    protected void btnGenerate_Click(object sender, EventArgs e)
    {
        PageErrors errors = PageErrors.getErrors(db, Page.Master);

        errors.clear();

        DateTime dtLeaveAppDateFr = new DateTime();
        DateTime dtLeaveAppDateTo = new DateTime();

        if (!DateTime.TryParse(LeaveAppDateFr.Value, out dtLeaveAppDateFr))
        {
            if (!string.IsNullOrEmpty(LeaveAppDateFr.Value))
            {
                return;
            }
        }
        if (!DateTime.TryParse(LeaveAppDateTo.Value, out dtLeaveAppDateTo))
        {
            if (!string.IsNullOrEmpty(LeaveAppDateTo.Value))
            {
                return;
            }
        }

        EEmpPersonalInfo p      = new EEmpPersonalInfo();
        ArrayList        values = new ArrayList();

        foreach (RepeaterItem item in Repeater.Items)
        {
            CheckBox cb = (CheckBox)item.FindControl("ItemSelect");
            if (cb.Checked)
            {
                WebFormUtils.GetKeys(db, p, cb);
                values.Add(p.EmpID);
            }
        }
        if (values.Count <= 0)
        {
            errors.addError("Employee not selected");
        }

        if (errors.isEmpty())
        {
            HROne.Reports.Employee.LeaveApplicationProcess rpt = new HROne.Reports.Employee.LeaveApplicationProcess(dbConn, values, dtLeaveAppDateFr, dtLeaveAppDateTo);
            string reportFileName = WebUtils.GetLocalizedReportFile(Server.MapPath("~/Report_Employee_LeaveApplicationList.rpt"));
            WebUtils.ReportExport(dbConn, user, errors, lblReportHeader.Text, Response, rpt, reportFileName, ((Button)sender).CommandArgument, "LeaveApplicationList", true);
        }
        //Session["Report_EmployeeList"] = values;
        //HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "Report_EmployeeDetail_View.aspx");
    }
    protected void btnGenerate_Click(object sender, EventArgs e)
    {
        PageErrors errors = PageErrors.getErrors(db, Page.Master);

        errors.clear();

        DateTime dtLeaveAppDateFr = new DateTime();
        DateTime dtLeaveAppDateTo = new DateTime();

        if (!DateTime.TryParse(periodFrom.Value, out dtLeaveAppDateFr))
        {
            dtLeaveAppDateFr = new DateTime(1940, 1, 1);
        }


        if (!DateTime.TryParse(periodTo.Value, out dtLeaveAppDateTo))
        {
            dtLeaveAppDateTo = AppUtils.ServerDateTime().Date;
        }



        // Start 0000182, Ricky So, 2015-04-06
        ESSAuthorizationProcess    authProcess = new ESSAuthorizationProcess(dbConn);
        List <EAuthorizationGroup> groupList   = authProcess.GetAuthorizerAuthorizationGroupList(CurID);
        ArrayList EmpIDList = new ArrayList();

        if (groupList.Count > 0)
        {
            DBFilter authWorkFlowDetailFilter = new DBFilter();
            string   authGroupIDList          = string.Empty;
            foreach (EAuthorizationGroup group in groupList)
            {
                if (string.IsNullOrEmpty(authGroupIDList))
                {
                    authGroupIDList = group.AuthorizationGroupID.ToString();
                }
                else
                {
                    authGroupIDList += ", " + group.AuthorizationGroupID.ToString();
                }
            }
            authWorkFlowDetailFilter.add(new IN("AuthorizationGroupID", authGroupIDList, null));

            DBFilter empPosFilter = EEmpPositionInfo.CreateDateRangeDBFilter("epi", dtLeaveAppDateTo, dtLeaveAppDateTo);
            empPosFilter.add(new IN("epi.AuthorizationWorkFlowIDLeaveApp", "SELECT DISTINCT awfd.AuthorizationWorkFlowID FROM " + EAuthorizationWorkFlowDetail.db.dbclass.tableName + " awfd", authWorkFlowDetailFilter));

            DBFilter empInfoFilter = new DBFilter();
            empInfoFilter.add(new IN("EmpID", "SELECT DISTINCT epi.EmpID FROM " + EEmpPositionInfo.db.dbclass.tableName + " epi", empPosFilter));

            DBFilter empTermFilter = new DBFilter();
            empTermFilter.add(new Match("EmpTermLastDate", "<", dtLeaveAppDateTo));
            empInfoFilter.add(new IN("NOT EMPID", "SELECT et.EmpID FROM " + EEmpTermination.db.dbclass.tableName + " et", empTermFilter));

            ArrayList EmpList = EEmpPersonalInfo.db.select(dbConn, empInfoFilter);
            foreach (EEmpPersonalInfo empInfo in EmpList)
            {
                EmpIDList.Add(empInfo.EmpID);
            }
        }

        EmpIDList.Add(CurID);

        HROne.Reports.Employee.LeaveApplicationProcess rpt = new HROne.Reports.Employee.LeaveApplicationProcess(dbConn, EmpIDList, dtLeaveAppDateFr, dtLeaveAppDateTo);
        string reportFileName = WebUtils.GetLocalizedReportFile(Server.MapPath("~/LeaveApplicationProcessList.rpt"));

        WebUtils.ReportExport(Response, rpt, reportFileName, "PDF", "LeaveApplicationList");

        //ArrayList values = new ArrayList();

        //values.Add(CurID);

        //if (errors.isEmpty())
        //{
        //    HROne.Reports.Employee.LeaveApplicationProcess rpt = new HROne.Reports.Employee.LeaveApplicationProcess(dbConn, values, dtLeaveAppDateFr, dtLeaveAppDateTo);
        //    string reportFileName = WebUtils.GetLocalizedReportFile(Server.MapPath("~/LeaveApplicationProcessList.rpt"));
        //    //WebUtils.ReportExport(dbConn, user, errors, lblReportHeader.Text, Response, rpt, reportFileName, ((Button)sender).CommandArgument, "LeaveApplicationList", true);
        //    WebUtils.ReportExport(Response, rpt, reportFileName, "PDF", "LeaveApplicationList");
        //}

        // End 0000182, Ricky So, 2015-04-06
    }