Пример #1
0
        public async Task EditNationalSociety_WhenSuccessful_ShouldReturnSuccess()
        {
            // Arrange
            _testData.BasicData.Data.GenerateData().AddToDbContext();
            var nationalSocietyReq = new EditNationalSocietyRequestDto
            {
                Name              = BasicNationalSocietyServiceTestData.NationalSocietyName,
                CountryId         = BasicNationalSocietyServiceTestData.CountryId,
                ContentLanguageId = BasicNationalSocietyServiceTestData.ContentLanguageId
            };

            // Actual
            var result = await _nationalSocietyService.Edit(BasicNationalSocietyServiceTestData.NationalSocietyId, nationalSocietyReq);

            // Assert
            result.IsSuccess.ShouldBeTrue();
            result.Message.Key.ShouldBe(ResultKey.NationalSociety.Edit.Success);
        }
Пример #2
0
        public async Task <Result> Edit(int nationalSocietyId, EditNationalSocietyRequestDto dto)
        {
            if (_nyssContext.NationalSocieties.Any(ns => ns.Id != nationalSocietyId && ns.Name.ToLower() == dto.Name.ToLower()))
            {
                return(Error <int>(ResultKey.NationalSociety.Creation.NameAlreadyExists));
            }

            var nationalSociety = await _nyssContext.NationalSocieties.FindAsync(nationalSocietyId);

            if (nationalSociety.IsArchived)
            {
                return(Error(ResultKey.NationalSociety.Edit.CannotEditArchivedNationalSociety));
            }

            nationalSociety.Name            = dto.Name;
            nationalSociety.ContentLanguage = await GetLanguageById(dto.ContentLanguageId);

            nationalSociety.Country = await GetCountryById(dto.CountryId);

            await _nyssContext.SaveChangesAsync();

            return(SuccessMessage(ResultKey.NationalSociety.Edit.Success));
        }
Пример #3
0
 public async Task <Result> Edit(int nationalSocietyId, [FromBody] EditNationalSocietyRequestDto nationalSociety) =>
 await _nationalSocietyService.Edit(nationalSocietyId, nationalSociety);