Exemplo n.º 1
0
        /// <summary>
        /// Obtiene la organizacion seleccionada en el filtro
        /// </summary>
        /// <param name="filtro"></param>
        private void ObtenerDatosOrganizacion(string filtro)
        {
            try
            {
                var premezclaPl = new PremezclaPL();
                listaPremezcla = premezclaPl.ObtenerPorOrganizacion(skAyudaOrganizacion.Info);

                if (listaPremezcla != null)
                {
                    if (listaPremezcla.Count > 0)
                    {
                        if (organizacionAnterior != int.Parse(filtro))
                        {
                            foreach (var premezclaInfo in listaPremezcla)
                            {
                                premezclaInfo.Habilitado = false;
                            }
                            dgPremezclas.ItemsSource        = listaPremezcla;
                            listaSolicitud                  = new List <SolicitudPremezclaInfo>();
                            dgSolicitudProducto.ItemsSource = new List <SolicitudPremezclaInfo>();

                            FechaPL fechaPl = new FechaPL();
                            var     fecha   = fechaPl.ObtenerFechaActual();
                            txtFecha.Text = fecha.FechaActual.ToShortDateString().ToString(CultureInfo.InvariantCulture);
                            skAyudaOrganizacion.IsEnabled = false;
                            LimpiarCampos();
                            organizacionAnterior = int.Parse(filtro);
                        }
                    }
                }
                else
                {
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.SolicitudPremezclas_OrganizacionSinConfigurar,
                                      MessageBoxButton.OK,
                                      MessageImage.Stop);
                    skAyudaOrganizacion.AsignarFoco();
                    LimpiarTodoOrganizacion();
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }
        }
 /// <summary>
 /// Obtiene los datos de la premezcla y determina si esta configurada o no
 /// </summary>
 /// <param name="clave"></param>
 private void ObtenerDatosPremezcla(string clave)
 {
     try
     {
         if (skAyudaOrganizacion.Clave != string.Empty && skAyudaOrganizacion.Descripcion != string.Empty)
         {
             var premezclaPl   = new PremezclaPL();
             var premezclaInfo = new PremezclaInfo()
             {
                 Organizacion =
                     new OrganizacionInfo()
                 {
                     OrganizacionID = Convert.ToInt32(skAyudaOrganizacion.Clave)
                 },
                 Producto = new ProductoInfo()
                 {
                     ProductoId = Convert.ToInt32(skAyudaPremezcla.Clave)
                 },
                 Activo = EstatusEnum.Activo
             };
             premezclaInfo = premezclaPl.ObtenerPorProductoIdOrganizacionId(premezclaInfo);
             if (premezclaInfo != null)
             {
                 //Llenar grid premezcla
                 listaPremezclaDetalle.Clear();
                 listaPremezclasEliminadas.Clear();
                 listaPremezclaDetalle.AddRange(premezclaInfo.ListaPremezclaDetalleInfos);
                 GridPremezclaDetalle.ItemsSource = null;
                 GridPremezclaDetalle.ItemsSource = premezclaInfo.ListaPremezclaDetalleInfos;
                 skAyudaOrganizacion.IsEnabled    = false;
                 skAyudaPremezcla.IsEnabled       = false;
                 skAyudaProducto.AsignarFoco();
             }
             else
             {
                 //Enviar mensaje
                 if (SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                       Properties.Resources.ConfiguracionDePremezclas_MensajePremezclaSinConfiguracion,
                                       MessageBoxButton.YesNo, MessageImage.Warning) == MessageBoxResult.Yes)
                 {
                     listaPremezclaDetalle.Clear();
                     listaPremezclasEliminadas.Clear();
                     GridPremezclaDetalle.ItemsSource = null;
                     GridPremezclaDetalle.ItemsSource = listaPremezclaDetalle;
                     skAyudaProducto.LimpiarCampos();
                     skAyudaProducto.AsignarFoco();
                     nuevaPremezcla = true;
                 }
                 else
                 {
                     listaPremezclaDetalle.Clear();
                     listaPremezclasEliminadas.Clear();
                     GridPremezclaDetalle.ItemsSource = null;
                     GridPremezclaDetalle.ItemsSource = listaPremezclaDetalle;
                     skAyudaPremezcla.LimpiarCampos();
                     skAyudaPremezcla.AsignarFoco();
                 }
             }
         }
         else
         {
             //Enviar mensaje
             SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                               Properties.Resources.ConfiguracionPremezclaAgregarProducto_MensajeOrganizacion, MessageBoxButton.OK,
                               MessageImage.Warning);
             skAyudaPremezcla.LimpiarCampos();
             skAyudaOrganizacion.AsignarFoco();
         }
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                           Properties.Resources.ConfiguracionPremezcla_MensajeErrorObtenerDatosPremezcla, MessageBoxButton.OK,
                           MessageImage.Error);
     }
 }
 /// <summary>
 /// Guarda los productos seleccionados o modificados
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void BtnGuardar_OnClick(object sender, RoutedEventArgs e)
 {
     try
     {
         var resultadoValidacion = ValidarGuardar();
         if (resultadoValidacion.Resultado)
         {
             var configuracionPremezclasPl = new ConfiguracionPremezclasPL();
             var premezclaPl   = new PremezclaPL();
             var premezclaInfo = new PremezclaInfo()
             {
                 Organizacion =
                     new OrganizacionInfo()
                 {
                     OrganizacionID = Convert.ToInt32(skAyudaOrganizacion.Clave)
                 },
                 Producto = new ProductoInfo()
                 {
                     ProductoId = Convert.ToInt32(skAyudaPremezcla.Clave)
                 },
                 Activo = EstatusEnum.Activo
             };
             premezclaInfo = premezclaPl.ObtenerPorProductoIdOrganizacionId(premezclaInfo);
             if (premezclaInfo == null)
             {
                 premezclaInfo = new PremezclaInfo()
                 {
                     Organizacion =
                         new OrganizacionInfo()
                     {
                         OrganizacionID = Convert.ToInt32(skAyudaOrganizacion.Clave)
                     },
                     Descripcion = skAyudaPremezcla.Descripcion,
                     Producto    =
                         new ProductoInfo()
                     {
                         ProductoId  = Convert.ToInt32(skAyudaPremezcla.Clave),
                         Descripcion = skAyudaProducto.Info.Descripcion
                     },
                     Activo          = EstatusEnum.Activo,
                     UsuarioCreacion = new UsuarioInfo()
                     {
                         UsuarioCreacionID = usuario
                     }
                 };
             }
             else
             {
                 premezclaInfo.Guardado        = true;
                 premezclaInfo.UsuarioCreacion = new UsuarioInfo()
                 {
                     UsuarioCreacionID = usuario
                 };
                 premezclaInfo.UsuarioModificacion = new UsuarioInfo()
                 {
                     UsuarioModificacionID = usuario
                 };
             }
             configuracionPremezclasPl.Guardar(premezclaInfo, listaPremezclaDetalle, listaPremezclasEliminadas, usuario);
             SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                               Properties.Resources.CrearContrato_DatosGuardadosExito,
                               MessageBoxButton.OK, MessageImage.Correct);
             LimpiaProductos();
             LimpiarControles();
             skAyudaOrganizacion.AsignarFoco();
         }
         else
         {
             var mensaje = "";
             mensaje = string.IsNullOrEmpty(resultadoValidacion.Mensaje)
                 ? Properties.Resources.CrearContrato_MensajeValidacionDatosEnBlanco
                 : resultadoValidacion.Mensaje;
             SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                               mensaje, MessageBoxButton.OK, MessageImage.Stop);
         }
     }
     catch (Exception exg)
     {
         Logger.Error(exg);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                           Properties.Resources.ConfiguracionPremezcla_MensajeErrorGuardar, MessageBoxButton.OK,
                           MessageImage.Error);
     }
 }