Пример #1
0
        private void btnClosePayroll_Click(object sender, EventArgs e)
        {
            try
            {
                if (dataGridViewPayrolls.SelectedRows.Count != 0)
                {
                    DAL.Payroll pay = (DAL.Payroll)bindingSourcePayrolls.Current;
                    if (pay.Processed)
                    {
                        if (DialogResult.Yes == MessageBox.Show("Are you sure you want to Close this Payroll?", "Confirm Close", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question))
                        {
                            // Todo close the payroll here
                            CPayroll cp = new CPayroll(_User, connection);
                            cp.ArchivePayroll(pay.Period, pay.Year);

                            // Todo code for removing record from the payslipmaster
                            RefreshGrid();
                        }
                    }
                    else
                    {
                        MessageBox.Show("You are not allowed to close a non Processed Payroll!", "SB Payroll");
                    }
                }
            }
            catch (Exception ex)
            {
                Utils.ShowError(ex);
            }
        }
Пример #2
0
        private void btnProcessPayroll_Click(object sender, EventArgs e)
        {
            if (dataGridViewPayrolls.SelectedRows.Count != 0)
            {
                DAL.Payroll pay = (DAL.Payroll)bindingSourcePayrolls.Current;

                try
                {
                    // see if the payslip_master_temp has records and they are for this payroll
                    //if not, decline processing
                    //set up
                    int periodWc = 0;
                    int yearWc   = 0;
                    if (!de.WorkingCopyNotClosed(ref periodWc, ref yearWc))
                    {
                        bool simulateRun = false;
                        ProcessPayrollNow(pay.Period, pay.Year, simulateRun);

                        pay.DateRun = DateTime.Now.Date;

                        rep.UpdatePayrollDateRun(pay);
                    }
                    else if (periodWc == pay.Period && yearWc == pay.Year)
                    {
                        if (DialogResult.Yes == MessageBox.Show("Payroll already processed! \nDo you wish to overwrite?", "Confirm Overwrite", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question))
                        {
                            bool simulateRun = true;
                            ProcessPayrollNow(pay.Period, pay.Year, simulateRun);

                            pay.DateRun = DateTime.Now.Date;

                            rep.UpdatePayrollDateRun(pay);
                        }
                    }
                    else
                    {
                        MessageBox.Show("You must close the previously Processed payroll before proceeding", "SB Payroll");
                    }
                }
                catch (Exception ex)
                {
                    Utils.ShowError(ex);
                    return;
                }
            }
        }
Пример #3
0
        //constructor
        public SaccoPaymentScheduleModelBuilder(DAL.Employer employer, bool current, DAL.Payroll payroll, string Conn)
        {
            //initialization
            if (string.IsNullOrEmpty(Conn))
            {
                throw new ArgumentNullException("connection");
            }
            connection = Conn;

            db  = new SBPayrollDBEntities(connection);
            rep = new Repository(connection);

            _current  = current;
            _year     = payroll.Year;
            _period   = payroll.Period;
            _employer = employer;

            fileLogo = _employer.Logo;
            slogan   = _employer.Slogan;
        }