Ejemplo n.º 1
0
        public async Task <IActionResult> UpdateContact(UpdatedContactDto updatedContact)
        {
            ServiceResponse <GetContactDto> response = await _ContactService.UpdateContact(updatedContact);

            if (response.Data == null)
            {
                return(NotFound(response));
            }
            else
            {
                return(Ok(response));
            }
        }
Ejemplo n.º 2
0
        public async Task <ServiceResponse <GetContactDto> > UpdateContact(UpdatedContactDto updatedContact)
        {
            ServiceResponse <GetContactDto> serviceResponse = new ServiceResponse <GetContactDto>();

            try
            {
                //Contact contact = await _context.Contacts.Include(c => c.User).AsNoTracking().FirstOrDefaultAsync(c => c.Id == updatedContact.Id);
                Contact contact = await _context.Contacts.AsNoTracking().FirstOrDefaultAsync(c => c.Id == updatedContact.Id);

                Contact mappedUpdated = _mapper.Map <Contact>(updatedContact);

                if (contact.UserId == GetUserId())
                {
                    contact.FirstName   = (updatedContact.FirstName != null) ? updatedContact.FirstName : contact.FirstName;
                    contact.LastName    = (updatedContact.LastName != null) ? updatedContact.LastName : contact.LastName;
                    contact.Email       = (updatedContact.Email != null) ? updatedContact.Email : contact.Email;
                    contact.Type        = (updatedContact.Type != ContactType.Null) ? updatedContact.Type : contact.Type;
                    contact.Address     = (updatedContact.Address != null) ? updatedContact.Address : contact.Address;
                    contact.Address2    = (updatedContact.Address2 != null) ? updatedContact.Address2 : contact.Address2;
                    contact.City        = (updatedContact.City != null) ? updatedContact.City : contact.City;
                    contact.State       = (updatedContact.State != null) ? updatedContact.State : contact.State;
                    contact.ZipCode     = (updatedContact.ZipCode != null) ? updatedContact.ZipCode : contact.ZipCode;
                    contact.Country     = (updatedContact.Country != null) ? updatedContact.Country : contact.Country;
                    contact.PhoneNumber = (updatedContact.PhoneNumber != null) ? updatedContact.PhoneNumber : contact.PhoneNumber;
                    contact.CellPhone   = (updatedContact.CellPhone != null) ? updatedContact.CellPhone : contact.CellPhone;


                    _context.Contacts.Update(contact);

                    await _context.SaveChangesAsync();


                    serviceResponse.Data = _mapper.Map <GetContactDto>(contact);
                }
                else
                {
                    serviceResponse.Success = false;
                    serviceResponse.Message = "Record not found.";
                }
            }
            catch (Exception ex)
            {
                serviceResponse.Success = false;
                serviceResponse.Message = ex.Message;
            }

            return(serviceResponse);
        }