Ejemplo n.º 1
0
        public bool UpdatePartnerEmpyee(PartnerEmployee partnerEmployee)
        {
            var payload = new CRMPartnerEmployeeUpdateDTO
            {
                first_name    = partnerEmployee.FirstName,
                last_name     = partnerEmployee.LastName,
                email_address = partnerEmployee.Email,
                telephone     = partnerEmployee.TelePhoneNumber,
                // In future we have to get the account Id from Partner
                // parent_customer_id = checkPartnerIdinDb.CrmPartnerAccountId,
                partner_contact_id = partnerEmployee.PartnerEmployeeId.ToString(),
                job_title          = partnerEmployee.JobTitle,
                mail_group         = partnerEmployee.MailGroup,
            };

            return(PostData <CRMPartnerEmployeeUpdateDTO>("niq_update_partner_contact", payload));
        }
Ejemplo n.º 2
0
 public void SetPartnerEmployees(PartnerEmployee partnerEmployee)
 {
     _dbContext.PartnerEmployee.Add(partnerEmployee);
 }
Ejemplo n.º 3
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));
            }
        }