public async Task <IActionResult> Post(RegistersVm registersVm)
        {
            //try
            //{
            var isExist = _context.Users.Where(Q => Q.Email == registersVm.Email || Q.UserName == registersVm.Name).FirstOrDefault();

            if (isExist == null)
            {
                var user = new User
                {
                    UserName = registersVm.Username,
                    Email    = registersVm.Email,

                    PasswordHash         = BCrypt.Net.BCrypt.HashPassword(registersVm.Password),
                    PhoneNumber          = registersVm.Phone,
                    EmailConfirmed       = false,
                    PhoneNumberConfirmed = false,
                    TwoFactorEnabled     = false,
                    LockoutEnabled       = false,
                    AccessFailedCount    = 0
                };
                await _context.Users.AddAsync(user);

                var uRole = new UserRole
                {
                    UserId = user.Id,
                    RoleId = "1"
                };
                await _context.UserRoles.AddAsync(uRole);

                var emp = new Employee
                {
                    EmployeeId = user.Id,
                    Name       = registersVm.Username,
                    Address    = registersVm.Address,
                    CreateDate = DateTimeOffset.Now,
                    isDelete   = false
                };
                _context.Employees.Add(emp);
                _context.SaveChanges();
                return(Ok("Created Successfully"));
            }
            else
            {
                return(BadRequest("Employee has been registered"));
            }

            //}
            //catch(Exception)
            //{
            //    return BadRequest("Error");
            //}
        }
        public async Task <IActionResult> Register(RegistersVm registersVm)
        {
            var json        = JsonConvert.SerializeObject(registersVm);
            var buffer      = System.Text.Encoding.UTF8.GetBytes(json);
            var byteContent = new ByteArrayContent(buffer);

            byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            var result = client.PostAsync("registers/", byteContent).Result;

            if (result.IsSuccessStatusCode)
            {
                return(Json(new { status = true, code = result, msg = "Register Success! " }));
            }
            else
            {
                return(Json(new { status = false, msg = "Something Wrong!" }));
            }
        }
        public async Task <IActionResult> Create(RegistersVm registersVm /*, EmployeeVm employeeVm*/)
        {
            if (ModelState.IsValid)
            {
                var user = new User
                {
                    UserName = registersVm.Username,
                    Email    = registersVm.Email,

                    PasswordHash         = BCrypt.Net.BCrypt.HashPassword(registersVm.Password),
                    PhoneNumber          = registersVm.Phone,
                    EmailConfirmed       = false,
                    PhoneNumberConfirmed = false,
                    TwoFactorEnabled     = false,
                    LockoutEnabled       = false,
                    AccessFailedCount    = 0
                };
                await _context.Users.AddAsync(user);

                var uRole = new UserRole
                {
                    UserId = user.Id,
                    RoleId = "1"
                };
                await _context.UserRoles.AddAsync(uRole);

                var emp = new Employee
                {
                    EmployeeId = user.Id,
                    Name       = registersVm.Username,
                    Address    = registersVm.Address,
                    CreateDate = DateTimeOffset.Now,
                    isDelete   = false
                };
                _context.Employees.Add(emp);
                _context.SaveChanges();
                return(Ok("Mantap"));
            }

            return(BadRequest("Failed"));
        }