コード例 #1
0
        public async Task <OutputBase> CreateEmployee(CreateEmployeeInput input)
        {
            try
            {
                var employee = input.Employee;
                if (_employeeRepository.Query(q => q.Any(emp => emp.Number == input.Employee.Number)))
                {
                    return(new OutputBase
                    {
                        Message = "An employee with the selected number have been added",
                        Success = false
                    });
                }
                //check username
                if (UserManager.FindByName(employee.Username) != null)
                {
                    return(new OutputBase {
                        Message = "Selected username is already in use", Success = false
                    });
                }
                if (UserManager.FindByEmail(employee.EmailAddress) != null)
                {
                    return(new OutputBase {
                        Message = "Selected email is already in use", Success = false
                    });
                }
                string[] role = { "User" };
                await _userService.CreateOrUpdateUser(new CreateOrUpdateUserInput
                {
                    User = new UserEditDto
                    {
                        EmailAddress = employee.EmailAddress,
                        IsActive     = true,
                        Name         = employee.FirstName,
                        Surname      = employee.LastName,
                        Password     = employee.Password,
                        ShouldChangePasswordOnNextLogin = true,
                        UserName = employee.Username
                    },
                    AssignedRoleNames = role
                });

                var user = UserManager.FindByName(employee.Username);
                employee.Id                = user.Id;
                employee.DateEmployed      = null;
                employee.DateOfBirth       = null;
                employee.LicenseExpiryDate = null;

                _employeeRepository.Insert(Mapper.Map <Employee>(employee));
                return(new OutputBase {
                    Message = "Employee added", Success = true, Id = employee.Id
                });
            }
            catch (Exception exception)
            {
                return(new OutputBase {
                    Message = exception.Message, Success = false
                });
            }
        }
コード例 #2
0
        public async Task <string> CreateEmployee(CreateEmployeeInput input)
        {
            input.CheckDataAnnotations().CheckValidResult();
            var exsitEployee = await GetService <IDapperRepository <EmployeeAggregate, long> >().FirstOrDefaultAsync(p => p.UserName == input.UserName ||
                                                                                                                     p.Email == input.Email ||
                                                                                                                     p.Phone == input.Phone);

            if (exsitEployee != null)
            {
                throw new BusinessException("已经存在该员工信息,请检查员工账号信息");
            }

            var exsitUserInfo = await GetService <IDapperRepository <UserInfo, long> >().FirstOrDefaultAsync(p => p.UserName == input.UserName ||
                                                                                                             p.Email == input.Email ||
                                                                                                             p.Phone == input.Phone);

            if (exsitUserInfo != null)
            {
                throw new BusinessException("已经存在该员工信息,请检查员工账号信息");
            }
            var employee = input.MapTo <EmployeeAggregate>();

            await GetService <IEmployeeManager>().CreateEmployee(employee);

            return("新增员工成功");
        }
コード例 #3
0
        //public void GetAll1()
        //{
        //    var a = 1;

        //    var pageObject = (from t in _context.Tasks
        //                      join emp in _context.Employees on t.AssignedEmployeeId equals emp.Id

        //                      select emp.Id)
        //         .SingleOrDefault();
        //}

        public async System.Threading.Tasks.Task CreateEmployee(CreateEmployeeInput input)
        {
            try {
                var employee = ObjectMapper.Map <Employee>(input);
                await _employeeRepository.InsertAsync(employee);
            }
            catch (Exception e)
            {
                throw (e);
            }
        }
コード例 #4
0
    public async Task <IActionResult> CreateEmployeeAsync([FromBody] CreateEmployeeInput input)
    {
        var request = new CreateEmployeeRequest
        {
            Name          = input.Name,
            DisplayName   = input.DisplayName,
            BirthDate     = Timestamp.FromDateTime(input.BirthDate),
            Gender        = input.Gender,
            MaritalStatus = input.MaritalStatus,
        };
        var response = (Guid)await _organizationClient.CreateEmployeeAsync(request);

        return(CreatedAtAction(nameof(GetDepartmentAsync), new { Id = response }, default));
    }
コード例 #5
0
        //public void GetAll1()
        //{
        //    var a = 1;

        //    var pageObject = (from t in _context.Tasks
        //                      join emp in _context.Employees on t.AssignedEmployeeId equals emp.Id

        //                      select emp.Id)
        //         .SingleOrDefault();
        //}

        public async Task <EmployeeListDto> CreateEmployee(CreateEmployeeInput input)
        {
            try
            {
                var employee = ObjectMapper.Map <Employee>(input);
                await _employeeRepository.InsertAsync(employee);

                await CurrentUnitOfWork.SaveChangesAsync();

                return(ObjectMapper.Map <EmployeeListDto>(employee));
            }
            catch (Exception e)
            {
                throw (e);
            }
        }
        public async Task Create(CreateEmployeeInput input)
        {
            var employee =
                await Employee.Create(
                    input.Name,
                    input.Surname,
                    input.IdentityNumber,
                    input.PhoneNumber,
                    input.BirthDate,
                    Nationality.Create(input.Nationality, _nationalityCreationService),
                    Salary.Create(
                        input.SalaryAmount,
                        Currency.Create(
                            input.SalaryCurrency,
                            _currencyCreationPolicy),
                        _salaryCreationPolicy)
                    );

            await _employeeDomainService.CreateAsync(employee);
        }
コード例 #7
0
 public async Task CreateEmployee(CreateEmployeeInput input)
 {
     var employee = ObjectMapper.Map <Employee>(input);
     await _employeeRepository.InsertAsync(employee);
 }
コード例 #8
0
        public async Task <IActionResult> Create(CreateEmployeeInput input)
        {
            await _employeeAppService.Create(input);

            return(Ok());
        }
コード例 #9
0
ファイル: EmployeeServices.cs プロジェクト: TeeGeorge/newProj
 public async Task CreateAsync(CreateEmployeeInput input)
 {
     var @employee = Employee.Create(input.Name, input.Email, input.PhoneNumber, input.Department, input.TimePreference, input.subscribe);
     await _employeeManager.CreateAsync(@employee);
 }