Exemplo n.º 1
0
        public UserDto Handle(NewUserCommand request)
        {
            using (var context = new BoilerDbContext())
            {
                var newUser = new User();

                using (var trans = context.Database.BeginTransaction())
                {
                    try
                    {
                        newUser = new User()
                        {
                            Firstname  = request.Firstname,
                            Middlename = request.Middlename,
                            Lastname   = request.Lastname,
                            Age        = request.Age
                        };

                        _dbContext.Users.Add(newUser);
                        _dbContext.SaveChanges();


                        _dbContext.SaveChanges();
                    }

                    catch (Exception error)
                    {
                        throw new Exception("Something went wrong");
                    }
                }


                return(Mapper.Map <UserDto>(newUser));
            }
        }
Exemplo n.º 2
0
        public UserDto Handle(NewUserCommand request)
        {
            using (var context = new BoilerDbContext())
            {
                var newUser = new User();
                var balance = new Balance();
                #region Handle expense
                // var expense = _dbContext.Expenses.Where(item => item.UserId == request.)
                #endregion


                using (var trans = context.Database.BeginTransaction())
                {
                    try
                    {
                        newUser = new User()
                        {
                            Firstname  = request.Firstname,
                            Middlename = request.Middlename,
                            Lastname   = request.Lastname,
                            Age        = request.Age
                        };

                        _dbContext.Users.Add(newUser);
                        _dbContext.SaveChanges();

                        var income = new Income()
                        {
                            UserId      = newUser.Id,
                            Date        = request.IncomeDate,
                            Description = request.Description,
                            Total       = request.Total,
                            Remarks     = request.Remarks
                        };

                        _dbContext.Incomes.Add(income);
                        _dbContext.SaveChanges();

                        balance = new Balance()
                        {
                            UserId       = newUser.Id,
                            BalanceDate  = request.IncomeDate,
                            TotalBalance = request.Total,
                            CarriedOver  = false
                        };

                        _dbContext.Balances.Add(balance);
                        _dbContext.SaveChanges();
                    }

                    catch (Exception error)
                    {
                        throw new Exception("Something went wrong");
                    }
                }

                var newUserDto = new UserDto()
                {
                    Firstname   = request.Firstname,
                    Lastname    = request.Lastname,
                    Middlename  = request.Middlename,
                    Age         = request.Age,
                    TotalIncome = request.Total,
                    Balance     = balance.TotalBalance,
                    Id          = newUser.Id
                };


                return(newUserDto);
            }
        }