Sube carpetas API, API.Tests, Application y Domain del Backend
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using Application.Utils.Constants.Validation;
|
||||
|
||||
using Microsoft.AspNetCore.Http;
|
||||
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
namespace Application.DTOs.Venue.Request;
|
||||
|
||||
/// <summary>
|
||||
/// Request model for creating a new venue.
|
||||
/// </summary>
|
||||
public class CreateVenueRequest
|
||||
{
|
||||
[Required(ErrorMessage = "The Name field is required.")]
|
||||
[MaxLength(VenueFieldLengths.NameMaxLength)]
|
||||
public required string Name { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "The Address field is required.")]
|
||||
[MaxLength(VenueFieldLengths.AddressMaxLength)]
|
||||
public required string Address { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional photo of the venue, which must be JPEG or PNG; may be omitted.
|
||||
/// </summary>
|
||||
[DataType(DataType.Upload)]
|
||||
public IFormFile? ImageFile { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional geographic latitude of the venue.
|
||||
/// </summary>
|
||||
public double? Latitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional geographic longitude of the venue.
|
||||
/// </summary>
|
||||
public double? Longitude { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
namespace Application.DTOs.Venue.Request;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a request to update a venue's photo.
|
||||
/// </summary>
|
||||
public class UpdateVenuePhotoRequest
|
||||
{
|
||||
[Required(ErrorMessage = "The VenueId field is required.")]
|
||||
public required Guid VenueId { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// The photo image file to upload, which must be JPEG or PNG.
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "The image file is required.")]
|
||||
[DataType(DataType.Upload)]
|
||||
public required IFormFile ImageFile { get; init; }
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using Application.Utils.Constants.Validation;
|
||||
using Application.Utils.Extensions;
|
||||
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
namespace Application.DTOs.Venue.Request;
|
||||
|
||||
/// <summary>
|
||||
/// Request model for updating an existing venue.
|
||||
/// </summary>
|
||||
public class UpdateVenueRequest
|
||||
{
|
||||
[Required(ErrorMessage = "The Name field is required.")]
|
||||
[MaxLength(VenueFieldLengths.NameMaxLength)]
|
||||
public required string Name { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "The Address field is required.")]
|
||||
[MaxLength(VenueFieldLengths.AddressMaxLength)]
|
||||
public required string Address { get; set; }
|
||||
|
||||
[ImageReference]
|
||||
public string? PhotoUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional geographic latitude of the venue.
|
||||
/// </summary>
|
||||
public double? Latitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional geographic longitude of the venue.
|
||||
/// </summary>
|
||||
public double? Longitude { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using Application.DTOs.Abstract.Response;
|
||||
namespace Application.DTOs.Venue.Response;
|
||||
|
||||
/// <summary>
|
||||
/// Response model for returning venue details.
|
||||
/// </summary>
|
||||
public class VenueResponse : BaseEntityResponse
|
||||
{
|
||||
|
||||
public required string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The unique, URL-friendly identifier used in public venue links.
|
||||
/// </summary>
|
||||
public required string Slug { get; set; }
|
||||
|
||||
public required string Address { get; set; }
|
||||
|
||||
public string? PhotoUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional geographic latitude of the venue, for the public map link.
|
||||
/// </summary>
|
||||
public double? Latitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional geographic longitude of the venue, for the public map link.
|
||||
/// </summary>
|
||||
public double? Longitude { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user