Ejemplo n.º 1
0
 public async Task <RemittanceCreateModel> GetCreateModel()
 {
     using (var uow = UnitOfWorkFactory.Create())
     {
         var Model = new RemittanceCreateModel();
         return(Model);
     }
 }
Ejemplo n.º 2
0
        public async Task <Response> Create(RemittanceCreateModel model, ClaimsPrincipal User)
        {
            using (var uow = UnitOfWorkFactory.Create())
            {
                var _User = await UserManager.FindByNameAsync(User.Identity.Name);

                var Score = await uow.Scores.GetByIdAsync(model.ScoreId);

                var Score2 = await uow.Scores.GetByIdAsync(model.Score2Id);


                if (model.Score2Id == model.ScoreId)
                {
                    return(new Response {
                        Status = StatusEnum.Error, Message = "Перевод осуществляется на один и тот же счет!"
                    });
                }
                if (!uow.Scores.Check(model.ScoreId))
                {
                    return new Response {
                               Status = StatusEnum.Error, Message = $"Нет такого счета! ({Score.Name})"
                    }
                }
                ;
                if (!uow.Scores.Check(model.Score2Id))
                {
                    return new Response {
                               Status = StatusEnum.Error, Message = $"Нет такого счета! ({Score2.Name})"
                    }
                }
                ;

                if (!await validateSum(model.Sum, Score, Score2))
                {
                    return(new Response {
                        Status = StatusEnum.Error, Message = $"На счету {Score.Name} недостаточно денег!"
                    });
                }

                var Remittance = Mapper.Map <Remittance>(model);
                Remittance.ProjectId = await uow.Projects.GetNullProjectId();

                Remittance.OperationId = await uow.Operations.GetTransferOperationId();

                Remittance.UserId = _User.Id;
                await uow.Remittances.CreateAsync(Remittance);


                return(new Response {
                    Status = StatusEnum.Accept, Message = "Перевод успешно создан."
                });
            }
        }
        public async Task <IActionResult> Create(RemittanceCreateModel model)
        {
            var Result = await RemittanceService.Create(model, User);

            return(Ok(Result));
        }