Exemplo n.º 1
0
        public async Task <ActionResult <Figure> > CreateCircleAsync(
            [FromBody] CreateCircleRequest request,
            CancellationToken cancellationToken)
        {
            var figure = new Db.Entities.Figure
            {
                FigureType = "circle",
                Object     = JsonSerializer.Serialize(request),
                Area       = AreasCalculator.CalculateCircleArea(request.Radius)
            };

            await _dbContext.Figures.AddAsync(figure, cancellationToken);

            await _dbContext.SaveChangesAsync(cancellationToken);

            return(await GetFigureAsync(figure.FigureId, cancellationToken));
        }
Exemplo n.º 2
0
        public async Task <ActionResult <Figure> > CreateTriangleAsync(
            [FromBody] CreateTriangleRequest request,
            CancellationToken cancellationToken)
        {
            var entity = new Db.Entities.Figure
            {
                FigureType = "triangle",
                Object     = JsonSerializer.Serialize(request),
                Area       = AreasCalculator.CalculatePolygonArea(
                    new Point(request.Vertex1.X, request.Vertex1.Y),
                    new Point(request.Vertex2.X, request.Vertex2.Y),
                    new Point(request.Vertex3.X, request.Vertex3.Y))
            };

            await _dbContext.Figures.AddAsync(entity, cancellationToken);

            await _dbContext.SaveChangesAsync(cancellationToken);

            return(await GetFigureAsync(entity.FigureId, cancellationToken));
        }