public ActionResult UpdatePaymentRegister(int id, int consId)
        {
            try
            {
                var paymentTypes = this.PaymentTypeService.GetAll().Select(x => new SelectListItem()
                {
                    Value = x.Id.ToString(),
                    Text  = x.Description
                });

                var payment = this.AccountStatusService.GetAccountStatus(id);
                var request = new UnitPaymentViewModel()
                {
                    Id            = payment.Id,
                    Amount        = payment.Haber,
                    PaymentDate   = payment.StatusDate,
                    UnitId        = payment.Unit.Id,
                    PaymentTypeId = payment.PaymentTypeId,
                    ConsortiumId  = consId,
                    PaymentTypes  = paymentTypes
                };
                return(View(request));
            }
            catch (Exception ex)
            {
                return(View("../Shared/Error"));
            }
        }
        public ActionResult Income(int id)
        {
            var oConsortium = this.ConsortiumService.GetConsortium(id);
            var consortium  = Mapper.Map <ConsortiumDetailsViewModel>(oConsortium);
            var owners      = this.OwnersService.GetAll();

            consortium.Ownership.FunctionalUnits.ForEach(x =>
                                                         x.Owner = owners.Where(y => y.FunctionalUnitId.Contains(x.Id)).FirstOrDefault()
                                                         );

            var units = new List <int>();

            foreach (var item in consortium.Ownership.FunctionalUnits)
            {
                if (!units.Contains(item.Id))
                {
                    units.Add(item.Id);
                }
            }

            DateTime first = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
            DateTime last  = first.AddMonths(1);

            var oIncomes = this.AccountStatusService.GetAll().ToList();

            oIncomes = oIncomes.Where(o => units.Contains(o.Unit.Id) && o.Haber > 0 && o.StatusDate >= first && o.StatusDate < last).ToList();

            var incomes = new List <UnitPaymentViewModel>();

            foreach (var item in oIncomes)
            {
                //var oUnit = this.FunctionalUnitService.GetFunctionalUnit(item.UnitId);
                var unit = Mapper.Map <FunctionalUnitViewModel>(item.Unit);
                unit.Owner = owners.Where(y => y.FunctionalUnitId.Contains(unit.Id)).FirstOrDefault();
                var request = new UnitPaymentViewModel()
                {
                    Id             = item.Id,
                    Amount         = item.Haber,
                    PaymentDate    = item.StatusDate,
                    UnitId         = unit.Id,
                    PaymentTypeId  = item.PaymentTypeId,
                    FunctionalUnit = unit,
                    ConsortiumId   = id
                };

                incomes.Add(request);
            }

            ViewBag.ConsortiumId = id;
            return(View(incomes));
        }
        public ActionResult CreatePaymentRegister(UnitPaymentViewModel unitPaymentViewModel)
        {
            var request = new AccountStatusRequest()
            {
                Haber         = unitPaymentViewModel.Amount,
                StatusDate    = unitPaymentViewModel.PaymentDate,
                UnitId        = unitPaymentViewModel.UnitId,
                PaymentTypeId = unitPaymentViewModel.PaymentTypeId
            };

            var result = this.AccountStatusService.CreateAccountStatus(request);

            return(Redirect(string.Format("/Consortium/Details/{0}", unitPaymentViewModel.ConsortiumId)));
            //return View("CreatedPayment", unitPaymentViewModel);
        }
        public ActionResult CreatePaymentRegister(int id, int unitId)
        {
            var paymentTypes = this.PaymentTypeService.GetAll().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text  = x.Description
            });


            var UnitPaymentVm = new UnitPaymentViewModel()
            {
                ConsortiumId = id,
                UnitId       = unitId,
                PaymentTypes = paymentTypes
            };

            return(View(UnitPaymentVm));
        }