Example #1
0
        public async Task <ActionResult <UserResponse> > AddUser(UserRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            request.UserName = User.GetUserName();
            var user = await _userManagementRepository.AddUserAsync(request);

            return(CreatedAtRoute("GetUserById", new { userId = user.UserId }, user));
        }
Example #2
0
        public async Task <ActionResult <IEnumerable <PartnerEmployeeDTO> > > CreatePartnerEmployee([FromBody] PartnerEmployeeDTO partnerEmployeeDto)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest());
                }

                if (partnerEmployeeDto == null)
                {
                    throw new ArgumentNullException("Employee object can not be null");
                }


                // validate partner
                var partner = _choiceRepoistory.GetById <CRMPartner>(c => c.AccountId == partnerEmployeeDto.CrmPartnerAccountId);

                if (partner == null)
                {
                    return(NotFound(partnerEmployeeDto.CrmPartnerAccountId));
                }

                partnerEmployeeDto.CRMPartnerId = partner.CRMPartnerId;

                PartnerEmployee newlyCreatedPartnerEmployee = _mapper.Map <PartnerEmployeeDTO, PartnerEmployee>(partnerEmployeeDto);
                _choiceRepoistory.SetPartnerEmployees(newlyCreatedPartnerEmployee);
                newlyCreatedPartnerEmployee.LastModified   = DateTime.UtcNow;
                newlyCreatedPartnerEmployee.LastModifiedBy = this.User.GetUserName();
                newlyCreatedPartnerEmployee.CreatedDate    = DateTime.UtcNow;
                newlyCreatedPartnerEmployee.CreatedBy      = this.User.GetUserName();
                var user = await _userRepository.AddUserAsync(new DTO.Authorization.UserRequest
                {
                    Email     = partnerEmployeeDto.Email,
                    FirstName = partnerEmployeeDto.FirstName,
                    LastName  = partnerEmployeeDto.LastName,
                    IsActive  = true,
                    Mobile    = partnerEmployeeDto.TelePhoneNumber,
                    RoleIds   = partnerEmployeeDto.RoleIds,
                    UserName  = User.GetUserName(),
                    UserType  = UserType.Partner.ToString()
                });

                newlyCreatedPartnerEmployee.UserId = user.UserId;
                if (user == null)
                {
                    throw new InvalidOperationException("Unable to create partner employee.");
                }
                bool Istrue = true;// _crmService.CreatePartnerEmpyee(newlyCreatedPartnerEmployee);

                if (Istrue)
                {
                    _choiceRepoistory.Complete();
                    return(CreatedAtRoute("GetPartnerEmployeeById", new { partnerEmployeeId = newlyCreatedPartnerEmployee.PartnerEmployeeId }, newlyCreatedPartnerEmployee));
                }
                return(BadRequest());
            }
            catch (Exception ex)
            {
                _logger.LogException <PartnerEmployeeDTO>(ex, partnerEmployeeDto);
                return(BadRequest(ex.Message));
            }
        }