예제 #1
0
        private List <Style> GenerarEstilosDeFondo(BEOIDUA datoDUA)
        {
            datoDUA.lstOIDUACosto.ToList().ForEach(p =>
            {
                p.lstCostoDetalle.ToList().ForEach(e =>
                {
                    if (e.codOIDUACosto != 0)
                    {
                        coloresFondo.Add("#FFFF00");
                    }
                });
            });
            List <Style> listaStyles = new List <Style>();

            foreach (string colorFondo in coloresFondo)
            {
                listaStyles.Add(new Style
                {
                    Id = "Id" + colorFondo,
                    BackGroundColor     = colorFondo,
                    Border              = false,
                    FontBold            = false,
                    FontSize            = 9,
                    HorizontalAlignment = Style.HorizontalAlignmentOptions.Left,
                    WrapText            = true
                });
            }

            return(listaStyles);
        }
예제 #2
0
        public BEOIDUA FindAll(BaseFiltroImp pFiltro)
        {
            BEOIDUA oIDUA = new BEOIDUA();

            oIDUACostoData    = new OIDUACostoData();
            oIDUAProductoData = new OIDUAProductoData();
            try
            {
                oIDUA = oOIDUAData.Find(pFiltro);
                oIDUA.lstOIDUACosto = oIDUACostoData.List(pFiltro);
                if (oIDUA.lstOIDUACosto.Count > 0)
                {
                    OrdenImportacionData oOrdenImportacionData = new OrdenImportacionData();
                    int contador = 1;
                    foreach (BEOIDUACosto itemCosto in oIDUA.lstOIDUACosto)
                    {
                        if (itemCosto.codRegResumenCosto != "IMCST001")
                        {
                            itemCosto.lstCostoDetalle = oOrdenImportacionData.ListCostoDetalle(new BaseFiltroImp {
                                codOIDUA = pFiltro.codOIDUA, codRegResumenCosto = itemCosto.codRegResumenCosto
                            });
                        }
                        itemCosto.codOIDUACosto = contador;
                        ++contador;
                    }
                }
                oIDUA.lstOIDUAProducto = oIDUAProductoData.List(pFiltro);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(oIDUA);
        }
예제 #3
0
        /// <summary>
        /// Almacena el registro de una ENTIDAD de registro de Tipo OIDUA
        /// En la BASE de DATO la Tabla : [Importaciones.OIDUA]
        /// INSERT [GestionComercial.ProductoPrecio]
        /// UPDATE [Almacen.ProductoExistencia]
        /// INSERT [Produccion.ProductoKardex]
        /// UPDATE [Almacen.ProductoSeriado]        Seriado
        /// UPDATE [Almacen.ProductoExistencia]     Seriado
        /// INSERT [Produccion.ProductoKardex ]     Seriado
        /// UPDATE [Importaciones].[OIDUA]
        /// <summary>
        /// <param name = >itemOIDUA</param>
        public bool Update(BEOIDUA pOIDUA)
        {
            int?codigoRetorno = null;

            try
            {
                using (_ImportacionesDataContext SQLDC = new _ImportacionesDataContext(conexion))
                {
                    SQLDC.omgc_U_OIDUA(
                        pOIDUA.codOIDUA,
                        pOIDUA.codOrdenImportacion,
                        pOIDUA.codDocumentoEstado,
                        pOIDUA.codRegCanal,
                        pOIDUA.numOIDUA,
                        pOIDUA.fecEmision,
                        pOIDUA.fecPago,
                        pOIDUA.decFactor,
                        pOIDUA.indActivo,
                        pOIDUA.segUsuarioEdita);
                    codigoRetorno = 0;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(codigoRetorno.HasValue ? true : false);
        }
예제 #4
0
        /// <summary>
        /// Almacena el registro de una ENTIDAD de registro de Tipo OIDUA
        /// En la BASE de DATO la Tabla : [Importaciones.OIDUA]
        /// </summary>
        /// <param name="pOIDUA"></param>
        /// <returns></returns>
        public bool Insert(BEOIDUA pOIDUA)
        {
            int?codigoRetorno = null;

            try
            {
                using (_ImportacionesDataContext SQLDC = new _ImportacionesDataContext(conexion))
                {
                    SQLDC.omgc_I_OIDUA(
                        ref codigoRetorno,
                        pOIDUA.codOrdenImportacion,
                        pOIDUA.codDocumentoEstado,
                        pOIDUA.codRegCanal,
                        pOIDUA.numOIDUA,
                        pOIDUA.fecEmision,
                        pOIDUA.fecPago,
                        pOIDUA.decFactor,
                        pOIDUA.indActivo,
                        pOIDUA.segUsuarioCrea);
                    pOIDUA.codOIDUA = codigoRetorno.Value;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(codigoRetorno > 0 ? true : false);
        }
예제 #5
0
        private List <RowData> CrearDatosReporteCostoDUA(BEOIDUA itemDUA, int posicionColumna, uint posicionFila, Dictionary <int, string> titulosCelda)
        {
            ExcelUtil      documento                 = new ExcelUtil();
            List <RowData> filasExcel                = new List <RowData>();
            List <RowData> filasExcelDemanda         = new List <RowData>();
            List <RowData> filasExcelVsDemandaProfit = new List <RowData>();

            foreach (var costo in itemDUA.lstOIDUACosto)
            {
                filasExcel.AddRange(CrearFilaExcelPaginaCostoDUA(costo, posicionColumna, posicionFila));
                ++posicionFila;
                if (costo.lstCostoDetalle.Count > 0)
                {
                    foreach (var costoDetalle in costo.lstCostoDetalle)
                    {
                        filasExcel.AddRange(CrearFilaExcelDetalleCosto(posicionColumna, posicionFila, costoDetalle));
                        ++posicionFila;
                    }
                }
                ++posicionFila;
            }

            filasExcel.AddRange(CrearTOTALCostoDUA(itemDUA, posicionColumna, posicionFila, titulosCelda));
            ++posicionFila;

            filasExcel.AddRange(CrearFOBCostoDUA(itemDUA, posicionColumna, posicionFila, titulosCelda));
            ++posicionFila;

            filasExcel.AddRange(CrearFactorCostoDUA(itemDUA, posicionColumna, posicionFila, titulosCelda));
            ++posicionFila;

            ++posicionFila;
            filasExcel.AddRange(CrearCabeceraCostoProducto(posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.CabeceraCuadro)));
            ++posicionFila;

            int contad = 1;

            foreach (var costoProdu in itemDUA.lstOIDUAProducto)
            {
                costoProdu.codOIDUAProducto = contad;
                filasExcel.AddRange(CrearFilaExcelPaginaCostoProducto(costoProdu, posicionColumna, posicionFila));
                ++contad;
                ++posicionFila;
            }
            return(filasExcel);
        }
예제 #6
0
        /// <summary>
        /// Retorna una ENTIDAD de registro de la Entidad Importaciones.OIDUA
        /// En la BASE de DATO la Tabla : [Importaciones.OIDUA]
        /// <summary>
        /// <returns>Entidad</returns>
        public BEOIDUA Find(BaseFiltroImp pFiltro)
        {
            BEOIDUA oIDUA = new BEOIDUA();

            oIDUACostoData    = new OIDUACostoData();
            oIDUAProductoData = new OIDUAProductoData();
            try
            {
                oIDUA = oOIDUAData.Find(pFiltro);
                oIDUA.lstOIDUACosto    = oIDUACostoData.List(pFiltro);
                oIDUA.lstOIDUAProducto = oIDUAProductoData.List(pFiltro);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(oIDUA);
        }
예제 #7
0
 /// <summary>
 /// Almacena el registro de una ENTIDAD de registro de Tipo OIDUA
 /// En la BASE de DATO la Tabla : [Importaciones.OIDUA]
 /// </summary>
 /// <param name="oIDUA"></param>
 /// <returns></returns>
 public ReturnValor Update(BEOIDUA oIDUA)
 {
     try
     {
         using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
         {
             oReturnValor.Exitosa = oOIDUAData.Update(oIDUA);
             if (oReturnValor.Exitosa)
             {
                 oReturnValor.Message = HelpMessages.Evento_EDIT;
                 tx.Complete();
             }
         }
     }
     catch (Exception ex)
     {
         oReturnValor = HelpException.mTraerMensaje(ex);
     }
     return(oReturnValor);
 }
예제 #8
0
        /// <summary>
        /// Retorna una ENTIDAD de registro de la Entidad Importaciones.OIDUA
        /// En la BASE de DATO la Tabla : [Importaciones.OIDUA]
        /// </summary>
        /// <param name="pFiltro"></param>
        /// <returns></returns>
        public BEOIDUA Find(BaseFiltroImp pFiltro)
        {
            BEOIDUA oIDUA = new BEOIDUA();

            try
            {
                using (_ImportacionesDataContext SQLDC = new _ImportacionesDataContext(conexion))
                {
                    var resul = SQLDC.omgc_S_OIDUA(pFiltro.codOIDUA, null, null, pFiltro.segUsuario);
                    foreach (var item in resul)
                    {
                        oIDUA = new BEOIDUA()
                        {
                            codOIDUA              = item.codOIDUA,
                            codOrdenImportacion   = item.codOrdenImportacion,
                            codDocumentoEstado    = item.codDocumentoEstado,
                            codRegCanal           = item.codRegCanal,
                            numOIDUA              = item.numOIDUA,
                            fecEmision            = item.fecEmision,
                            fecPago               = item.fecPago,
                            decFactor             = item.decFactor,
                            indActivo             = item.indActivo,
                            segUsuarioCrea        = item.segUsuarioCrea,
                            segUsuarioEdita       = item.segUsuarioEdita,
                            segFechaCrea          = item.segFechaCrea,
                            segFechaEdita         = item.segFechaEdita,
                            segMaquinaCrea        = item.segMaquina,
                            auxcodDocumentoEstado = item.codDocumentoEstadoNombre,
                            auxcodRegCanal        = item.codRegCanalNombre
                        };
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(oIDUA);
        }
예제 #9
0
        private List <RowData> CrearFOBCostoDUA(BEOIDUA itemDUA, int posicionColumna, uint posicionFila, Dictionary <int, string> titulosCelda)
        {
            ExcelUtil       documento   = new ExcelUtil();
            List <CellData> celdasExcel = new List <CellData>();
            List <RowData>  filasExcel  = new List <RowData>();
            CellData        celda;

            celda = documento.CreateCell("", posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.FondoDefecto));
            celdasExcel.Add(celda);

            posicionColumna = posicionColumna + 1;
            celda           = documento.CreateCell("TOTAL FOB:", posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.CabeceraCuadro));
            celdasExcel.Add(celda);

            posicionColumna = posicionColumna + 1;
            celda           = documento.CreateCell(itemDUA.lstOIDUACosto.Where(X => X.codRegResumenCosto == "IMCST001").Sum(f => f.decMontoCosto).ToString("N2"), posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.FondoValorPagina));
            celdasExcel.Add(celda);

            posicionColumna = posicionColumna + 1;

            filasExcel.Add(documento.CreateRow(celdasExcel, posicionFila));

            return(filasExcel);
        }
예제 #10
0
        private List <RowData> CrearFactorCostoDUA(BEOIDUA itemDUA, int posicionColumna, uint posicionFila, Dictionary <int, string> titulosCelda)
        {
            ExcelUtil       documento   = new ExcelUtil();
            List <CellData> celdasExcel = new List <CellData>();
            List <RowData>  filasExcel  = new List <RowData>();
            CellData        celda;

            celda = documento.CreateCell("", posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.FondoDefecto));
            celdasExcel.Add(celda);

            posicionColumna = posicionColumna + 1;
            celda           = documento.CreateCell("FACTOR :", posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.CabeceraCuadro));
            celdasExcel.Add(celda);

            posicionColumna = posicionColumna + 1;
            celda           = documento.CreateCell(itemDUA.decFactor == null ? "0.000" : itemDUA.decFactor.Value.ToString("N3"), posicionColumna, posicionFila, Convert.ToString(EstilosReporteDUA.FondoValorPagina));
            celdasExcel.Add(celda);

            posicionColumna = posicionColumna + 1;

            filasExcel.Add(documento.CreateRow(celdasExcel, posicionFila));

            return(filasExcel);
        }