/// <summary> /// Добавить иностранного участника /// </summary> /// <param name="addedForeignParticipant">DTO добавляемого иностранного участника</param> /// <returns>Иностранный участник</returns> public ForeignParticipant Add(ForeignParticipantDto addedForeignParticipant) { var foreignParticipant = Create(); if (addedForeignParticipant.Passport != null) { var foreignParticipantPassport = _passportRepository.Add(addedPassport: addedForeignParticipant.Passport); foreignParticipant.SetPassport(foreignParticipantPassport); } return(foreignParticipant); }
// TODO: переделать на запросы, которые будут принимать пути для выполнения Include /// <summary> /// Выполнить команду Добавить или Обновить паспортные данные приглашенного иностранца /// </summary> /// <param name="employeeId">Идентификатор иностранца</param> /// <param name="passportDto">Паспортные данные для создания паспорта</param> /// <returns>Идентификатор паспорта</returns> public async Task <Guid> AddOrUpdatePassportAsync(Guid alienId, PassportDto passportDto) { // TODO: проверить идентификатор, что не Guid.Empty var alien = await _alienRepository.GetAsync(alienId); if (alien.PassportId.HasValue) { await _passportRepository.UpdateAsync(alien.PassportId.Value, passportDto); } else { var passport = _passportRepository.Add(passportDto); alien.SetPassport(passport); } return(alien.Passport !.Id); }
// TODO: переделать на запросы, которые будут принимать пути для выполнения Include /// <summary> /// Выполнить команду Добавить или Обновить паспортные данные сотрудника /// </summary> /// <param name="employeeId">Идентификатор сотрудника</param> /// <param name="passportDto">Паспортные данные для создания паспорта</param> /// <returns>Идентификатор паспорта</returns> public async Task <Guid> AddOrUpdatePassportAsync(Guid employeeId, PassportDto passportDto) { // TODO: проверить идентификатор, что не Guid.Empty var employee = await _employeeRepository.GetAsync(employeeId); if (employee.PassportId.HasValue) { await _passportRepository.UpdateAsync(employee.PassportId.Value, passportDto); } else { var passport = _passportRepository.Add(passportDto); employee.SetPassport(passport); } await _domainContext.SaveChangesAsync(); return(employee.Passport !.Id); }
/// <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); }