Пример #1
0
        public DomainStatusCodes UpdatePerson(int personId, CreatePersonDTO personData)
        {
            if (!CheckIfPersonExists(personId, out var existingPerson))
            {
                return(DomainStatusCodes.RecordNotFound);
            }

            if (CheckIfPersonExistsByPersonalNumber(personData.PersonalNumber, out var existingPerson2) && existingPerson2.Id != personId)
            {
                return(DomainStatusCodes.UniqueViolation);
            }

            existingPerson.LastName       = personData.LastName;
            existingPerson.PersonalNumber = personData.PersonalNumber;
            existingPerson.CityId         = personData.CityId;
            existingPerson.Gender         = personData.Gender;
            existingPerson.DateOfBirth    = personData.DateOfBirth;
            existingPerson.FirstName      = personData.FirstName;

            _phoneNumberRepository.RemovePersonsPhoneNumbers(personId);

            existingPerson.PhoneNumbers = Mapper.Map <ICollection <PhoneNumberEntity> >(personData.PhoneNumbers);

            _personRepository.Update(existingPerson);

            Commit();

            return(DomainStatusCodes.Success);
        }