Projekt

Obecné

Profil

« Předchozí | Další » 

Revize df202176

Přidáno uživatelem Vojtěch Bartička před asi 2 roky(ů)

Added endpoint to set tag occurence to finalized

Zobrazit rozdíly:

Backend/Backend/Controllers/AnnotationController.cs
253 253

  
254 254
        }
255 255

  
256
        [HttpPut("/annotation/{annotationId}/{occurenceId}/final")]
257
        [Authorize(Models.Enums.ERole.ADMINISTRATOR)]
258
        [ProducesResponseType((int)HttpStatusCode.OK)]
259
        [ProducesResponseType((int)HttpStatusCode.Forbidden)]
260
        public ActionResult SetTagInstanceIsFinal([FromServices] ClientInfo clientInfo, Guid annotationId, Guid occurenceId, SetInstanceIsFinalRequest request)
261
        {
262
            if (clientInfo.LoggedUser == null)
263
            {
264
                logger.Warning("ClientInfo has null LoggerUser in [Authorized] controller /annotations");
265
                return Problem();
266
            }
267

  
268
            try
269
            {
270
                annotationService.SetTagIsFinal(annotationId, occurenceId, request.IsFinal);
271
                return Ok();
272
            }
273
            catch (InvalidOperationException e)
274
            {
275
                throw new BadRequestException(e.Message);
276
            }
277
            catch (UnauthorizedAccessException)
278
            {
279
                return Forbid();
280
            }
281

  
282
        }
283

  
256 284
        [HttpPut("/annotation/{annotationId}/done")]
257 285
        [ProducesResponseType((int)HttpStatusCode.OK)]
258 286
        [ProducesResponseType((int)HttpStatusCode.Forbidden)]
Backend/Core/Services/AnnotationService/IAnnotationService.cs
19 19
        public void SetTagInstanceSentiment(Guid annotationId, Guid instanceId, Guid userId, ERole userRole, ETagSentiment sentiment, bool isFinal);
20 20
        public void MarkAnnotationAsDone(Guid annotationId, Guid userId, ERole userRole, bool done, bool isFinal);
21 21
        public Guid CreateFinalAnnotation(Guid documentId, Guid userId);
22
        public void SetTagIsFinal(Guid annotationId, Guid occurenceId, bool isFinal);
22 23
    }
23 24
}
Backend/Models/Annotations/SetInstanceIsFinalRequest.cs
1
using System;
2
using System.Collections.Generic;
3
using System.Linq;
4
using System.Text;
5
using System.Threading.Tasks;
6

  
7
namespace Models.Annotations
8
{
9
    public class SetInstanceIsFinalRequest
10
    {
11
        public bool IsFinal { get; set; } = true;
12
    }
13
}

Také k dispozici: Unified diff