// GET: BankDeposite/Edit/{id}
        public ActionResult Edit(int?id)
        {
            var organisationId = UserOrganisationId;
            var centreId       = UserCentreId;

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var projects     = NidanBusinessService.RetrieveProjects(organisationId, centreId, e => e.CentreId == centreId);
            var paymentModes = NidanBusinessService.RetrievePaymentModes(organisationId, e => true);
            var bankDeposite = NidanBusinessService.RetrieveBankDeposite(UserOrganisationId, id.Value, e => true);

            if (bankDeposite == null)
            {
                return(HttpNotFound());
            }
            var viewModel = new BankDepositeViewModel()
            {
                BankDeposite = bankDeposite,
                Projects     = new SelectList(projects, "ProjectId", "Name"),
                PaymentModes = new SelectList(paymentModes, "PaymentModeId", "Name"),
            };

            return(View(viewModel));
        }
        public ActionResult Create()
        {
            var organisationId = UserOrganisationId;
            var centreId       = UserCentreId;
            var projects       = NidanBusinessService.RetrieveProjects(organisationId, centreId, e => e.CentreId == centreId);
            var paymentModes   = NidanBusinessService.RetrievePaymentModes(organisationId, e => true);
            var viewModel      = new BankDepositeViewModel
            {
                BankDeposite = new BankDeposite(),
                Projects     = new SelectList(projects, "ProjectId", "Name"),
                PaymentModes = new SelectList(paymentModes, "PaymentModeId", "Name"),
            };

            return(View(viewModel));
        }
        public ActionResult Create(BankDepositeViewModel bankDepositeViewModel)
        {
            var organisationId = UserOrganisationId;
            var centreId       = UserCentreId;
            var personnelId    = UserPersonnelId;

            if (ModelState.IsValid)
            {
                bankDepositeViewModel.BankDeposite.OrganisationId = organisationId;
                bankDepositeViewModel.BankDeposite.CentreId       = centreId;
                bankDepositeViewModel.BankDeposite.CreatedBy      = personnelId;
                bankDepositeViewModel.BankDeposite.IsCleared      = false;
                bankDepositeViewModel.BankDeposite.IsBounced      = false;
                bankDepositeViewModel.BankDeposite = NidanBusinessService.CreateBankDeposite(organisationId, bankDepositeViewModel.BankDeposite);
                return(RedirectToAction("Index"));
            }
            bankDepositeViewModel.Projects     = new SelectList(NidanBusinessService.RetrieveProjects(organisationId, e => e.CentreId == centreId).Items.ToList());
            bankDepositeViewModel.PaymentModes = new SelectList(NidanBusinessService.RetrievePaymentModes(organisationId, e => true));
            return(View(bankDepositeViewModel));
        }
        // GET: BankDeposite/View/{id}
        public ActionResult View(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var organisationId   = UserOrganisationId;
            var bankDepositeData = NidanBusinessService.RetrieveBankDeposite(organisationId, id.Value, e => true);

            if (bankDepositeData == null)
            {
                return(HttpNotFound());
            }
            var viewModel = new BankDepositeViewModel()
            {
                BankDeposite = bankDepositeData
            };

            return(View(viewModel));
        }
        public ActionResult Edit(BankDepositeViewModel bankDepositeViewModel)
        {
            var organisationId = UserOrganisationId;
            var centreId       = UserCentreId;
            var personnelId    = UserPersonnelId;

            if (ModelState.IsValid)
            {
                bankDepositeViewModel.BankDeposite.OrganisationId = organisationId;
                bankDepositeViewModel.BankDeposite.CentreId       = centreId;
                bankDepositeViewModel.BankDeposite.CreatedBy      = personnelId;
                bankDepositeViewModel.BankDeposite.IsCleared      = false;
                bankDepositeViewModel.BankDeposite.IsBounced      = false;
                bankDepositeViewModel.BankDeposite = NidanBusinessService.UpdateBankDeposite(UserOrganisationId, bankDepositeViewModel.BankDeposite);
                return(RedirectToAction("Index"));
            }
            var viewModel = new BankDepositeViewModel
            {
                BankDeposite = bankDepositeViewModel.BankDeposite
            };

            return(View(viewModel));
        }