コード例 #1
0
        private void ApplyOnClick(int id)
        {
            var builder = new AlertDialog.Builder(_context);

            builder.SetTitle("Вы точно хотите выполнить оплату?");
            builder.SetPositiveButton("ОК", (o, args) =>
            {
                ThreadPool.QueueUserWorkItem(w =>
                {
                    _showLoader?.Invoke();
                    var model           = new PayCreditRequest(_creditId, id);
                    var commandDelegate = new CommandDelegate <PayCreditResponce>(responce => _reloadActivity?.Invoke(responce.Credit), _showError, _showErrorNotEnternet);
                    var command         = new PayCreditCommand(LocalDb.Instance, commandDelegate);
                    command.Execute(model);
                    _hideLoader?.Invoke();
                });
            });
            builder.SetNegativeButton("Нет", (o, args) => { });
            builder.Create().Show();
        }
コード例 #2
0
        public JsonResult Pay([FromBody] PayCreditRequest model)
        {
            var authorization = GetUserWithToken();

            if (authorization.Error != null)
            {
                return(Json(authorization.Error));
            }

            var credit = Context.Credits.FirstOrDefault(w => w.Id == model.CreditId);

            if (credit == null)
            {
                return(Json(new Error("notFound", "Такого кредита не найдено")));
            }

            var payments = JsonConvert.DeserializeObject <List <PaymentModel> >(credit.ListPayment);
            var payment  = payments.FirstOrDefault(w => w.Id == model.PaymentId);

            if (payment == null)
            {
                return(Json(new Error("notFound", "Такого платежа не найдено")));
            }

            payment.IsPay      = true;
            credit.ListPayment = JsonConvert.SerializeObject(payments);
            if (payments.All(w => w.IsPay))
            {
                credit.IsPay = true;
            }

            Context.SaveChanges();

            return(Json(new PayCreditResponce {
                Credit = credit
            }));
        }