Ejemplo n.º 1
0
        /// <summary>
        /// Genera la Linea para Encabezado de Calidad
        /// </summary>
        /// <param name="lineas"></param>
        /// <param name="contenedorCosteoEntrada"></param>
        private void GeneraLineaEncabezadoCalidad(IList <LineaImpresionInfo> lineas, ContenedorCosteoEntradaGanadoInfo contenedorCosteoEntrada)
        {
            var opcionesLinea = new OpcionesLinea
            {
                Fuente          = new Font(NombreFuente, 10),
                MargenIzquierdo = 10
            };
            StringBuilder  SB        = new StringBuilder();
            IList <String> calidades = contenedorCosteoEntrada.EntradaGanadoCosteo.ListaCalidadGanado.Where(sexo => 'M'.Equals(sexo.CalidadGanado.Sexo)).Select(calidad => calidad.CalidadGanado.Descripcion).ToList();

            for (int indexCalidad = 0; indexCalidad < calidades.Count; indexCalidad++)
            {
                SB.Append(calidades[indexCalidad]);
                SB.Append(String.Empty.PadRight(5));
            }
            var linea = new LineaImpresionInfo
            {
                Texto    = String.Format("{0}   {1}        {2}", "CALIDAD", "Sexo", SB.ToString()),
                Opciones = opcionesLinea
            };

            lineas.Add(linea);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Metodo para Guardar/Modificar una Entrada Ganado Costeo
 /// </summary>
 /// <param name="contenedorCosteoEntradaGanadoInfo"></param>
 public MemoryStream Guardar(ContenedorCosteoEntradaGanadoInfo contenedorCosteoEntradaGanadoInfo)
 {
     try
     {
         Logger.Info();
         var          entradaGanadoCosteoBL = new EntradaGanadoCosteoBL();
         MemoryStream stream = entradaGanadoCosteoBL.Guardar(contenedorCosteoEntradaGanadoInfo);
         return(stream);
     }
     catch (ExcepcionServicio)
     {
         throw;
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Genera la Poliza
        /// </summary>
        public override void GenerarPoliza(ContenedorCosteoEntradaGanadoInfo contenedorCosteoEntrada)
        {
            try
            {
                var ticket = new Ticket
                {
                    OpcionesImpresora = new OpcionesImpresora
                    {
                        Impresora   = NombreImpresora,
                        MaximoLinea = MaxCaracteresLinea
                    }
                };
                IList <EntradaGanadoCostoInfo> costoProveedores = contenedorCosteoEntrada.EntradaGanadoCosteo.ListaCostoEntrada
                                                                  .Where(prov => prov.TieneCuenta == false)
                                                                  .Select(prov => prov).ToList();

                IList <EntradaGanadoCostoInfo> costoCuenta = contenedorCosteoEntrada.EntradaGanadoCosteo.ListaCostoEntrada
                                                             .Where(cuenta => cuenta.TieneCuenta == true)
                                                             .Select(cuenta => cuenta).ToList();
                IList <LineaImpresionInfo> lineas = new List <LineaImpresionInfo>();
                IList <int> clavesProveedor       = costoProveedores.Select(clave => clave.Proveedor.ProveedorID).ToList();
                if (clavesProveedor != null)
                {
                    var          operadorBL         = new OperadorBL();
                    OperadorInfo operador           = operadorBL.ObtenerPorID(contenedorCosteoEntrada.EntradaGanado.OperadorID);
                    string       organizacionOrigen = contenedorCosteoEntrada.EntradaGanado.OrganizacionOrigen;
                    string       folio = Convert.ToString(contenedorCosteoEntrada.EntradaGanado.FolioEntrada);
                    string       fecha = contenedorCosteoEntrada.EntradaGanado.FechaEntrada.ToShortDateString();

                    IList <EntradaGanadoCostoInfo> entradaGanadoCosto;
                    for (int indexClavesProveedor = 0; indexClavesProveedor < clavesProveedor.Count; indexClavesProveedor++)
                    {
                        entradaGanadoCosto = costoProveedores.Where(clave => clave.Proveedor.ProveedorID
                                                                    == clavesProveedor[indexClavesProveedor])
                                             .Select(datos => datos).ToList();
                        GeneraLineaCabecero(lineas, folio);
                        GeneraLineaReferenciaFecha(lineas, organizacionOrigen, fecha);
                        GeneraLineaProveedorComprador(lineas
                                                      , entradaGanadoCosto[0].Proveedor, operador);
                        for (int indexCostos = 0; indexCostos < entradaGanadoCosto.Count; indexCostos++)
                        {
                            GeneraLineaGuiones(lineas, '-', 90);
                            GeneraLineaEncabezadoDetalle(lineas);

                            IList <EntradaDetalleInfo> detalleEntrada = contenedorCosteoEntrada.EntradaGanadoCosteo.ListaEntradaDetalle
                                                                        .Where(det => det.EntradaGanadoCosteoID == entradaGanadoCosto[indexCostos].EntradaGanadoCosteoID)
                                                                        .Select(detalle => detalle).ToList();
                            GeneraLineasDetalle(lineas, detalleEntrada, contenedorCosteoEntrada.EntradaGanado);
                            GeneraLineaGuiones(lineas, '-', 90);
                            GeneraLineaTotales(lineas, detalleEntrada);
                            GeneraLineaGuiones(lineas, '-', 90);

                            decimal pesoNeto = contenedorCosteoEntrada.EntradaGanado.PesoBruto - contenedorCosteoEntrada.EntradaGanado.PesoTara;
                            GeneraLineasEncabezadoMerma(lineas, detalleEntrada, pesoNeto);
                            GeneraLineaEncabezadoCalidad(lineas, contenedorCosteoEntrada);
                            IList <EntradaGanadoCalidadInfo> calidades = contenedorCosteoEntrada.EntradaGanadoCosteo.ListaCalidadGanado
                                                                         .Where(cal => cal.EntradaGanadoCosteoID
                                                                                == entradaGanadoCosto[indexCostos].EntradaGanadoCosteoID).ToList();
                            GeneraLineaCalidad(lineas, calidades, organizacionOrigen);

                            GeneraLineaEncabezadoCostos(lineas);
                            GeneraLineaCostos(lineas, costoProveedores);
                            GeneraLineaCostosTotales(lineas);
                            GeneraLineaTotalCostos(lineas, costoProveedores);
                            GeneraLineaGuiones(lineas, '_', 90);
                            GeneraLineaEncabezadoRegistroContable(lineas);
                            GeneraLineaSubEncabezadoRegistroContable(lineas);
                            GeneraLineaRegistroContable(lineas);
                            GeneraLineaGuiones(lineas, '-', 90);
                            GenerarLineaSumaRegistroContable(lineas);
                            GeneraLineaGuiones(lineas, '-', 90);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw ex;
            }
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Genera la Poliza
 /// </summary>
 public override void GenerarPoliza(ContenedorCosteoEntradaGanadoInfo contenedorCosteoEntrada)
 {
     throw new System.NotImplementedException();
 }
Ejemplo n.º 5
0
        /// <summary>
        /// Obtiene los valores para la reimpresion de
        /// la poliza de entrada de ganado
        /// </summary>
        /// <param name="entradaGanado"></param>
        /// <param name="polizaClave"> </param>
        private MemoryStream ReimprimirPolizaEntrada(EntradaGanadoInfo entradaGanado, TipoPolizaInfo polizaClave)
        {
            EntradaGanadoCosteoInfo entradaGanadoCosteo;
            var esGanadera            = false;
            var entradaGanadoCosteoBL = new EntradaGanadoCosteoBL();

            if (entradaGanado.TipoOrigen == TipoOrganizacion.Ganadera.GetHashCode())
            {
                var interfaceSalidaTraspasoBL = new InterfaceSalidaTraspasoBL();
                entradaGanadoCosteo =
                    interfaceSalidaTraspasoBL.ObtenerDatosInterfaceSalidaTraspaso(entradaGanado.OrganizacionID, entradaGanado.FolioOrigen);
                esGanadera = true;

                EntradaGanadoCosteoInfo entradaGanadoCosteoComplementoCostos
                    = entradaGanadoCosteoBL.ObtenerPorEntradaGanadoID(entradaGanado.EntradaGanadoID);
                entradaGanadoCosteo.ListaCostoEntrada.AddRange(entradaGanadoCosteoComplementoCostos.ListaCostoEntrada.Where(id => id.Costo.CostoID != 1));
            }
            else
            {
                entradaGanadoCosteo = entradaGanadoCosteoBL.ObtenerPorEntradaGanadoID(entradaGanado.EntradaGanadoID);
            }

            MemoryStream pdf = null;

            if (entradaGanadoCosteo != null)
            {
                if (!esGanadera)
                {
                    var          cuentaPL          = new CuentaBL();
                    const string CUENTA_INVENTARIO = "CTAINVTRAN";
                    entradaGanadoCosteo.ListaCostoEntrada.ForEach(costo =>
                    {
                        if (!string.IsNullOrWhiteSpace(costo.DescripcionCuenta))
                        {
                            return;
                        }
                        var claveContable = cuentaPL.ObtenerPorClaveCuentaOrganizacion(CUENTA_INVENTARIO,
                                                                                       entradaGanado.OrganizacionOrigenID);
                        if (claveContable != null)
                        {
                            costo.DescripcionCuenta = claveContable.Descripcion;
                        }
                    });
                }
                var contenedorCosteoEntrada = new ContenedorCosteoEntradaGanadoInfo
                {
                    EntradaGanado       = entradaGanado,
                    EntradaGanadoCosteo = entradaGanadoCosteo
                };
                PolizaAbstract poliza;
                var            tipoPoliza = esGanadera ? TipoPoliza.EntradaGanadoDurango : TipoPoliza.EntradaGanado;
                if (esGanadera)
                {
                    poliza = FabricaPoliza.ObtenerInstancia().ObtenerTipoPoliza(tipoPoliza);
                }
                else
                {
                    poliza = FabricaPoliza.ObtenerInstancia().ObtenerTipoPoliza(tipoPoliza);
                }
                var polizaBL       = new PolizaBL();
                int organizacionID = entradaGanado.OrganizacionID;

                IList <PolizaInfo> polizasEntrada = polizaBL.ObtenerPoliza(tipoPoliza, organizacionID,
                                                                           entradaGanado.FechaEntrada,
                                                                           entradaGanado.FolioEntrada.ToString(),
                                                                           polizaClave.ClavePoliza, 1);
                if (polizasEntrada != null)
                {
                    polizasEntrada = poliza.GeneraPoliza(contenedorCosteoEntrada);
                    pdf            = poliza.ImprimePoliza(contenedorCosteoEntrada, polizasEntrada);
                }
            }
            return(pdf);
        }
Ejemplo n.º 6
0
 /// <summary>
 /// Metodo que inicializa los objetos principales de la pantalla
 /// </summary>
 private void InicializaContexto()
 {
     ContenedorCosteoEntrada = new ContenedorCosteoEntradaGanadoInfo();
 }