Example #1
0
        public GeneralResponse AddNetworkCredit(AddNetworkCreditRequestOld request)
        {
            GeneralResponse response = new GeneralResponse();

            try
            {
                NetworkCredit networkCredit = new NetworkCredit();
                networkCredit.ID             = Guid.NewGuid();
                networkCredit.CreateDate     = PersianDateTime.Now;
                networkCredit.CreateEmployee = _employeeRepository.FindBy(request.CreateEmployeeID);
                networkCredit.Amount         = request.Amount;
                networkCredit.FromAccount    = this._moneyAccountRepository.FindBy(request.FromAccountID);
                networkCredit.InvestDate     = request.InvestDate;
                networkCredit.Network        = this._networkRepository.FindBy(request.NetworkID);
                networkCredit.Note           = request.Note;
                networkCredit.ToAccount      = request.ToAccount;
                networkCredit.TransactionNo  = request.TransactionNo;
                networkCredit.RowVersion     = 1;

                _networkCreditRepository.Add(networkCredit);
                _uow.Commit();

                ////response.success = true;

                // Validation
                if (networkCredit.GetBrokenRules().Count() > 0)
                {
                    foreach (BusinessRule businessRule in networkCredit.GetBrokenRules())
                    {
                        response.ErrorMessages.Add(businessRule.Rule);
                    }

                    return(response);
                }
            }
            catch (Exception ex)
            {
                response.ErrorMessages.Add(ex.Message);
            }

            return(response);
        }
Example #2
0
        public ActionResult Create(NetworkCreditDetailView networkCreditDetailView)
        {
            networkCreditDetailView.EmployeeView = GetEmployee();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("NetworkCredit_Insert");
            if (!hasPermission)
            {
                ModelState.AddModelError("", "AccessDenied");
                return(View(networkCreditDetailView));
            }
            #endregion

            #region DropDownList For MoneyAccounts
            networkCreditDetailView.MoneyAccountViews = _moneyAccountService.GetBankAccounts().MoneyAccountViews;
            List <DropDownItem> list = new List <DropDownItem>();
            list.Add(new DropDownItem {
                Value = null, Text = "انتخاب نشده"
            });

            foreach (MoneyAccountView moneyAccountView in networkCreditDetailView.MoneyAccountViews)
            {
                list.Add(new DropDownItem {
                    Value = moneyAccountView.ID.ToString(), Text = moneyAccountView.AccountName
                });
            }
            var selectList = new SelectList(list, "Value", "Text");
            ViewData["BankAccounts"] = selectList;
            #endregion



            if (ModelState.IsValid)
            {
                try
                {
                    AddNetworkCreditRequestOld request = new AddNetworkCreditRequestOld();
                    request.CreateEmployeeID = GetEmployee().ID;
                    //Edited By Zafari
                    //Orginal if (networkCreditDetailView.NetworkCreditView.TypeForCreate == "برداشت")
                    if (networkCreditDetailView.NetworkCreditView.TypeForCreate == "B")
                    {
                        request.Amount = -Math.Abs(networkCreditDetailView.NetworkCreditView.Amount);
                    }
                    else
                    {
                        request.Amount = Math.Abs(networkCreditDetailView.NetworkCreditView.Amount);
                    }
                    request.FromAccountID = networkCreditDetailView.NetworkCreditView.FromAccountID;
                    request.InvestDate    = networkCreditDetailView.NetworkCreditView.InvestDate;
                    request.NetworkID     = networkCreditDetailView.NetworkCreditView.NetworkID;
                    request.ToAccount     = networkCreditDetailView.NetworkCreditView.ToAccount;
                    request.Note          = networkCreditDetailView.NetworkCreditView.Note;
                    request.TransactionNo = networkCreditDetailView.NetworkCreditView.TransactionNo;

                    GeneralResponse response = this._networkCreditService.AddNetworkCredit(request);

                    if (response.success)
                    {
                        return(RedirectToAction("Index/" + request.NetworkID));
                    }
                    else
                    {
                        foreach (string error in response.ErrorMessages)
                        {
                            ModelState.AddModelError("", error);
                        }
                        return(View(networkCreditDetailView));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(View(networkCreditDetailView));
                }
            }

            return(View(networkCreditDetailView));
        }