public void Eliminar(ApplicationDbContext Context)
 {
     if (!IsNew)
     {
         KardexMovimiento model = this.ToModel();
         Context.Entry(model).State = EntityState.Deleted;
     }
 }
 public KardexMovimientoViewModel(KardexMovimiento model)
 {
     _KardexMovimientoId = model.KardexMovimientoId;
     _KardexId           = model.KardexId;
     _TipoMovimientoId   = model.TipoMovimientoId;
     _RecepcionDetalleId = model.RecepcionDetalleId;
     _DespachoDetalleId  = model.DespachoDetalleId;
     _MercaderiaId       = model.MercaderiaId;
     _UnidadMedidaId     = model.UnidadMedidaId;
     _Fecha    = model.Fecha;
     _Cantidad = model.Cantidad;
 }
        public void Grabar(ApplicationDbContext Context)
        {
            KardexMovimiento model = this.ToModel();

            if (IsNew)
            {
                Context.KardexMovimientos.Add(model);
            }
            else
            {
                if (IsOld)
                {
                    Context.Entry(model).State = EntityState.Modified;
                }
            }
        }
        public KardexMovimiento ToModel()
        {
            KardexMovimiento model = new KardexMovimiento
            {
                KardexMovimientoId = _KardexMovimientoId,
                KardexId           = _KardexId,
                TipoMovimientoId   = _TipoMovimientoId,
                RecepcionDetalleId = _RecepcionDetalleId,
                DespachoDetalleId  = _DespachoDetalleId,
                MercaderiaId       = _MercaderiaId,
                UnidadMedidaId     = _UnidadMedidaId,
                Fecha    = _Fecha,
                Cantidad = _Cantidad
            };

            return(model);
        }
Beispiel #5
0
        private double CosteoKardexMovimiento(Common.Models.Contabilidad.CostoProduccion costoProduccion, KardexMovimiento kardexMovimiento, ApplicationDbContext context)
        {
            double costoMovimientoDetalle = 0;

            switch (kardexMovimiento.TipoMovimiento.Codigo)
            {
            case "ENT":
                var recepcion = context.RecepcionDetalles
                                .FirstOrDefault(o => o.RecepcionDetalleId == kardexMovimiento.RecepcionDetalleId)
                                .Recepcion;
                //Orden de Produccion
                if (!string.IsNullOrEmpty(recepcion.OrdenProduccionId))
                {
                    var ordenProduccion = context.OrdenProduccions
                                          .Where(o => o.OrdenProduccionId == recepcion.OrdenProduccionId)
                                          .FirstOrDefault();
                    costoMovimientoDetalle = CosteoOrdenProduccion(costoProduccion, ordenProduccion, context);
                }
                //Compra
                if (!string.IsNullOrEmpty(recepcion.CompraId))
                {
                    var compraDetalle = context.CompraDetalles
                                        .Where(o => o.CompraDetalleId == kardexMovimiento.RecepcionDetalle.CompraDetalleId)
                                        .FirstOrDefault();
                    costoMovimientoDetalle = compraDetalle.PrecioTotal;
                }
                break;

            case "SAL":
                CosteaMercaderia(costoProduccion, kardexMovimiento.MercaderiaId, fechaInicioDateTimePicker.Value, kardexMovimiento.Fecha);
                costoMovimientoDetalle = context.CostoProduccionMovimientos
                                         .FirstOrDefault(o => o.KardexMovimientoId == kardexMovimiento.KardexMovimientoId)
                                         .Costo;
                break;
            }
            return(costoMovimientoDetalle);
        }