Beispiel #1
0
        public async Task <RespuestaDatos> GuardarTruequeDetalle(ProdSerTruequeTrue detalle)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                ProductosServiciosPc publicacionComprador = await _cOFachada.GetPublicacionPorIdPublicacion(detalle.Idproductoserviciocomprador);

                ProductosServiciosPc publicacionVendedor = await _cOFachada.GetPublicacionPorIdPublicacion(detalle.Idproductoserviciovendedor);

                DemografiaCor      demografiaComprador = _cOGeneralFachada.GetDemografiaPorId(publicacionComprador.Idusuario);
                DemografiaCor      demografiaVendedor  = _cOGeneralFachada.GetDemografiaPorId(publicacionVendedor.Idusuario);
                TruequesPedidoTrue trueque             = new TruequesPedidoTrue
                {
                    Idcomprador = demografiaComprador.Id,
                    Idvendedor  = demografiaVendedor.Id
                };
                respuestaDatos = await _tRTruequeBiz.GuardarTrueque(trueque, demografiaComprador, demografiaVendedor);

                trueque = GetTruequePorIdCompradorIdVendedor(demografiaComprador.Id, demografiaVendedor.Id);
                detalle.Idtruequepedido = trueque.Id;
                RespuestaDatos respuestaDetalle = await _tRTruequeBiz.GuardarTruequeDetalle(detalle, publicacionVendedor, publicacionComprador);

                respuestaDatos.Mensaje = respuestaDatos.Mensaje;
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
        internal async Task <bool> FavoritoMio(DemografiaCor demografiaCor, ProductosServiciosPc publicacion)
        {
            try
            {
                bool respuesta = false;
                if (demografiaCor == null)
                {
                    throw new COExcepcion("El usuario no existe. ");
                }

                if (publicacion == null)
                {
                    throw new COExcepcion("La publicación no existe. ");
                }

                var ans = _repoFavorito.FavoritoMio(demografiaCor, publicacion);

                if (ans != null)
                {
                    respuesta = true;
                }

                return(respuesta);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
        }
        internal async Task <string> GetImagenSocial(DemografiaCor demografiaCor)
        {
            try
            {
                if (demografiaCor == null)
                {
                    throw new COExcepcion("El usuario no existe ");
                }

                string fileName = demografiaCor.UrlImagenPersonal;

                if (!fileName.Contains($@"imagen-usuario-buya-{demografiaCor.Id}"))
                {
                    throw new COExcepcion("No tiene acceso a esta imagen. ");
                }

                string directorio = _configuration["ImageSociales:DirectorioSocial"] + "/Social";

                return(Path.Combine(directorio, Path.GetFileName(fileName)));
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = demografiaCor.Email,
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.MODIFICAR_USUARIO
                });
                throw e;
            }
        }
        public async Task <bool> FavoritoMio(int idPublicacion, int idUsuario)
        {
            DemografiaCor        demografiaCor = _cOGeneralFachada.GetDemografiaPorId(idUsuario);
            ProductosServiciosPc publicacion   = await _cOContenidoBiz.GetPublicacionPorIdPublicacion(idPublicacion);

            return(await _cOContenidoBiz.FavoritoMio(demografiaCor, publicacion));
        }
Beispiel #5
0
        public async Task <RespuestaDatos> ModificarDemografia(DemografiaCor demografiaCor, Servidor.Middleware.Contratos.Core.Seguridad.ModificarDemografia model)
        {
            using FeContext context = new FeContext();
            RespuestaDatos respuestaDatos;

            try
            {
                context.DemografiaCors.Attach(demografiaCor);
                demografiaCor.Nombre       = model.Nombre;
                demografiaCor.Apellido     = model.Apellido;
                demografiaCor.Telefono     = model.Telefono;
                demografiaCor.Direccion    = model.Direccion;
                demografiaCor.Modificacion = DateTime.Now;
                context.SaveChanges();
                respuestaDatos = new RespuestaDatos {
                    Codigo = COCodigoRespuesta.OK, Mensaje = "Usuario modificado exitosamente!"
                };
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = demografiaCor.Email,
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.MODIFICAR_USUARIO
                });
                throw new COExcepcion("Ocurrió un problema al modificar el usuario.");
            }
            return(respuestaDatos);
        }
        internal async Task <int> GuardarPedido(PedidosPed pedido, DemografiaCor demografiaCor)
        {
            int idPedido;

            if (demografiaCor != null)
            {
                try
                {
                    pedido.Fechapedido = DateTime.Now;
                    idPedido           = await _repoPedidosPed.GuardarPedido(pedido);
                }
                catch (COExcepcion e)
                {
                    RepoErrorLog.AddErrorLog(new ErrorLog
                    {
                        Mensaje   = e.Message,
                        Traza     = e.StackTrace,
                        Usuario   = demografiaCor.Email,
                        Creacion  = DateTime.Now,
                        Tipoerror = COErrorLog.ENVIO_CORREO
                    });
                    throw e;
                }
            }
            else
            {
                throw new COExcepcion("El usuario ingresado no existe.");
            }
            return(idPedido);
        }
        internal CuentaBancariaEmprendedor ObtenerDatosbancarios(DemografiaCor demografiaCor)
        {
            if (demografiaCor == null)
            {
                throw new COExcepcion("El usuario no existe. ");
            }

            return(_repoDatosBancarios.ObtenerDatosbancarios(demografiaCor.Id));
        }
        internal async Task <bool> IsImagen(DemografiaCor demografiaCor)
        {
            var respuesta = false;

            if (demografiaCor.UrlImagenPersonal != null)
            {
                respuesta = true;
            }
            return(respuesta);
        }
 public async Task <List <ContratoPublicacionPc> > GetPublicacionesPorDescuento(int idUsuario)
 {
     try
     {
         DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(idUsuario);
         return(await _cOContenidoBiz.GetPublicacionesPorDescuento(idUsuario, demografiaCor));
     }
     catch (COExcepcion e)
     {
         throw e;
     }
 }
Beispiel #10
0
        internal async Task <RespuestaDatos> GuardarDemografia(DemografiaCor demografia)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                respuestaDatos = await _repoDemografia.GuardarDemografia(demografia);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
 public async Task <List <ContratoPublicacionPc> > FiltrarPublicacion(int idCategoria, int idTipoPublicacion, int idUsuario,
                                                                      decimal precioMenor, decimal precioMayor, decimal calificacionMenor, decimal calificacionMayor)
 {
     try
     {
         DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(idUsuario);
         return(await _cOContenidoBiz.FiltrarPublicacion(idCategoria, idTipoPublicacion, demografiaCor, precioMenor, precioMayor,
                                                         calificacionMenor, calificacionMayor));
     }
     catch (COExcepcion e)
     {
         throw e;
     }
 }
        public async Task <RespuestaDatos> GuardarDemografia(DemografiaCor demografia)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                respuestaDatos = await _cOGeneralBiz.GuardarDemografia(demografia);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
        public async Task <RespuestaDatos> GuardarNotificacion(NotificacionesCor notificacion)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                DemografiaCor demografiaCor = GetDemografiaPorId(notificacion.Idusuario);
                respuestaDatos = respuestaDatos = await _cOGeneralBiz.GuardarNotificacion(notificacion, demografiaCor);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
Beispiel #14
0
        public async Task <DataPse> PagoPSE(ContratoPSE contratoPSE)
        {
            List <ProdSerXVendidosPed> listaPedido          = _pEFachada.GetProductosPedidosPorIdPedido(contratoPSE.IdPedido);
            DemografiaCor               demografiaComprador = _cOGeneralFachada.GetDemografiaPorId(contratoPSE.IdDemografiaComprador);
            TipoDocumentoCor            documentoComprador  = _cOGeneralFachada.GetTipoDocumentoPorId(demografiaComprador.Tipodocumentocorid);
            List <ProductosServiciosPc> productos           = new List <ProductosServiciosPc>();

            for (int i = 0; i < listaPedido.Count; i++)
            {
                ProductosServiciosPc producto = await _cOFachada.GetPublicacionPorIdPublicacion(listaPedido[i].Idproductoservico);

                productos.Add(producto);
            }
            return(await _fAFacturaBiz.PagoPSE(contratoPSE, listaPedido, demografiaComprador, documentoComprador, productos));
        }
        public async Task <RespuestaDatos> GuardarPublicacion(ProductosServiciosPc productosServicios, IFormFileCollection files)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(productosServicios.Idusuario);
                respuestaDatos = respuestaDatos = await _cOContenidoBiz.GuardarPublicacion(productosServicios, demografiaCor, files);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
Beispiel #16
0
        public async Task <RespuestaDatos> GetTipoDocumentoPorId([FromBody] DemografiaCor demografia)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                respuestaDatos = await _cOGeneralFachada.GuardarDemografia(demografia);
            }
            catch (COExcepcion e)
            {
                respuestaDatos = new RespuestaDatos {
                    Codigo = COCodigoRespuesta.ERROR, Mensaje = e.Message
                };
            }
            return(respuestaDatos);
        }
Beispiel #17
0
        public async Task <RespuestaDatos> GuardarTrueque(TruequesPedidoTrue trueque)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                DemografiaCor demografiaVendedor  = _cOGeneralFachada.GetDemografiaPorId(trueque.Idvendedor);
                DemografiaCor demografiaComprador = _cOGeneralFachada.GetDemografiaPorId(trueque.Idcomprador);
                respuestaDatos = respuestaDatos = await _tRTruequeBiz.GuardarTrueque(trueque, demografiaVendedor, demografiaComprador);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
Beispiel #18
0
        public async Task <int> GuardarDemografia(DemografiaCor demografia)
        {
            using FeContext context = new FeContext();
            RespuestaDatos respuestaDatos;

            try
            {
                context.Add(demografia);
                context.SaveChanges();
                return(demografia.Id);
            }
            catch (Exception e)
            {
                throw new COExcepcion("Ocurrió un problema al intentar agregar la categoría.");
            }
        }
        public async Task <RespuestaDatos> GuardarFavorito(ProductosFavoritosDemografiaPc favorito)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                DemografiaCor        demografiaCor = _cOGeneralFachada.GetDemografiaPorId(favorito.Iddemografia);
                ProductosServiciosPc publicacion   = await _cOContenidoBiz.GetPublicacionPorIdPublicacion(favorito.Idproductoservicio);

                respuestaDatos = respuestaDatos = await _cOContenidoBiz.GuardarFavorito(favorito, demografiaCor, publicacion);
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
        public async Task <DataPse> PagoPSE(ContratoPSE contratoPSE,
                                            List <ProdSerXVendidosPed> listaPedido,
                                            DemografiaCor demografiaComprador,
                                            TipoDocumentoCor documentoComprador,
                                            List <ProductosServiciosPc> productos)
        {
            int?total = 0;

            foreach (ProdSerXVendidosPed p in listaPedido)
            {
                total += p.Preciototal;
            }
            //TODO Hay que cambiar estos y parametrizarlos
            var comision = total * 0.01;
            var checkOut = total + comision + 2380;

            total = (int?)checkOut;
            String   uuid     = Guid.NewGuid().ToString();
            PseModel response = epayco.BankCreate(
                COEpayco.CODIGO_BANCARIO[contratoPSE.Banco],
                uuid, // ID de factura
                "Pedido numero " + contratoPSE.IdPedido.ToString(),
                total.ToString(),
                "0",
                "0",
                "COP",
                "0", // 0 para persona, 1 para comercio
                documentoComprador.Codigo,
                demografiaComprador.Numerodocumento.ToString(),
                demografiaComprador.Nombre,
                demografiaComprador.Apellido,
                demografiaComprador.Email,
                "CO",
                demografiaComprador.Telefono.ToString(),
                "url_response",
                "url_confirmation",
                "method_confirmation"
                );

            if (response.success)
            {
                return(response.data);
            }
            return(null);
        }
        internal async Task <RespuestaDatos> GuardarDemografia(DemografiaCor demografia)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                await _repoDemografia.GuardarDemografia(demografia);

                respuestaDatos = new RespuestaDatos {
                    Codigo = COCodigoRespuesta.OK, Mensaje = "OK"
                };
            }
            catch (COExcepcion e)
            {
                throw e;
            }
            return(respuestaDatos);
        }
Beispiel #22
0
        public async Task <RespuestaDatos> GuardarDemografia(DemografiaCor demografia)
        {
            using FeContext context = new FeContext();
            RespuestaDatos respuestaDatos;

            try
            {
                context.Add(demografia);
                context.SaveChanges();
                respuestaDatos = new RespuestaDatos {
                    Codigo = COCodigoRespuesta.OK, Mensaje = "Categoría creada exitosamente."
                };
            }
            catch (Exception e)
            {
                throw new COExcepcion("Ocurrió un problema al intentar agregar la categoría.");
            }
            return(respuestaDatos);
        }
Beispiel #23
0
        public async Task <List <ContratoFacturas> > ListarTodasLasFacturasPorUsuario(int idUsuario)
        {
            List <ContratoFacturas> facturas = new List <ContratoFacturas>();
            DemografiaCor           usuario  = _cOGeneralFachada.GetDemografiaPorId(idUsuario);

            if (usuario != null)
            {
                List <FacturasFac> ps = _fAFacturaBiz.GetFacturasPorIdVendedor(usuario.Id);
                for (int i = 0; i < ps.Count; i++)
                {
                    facturas.Add(await CabeceraFactura(ps[i].Id));
                }
            }
            else
            {
                throw new COExcepcion("El usuario ingresado no existe.");
            }
            return(facturas);
        }
Beispiel #24
0
        public async Task <List <ContratoFacturas> > ListarTodosLosPedidosPorUsuario(int idUsuario)
        {
            List <ContratoFacturas> pedidos = new List <ContratoFacturas>();
            DemografiaCor           usuario = _cOGeneralFachada.GetDemografiaPorId(idUsuario);

            if (usuario != null)
            {
                List <PedidosPed> ps = _pEPedidoBiz.GetPedidosPorIdUsuario(usuario.Id);
                for (int i = 0; i < ps.Count; i++)
                {
                    pedidos.Add(await CabeceraPedido(ps[i].Id));
                }
            }
            else
            {
                throw new COExcepcion("El usuario ingresado no existe.");
            }
            return(pedidos);
        }
 public int ValidarPublicacionesPorIdUsuario(int idDemografia)
 {
     try
     {
         DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(idDemografia);
         return(_cOContenidoBiz.ValidarPublicacionesPorIdUsuario(demografiaCor));
     }
     catch (COExcepcion e)
     {
         RepoErrorLog.AddErrorLog(new ErrorLog
         {
             Mensaje   = e.Message,
             Traza     = e.StackTrace,
             Usuario   = "no_aplica",
             Creacion  = DateTime.Now,
             Tipoerror = COErrorLog.ENVIO_CORREO
         });
         throw e;
     }
 }
 public async Task <List <ContratoPublicacionPc> > GetPublicacionesHabilitadasTrueque(int idDemografia)
 {
     try
     {
         DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(idDemografia);
         return(await _cOContenidoBiz.GetPublicacionesHabilitadasTrueque(demografiaCor));
     }
     catch (COExcepcion e)
     {
         RepoErrorLog.AddErrorLog(new ErrorLog
         {
             Mensaje   = e.Message,
             Traza     = e.StackTrace,
             Usuario   = "no_aplica",
             Creacion  = DateTime.Now,
             Tipoerror = COErrorLog.ENVIO_CORREO
         });
         throw e;
     }
 }
        internal int ValidarPublicacionesPorIdUsuario(DemografiaCor demografia)
        {
            int validarPublicacion;

            if (demografia != null)
            {
                if (demografia.Rolcorid == 2)
                {
                    validarPublicacion = _repoProducto.GetPublicacionesPorIdUsuario(demografia.Id).Count;
                }
                else
                {
                    throw new COExcepcion("El usuario ingresado no es un emprendedor.");
                }
            }
            else
            {
                throw new COExcepcion("El usuario ingresado no existe.");
            }
            return(validarPublicacion);
        }
Beispiel #28
0
        public async Task <int> GuardarPedido(PedidosPed pedido)
        {
            int idPedido;

            try
            {
                DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(pedido.Idusuario);
                idPedido = idPedido = await _pEPedidoBiz.GuardarPedido(pedido, demografiaCor);
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                throw e;
            }
            return(idPedido);
        }
        public async Task <RespuestaDatos> GuardarDemografiaReportada(DemografiaReportadaCor demografiaReportada)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                DemografiaCor demografiaCor = _cOGeneralBiz.GetDemografiaPorId(demografiaReportada.Iddemografia);
                respuestaDatos = await _cOGeneralBiz.GuardarDemografiaReportada(demografiaReportada, demografiaCor);
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                throw e;
            }
            return(respuestaDatos);
        }
Beispiel #30
0
        internal async Task <RespuestaDatos> GuardarTrueque(TruequesPedidoTrue trueque, DemografiaCor demografiaVendedor,
                                                            DemografiaCor demografiaComprador)
        {
            RespuestaDatos respuestaDatos;

            if (demografiaVendedor != null)
            {
                if (demografiaComprador != null)
                {
                    if (demografiaVendedor.Rolcorid == CORol.EMPRENDEDOR && demografiaComprador.Rolcorid == CORol.EMPRENDEDOR)
                    {
                        try
                        {
                            respuestaDatos = await _repoTrueque.GuardarTrueque(trueque);
                        }
                        catch (COExcepcion e)
                        {
                            throw e;
                        }
                    }
                    else
                    {
                        throw new COExcepcion("El vendedor/comprador ingresado no es un emprendedor.");
                    }
                }
                else
                {
                    throw new COExcepcion("El comprador ingresado no existe.");
                }
            }
            else
            {
                throw new COExcepcion("El vendedor ingresado no existe.");
            }
            return(respuestaDatos);
        }