add new
This commit is contained in:
80
RS_system/Models/MovimientoInventario.cs
Normal file
80
RS_system/Models/MovimientoInventario.cs
Normal file
@@ -0,0 +1,80 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Rs_system.Models;
|
||||
|
||||
public enum TipoMovimiento
|
||||
{
|
||||
ENTRADA, // Nueva adquisición (aunque se crea al crear art, podría usarse para reingresos)
|
||||
SALIDA, // Salida temporal
|
||||
TRASLADO, // Cambio de ubicación
|
||||
BAJA, // Retiro permanente (daño, robo, venta)
|
||||
REPARACION, // Envío a taller
|
||||
AJUSTE, // Corrección de inventario
|
||||
CAMBIO_ESTADO, // Cambio de condición física
|
||||
PRESTAMO, // Préstamo a persona
|
||||
DEVOLUCION
|
||||
}
|
||||
|
||||
[Table("movimientos_inventario")]
|
||||
public class MovimientoInventario
|
||||
{
|
||||
[Key]
|
||||
[Column("id")]
|
||||
public long Id { get; set; }
|
||||
|
||||
[Column("articulo_id")]
|
||||
[Required]
|
||||
public int ArticuloId { get; set; }
|
||||
|
||||
[Column("tipo_movimiento")]
|
||||
[Required]
|
||||
public string TipoMovimiento { get; set; } = string.Empty;
|
||||
|
||||
[Column("cantidad")]
|
||||
public int Cantidad { get; set; } = 1; // Default 1 for UNITARIO
|
||||
|
||||
[Column("fecha")]
|
||||
public DateTime Fecha { get; set; } = DateTime.UtcNow;
|
||||
|
||||
// Ubicaciones
|
||||
[Column("ubicacion_origen_id")]
|
||||
public int? UbicacionOrigenId { get; set; }
|
||||
|
||||
[Column("ubicacion_destino_id")]
|
||||
public int? UbicacionDestinoId { get; set; }
|
||||
|
||||
// Estados
|
||||
[Column("estado_anterior_id")]
|
||||
public int? EstadoAnteriorId { get; set; }
|
||||
|
||||
[Column("estado_nuevo_id")]
|
||||
public int? EstadoNuevoId { get; set; }
|
||||
|
||||
[Column("TipMov")]
|
||||
public int? TipMov { get; set; }
|
||||
|
||||
[Column("observacion")]
|
||||
[StringLength(500)]
|
||||
public string? Observacion { get; set; }
|
||||
|
||||
[Column("usuario_id")]
|
||||
[StringLength(100)]
|
||||
public string? UsuarioId { get; set; } // Username or User ID
|
||||
|
||||
// Navigation Properties
|
||||
[ForeignKey("ArticuloId")]
|
||||
public virtual Articulo? Articulo { get; set; }
|
||||
|
||||
[ForeignKey("UbicacionOrigenId")]
|
||||
public virtual Ubicacion? UbicacionOrigen { get; set; }
|
||||
|
||||
[ForeignKey("UbicacionDestinoId")]
|
||||
public virtual Ubicacion? UbicacionDestino { get; set; }
|
||||
|
||||
[ForeignKey("EstadoAnteriorId")]
|
||||
public virtual EstadoArticulo? EstadoAnterior { get; set; }
|
||||
|
||||
[ForeignKey("EstadoNuevoId")]
|
||||
public virtual EstadoArticulo? EstadoNuevo { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user