public ActionResult MoveLoansToGuarantor(LoanVwViewModel Model, string operationType)
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            ViewBag.LoanStatusList  = new SelectList(LoanStatusServices.List(db), "Id", "Name");
            if (operationType != null)
            {
                int      loanId   = Model.SelectedLoansList.Where(c => c.IsSelected).FirstOrDefault().LoanId;
                Response response = ProcessMoveLoanToGuarantors(Model.SelectedGuarantorsList, loanId);
                if (response.IsSuccess)
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View(Model));
                }
            }
            else
            {
                if (Model.EmployeeLoansFilter != null && Model.EmployeeLoansFilter.EmployeeId != 0)
                {
                    Model.EmployeeLoansFilter.LoanStatusId = 0;
                    Model.EmployeeLoansResult = db.EmployeeLoans(Model.EmployeeLoansFilter);
                }
                else
                {
                    Model.EmployeeLoansResult = new List <EmployeeLoansResult>();
                }
                return(View(Model));
            }
        }
        public ActionResult Create([Bind(Include = "Id, Name, Rate, GuarantorsCount, AccountNumber, PrintLabel, ProfitStrategy, PaymentGroup, IsActive")] ProductType productType)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (ModelState.IsValid)
            {
                try
                {
                    ProductTypeServices.Insert(CurrentUser.Id, productType, db);
                    TempData["Success"] = ResourceServices.GetString(Cf.Data.Resources.ResourceBase.Culture, "UI", "InsertConfirmed");
                    return(RedirectToAction("Index"));
                }
                catch (CfException cfex)
                {
                    TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
                }
                catch (Exception ex)
                {
                    TempData["Failure"] = ex.Message;
                }
            }

            ViewBag.PaymentGroupList   = new SelectList(PaymentGroupServices.List(db), "Id", "Name");
            ViewBag.ProfitStrategyList = new SelectList(ProfitStrategyServices.List(db), "Id", "Name");
            return(View(productType));
        }
        public ActionResult ChangeLoanToIncoming(LoanVwViewModel Model, string operationType)
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            ViewBag.LoanStatusList  = new SelectList(LoanStatusServices.List(db), "Id", "Name");
            if (operationType != null)
            {
                //Response response = ProcessMoveLoanToEmployee(Model.SelectedLoansList, Model.EmployeeLoansFilter.EmployeeId.Value, Model.EmployeeId);
                // if(response.IsSuccess)
                // {
                //     return RedirectToAction("Index");
                // }
                // else
                // {
                //     return View(Model);
                // }
                return(View(Model));
            }
            else
            {
                if (Model.EmployeeLoansFilter != null && Model.EmployeeLoansFilter.EmployeeId != 0)
                {
                    Model.EmployeeLoansFilter.LoanStatusId = 0;
                    Model.EmployeeLoansResult = db.EmployeeLoans(Model.EmployeeLoansFilter);
                }
                else
                {
                    Model.EmployeeLoansResult = new List <EmployeeLoansResult>();
                }
                return(View(Model));
            }
        }
Example #4
0
        public ActionResult Edit([Bind(Include = "Id, Employee, ProductType, Amount, Notes")] Product product)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (ModelState.IsValid)
            {
                try
                {
                    ProductServices.Update(CurrentUser.Id, product, db);
                    TempData["Success"] = ResourceServices.GetString(Cf.Data.Resources.ResourceBase.Culture, "UI", "UpdateConfirmed");
                    return(RedirectToAction("Index"));
                }
                catch (CfException cfex)
                {
                    TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
                }
                catch (Exception ex)
                {
                    TempData["Failure"] = ex.Message;
                }
            }

            ViewBag.EmployeeList    = new SelectList(EmployeeServices.List(db), "Id", "FirstName", product.Employee);
            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name", product.ProductType);
            return(View(product));
        }
Example #5
0
        public ActionResult Create()
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            return(View());
        }
Example #6
0
        public ActionResult Create([Bind(Include = "Id, ProductType, Availability")] ProductTypeAvailability productTypeAvailability)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (ModelState.IsValid)
            {
                try
                {
                    ProductTypeAvailabilityServices.Insert(CurrentUser.Id, productTypeAvailability, db);
                    TempData["Success"] = ResourceServices.GetString(Cf.Data.Resources.ResourceBase.Culture, "UI", "InsertConfirmed");
                    return(RedirectToAction("Index"));
                }
                catch (CfException cfex)
                {
                    TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
                }
                catch (Exception ex)
                {
                    TempData["Failure"] = ex.Message;
                }
            }

            ViewBag.AvailabilityList = new SelectList(AvailabilityServices.List(db), "Id", "Name");
            ViewBag.ProductTypeList  = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            return(View(productTypeAvailability));
        }
        public ActionResult Edit(int?id)
        {
            LoanRequestViewModel vm = new LoanRequestViewModel();

            try
            {
                Db db = new Db(DbServices.ConnectionString);

                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                Product           product           = ProductServices.Get(id.Value, db);
                Request           request           = RequestServices.Get(id.Value, db);
                LoanRequest       loanRequest       = LoanRequestServices.Get(id.Value, db);
                RefundableProduct refundableProduct = RefundableProductServices.Get(id.Value, db);

                if (product == null || request == null || loanRequest == null || refundableProduct == null)
                {
                    return(HttpNotFound());
                }

                // For Product
                //ViewBag.EmployeeList = new SelectList(EmployeeServices.List(db), "Id", "Id_Name", product.Employee);
                ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name", product.ProductType);

                // For Request
                //We need to customise the droplist for two options
                ViewBag.BypassStatusList = new SelectList(BypassStatusServices.List(db).Where((c => (c.Id == 0 || c.Id == 2))), "Id", "Name");


                EmployeeProductCalculatorFilter f = new EmployeeProductCalculatorFilter();
                f.EmployeeId = product.Employee; f.ProductTypeId = (short)product.ProductType;
                f.Amount     = (decimal)request.Amount; f.Period = (short)refundableProduct.PaymentPeriod;
                EmployeeProductCalculatorResult result = db.EmployeeProductCalculatorFirstOrDefault(f);
                if (result != null)
                {
                    ViewBag.Calculations = result;
                }

                vm.RequestProduct = product;
                vm.Request        = request;
                vm.LoanRequest    = loanRequest;
                vm.RequestProductProductRefundableProduct = refundableProduct;
            }
            catch (CfException cfex)
            {
                TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
            }
            catch (Exception ex)
            {
                TempData["Failure"] = ex.Message;
            }
            return(View(vm));
        }
Example #8
0
        /// <summary>
        /// Returns a list of IncomingLoanVw objects
        /// </summary>
        /// <returns></returns>
        public ActionResult Index(IncomingLoanVwViewModel Model)
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.LoanProductProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            if (Model.Filter.HasCriteria)
            {
                Model.List = IncomingLoanVwServices.Get(Model.Filter, db);
            }
            else
            {
                Model.List = new List <IncomingLoanVw>();
            }
            return(View(Model));
        }
        /// <summary>
        /// Returns a list of ServiceEndGrantRequestVw objects
        /// </summary>
        /// <returns></returns>
        public ActionResult Index(ServiceEndGrantRequestVwViewModel Model)
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            if (Model.Filter.HasCriteria)
            {
                Model.List = ServiceEndGrantRequestVwServices.Get(Model.Filter, db);
            }
            else
            {
                Model.List = new List <ServiceEndGrantRequestVw>();
            }
            return(View(Model));
        }
        // GET: ProductType/Delete/5
        public ActionResult Delete(Nullable <short> id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            Db          db          = new Db(DbServices.ConnectionString);
            ProductType productType = ProductTypeServices.Get(id.Value, db);

            if (productType == null)
            {
                return(HttpNotFound());
            }
            return(View(productType));
        }
Example #11
0
        //public ActionResult Print(int? employeeId, string fullName, int? typeId, int? decisionNumber, DateTime mindecisionDate, DateTime maxdecisionDate, int? statusId)
        public ActionResult Print(LoanVwViewModel Model)
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            ViewBag.LoanStatusList  = new SelectList(LoanStatusServices.List(db), "Id", "Name");

            if (Model.Filter.HasCriteria)
            {
                Model.List = LoanVwServices.Get(Model.Filter, db);
            }
            else
            {
                Model.List = new List <LoanVw>();
            }
            return(PartialView(Model));
        }
        public ActionResult EmployeeCalculator()
        {
            Db db = new Db(DbServices.ConnectionString);

            // For Product
            ViewBag.EmployeeList = new SelectList(EmployeeServices.List(db), "Id", "Id_Name");

            //ToDo: Just Show Loan Type

            List <LoanType>    l = LoanTypeServices.List(db);
            List <ProductType> f = ProductTypeServices.List(db);


            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");

            return(View());
        }
Example #13
0
        // GET: ProductTypeAvailability/Edit/5
        public ActionResult Edit(Nullable <int> id)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ProductTypeAvailability productTypeAvailability = ProductTypeAvailabilityServices.Get(id.Value, db);

            if (productTypeAvailability == null)
            {
                return(HttpNotFound());
            }

            ViewBag.AvailabilityList = new SelectList(AvailabilityServices.List(db), "Id", "Name", productTypeAvailability.Availability);
            ViewBag.ProductTypeList  = new SelectList(ProductTypeServices.List(db), "Id", "Name", productTypeAvailability.ProductType);
            return(View(productTypeAvailability));
        }
        // GET: ProductType/Edit/5
        public ActionResult Edit(Nullable <short> id)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ProductType productType = ProductTypeServices.Get(id.Value, db);

            if (productType == null)
            {
                return(HttpNotFound());
            }

            ViewBag.PaymentGroupList   = new SelectList(PaymentGroupServices.List(db), "Id", "Name", productType.PaymentGroup);
            ViewBag.ProfitStrategyList = new SelectList(ProfitStrategyServices.List(db), "Id", "Name", productType.ProfitStrategy);
            return(View(productType));
        }
Example #15
0
        // GET: Product/Edit/5
        public ActionResult Edit(Nullable <int> id)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Product product = ProductServices.Get(id.Value, db);

            if (product == null)
            {
                return(HttpNotFound());
            }

            ViewBag.EmployeeList    = new SelectList(EmployeeServices.List(db), "Id", "FirstName", product.Employee);
            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name", product.ProductType);
            return(View(product));
        }
        public ActionResult EmployeeDebts()
        {
            try
            {
                Db db = new Db(DbServices.ConnectionString);
                List <ProductType> f = ProductTypeServices.List(db);
                ViewBag.ProductTypeList = new SelectList(LoanTypeVwServices.List(db), "ProductTypeId", "ProductTypeName");

                ViewBag.IssuerList = new SelectList(IssuerServices.List(db), "Id", "Name");
            }
            catch (CfException cfex)
            {
                TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
            }
            catch (Exception ex)
            {
                TempData["Failure"] = ex.Message;
            }
            return(View());
        }
 public ActionResult DeleteConfirmed(short id)
 {
     try
     {
         Db db = new Db(DbServices.ConnectionString);
         ProductTypeServices.Delete(CurrentUser.Id, id, db);
         TempData["Success"] = ResourceServices.GetString(Cf.Data.Resources.ResourceBase.Culture, "UI", "DeleteConfirmed");
         // return RedirectToAction("Index");
     }
     catch (CfException cfex)
     {
         TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
     }
     catch (Exception ex)
     {
         TempData["Failure"] = ex.Message;
     }
     // return View(productType);
     return(RedirectToAction("Index"));
 }
        public ActionResult ChangeLoanToEmployee(LoanVwViewModel Model, string operationType)
        {
            Db db = new Db(DbServices.ConnectionString);

            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name");
            ViewBag.LoanStatusList  = new SelectList(LoanStatusServices.List(db), "Id", "Name");
            if (operationType != null)
            {
                return(View(Model));
            }
            else
            {
                if (Model.Filter.HasCriteria)
                {
                    Model.Filter.LoanStatusId = (int)LoanStatusEnum.Unfinished;
                    Model.List = LoanVwServices.Get(Model.Filter, db);
                }
                else
                {
                    Model.List = new List <LoanVw>();
                }
                return(View(Model));
            }
        }
        public ActionResult Edit(LoanRequestViewModel model)
        {
            Db db = new Db(DbServices.ConnectionString);

            if (ModelState.IsValid)
            {
                try
                {
                    EmployeeProductCalculatorFilter f = new EmployeeProductCalculatorFilter();
                    f.EmployeeId = model.RequestProduct.Employee; f.ProductTypeId = (short)model.RequestProduct.ProductType;
                    f.Amount     = (decimal)model.Request.Amount; f.Period = (short)model.RequestProductProductRefundableProduct.PaymentPeriod;
                    List <EmployeeProductCalculatorResult> result = db.EmployeeProductCalculator(f);
                    if (result.Count > 0)
                    {
                        model.RequestProductProductRefundableProduct.NetAmount    = result[0].NetAmount.Value;
                        model.RequestProductProductRefundableProduct.ProfitAmount = result[0].ProfitAmount.Value;
                        model.RequestProductProductRefundableProduct.Installment  = result[0].Installment.Value;
                    }
                    // 1- Add Prouct
                    // set the Amount of the Produt the same as Request
                    //model.RequestProduct.Amount = model.Request.Amount;
                    ProductServices.Update(CurrentUser.Id, model.RequestProduct, db);
                    ProductServices.Update(CurrentUser.Id, model.RequestProduct, db);

                    //2-Add Request
                    //model.Request.Product = model.RequestProduct.Id;
                    // model.Request.RequestStatus = (int)RequestStatusEnum.New;
                    //model.Request.Cost = 5;
                    RequestServices.Update(CurrentUser.Id, model.Request, db);

                    //3-Add LoanRequest
                    //model.LoanRequest.Request = model.RequestProduct.Id;
                    LoanRequestServices.Update(CurrentUser.Id, model.LoanRequest, db);

                    //4- Add RefundableProduct

                    //model.RequestProductProductRefundableProduct.Product = model.RequestProduct.Id;
                    RefundableProductServices.Update(CurrentUser.Id, model.RequestProductProductRefundableProduct, db);

                    TempData["Success"] = ResourceServices.GetString(Cf.Data.Resources.ResourceBase.Culture, "UI", "UpdateConfirmed");

                    return(RedirectToAction("Index", "LoanRequest"));
                }
                catch (CfException cfex)
                {
                    TempData["Failure"] = cfex.ErrorDefinition.LocalizedMessage;
                }
                catch (Exception ex)
                {
                    TempData["Failure"] = ex.Message;
                }
            }

            // For Product
            ViewBag.EmployeeList    = new SelectList(EmployeeServices.List(db), "Id", "FirstName", model.RequestProduct.Employee);
            ViewBag.ProductTypeList = new SelectList(ProductTypeServices.List(db), "Id", "Name", model.RequestProduct.ProductType);

            // For Request
            ViewBag.BypassStatusList  = new SelectList(BypassStatusServices.List(db), "Id", "Name", model.Request.BypassStatus);
            ViewBag.ProductList       = new SelectList(ProductServices.List(db), "Id", "Notes", model.Request.Product);
            ViewBag.RequestStatusList = new SelectList(RequestStatusServices.List(db), "Id", "Name", model.Request.RequestStatus);


            return(View(model));
        }