Beispiel #1
0
        private void BindGrid()
        {
            List <Models.MPaidSalary> Get = new List <Models.MPaidSalary>();

            Get = (List <Models.MPaidSalary>)HttpContext.Current.Cache["PaidSalary"];
            if (Get == null)
            {
                Classes.CPaidSalary cp = new Classes.CPaidSalary();
                Get = cp.GetAll();
                HttpContext.Current.Cache["PaidSalary"] = Get;
            }
            int FiscalYearId = Convert.ToInt32(Session["FiscalYear"]);

            Classes.CFiscalYear cf    = new Classes.CFiscalYear();
            List <DateTime>     Dates = cf.GetDefaultDatesById(FiscalYearId);

            Get = (from o in Get
                   where Convert.ToDateTime(o.MonthPaid) >= Dates[0] && Convert.ToDateTime(o.MonthPaid) <= Dates[1]
                   select o).ToList();

            grdVendor.DataSource = Get;
            grdVendor.DataBind();
        }
        private int SavePaymentOfEmployee()
        {
            int    AccountId     = Convert.ToInt32(ddlAccount.SelectedValue);
            int    CashAccountId = Convert.ToInt32(ddlCashAccount.SelectedValue);
            string EmployeeId    = ddlEmployee.SelectedValue;
            string MonthPaid     = txtMonth.Text;
            string SalaryId      = Session["WareHouse"].ToString();
            string Paid          = txtPaidAmount.Text;
            string DatePaid      = txtDateOfPayment.Text;

            Classes.CPaidSalary cp = new Classes.CPaidSalary();
            Models.MPaidSalary  mp = new Models.MPaidSalary();
            mp.EmployeeId = EmployeeId;
            mp.MonthPaid  = MonthPaid;
            mp.Paid       = Paid;
            mp.SalaryId   = SalaryId;
            mp.DatePaid   = DatePaid;

            int option = Convert.ToInt32(ddlOption.SelectedValue);

            if (option < 1)
            {
                return(-4);
            }
            if (cp.Save(mp) > 0)
            {
                switch (option)
                {
                case 1:
                {
                    Classes.CBankOfAccount      cab = new Classes.CBankOfAccount();
                    Classes.CAccountTransaction cat = new Classes.CAccountTransaction();
                    Models.MAccountTransaction  mat = new Models.MAccountTransaction();
                    float AccountTotal = cab.ReturnTotalOfAccountById(AccountId);
                    AccountTotal = AccountTotal - Convert.ToSingle(Paid);
                    if (cab.SetNewAccountTotal(AccountId, AccountTotal) > 0)
                    {
                        // float PreviousAccountTotal = cab.ReturnTotalOfAccountById(AccountId);
                        mat.AccountId          = AccountId.ToString();
                        mat.Credit             = "0";
                        mat.CurrentTransaction = "-1";
                        mat.Debit       = Paid;
                        mat.Description = "Paid Salary for the month of [" + MonthPaid + "] to " +
                                          "Employee[" + ddlEmployee.SelectedItem.Text + "] Amount [" + Paid + "]";
                        mat.eDate        = Convert.ToDateTime(DatePaid);
                        mat.FiscalYearId = Convert.ToInt32(Session["FiscalYear"]).ToString();
                        //  PreviousAccountTotal = PreviousAccountTotal - Convert.ToSingle(Paid);
                        mat.Total = AccountTotal.ToString();
                        if (cat.Save(mat) > 0)
                        {
                            Classes.CJournal cj = new Classes.CJournal();
                            Models.MJournal  mj = new Models.MJournal();
                            mj.acc_id = Convert.ToInt32(Common.Constants.Accounts.ChartOfAccounts.SalaryExpense).ToString();
                            mj.amount = mp.Paid;
                            mj.des    = "Payment of Employee  [" + ddlEmployee.SelectedItem.Text + "] ";
                            mj.e_date = (DatePaid);
                            mj.type   = Common.Constants.Accounts.Type.Debit.ToString();
                            cj.Save(mj);

                            mj        = new Models.MJournal();
                            mj.acc_id = Convert.ToInt32(Common.Constants.Accounts.ChartOfAccounts.Cash).ToString();
                            mj.amount = mp.Paid;
                            mj.des    = "Payment of Employee  [" + ddlEmployee.SelectedItem.Text + "] ";
                            mj.e_date = (DatePaid);
                            mj.type   = Common.Constants.Accounts.Type.Credit.ToString();
                            cj.Save(mj);

                            return(1);
                        }
                        else
                        {
                            return(-3);
                        }
                    }
                    else
                    {
                        return(-2);
                    }
                }

                case 2:
                {
                    Classes.CCashAccount     cab = new Classes.CCashAccount();
                    Classes.CCashTransaction cat = new Classes.CCashTransaction();
                    Models.MCashTransactions mat = new Models.MCashTransactions();
                    float AccountTotal           = cab.ReturnTotalOfCashAccount(CashAccountId);
                    AccountTotal = AccountTotal - Convert.ToSingle(Paid);
                    if (cab.SetNewAccountTotal(CashAccountId, AccountTotal) > 0)
                    {
                        // float PreviousAccountTotal = cab.ReturnTotalOfAccountById(AccountId);
                        mat.CashAccountId = CashAccountId;
                        mat.Credit        = "0";
                        mat.Debit         = Paid;
                        mat.Description   = "Paid Salary for the month of [" + MonthPaid + "] to " +
                                            "Employee[" + ddlEmployee.SelectedItem.Text + "] Amount [" + Paid + "]";
                        if (cat.Save(mat) > 0)
                        {
                            Classes.CJournal cj = new Classes.CJournal();
                            Models.MJournal  mj = new Models.MJournal();
                            mj.acc_id = Convert.ToInt32(Common.Constants.Accounts.ChartOfAccounts.SalaryExpense).ToString();
                            mj.amount = mp.Paid;
                            mj.des    = "Payment of Employee  [" + ddlEmployee.SelectedItem.Text + "] ";
                            mj.e_date = (DatePaid);
                            mj.type   = Common.Constants.Accounts.Type.Debit.ToString();
                            cj.Save(mj);

                            mj        = new Models.MJournal();
                            mj.acc_id = Convert.ToInt32(Common.Constants.Accounts.ChartOfAccounts.Cash).ToString();
                            mj.amount = mp.Paid;
                            mj.des    = "Payment of Employee  [" + ddlEmployee.SelectedItem.Text + "] ";
                            mj.e_date = (DatePaid);
                            mj.type   = Common.Constants.Accounts.Type.Credit.ToString();
                            cj.Save(mj);

                            return(1);
                        }
                        else
                        {
                            return(-3);
                        }
                    }
                    else
                    {
                        return(-2);
                    }
                }

                default:
                    return(-5);
                }
            }
            else
            {
                return(-1);
            }
        }