ProyectoGrupal/dolibarr-bff/DoliMiddlewareApi/Dtos/command/CreateInvoicePaymentDto.cs

28 lines
966 B
C#
Raw Normal View History

using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
namespace DoliMiddlewareApi.Dtos.command;
public class CreateInvoicePaymentDto
{
// Si se especifica, es un pago parcial. Si es null, paga todo lo pendiente.
[Range(0.01, double.MaxValue, ErrorMessage = "Amount must be greater than 0")]
public decimal? Amount { get; set; }
[Required] public DateTime PaymentDate { get; set; }
// Acepta ambos nombres: paymentMethodId (del frontend) o paymentModeId (fallback)
[JsonPropertyName("paymentMethodId")]
public int? PaymentMethodId { get; set; }
[JsonPropertyName("paymentModeId")]
public int PaymentModeId { get; set; }
[Required] [RegularExpression("yes|no", ErrorMessage = "Must be 'yes' or 'no'")]
public string ClosePaidInvoices { get; set; } = "yes";
public int AccountId { get; set; } = 1;
[JsonPropertyName("numPayment")]
public string? PaymentNumber { get; set; }
}