Example #1
0
    private void SetBalances(short year, int entUserAccountId, int ptoRequestId)
    {
        //Load the vacation bank section
        //Get the bank for the year in the calendar
        PTOVacationBankEO vacationBank = new PTOVacationBankEO();

        vacationBank.Load(entUserAccountId, year);

        lblPersonalDaysBank.Text = vacationBank.PersonalDays.ToString();
        lblVacationDaysBank.Text = vacationBank.VacationDays.ToString();

        //Get the amount used so far
        double usedPersonalDays = 0;
        double usedVacationDays = 0;
        double unpaid           = 0;

        PTORequestEO.GetUsed(ref usedPersonalDays, ref usedVacationDays, ref unpaid, entUserAccountId, entUserAccountId, year);

        lblPersonalDaysUsed.Text = usedPersonalDays.ToString();
        lblVacationDaysUsed.Text = usedVacationDays.ToString();
        lblUnpaidUsed.Text       = unpaid.ToString();

        //Get the carry over from the previous year
        PTOVacationBankEO vacationBankPreviousYear = new PTOVacationBankEO();

        vacationBankPreviousYear.Load(entUserAccountId, Convert.ToInt16(year - 1));

        double usedPersonalDaysPreviousYear = 0;
        double usedVacationDaysPreviousYear = 0;
        double unpaidPreviousYear           = 0;

        PTORequestEO.GetUsed(ref usedPersonalDaysPreviousYear, ref usedVacationDaysPreviousYear, ref unpaidPreviousYear, ptoRequestId, entUserAccountId, Convert.ToInt16(year - 1));

        //You are allowed to carry over 5 unused vacation days from the previous year.
        double netVacationLastYear = vacationBankPreviousYear.VacationDays - usedVacationDaysPreviousYear;

        if ((netVacationLastYear >= 5) || (netVacationLastYear < 0))
        {
            lblVacationCarry.Text = netVacationLastYear.ToString();
        }
        else
        {
            lblVacationCarry.Text = "0";
        }

        //show balance
        lblPersonalBalance.Text = (vacationBank.PersonalDays - usedPersonalDays).ToString();
        lblVacationBalance.Text = ((vacationBank.VacationDays + Convert.ToDouble(lblVacationCarry.Text)) - usedVacationDays).ToString();
    }
    protected void btnCopy_Click(object sender, EventArgs e)
    {
        ENTValidationErrors validationErrors = new ENTValidationErrors();

        if (ddlFrom.Text == ddlTo.Text)
        {
            validationErrors.Add("The from and to years can not be the same.");
            ValidationErrorMessages1.ValidationErrors = validationErrors;
        }
        else
        {
            PTOVacationBankEO.CopyYear(Convert.ToInt16(ddlFrom.Text), Convert.ToInt16(ddlTo.Text), CurrentUser.ID);
            Response.Redirect("VacationBanks.aspx");
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            //Load the years
            //The copy from should list all years that have a value
            ArrayList years = PTOVacationBankEO.GetDistinctYears();

            foreach (short year in years)
            {
                ddlFrom.Items.Add(year.ToString());
            }

            //Copy to should list the next 10 years
            int startDate = DateTime.Today.Year;
            int endDate   = DateTime.Today.AddYears(10).Year;
            for (int i = startDate; i < endDate; i++)
            {
                ddlTo.Items.Add(i.ToString());
            }
        }
    }