コード例 #1
0
        public async Task <AdminModel> CreateAdminAsync([FromBody] AdminCreateModel model)
        {
            var(error, admin) = await _adminsService.RegisterAsync(
                model.Email,
                model.Password,
                model.PhoneNumber,
                model.FirstName,
                model.LastName,
                model.Company,
                model.Department,
                model.JobTitle);

            switch (error)
            {
            case AdminServiceCreateResponseError.None:
                return(_mapper.Map <AdminModel>(admin));

            case AdminServiceCreateResponseError.AlreadyRegistered:
                throw LykkeApiErrorException.BadRequest(ApiErrorCodes.Service.AdminAlreadyRegistered);

            case AdminServiceCreateResponseError.InvalidEmailOrPasswordFormat:
                throw LykkeApiErrorException.BadRequest(ApiErrorCodes.Service.InvalidEmailOrPasswordFormat);

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
コード例 #2
0
        public IActionResult AccountCreation([FromBody] AdminCreateModel Users)
        {
            if (ModelState.IsValid)
            {
                _dataAccessProvider.AdminRegister(Users);

                return(Ok());
            }
            return(BadRequest(ModelState));
        }
コード例 #3
0
        public void AdminRegister(AdminCreateModel data)
        {
            UserModel     user = new UserModel();
            EmployeeModel emp  = new EmployeeModel();

            user.UserId        = Guid.NewGuid();
            user.Password      = "******";
            user.Salutation    = data.Salutation;
            user.FirstName     = data.FirstName;
            user.LastName      = data.LastName;
            user.ContactNumber = data.ContactNumber;
            user.OfficeNumber  = data.OfficeNumber;
            user.Email         = data.Email;
            user.IsActive      = true;
            user.IsApproved    = false;
            user.IsFirstLogin  = true;
            user.CreatedBy     = "qwerty";
            user.CreatedDate   = DateTime.Now;
            emp.EmployeeId     = user.UserId;
            emp.PassNum        = "qwerty";
            emp.CreatedDate    = DateTime.Now;
            emp.CreatedBy      = "john";
            emp.IsActive       = true;
            emp.DepartmentId   = 1;
            emp.IsActive       = true;
            emp.CreatedBy      = "qwerty";
            emp.CreatedDate    = DateTime.Now;
            if (data.AccountType == "Admin")
            {
                user.RoleId = 1;
            }
            else
            {
                user.RoleId = 3;
            }
            if (data.Department == "BookingSystem")
            {
                emp.DepartmentId = 1;
            }
            else if (data.Department == "WorkFlow")
            {
                emp.DepartmentId = 2;
            }
            else
            {
                emp.DepartmentId = 3;
            }
            _context.Users.Add(user);
            _context.SaveChanges();
            _context.Employees.Add(emp);
            _context.SaveChanges();
        }
コード例 #4
0
 public ActionResult CreateAdmin(AdminCreateModel model)
 {
     if (ModelState.IsValid)
     {
         var admin = new Admin()
         {
             Login = model.Login.Trim(), Email = model.Email
         };
         AdminHelper.SetPassword(admin, model.Password);
         AdminHelper.CreateAdmin(admin);
         return(RedirectToAction("AdminsList"));
     }
     return(View(model));
 }
コード例 #5
0
        public async Task <AdminModel> CreateAdminAsync([FromBody] AdminCreateModel model)
        {
            var(error, admin) = await _adminsService.RegisterAsync(
                model.Email,
                model.Password,
                model.PhoneNumber,
                model.FirstName,
                model.LastName,
                model.Company,
                model.Department,
                model.JobTitle);

            if (error == AdminServiceCreateResponseError.None)
            {
                model.Password    = null;
                model.Email       = model.Email.SanitizeEmail();
                model.FirstName   = model.FirstName.SanitizeName();
                model.LastName    = model.LastName.SanitizeName();
                model.PhoneNumber = model.PhoneNumber.SanitizePhone();
                await _auditLogPublisher.PublishAuditLogAsync(_requestContext.UserId, model.ToJson(), ActionType.AdminCreate);

                return(_mapper.Map <AdminModel>(admin));
            }

            switch (error)
            {
            case AdminServiceCreateResponseError.AlreadyRegistered:
                throw LykkeApiErrorException.BadRequest(ApiErrorCodes.Service.AdminAlreadyRegistered);

            case AdminServiceCreateResponseError.InvalidEmailOrPasswordFormat:
                throw LykkeApiErrorException.BadRequest(ApiErrorCodes.Service.InvalidEmailOrPasswordFormat);

            default:
                throw new ArgumentOutOfRangeException();
            }
        }