Permite congelar el saldo de un distribuidor por empresa a una fecha de corte y bloquear modificaciones retroactivas sobre el período cerrado. El saldo se calcula sumando movimientos en rango (sin tocar cue_Saldos). Incluye reapertura controlada exclusivamente por SuperAdmin, reporte con saldo inicial, atajo "Desde último cierre", y auditoría del ciclo de vida _H. Permisos CC001/CC002/CC003. Middleware global mapea bloqueos por período cerrado a HTTP 409.
23 lines
809 B
C#
23 lines
809 B
C#
using System;
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
namespace GestionIntegral.Api.Dtos.Contables
|
|
{
|
|
public class CrearCierreDto
|
|
{
|
|
[Required(ErrorMessage = "El distribuidor es obligatorio.")]
|
|
[Range(1, int.MaxValue, ErrorMessage = "ID de Distribuidor inválido.")]
|
|
public int IdDistribuidor { get; set; }
|
|
|
|
[Required(ErrorMessage = "La empresa es obligatoria.")]
|
|
[Range(1, int.MaxValue, ErrorMessage = "ID de Empresa inválido.")]
|
|
public int IdEmpresa { get; set; }
|
|
|
|
[Required(ErrorMessage = "La fecha de corte es obligatoria.")]
|
|
public DateTime FechaCorte { get; set; }
|
|
|
|
[StringLength(500, ErrorMessage = "La justificación no puede superar los 500 caracteres.")]
|
|
public string? Justificacion { get; set; }
|
|
}
|
|
}
|