예제 #1
0
        // TODO: не используется
        public async Task <Guid> AddAlienAsync(InviteeDto alien)
        {
            var newAlien = _alienRepository.Add(alien);

            await _domainContext.SaveChangesAsync();

            return(newAlien.Id);
        }
예제 #2
0
        /// <summary>
        /// Добавить иностранца
        /// </summary>
        /// <param name="addedAlien">DTO добавляемого иностранца</param>
        public Alien Add(InviteeDto addedAlien)
        {
            var newAlien = Create();

            if (addedAlien.AlienContact != null)
            {
                var contact = _contactRepository.Add(addedAlien.AlienContact);
                newAlien.SetContact(contact: contact);
            }

            if (addedAlien.AlienPassport != null)
            {
                var passport = _passportRepository.Add(addedAlien.AlienPassport);
                newAlien.SetPassport(passport: passport);
            }

            if (addedAlien.AlienOrganization != null)
            {
                var organization = _organizationRepository.Add(addedAlien.AlienOrganization);
                newAlien.SetOrganization(organization: organization);
            }

            if (addedAlien.AlienStateRegistration != null)
            {
                var stateRegistration = _stateRegistrationRepository.Add(addedAlien.AlienStateRegistration);
                newAlien.SetStateRegistration(stateRegistration: stateRegistration);
            }

            if (addedAlien.AlienJob != null)
            {
                newAlien.SetWorkPlace(addedAlien.AlienJob.WorkPlace);
                newAlien.SetPosition(addedAlien.AlienJob.Position);
            }

            return(newAlien);
        }