public MntCostoOrdenProduccionForm(string parentId, ObservableListSource <CostoOrdenProduccionViewModel> viewModelList)
 {
     InitializeComponent();
     ViewModel     = new CostoOrdenProduccionViewModel(parentId);
     ViewModelList = viewModelList;
     costoOrdenProduccionViewModelBindingSource.DataSource = ViewModel;
 }
 public MntCostoOrdenProduccionForm(CostoOrdenProduccionViewModel viewModel
                                    , ObservableListSource <CostoOrdenProduccionViewModel> viewModelList)
 {
     InitializeComponent();
     ViewModel.CopyOf(viewModel);
     ViewModelList = viewModelList;
     costoOrdenProduccionViewModelBindingSource.DataSource = ViewModel;
 }
Ejemplo n.º 3
0
        private void BuscarAgregarOrdenes()
        {
            ViewModel.CostoOrdenProduccionViewModels.Clear();
            using (var context = new ApplicationDbContext())
            {
                var ordenProduccions = context.OrdenProduccions
                                       .Where(o => o.PlantaFabricacionId == ViewModel.PlantaFabricacionId &&
                                              o.Fecha >= fechaInicioDateTimePicker.Value &&
                                              o.Fecha <= fechaFinDateTimePicker.Value)
                                       .ToList();

                foreach (var ordenProduccion in ordenProduccions)
                {
                    var recepcion = ordenProduccion.Recepcions.FirstOrDefault();
                    if (recepcion == null)
                    {
                        throw new Exception(string.Format("La Orden: {0} no cuenta con recepcion asociada"
                                                          , ordenProduccion.Codigo));
                    }
                    var recepcionDetalle = recepcion.RecepcionDetalles.FirstOrDefault();
                    if (recepcionDetalle == null)
                    {
                        throw new Exception(string.Format("La Recepcion: {0} no cuenta con detalles"
                                                          , recepcion.Codigo));
                    }
                    var kardexMovimiento = recepcionDetalle.KardexMovimientos.FirstOrDefault();
                    if (kardexMovimiento == null)
                    {
                        throw new Exception(string.Format("La Recepcion: {0} no cuenta con movimiento de kardex asociado"
                                                          , recepcion.Codigo));
                    }

                    CostoOrdenProduccionViewModel costoOrdenProduccionViewModel = new CostoOrdenProduccionViewModel(ViewModel.CostoProduccionId);
                    costoOrdenProduccionViewModel.OrdenProduccionId       = ordenProduccion.OrdenProduccionId;
                    costoOrdenProduccionViewModel.KardexMovimientoId      = kardexMovimiento.KardexMovimientoId;
                    costoOrdenProduccionViewModel.OrdenProduccion         = ordenProduccion.Codigo;
                    costoOrdenProduccionViewModel.CodigoMercaderia        = ordenProduccion.Mercaderia.Codigo;
                    costoOrdenProduccionViewModel.NombreMercaderia        = ordenProduccion.Mercaderia.Nombre;
                    costoOrdenProduccionViewModel.ProcedimientoProduccion = ordenProduccion.ProcedimientoProduccion.Nombre;
                    costoOrdenProduccionViewModel.UnidadMedida            = ordenProduccion.UnidadMedida.Nombre;
                    costoOrdenProduccionViewModel.Cantidad = ordenProduccion.Cantidad;

                    ViewModel.CostoOrdenProduccionViewModels.Add(costoOrdenProduccionViewModel);
                }
            }
        }