/// <summary> /// Metodo que valida los datos para guardar /// </summary> /// <returns></returns> private bool ValidaGuardar() { bool resultado = true; string mensaje = string.Empty; try { if (string.IsNullOrWhiteSpace(Contexto.CodigoSAP)) { resultado = false; mensaje = Properties.Resources.ClienteEdicion_MsgCodigoSAPRequerida; txtCodigoSAP.Focus(); } else if (string.IsNullOrWhiteSpace(Contexto.Descripcion)) { resultado = false; mensaje = Properties.Resources.ClienteEdicion_MsgDescripcionRequerida; txtDescripcion.Focus(); } else if (cmbActivo.SelectedItem == null) { resultado = false; mensaje = Properties.Resources.ClienteEdicion_MsgActivoRequerida; cmbActivo.Focus(); } else { int clienteId = Contexto.ClienteID; var clientePL = new ClientePL(); ClienteInfo cliente = clientePL.ObtenerPorDescripcion(Contexto.Descripcion); if (cliente != null && (clienteId == 0 || clienteId != cliente.ClienteID)) { resultado = false; mensaje = string.Format(Properties.Resources.ClienteEdicion_MsgDescripcionExistente, cliente.ClienteID); } } } catch (Exception ex) { throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } if (!string.IsNullOrWhiteSpace(mensaje)) { SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning); } return(resultado); }
/// <summary> /// Obtiene los datos del elemento seleccionado en la ayuda Folio de Entrada. /// </summary> /// <param name="filtro"></param> private void ObtenerDatosAyudaFolioEntrada(string filtro) { List <string> aretes = new List <string>(); muertesEnTransitoInfoSeleccionado = skAyudaFolioEntrada.Info; InicializarAyudaFolioEntrada(); skAyudaCliente.LimpiarCampos(); MuertesEnTransitoPL muertePl = new MuertesEnTransitoPL(); ValidacionesFolioVentaMuerte validaciones = new ValidacionesFolioVentaMuerte(); if (muertesEnTransitoInfoSeleccionado != null && muertesEnTransitoInfoSeleccionado.EntradaGanadoID != 0) { foreach (AnimalInfo arete in dgAretes.Items) { aretes.Add(arete.Arete); } validaciones = muertePl.ValidarFolio(muertesEnTransitoInfoSeleccionado.FolioEntrada, organizacionID, aretes); if (!validaciones.RegistroCondicionMuerte) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_FolioSinCondicionMuerte, MessageBoxButton.OK, MessageImage.Warning); InicializarFormulario(); skAyudaFolioEntrada.AsignarFoco(); } else if (validaciones.FolioConMuertesRegistradas) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_FolioConRegistroMuertes, MessageBoxButton.OK, MessageImage.Warning); InicializarFormulario(); skAyudaFolioEntrada.AsignarFoco(); } else if (muertesEnTransitoInfoSeleccionado.MuertesTransito == 0) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_msgNoTieneMuertes, MessageBoxButton.OK, MessageImage.Warning); InicializarFormulario(); skAyudaFolioEntrada.AsignarFoco(); } else if (muertesEnTransitoInfoSeleccionado.MuertesRegistradas != 0) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_msgMuertesRegistradas, MessageBoxButton.OK, MessageImage.Warning); InicializarFormulario(); skAyudaFolioEntrada.AsignarFoco(); } else if (!validaciones.EstatusLote) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_LoteInactivo, MessageBoxButton.OK, MessageImage.Stop); InicializarFormulario(); skAyudaFolioEntrada.AsignarFoco(); } else if (validaciones.Cabezas == 0) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_LoteSinCabezas, MessageBoxButton.OK, MessageImage.Stop); InicializarFormulario(); skAyudaFolioEntrada.AsignarFoco(); } else { muertesEnTransitoInfoSeleccionado.OrganizacionID = organizacionID; txtArete.IsEnabled = true; chkSinArete.IsChecked = false; if (muertesEnTransitoInfoSeleccionado.TipoOrigenID == (int)TipoOrganizacion.CompraDirecta) { txtArete.IsEnabled = false; chkSinArete.IsChecked = true; } else { AnimalesDelCorral = new List <AnimalInfo>(); var muertesEnTransitoPl = new MuertesEnTransitoPL(); AnimalesDelCorral = muertesEnTransitoPl.ObtenerAretesPorFolioEntrada(muertesEnTransitoInfoSeleccionado); } if (ProveedoresAsignadosAlEmbarque(muertesEnTransitoInfoSeleccionado.EmbarqueID) <= 1) { var pl = new ProveedorPL(); var cl = new ClientePL(); var clienteInfo = new ClienteInfo(); var info = new ProveedorInfo() { CodigoSAP = muertesEnTransitoInfoSeleccionado.CodigoProveedor }; clienteInfo = cl.ObtenerPorDescripcion(muertesEnTransitoInfoSeleccionado.Proveedor); Contexto.Proveedor = pl.ObtenerPorCodigoSAP(info); if (clienteInfo != null) { skAyudaCliente.IsEnabled = false; muertesEnTransitoInfoSeleccionado.Cliente = clienteInfo; skAyudaCliente.Clave = muertesEnTransitoInfoSeleccionado.Cliente.CodigoSAP; skAyudaCliente.Descripcion = muertesEnTransitoInfoSeleccionado.Cliente.Descripcion; Contexto.Cliente = clienteInfo; } else { skAyudaCliente.IsEnabled = true; skAyudaCliente.Clave = string.Empty; skAyudaCliente.Descripcion = string.Empty; SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.MuertesEnTransito_ProveedorNoEsCliente, MessageBoxButton.OK, MessageImage.Warning); skAyudaCliente.Focus(); } } else { skAyudaCliente.IsEnabled = true; } Contexto.Proveedor.EmbarqueID = muertesEnTransitoInfoSeleccionado.EmbarqueID; countAreteGenerico = muertesEnTransitoInfoSeleccionado.MuertesRegistradas + 1; txtOrigen.Text = muertesEnTransitoInfoSeleccionado.Origen; txtTipoOrigen.Text = muertesEnTransitoInfoSeleccionado.TipoOrigen; txtCorral.Text = muertesEnTransitoInfoSeleccionado.Corral; txtLote.Text = muertesEnTransitoInfoSeleccionado.Lote; txtCabezas.Text = muertesEnTransitoInfoSeleccionado.Cabezas.ToString(); txtMuertesEnTransito.Text = muertesEnTransitoInfoSeleccionado.MuertesTransito.ToString(); Animales.Clear(); dgAretes.Items.Refresh(); txtArete.Clear(); txtArete.Focus(); } } }