public static int GuardarVentaDetalle(string codigoCorral, int causaPrecioId, VentaGanadoInfo ventaGanado, List <VentaGanadoDetalleInfo> ventaGanadoDetalle, int tipoVenta, int totalCabezas)
        {
            int valorRetorno = 0;
            var datosVenta   = new GrupoVentaGanadoInfo();

            try
            {
                var seguridad = (SeguridadInfo)HttpContext.Current.Session["Seguridad"];
                datosVenta.OrganizacionId = seguridad.Usuario.Organizacion.OrganizacionID;
                datosVenta.UsuarioID      = seguridad.Usuario.UsuarioID;
                datosVenta.TotalCabezas   = totalCabezas;
                datosVenta.TipoVenta      = (TipoVentaEnum)tipoVenta;
                datosVenta.CausaPrecioID  = causaPrecioId;
                //informacion del la organzacion y usuario
                if (seguridad != null)
                {
                    var ventaGanadoDetallePl = new VentaGanadoDetallePL();
                    ventaGanado.UsuarioModificacionID = datosVenta.UsuarioID;
                    for (var i = 0; i < ventaGanadoDetalle.Count; i++)
                    {
                        ventaGanadoDetalle[i].FotoVenta = TipoFoto.Venta.ToString() + '/' + ventaGanadoDetalle[i].FotoVenta;
                    }
                    datosVenta.CodigoCorral        = codigoCorral;
                    datosVenta.VentaGanado         = ventaGanado;
                    datosVenta.VentaGandadoDetalle = ventaGanadoDetalle;
                    valorRetorno = ventaGanadoDetallePl.GuardarDetalle(datosVenta);
                }
            }
            catch (Exception ex)
            {
                valorRetorno = -1;
            }

            return(valorRetorno);
        }
예제 #2
0
        /// <summary>
        /// Método con el cual se valida el folio del ticket ingresado
        /// </summary>
        private bool ValidarFolioTicket()
        {
            if (txtFolioTicket.Text.Trim() != "")
            {
                var        venta        = new VentaGanadoPL();
                var        ventadetalle = new VentaGanadoDetallePL();
                var        usuarioPl    = new UsuarioPL();
                TicketInfo Ticket       = new TicketInfo();

                Ticket.FolioTicket = int.Parse(txtFolioTicket.Text.Trim());
                if ((string)cmbTipo.SelectedItem == Properties.Resources.SalidaIndividualDeGanado_cmbTipoExterno)
                {
                    Ticket.TipoVenta = TipoVentaEnum.Externo;
                }
                else
                {
                    Ticket.TipoVenta = TipoVentaEnum.Propio;
                }

                listaAretes.Items.Clear();
                skAyudaCliente.LimpiarCampos();

                Ticket.Organizacion = AuxConfiguracion.ObtenerOrganizacionUsuario();
                VentaGanadoInfo ganado = venta.ObtenerVentaGanadoPorTicket(Ticket);
                if (ganado != null)
                {
                    UsuarioInfo usuarioSubioGanado = usuarioPl.ObtenerPorID(ganado.UsuarioModificacionID);
                    var         clientePl          = new ClientePL();
                    var         cliente            = new ClienteInfo {
                        ClienteID = ganado.ClienteID, CodigoSAP = ganado.CodigoSAP
                    };
                    cliente = clientePl.ObtenerClientePorCliente(cliente);
                    skAyudaCliente.Clave       = cliente.CodigoSAP;
                    skAyudaCliente.Descripcion = cliente.Descripcion;
                    skAyudaCliente.Info        = cliente;
                    txtCorral.Text             = ganado.CodigoCorral;

                    var pesoTara = decimal.Parse(ganado.PesoTara.ToString(CultureInfo.InvariantCulture).Replace(".00", "").Replace(",00", ""));
                    txtPesoTara.Text = pesoTara.ToString(CultureInfo.CurrentCulture);

                    txtPesoTara.IsEnabled    = false;
                    txtFolioTicket.IsEnabled = false;
                    if (!basculaConectada)
                    {
                        txtPesoBruto.IsEnabled = true;
                    }
                    skAyudaCliente.IsEnabled = false;
                    _pesoTomado = false;
                    ObtenerPesoBascula();

                    List <VentaGanadoDetalleInfo> detalle = ventadetalle.ObtenerVentaGanadoPorTicket(ganado.VentaGanadoID);
                    if (Ticket.TipoVenta == TipoVentaEnum.Propio)
                    {
                        if (detalle != null)
                        {
                            if (detalle.Count > 0)
                            {
                                lblTotalCabezas.IsEnabled        = true;
                                lblNumeroTotalCabezas.IsEnabled  = true;
                                lblNumeroTotalCabezas.Content    = detalle.Count.ToString();
                                lblNumeroTotalCabezas.Visibility = Visibility.Visible;
                                lblTotalCabezas.Visibility       = Visibility.Visible;
                            }

                            listaAretes.Visibility = Visibility.Visible;
                            cmbTipo.IsEnabled      = false;
                            cmbTipo.SelectedIndex  = 0;

                            foreach (VentaGanadoDetalleInfo ventaGanadoDetalleInfo in detalle)
                            {
                                listaAretes.Items.Add(ventaGanadoDetalleInfo);
                            }
                            nombreUsuarioSubioGanado = usuarioSubioGanado.Nombre;
                        }
                        else
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.SalidaIndividualGanado_MensajeTicketNoTieneAretes,
                                              MessageBoxButton.OK, MessageImage.Warning);
                            Limpiar();

                            return(false);
                        }
                    }
                    else
                    {
                        if (ganado.TotalCabezas > 0)
                        {
                            cmbTipo.SelectedIndex  = 1;
                            cmbTipo.IsEnabled      = false;
                            listaAretes.Visibility = Visibility.Hidden;

                            lblTotalCabezas.IsEnabled        = true;
                            lblNumeroTotalCabezas.IsEnabled  = true;
                            lblNumeroTotalCabezas.Content    = ganado.TotalCabezas.ToString();
                            lblNumeroTotalCabezas.Visibility = Visibility.Visible;
                            lblTotalCabezas.Visibility       = Visibility.Visible;

                            nombreUsuarioSubioGanado = usuarioSubioGanado.Nombre;
                        }
                        else
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.SalidaIndividualGanado_MensajeTicketNoTieneAretes,
                                              MessageBoxButton.OK, MessageImage.Warning);
                            Limpiar();

                            return(false);
                        }
                    }
                }
                else
                {
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.SalidaIndividualGanado_MensajeFolioTicketInvalido,
                                      MessageBoxButton.OK, MessageImage.Warning);
                    Limpiar();
                    return(false);
                }
            }
            return(true);
        }