public async Task InsertSingleSeiyuu(UpdateSeiyuuMessage updateSeiyuuMessage)
        {
            var seiyuuToUpdate = await _seiyuuRepository.GetAsync(updateSeiyuuMessage.MalId);

            if (seiyuuToUpdate != null)
            {
                return;
            }

            var updateData = await _malApiService.GetSeiyuuDataAsync(updateSeiyuuMessage.MalId);

            if (updateData == null || !JikanParserHelper.IsJapanese(updateData.JapaneseName) || !updateData.VoiceActingRoles.Any())
            {
                return;
            }

            await InsertSeiyuuAsync(updateSeiyuuMessage, updateData);

            await InsertRolesAsync(updateSeiyuuMessage, updateData.VoiceActingRoles);
        }
        public async Task HandleAsync(UpdateSeiyuuMessage updateSeiyuuMessage)
        {
            var seiyuuToUpdate = await _seiyuuRepository.GetAsync(updateSeiyuuMessage.MalId);

            if (seiyuuToUpdate == null)
            {
                return;
            }

            var updateData = await _malApiService.GetSeiyuuDataAsync(updateSeiyuuMessage.MalId);

            if (updateData == null)
            {
                return;
            }

            UpdateCharacter(seiyuuToUpdate, updateData);
            await _seiyuuRepository.UpdateAsync(seiyuuToUpdate);

            await UpdateRolesAsync(updateSeiyuuMessage, updateData.VoiceActingRoles);
        }
Example #3
0
        public async Task <SeiyuuCardDto> HandleAsync(GetSeiyuuCardInfoQuery query)
        {
            var entity = await _seiyuuRepository.GetAsync(query.MalId);

            return(entity.ToSeiyuuCardDto());
        }
        public async Task <SeiyuuCardDto> GetSingleAsync(long id)
        {
            var entity = await seiyuuRepository.GetAsync(x => x.MalId.Equals(id));

            return(mapper.Map <SeiyuuCardDto>(entity));
        }