/// <summary>
        /// Almacena el registro de una ENTIDAD de registro de Tipo ProductoPrecio
        /// En la BASE de DATO la Tabla : [GestionComercial.ProductoPrecio]
        /// <summary>
        /// <param name="itemProductoPrecio"></param>
        /// <returns></returns>
        public ReturnValor InsertUpdate(BEProductoPrecio objProductoPrecio)
        {
            try
            {
                oReturnValor = validaDatos(objProductoPrecio, HelpEventos.Accion.Nuevo);
                if (!oReturnValor.Exitosa)
                {
                    return(oReturnValor);
                }

                using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
                {
                    var resultUpdate = productoPrecioData.InsertUpdate(objProductoPrecio);

                    oReturnValor.Exitosa = resultUpdate.ErrorCode > 0 ? true : false;
                    oReturnValor.Message = oReturnValor.Exitosa ? HelpEventos.MessageEvento(HelpEventos.Process.NEW) :
                                           resultUpdate.ErrorMessage;
                    if (oReturnValor.Exitosa)
                    {
                        tx.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                oReturnValor = HelpException.mTraerMensaje(ex, false, this.GetType().Name + '.' + MethodBase.GetCurrentMethod().Name,
                                                           objProductoPrecio.segUsuarioEdita,
                                                           objProductoPrecio.codEmpresa.ToString());
            }
            return(oReturnValor);
        }
        private ReturnValor validaDatos(BEProductoPrecio objProductoPrecio, HelpEventos.Accion pAccion)
        {
            ReturnValor returnValor = new ReturnValor();

            if (string.IsNullOrEmpty(objProductoPrecio.CodigoArguMoneda))
            {
                returnValor.Message = HelpMessages.gc_DOCUM_SeleccionaMoneda;
                return(returnValor);
            }
            if (string.IsNullOrEmpty(objProductoPrecio.CodigoPuntoVenta))
            {
                returnValor.Message = HelpMessages.VALIDACIONPuntoDeVenta;
                return(returnValor);
            }
            if (pAccion == HelpEventos.Accion.Nuevo)
            {
                if (string.IsNullOrEmpty(objProductoPrecio.segUsuarioCrea))
                {
                    returnValor.Message = HelpMessages.VALIDACIONUsuarioEmpleado;
                    return(returnValor);
                }
            }
            if (pAccion == HelpEventos.Accion.Edición)
            {
                if (string.IsNullOrEmpty(objProductoPrecio.segUsuarioEdita))
                {
                    returnValor.Message = HelpMessages.VALIDACIONUsuarioEmpleado;
                    return(returnValor);
                }
            }
            returnValor.Exitosa = true;
            return(returnValor);
        }
Exemple #3
0
        public BEProductoPrecio Find(BaseFiltroProductoPrecio filtro)
        {
            BEProductoPrecio objProductoPrecio = null;

            try
            {
                using (_GestionComercialDataContext SQLDC = new _GestionComercialDataContext(conexion))
                {
                    var resul = SQLDC.omgc_S_ProductoPrecio(filtro.codEmpresa,
                                                            filtro.codProducto,
                                                            filtro.codProductoPrecio,
                                                            null,
                                                            null,
                                                            filtro.indEstado);
                    foreach (var item in resul)
                    {
                        objProductoPrecio = new BEProductoPrecio()
                        {
                            codProductoPrecio      = item.codProductoPrecio,
                            codProducto            = item.codProducto.HasValue ? item.codProducto.Value : 0,
                            CodigoProducto         = item.CodigoProducto,
                            CodigoArguMoneda       = item.CodigoArguMoneda,
                            CodigoListaPrecio      = item.CodigoListaPrecio,
                            ValorCosto             = item.ValorCosto,
                            ValorVenta             = item.ValorVenta,
                            MargenUtilidad         = item.MargenUtilidad * 100,
                            MediaPorcentaje        = item.MediaPorcentaje * 100,
                            PorcenComision         = item.PorcenComision * 100,
                            PorcenComisionMax      = item.PorcenComisionMax * 100,
                            DescuentoMaximo        = item.DescuentoMaximo * 100,
                            Estado                 = item.Estado,
                            segUsuarioEdita        = item.SegUsuarioEdita,
                            segFechaEdita          = item.SegFechaEdita,
                            segMaquinaEdita        = item.SegMaquina,
                            CodigoArguMonedaNombre = item.CodigoArguMonedaNombre,
                            CodigoProductoNombre   = item.CodigoProductoNombre,
                            CodigoPuntoVenta       = item.CodigoPuntoVenta,
                            CodigoPuntoVentaNombre = item.CodigoPuntoVentaNombre,
                        };
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(objProductoPrecio);
        }
        /// <summary>
        /// Retorna una ENTIDAD de registro de la Entidad GestionComercial.ProductoPrecio
        /// En la BASE de DATO la Tabla : [GestionComercial.ProductoPrecio]
        /// <summary>
        /// <returns>Entidad</returns>
        public BEProductoPrecio Find(BaseFiltroProductoPrecio pProductoPrecioBuscar)
        {
            BEProductoPrecio objProductoPrecio = null;

            try
            {
                objProductoPrecio = productoPrecioData.Find(pProductoPrecioBuscar);
            }
            catch (Exception ex)
            {
                var returnValor = HelpException.mTraerMensaje(ex, false, this.GetType().Name + '.' + MethodBase.GetCurrentMethod().Name,
                                                              pProductoPrecioBuscar.segUsuarioActual, pProductoPrecioBuscar.codEmpresa.ToString());
                throw new Exception(returnValor.Message);
            }
            return(objProductoPrecio);
        }
Exemple #5
0
        /// <summary>
        /// Almacena el registro de una ENTIDAD de registro de Tipo ProductoPrecio
        /// En la BASE de DATO la Tabla : [GestionComercial.ProductoPrecio]
        /// <summary>
        /// <param name="productoPrecio"></param>
        /// <returns></returns>
        public DTOResponseProcedure InsertUpdate(BEProductoPrecio productoPrecio)
        {
            DTOResponseProcedure codigoRetorno = null;

            try
            {
                using (_GestionComercialDataContext SQLDC = new _GestionComercialDataContext(conexion))
                {
                    var resultInsertUpdate = SQLDC.omgc_I_ProductoPrecio(
                        productoPrecio.codProductoPrecio,
                        productoPrecio.codEmpresa,
                        productoPrecio.codProducto,
                        productoPrecio.CodigoArguMoneda,
                        productoPrecio.CodigoListaPrecio,
                        productoPrecio.CodigoPuntoVenta,
                        productoPrecio.ValorCosto,
                        productoPrecio.ValorVenta,
                        productoPrecio.MargenUtilidad / 100,
                        productoPrecio.MediaPorcentaje / 100,
                        productoPrecio.PorcenComision / 100,
                        productoPrecio.PorcenComisionMax / 100,
                        productoPrecio.DescuentoMaximo / 100,
                        productoPrecio.Estado,
                        productoPrecio.segUsuarioCrea,
                        productoPrecio.segMaquinaCrea);

                    foreach (var item in resultInsertUpdate)
                    {
                        codigoRetorno = new DTOResponseProcedure
                        {
                            ErrorCode    = item.ErrorCode,
                            ErrorMessage = item.ErrorMessage
                        };
                    }
                    return(codigoRetorno);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }