Beispiel #1
0
        public async Task <IActionResult> EditWaifuRequestAdmin(uint requestId,
                                                                [FromBody] WaifuRequestEditDto waifuRequestEditDto)
        {
            // Check if request exists
            if (!await _waifuRequestRepo.RequestExists(requestId))
            {
                return(NotFound("User request was not found"));
            }

            await _waifuRequestRepo.EditWaifuRequest(waifuRequestEditDto);

            return(Ok());
        }
Beispiel #2
0
        public async Task EditWaifuRequest(WaifuRequestEditDto waifuRequestAddDto)
        => await _soraTransactor.DoInTransactionAsync(async context =>
        {
            uint id = (uint)waifuRequestAddDto.RequestId;
            var req = await context.WaifuRequests.FindAsync(id).ConfigureAwait(false);
            if (req == null)
            {
                return;                  // no op if it doesn't exist
            }
            req.Name     = waifuRequestAddDto.Name;
            req.ImageUrl = waifuRequestAddDto.ImageUrl;
            req.Rarity   = waifuRequestAddDto.Rarity;

            await context.SaveChangesAsync().ConfigureAwait(false);
        }).ConfigureAwait(false);
Beispiel #3
0
        public async Task <IActionResult> EditWaifuRequest(uint requestId,
                                                           [FromBody] WaifuRequestEditDto waifuRequestEditDto)
        {
            // Check if request exists and belongs to the right user
            if (!ulong.TryParse(waifuRequestEditDto.UserId, out var userId))
            {
                return(BadRequest("UserId invalid"));
            }

            if (!await _waifuRequestRepo.RequestExistsAndBelongsToUser(requestId, userId))
            {
                return(NotFound("User request was not found"));
            }

            await _waifuRequestRepo.EditWaifuRequest(waifuRequestEditDto);

            return(Ok());
        }