Terminado

Mejoras en Web Php (Proyecto 2) + integraciones

Publicado el 18 Mayo, 2020 en Programación y Tecnología

Sobre este proyecto

Abierto

Es recomendable crear un tablero (por ejemplo en trello) para el seguimiento de las tareas con sus respectivos paneles (tareas, en curso, para revisar, hecho, bugs, etc...)

Sería conveniente que disponga de Skype para realizar llamadas (cámara no necesaria por si alguien pregunta), esto es para estar en contacto una vez al dia o cada dos para resolver dudas, ver avances, explicar funcionamiento actual de la web e ir enfocando los cambios de una manera visual ya que a parte de Skype podremos usar Anydesk u otra herramienta donde podré compartir la pantalla y podremos ver juntos los detalles de cada apartado en caso de ser necesario.

También es necesario que todos los cambios queden reflejados en un documento el cual se deberá entregar al finalizar el proyecto, esto lo necesitamos para que si en un futuro alguien tiene que tocar y/o modificar/añadir algo, sepa donde está cada cosa. Es un tipo guía con todos los cambios de código y las especificaciones que el profesional estime oportunas, por ejemplo un doc con cada apartado del proyecto y ahi indicará todos los pasos que ha realizado o que ha añadido y donde, etc... Que ha eliminado, etc...

A continuación detallaré todos los aspectos a tener en cuenta:



- Revisar el motor de correo electrónico, actualmente contamos con un sistema que envia correos a los usuarios, contamos desde el panel de admin con un apartado donde podemos editar los correos que se envian, nos gustaria revisar y detectar posibles bugs, además estamos pensando en integrar SENDGRID como motor de envio. El profesional deberá estudiar la integración en caso de ser una buena opción, si se hace la integración para sincronizar sendgrid con los envios de correos se proveería de acceso a nuestro panel de Sendgrid para realizar los ajustes necesarios, en caso de que se lleve a cabo debería ser integración mediante api web. En la revisión prestar mucha atención sobre todo al primer correo de verificación del usuario, una vez se registra, antes de poder iniciar sesión debe verificar el correo, creemos que ahora mismo no es asi, además de que a veces llega el correo y otras no..







1-    Revisar el motor de correo electrónico, actualmente contamos con un sistema que envia correos a los usuarios, contamos desde el panel de admin con un apartado donde podemos editar los correos que se envían (existen templates las cuales modificamos desde el propio panel de admin), nos gustaria revisar y detectar posibles bugs, además estamos pensando en integrar SENDGRID como motor de envio. El profesional deberá estudiar la integración en caso de ser una buena opción, si se hace la integración para sincronizar sendgrid con los envios de correos se proveería de acceso a nuestro panel de Sendgrid para realizar los ajustes necesarios, en caso de que se lleve a cabo debería ser integración mediante api web. En la revisión prestar mucha atención sobre todo al primer correo de verificación del usuario, una vez se registra, antes de poder iniciar sesión debe verificar el correo, creemos que ahora mismo no es asi, además de que a veces llega el correo y otras no..
tareas expuestas:

a.    Revisar posibles bugs, tarea que quedaría solucionada integrando sendgrid y eliminado el motor antiguo, luego se deberán sincronizar los templates existentes y configurarlos para que cuadre todo y no de fallo.

b.    Según se vayan habilitando nuevas funciones que necesiten correos electrónicos, tipo por ejemplo si se añaden pagos recurrentes pues habrá o que cambiar o modificar los antiguos y adecuarlos al nuevo funcionamiento, todo lo que se cambie debe cuadrar con los correos, por lo que se debe preveer cuantos se añadirán según el estudio del profesional. Pero recalco que las plantillas tienen templates, con su código obviamente por detrás pero se deberán ajustar pues por si deben calcular cifrar para que aparezca, etc… una mejora completa del correo.

c.    Entra dentro de este apartado la ayuda con la configuración de sendgrid, desde el propio panel, os daremos los accesos, hemos hecho una configuración básico y hemos agregado los registros mx necesarios al dominio, pero es necesario ayuda con esto para no dejarnos nada y dejarlo preparado.


2-    En el panel de admin hemos encontrado un error en la parte de *Sub Admin*, aqui es donde creamos subadmins y seleccionamos los permisos, el menu de selección de permisos está superpuesto sobre el menu de elegir imagen de perfil, hay que ajustarlo para que se vea bien en su respectivo sitio. Aqui entiendo es Css y poco mas, como mucho un ajuste pequeño en php. tareas expuestas:

a.
Arreglar este bug que hace que cuando el superadmin quiere dar de alta subadmins, las opciones están superpuestas sobre otro campo y además los checks corresponden a la opción anterior o posterior, porque como podréis ver en la demo (que daremos por mensaje el acceso al panel de admin) si quitas un check no es la opción de al lado, si no la anterior… y eso como es lógico deberemos arregarlo, es un cambio sencillo y bastante rápido.


3-    Dentro del panel de admin, hay apartados donde hay que seleccionar un usuario, actualmente te sale un listado con todos los usuarios sin ningun tipo de orden, la idea es arreglar esto y permitir que a parte de la lista podamos buscar un nombre tecleandolo, para hacerlo más ágil, un claro ejemplo sería en send notifications>create new notification, ahi aparece choose user y sale el listado pero no podemos escribir para hacer una busqueda rapida. Sería aplicarlo en todos los campos de busqueda de usuarios. No son muchos pero hay varios en los que cambiar esto.
tareas expuestas:

a.    Actualmente el admin desde el panel puede crear eventos, o asignar packs a los usuarios, o crear comercios por la razón que sea, tenemos el control de esto también y de enviar notificaciones, etc… hay varias zonas donde esto esta ubicado ahora mismo como *Choose User* (Puede ser que esto cambie porque estamos traduciendo al español la plataforma, pero en todo caso seria algo como escoger usuario o seleccionar usuario para que en caso de que lo veais sepáis que es y lo localicéis), entonces si seleccionas ese campo se te abre un listado de usuarios sin orden ninguno (aparentemente) y no podemos escribir para buscar, si no que tenemos que recorrernos la lista para buscar el usuario, en el caso de notificaciones creo que esta la opción de TODOS, pero apsa la mismo o seleccionas todos o te toca recorrerte la lista infinita que no esta con orden, la idea de esto es, en todos los campos que sean choose user deberemos agregar la opción de que podamos escribir el nombre para una búsqueda rápida a parte de que aprezcan los usuarios (que si se puede que este ordenado tambien alfabeticamente). Es simple pero alomejor repetitivo porque puede haber unos pocos pero no creo que sean mas de 10 zonas donde ajustar esto.




4-    En la base de datos y la propia web hay que revisar porqué el campo contraseña de los usuarios es visible, debería estar encriptado para evitar problemas de seguridad. tareas expuestas:

a.    Como bien sabemos, de cara a la ley es de carácter obligatorio que no se dispongan de contraseñas ni en la bbdd ni en la propia plataforma, por lo tanto hemos detectado que si voy a la bbdd y veo un perfil puedo ver su contraseña, cuando en realidad debería ser cifrada como oculta, y en el panel del admin en el apartado de usuarios (en todos) pasa lo mismo, veo la contraseña y no podemos tenerlo así, ya que si el usuario pierde o necesita la contraseña solicitará el reseteo de la misma y ya le llegará a su propio mail, otra cosa que tb hemos visto que si un usuario se registra el admin recibe un mail y en el template que nos llega a nosotros como admin también pone su contraseña, ahí en ese mail solo necesitamos saber que se ha registrado y su correo, no mas datos, simplemente para que quede constancia de ello.


5-    En el panel de añadir Eventos tanto en los usuarios como admin, al seleccionar fecha, el calendario se abre sin fondo ni estilo marcado, por lo tanto se ve todo lo que hay debajo, es un cambio muy simple como poner borde y background. tarea expuesta:

a.    Solventar pequeño bug de estilo para que tenga fondo y un borde por ejemplo para que no se vea lo de detrás.
Sencillo.

6-    Dentro del panel de admin nosotros contamos con un panel para editar los planes de precios de los comerciantes, en el caso del pack free, hay que revisar que solo se pueda habilitar una vez por cuenta abierta, y que una vez finalice el pack gratis se le notifique al usuario que debe adquirir un pack para continuar con el servicio, aqui se deben de ocultar los comercios que haya creado (solo tendra 1 o 2 de prueba) pero no debe perder los datos. Además aquí hay que añadir un detalle al pack Free, solo podemos poner minimo 1 mes de duración, la idea es permitir que también podamos selecioonar 7 días/14días (y para el entorno de pruebas añadir también 1 día para revisar que funciona), habria que añadirlos como opción también.

7-    Revisar seguridad de las url de todas las paginas web del dominio, es decir, revisar que el entorno es seguro y que las url no muestran vulnerabilidades o si necesitan alguna condición extra para ser seguras. Se puede aprovechar para verificar la seguridad de la web. Aqui hay que ser profesional, contamos con backups de verificación y es importante no crear errores (lo digo porque hemos tenido casos, gracias por entendernos).
tareas expuestas:

a.    Como bien se indica es revisar y mejorar la seguridad de las url, es revisar el formato y segmentación utilizado y mejorarlo para seguridad y SEO, lo que mas ayude, aquí supongo serán reglas y cosas así.

8-    Crear un gráfico de informe de beneficios/ganancias dentro del panel de administrador, es decir, un nuevo apartado en el menu del administrador (replicado en subadmins) pueda consultar mes o diariamente las ganancias obtenidas, desglosando iva y ganancia neta. Tenemso ejemplo de como nos gustaria. tareas expuestas:

a.
Crear nuevo apartado para consultar un gráfico visual (tenemos imagen de otro proyecto para que sepáis mas o menos la idea) de beneficios donde mes por mes debe indicar en la grafica si mueves el ratón por ella las ganancias obtenidas, desglosando iva y beneficio, es decir, grafica anual con todos los meses, cada año se resetea la grafica y el año que haya pasado deberá aparecer abajo el dato de las ganancias del año anterior con su respectivo desglose con información por mes. Por ejemplo ahora 2020 solo estará la grafica y pondrá los meses y se ira actualizando en vivo según vayan adquiriendo packs, y moviendo el ratón podremos consultar en la grafica las ganancias y el desgflose, luego cuando apsemos al año 2021, se reseteara la grafica y el dato del 2020 aparecerá debajo, se me ocurre un menú desplegable  para que si pasan los años pues no se acumulen, es una idea, y si pincho en el dato del año anterior que me salga un popup para revisar mes a mes los beneficios y el iva de cada uno. Si ya hacemos el desplegable añadiremos el año actual para hacerlo interesante.
es importante que solo el superadmin lo vea este apartado y que sea una opción (deberá agregarse) para asignar a los subadmins ya que alomejor habra personas encargadas de revisarlo.


9-    Integración de Amazon S3, necesitamos que TODO el contenido que suban los usuarios (son imagenes mayoritariamente), es decir, todos los archivos que puedan subir a la hora de crear comercios, o imagenes de sus perfiles, etc... Todo ello debe alojarse en un backet de amazon S3 para evitar que se guarde en local, asi evitamos saturación de rendimiento y en un futuro invertir mas en rendimiento que en espacio, nosotros ya contamos con un bucket de amazon s3, la idea es que nosotros a través del panel de admin tengamos un apartado de ajustes de amazon s3 donde podamos indicar los datos del bucket para que si en futuro cambiamos de bucket y migramos contenido el acceso lo podamos modificar y decirle a nuestro sistema que el contenido ahora esta alojado en tal bucket con la credencial tal y resto de datos de seguridad necesarios. Para esto se proveerá de acceso al panel de amazon s3, el profesional contratado deberá revisar el bucket que tenemos actualmente y dejarlo listo (sobre todo revisar seguridad) para que nosotros solo tengamos que poner lso datos del bucket en el admin. El bucket esta creado no obstante hay que revisarlo.
tarea expuesta resumida:

a.    Integrar amazon S3 para que los archivos que puedan subir lo usuarios como imágenes vaya destinado a un Bucket, este bucket ya estaría creado, pero encesitamos ayuda con la revisión del mismo apra garantizar seguridad (se dará acceso a amazons3) y a su vez desde el panel de admin debe ser configurable, es decir, ahora lo tenemos en un bucket, pero dentro de un mes por la razón que sea nos lo llevamos a otro bucket y migramos alli el contenido, yo como admin deberé ajustarlo desde el admin y debere poder cambiar el bucket con campos como ubicación del bucket, apikey o algo similar que sea seguro y a la vez sencillo de cambiar en un futuro. los archivos locales de la web no estaran en el bucket, es decir la propia programación de la plataforma, eso siempre estará en local.


10-    Añadir filtros en varios paneles de admin, por ejemplo en el panel de usuarios tenemos varios listados y en cada listado hay tablas que deberían poderse ordenar, por ejemplo existe la tabla expira en... La idea es poder filtrar de mayor a menor, el nombre, lo mismo en este caso el filtro logico sería ordenar alfabeticamente de la sdos maneras posibles a-z y z-a, pues asi con todos los campos de los informes que haya, creo que son como 20 listados aproximadamente pero se puede proveer de acceso al panel de admin para que lo veais vosotros mismos y hagais una estimación del coste. Supongo que con el código de uno ya se podrá hacer el resto y la mayoría serán siempre los mismos, por lo tanto por experiencia pensamos que es algo rápido aunque repetitivo. Esto lo hacemos para que en los informes tengamos un orden lógico.
tareas expuestas:

a.    En todos los paneles ya sean usuarios, sean listados, eventos, preguntas, etc.., Todo tipo de informe que sea ordenable será necesario implementar un filtro en los campos importantes, tipo fecha en la que se registró, feche de expiración del pack, tipo de usuario, etc… todo lo que se pueda ordenar debe ordenarse para tener el control de todo a mano. Se proveerá como se indicóa anteriormente el acceso al panel del admin para poder revisar y contabilizar lo que el profesional crea neceario =) Gracias.

b.    Se aceptan sugerencias sobre como filtrarlo, si hacerlo mediante un nuevo apartado tipo generador de informes en tiempo real, donde le das unos valores y te lo saca, siempre y cuando funcione a la perfección es valorable, tipo ITIL (Fresh Service – es una herramienta de ticketing que tiene dentro un generador de informes, si lo buscáis en Google seguro aparece alguna imagen) cuando generas un informe, pero vamos que esto no es requisito, lo que es requisito es poder filtrar (apartado a) para poder localizar rápidamente lo que necesitemos.


11-    OPCIONAL es ampliación de punto 10>>> Añadir en todos los informes (listados de usuarios, listados de comercios, productos, eventos, etc... Todos los que haya de información importante) la posibilidad de poder exportar la información en doc pdf.

a.    Lo pongo opcional porque va de la mano del filtro pero, imaginemos que creamos un generador de informes donde poder sacar el listado de usuarios o lista de usuarios con x pack, pues estaría fenomenal tener la opción de descargar estos PDF ya que con esto se le puede propones a empresas que se unan y ver datos con porcentajes, etc…, es lo que comente del generador, es una gran idea, pero dejo que lo valoreis porque realmente es añadir las consultas y permitir escoger los valores según tipos, etc… para mi una idea genial.

12-    Debemos mejorar nuestras pasarelas de pago, contamos con una pequeña configuración de Paypal y Stripe (hay otra opción que es pago fuera de linea pero esta no entra dentro porque no hay nada que mejorar), lo configuramos a través de un pequeño apartado donde solo ponemos el email y poco mas... La idea es revisar la actual integración exhaustivamente y mejorar el proceso de pago (tambien la seguridad) sobre todo nos interesa que esten actualizadas, sobre todo stripe que necesita integración SCA, a estas integraciones debemos darle un estilo moderno como el que recomiendan tanto en paypal y stripe donde sea vea info de lo que pagas y demás. Es decir la tarea es: Revisar + actualizar + mejorar forma de pago. Otro añadido a esta tarea es permitir los pagos recurrentes, es decir, si mal no recuerdo actualmente el pago es normal y pagan cuando caduca, la idea es hacer que solo paguen recurrentemente de manera automático y que seleccionen si pagar el pack mes a mes o anualmente, la opción de mensual o anual existe pero no simultaneamente en el mismo pack, es decir ahora hay 4 packs, y cada uno tiene su forma de pago, la idea es dar la opción de que en el mismo pack el usuario escoja pago recurrente mensual a precio de 10 por ejemplo y que si escoge el anual pague 100 en lugar de 120.
tareas expuestas:

a.    Reintegrar pasarelas de pago (paypal + stripe), con un diseño mejorado para que aparezca una página completa con lo que vas a comprar y todos los detalles necearios, no las triste pasarelas que tenemos ahora, que te llevan a una pagina gris y a pagar. De hecho stripe funciona mal, por eso las reintegraciones sobre todo con las ultimas actualizaciones y muy importante stripe con sca que la ley indica que a partir de diciembre de este año es obligatorio y hay que configurarlo muy bien.

b.    Hacer que los pagos sean recurrentes, es decir que paguen si o si mes a mes escojan el pack que escojan (excepto el free en el que entraré en mas detalle después para ajustar una cosa), ahora mismo el usuario se registra, rellenado los datos correspondientes, hay dos perfiles, uno usuario general, que es el visitante y nunca paga, y luego el usuario proveedor de servicios que puede escoger la prueba o un apck de pago, eso es uno de los ultimos campos del registro donde seleccionas el tipo de usuario y pago y si eres proveedor se habilitarán mas campos a rellenar (comentado posteriormente en otro punto ya que hay que añadir unos campitos mas, como unos 5 aprox, tipo CIF, Nombre de empresa, y alguno mas que hay que ver pero contar con máximo 5 mas), añadir que el proveedor a aparte de seleccioanrlo abajo que debe hacerlo para ver los packs habilitados (los cuales nosotros editamos a través del panel del admin), cuenta con un botón arriba para decir que es una empresa/comerciante y ya se habilitan esos campos, pues una vez seleccione todo y el pack al que acogerse entramos en la parte de que si es de pago se le debería proponer una de las siguientes opciones:

i.    Una vez se registre el proveedor/comerciante, enviarle el mail de verificación y que acceda a su panel y forzar a solo poder ver el panel de pago, allí seleccionara una de las opciones habilitadas ya sea por banco (que no hay que hacer nada aquí de modificación entiendo, la mantendremos por si acaso y valoraremos eliminarlo en un futuro, pero aquí en España el adeudo SEPA es muy habitual y hacen eso y pagana a los 60 dias máximo aprox, entonces mejor que este)  y las opciones de paypal y stripe, aquí debería ser donde el usuario vera (a parte de que en frontend ven los precios, este punto lo detallo luego porque hay que hacer un cambio) al selccionar paypal o stripe las opciones de pago de el pack escogido (ejemplo standard) y le pondrá, pagar mes a mes 10€ y otra opción que le ponga pagar anualmente y que aparezca el precio con oferta tipo 100€ al año, el la escogerá y pagará y ya se ha suscrito. (Luego detallo lo que hay que hacer para
cancelar)

ii.
Y la otra opción es que cuando clique en registrar le llegue el email de verificación, y cuando clique en el enlace, le lleve a la web y le salga la ventana de pago con las opciones, sinceramente me gusta mas la opción 1 ya que digamos que accedes a tu panel, lo ves y pagas y lo usas y además es un popup grande o pagina entera dentro de iudera por asi decirlo y es mas amigable pienso pero dejo creatividad para esto.

c.    En el frontend de la web cuando vas abajo y sin estar logado accedes a *add business* (se va a traducir, aviso por si veis su equivalente en español) y el usuario vera información de los packs, ahí deberían tener un botón que ponga anual o mensual para que vean los precios del mismo pack pero pagando de una forma u otra y asi pueden pensar en coger oferta o probar mes a mes pero que lo vean antes, un botón arriba de cada pack que se mueva y que el pack cambie alguna palabra en plan mensual o anual, algo dinñamico que ayude al usuario a escoger su forma preferida según sus necesidades. Tambien añadir en estos paneles un campo que debajo del precio en letra pequeña ponga IVA Incluido, o algo asi que pidamos claramente editar el texto.

d.    Ayudar con la configuración de stripe y paypal desde las propias cuentas de dichas pasarelas, esto es para ajustarlo correctamente y que no nos dejemos nada, es decir, dejarlo listo para admitir pagos recurrentes y todo lo necesario para tener todo lo de los recurrentes, etc… daremos acceso a ambos paneles.

e.    Nosotros en los packs tenemos varios definidos y por el momento no queremos crear mas, no obstante queremos hacer una modificación, desde el panel del admin en los planes, abres uno y seleccionas el tiempo que estará habilitado el pack, pues bien, el pack free tiene como mínimo 1 mes, nuestra idea es jugar con eso y añadir que podamos escoger si poner de prueba 7 días, 14 días, o menos, `porque habrá temporadas que hagamos pruebas de 7 otras de 14 y asi, porque un mes nos parece mucho para probar un pack gratis personalmente que no quiere decir que no lo hagamos pero necesitamos disponer de mas opciones que sean de menor tiempo, y a su vez revisar que el pack free no se pueda renovar ni automáticamente ni que la misma cuenta se pueda acoger al pack mas de una vez. Tenemos que revisarlo y si esta asi, obviamente modificarlo para caparlo a un solo uso por cuenta y no mas.

f.    Llegamos al punto importante, la cancelación de las cuentas o cambio de pack, detallo ambos en dos apartados:

i.    CANCELACIÓN: El usuario general (visitante), deberá tener un botón de cerrar cuenta, creemos que está pero hay que revisarlo simplemente y si no está añadirlo para que se sientan libres de cerrar su cuenta de visitante, esto es sencillo. Pasamos a la cuenta de empresa, aquí es importante revisar la opción y como lo hace, es decir, el funcionamiento que buscamos es que (si no está la opción añadirla pero debería estar) si el usuario empresa quiere cancelar puede hacerlo pero no de manera inmediata, es decir, su cuenta finalizará al terminar la opción contratada, es decir, si seleccionó mes a mes, y es 5 de mes, el usuario ya ha pagado y decido el día 10 cancelar suscripción, esta finalizará al terminar el periodo en curso y ya no renovará más, sus comercios quedarán ocultos hasta que decida renovarlo o si cancelar definitivamente la cuenta con un segundo botón de cancelación que aparecerá una vez caduque su suscripción después de indicar que ya no quiere seguir y ya si clica ahí esa segunda vez se eliminará definitivamente todo su contenido para que a nosotros nos libere el servidor, también si la cuenta lleva deshabilitada 3 meses debería existir la opción de que el usuario reciba un correo de aviso de que si no renueva todo el contenido será eliminado, y si pasan 7 dias sin respuesta hacer que se elimine el contenido.
Ahora el mismo caso pero con suscripción anual, lo único que cambiaría es que finalizaría cuando le toque, es lo mismo. Si bien, en nuestra política tendrán unos 14 días para cancelar el servicio de manera inmediata y obtener devolución que tendrá por derecho de desestimiento. En cada renovación pero lo de la política de desestimiento no afecta, el del mes se cancela al finalizar el mes en curso, y el del año si contrata en enero y en marzo decide finalizar el pago anual, se le enviara un recordatorio de que su suscripción dura hasta enero del siguiente año y que en ese momento se desahinolitara su cuenta (después la misma operativa de cancelación) y aquí se le añadirá en el correo una indicación (solo debería ser al anual) donde se le comente que al tratarse de anual se puede poner en contacto con nosotros ya que si desea cancelación inminente por cualquier motivo (tipo cierre de empresa) que se puede contactar con nuestro departamento xxx para revisar su caso y valorar la opción de devolución de la parte proporcional a los meses que le queden tras la finalización del mes en curso.
Perdon si me excedí pero como comenté es el apartado mas importante en conjunto con los correos. Entiendo que se deberá añadir en los listados de los usuarios ver quien paga mes a mes y quien paga anuelamente, eso habría que añadirlo de alguna manera. A valorar por el profesional.


Ii.    cambio de pack: si un usuario empresa decide hacer upgrade (ya existe) hay que integrar las opciones de que el cambio sea automático, es decir, ahora en teoría el admin recibe notificación pero si se hace automáticamente pues muchísimo mejor. El cambio para un usuario que paga mes a mes se le hará efectivo a partir del mes siguiente, y le deberñian salir las opciones de mantener el pago anual  mensual del pack superior al que quiere acceder para que se guarden los ajustes y en el próximo periodo se le pondrá el nuevo pack.
Si el usuario es de pago anual aquí deberá existir la opción de que si por ejemplo contrató en enero el pack standard anual por 100 y en abril o cuando sea, decide cambiar el pack a uno superior este solo deberá abonar la diferencia, es decir debería existir un recalculo del sistema que le diga, has consumido tantos meses, te quedan x, si quieres acceder a un pack superior deberás abonar la diferencia y se renovará en el mismo momento en el que contrataste el pack, esto debería tmabien notificarse por email, etc…. (Ya se detalló que según funciones s tendrían que ir añadiendo mas emails.), Y es ahí cuando automáticamente o poniendo el los datos de la tarjeta (que creo que es mas seguro) haga el abono inmediato de la parte que tenga que abonar de mas o en su caso que al finalizar el mes en curso abone a primeros de mes automáticamente, pero como lo estimeis y veais que sea mas seguro. Ahora bien si quiere hacer upgrade a un pack inferior, aquí tenemos el dilema, queremos que nos lo soliciten y el admin de el ok para hacer devolución de la parte proporcional,c osa que no me gusta, o hacer que el sistema lo calcule automáticamente, te lo ponga en el panel de admin y te calcule la parte proporcional a devolver y lo hagamos automáticamente y que reciba el mismo aviso via email y las notificaciones correspondientes (este calculo se podría aplicar a la parte de las cancelaciones de si es anual que lo soliciten y el admin al estudiar elc aso quiere devolver que lo haga automáticamente si el admin acepta.) Esta opción de calculo es la que mas me gusta para hacerlo mucho mas sencillo para admins y subadmins ya que creo que ess una opción de las pasarelas y nos parece lo mejor.


13-    En el mapa de google maps, integración que ya está hecha, los usuarios cuando suben un comercio, deben indicar latitud y longitud, la idea es que solo sea necesario poner la dirección completa, etc... La tarea es ayudar a que el usuario lo haga sin neceidad de entender de longitud ni latitud. Además se debe revisar la geolocalización + ayuda con la config de la cuenta de google maps + revisar posibles mejoras (las mejores que expongáis en el mapa se pueden proponer para extensiones)tareas expuestas:

a.    Revisar integración y detectar posibles bugs.

b.    Cambiar que en vez de por latitud y longitud el usuario y el admin si crean comercios o eventos, o productos, pongan solo la dirección completa y el resto de detalles tipo país, provincia y ciudad, etc…
c.    Proposición de mejoras que no afecten al proyecto en curso


14-    Actualmente tenemos listado de paises (los creamos desde el admin) Y listado de ciudades/provincias (Madrid. Andalucía, etc..
. Que tb se crean en admin), La idea es crear un tercer nivel que sean comunidades autónomas y que esten en panel de admin como las ciudades y los países. TAREAS:

a.    Crear apartado en panel de admin + añadir obviamente el campo de selección de las comunidades autónomas en las partes de creación de coemrcios, eventos, etc… donde sea necesario, habrá como mucho 10 sitios, porque están en admin que como he dicho puede crear también cosas y obviamente en el usuario que es quien mas los creara.

b.    Añadir en las opciones del filtro (provincias, comunidades)***del frontend de la web por si el usuario desea buscar de esa manera, en vez de por geolocalización, cosa que ya puede hacerlo, ya existe en la forma de visualización tipo mapa, que ahí habrá que añadir el campo comunidades autónomas pero también seria necesario en la parte de listado*** Esto a parte de agregar, revisar y ver opciones de mejora que esten incluidas en esta propuesta (echarle un ojo antes para un breve estudio)

c.    Revisar en la selección de ciudades, y demás que al escribir como aparece, he visto que al poner Madrid me aparece Humanes Madrid, aparte de Madrid y creoq eu es de Google maps, que eso rambien lo queremos conservar que busque automáticamente pero que si creas un listado se te asigne a Madrid y asi, pero que eso sirva a modo geolocalización por ejemplo, nose, revisar y mejorar.

15-    En el formulario de registro, como ya he comentado antes hay que hacer algunas mejoras incluidas las siguientes (espero no repetrir ninguna):TAREAS

a.    Si eres usuario normal no hace faltra nada, es el form que te aparece, peromsi clicas en la opción de soy empresa, se habilitan mas campos, aquí a parte de los que aparecen deberemos de añadir cif, nif o nie (en el mismo campo, deberán poner lo vaya a aparecer en lafactura de la compra del pack), nombre de la empresa, dirección de la empresa (creo que ya esta este campo) y queda revisar alguno mas, pero como ya dijimos anteriormente serán 5 campos mínimo. (He comentado aprte de esto en las pasarelas de pago porque les afectaba).
Por cierto los que se añadan serán obligatorios, una empresa no puede registrarse si no indica datos de facturación. Ya que estos datos deberána aparecer en su perfil (el cif/nif/nie no debe ser visible para nadie, solamente para el admin que supongo habrá que tocar bbdd y añadirlo a los listados de los usuarios, esta info si podemos verla como administradores pero no los visitantes, ya es cuestión del ususario empresa ponerlo o no en la descripción si lo cree necesario el mismo)

b.    Añadir check para aceptar los términos y condiciones de la plataforma (campo obligatorio)


16-     facturas de compra (ya sea pack o producto), rediseñar formato y agregar mas informacion:tareas:
a.
Remodelar el estilo de la factura, se adjuntará lo que queremos via imagen para hacerlo parecido, será con tablas e información mas detalladas como nombre de empresa, cif, nombre personal de a quien se emite la factura y la información de la plataforma (en el ejemplo veréis lo que buscamos pero es muy sencillo)
b.    Agregar el IVA  en la factura, es decir, tal cual veréis en al imagen se mostrará que el pack que ha comprado el usuario paga 10 por ejemplo, el iva ya va incuido, pero en la factura lo dividimos, el precio del pack aparecerá sin iva, en este caso 7.90€, a la derecha vereies que pone iva 21% y el resultado 2.10€ y el total 10€ o algo similar a lo que he indicado, la factura recogerá el importe que ha pagado el usuario y lo desgranará para que conste el precio, ya que las empresas pueden degravarse en hacienda y es muy importante que tenga todo esto. Ya digo que es bastante sencillo.
Tenemos la estructura codificada pero no es para este proyecto por lo que habrá que modificar etiquetas etc…

A modo extra sería interesante conocer la opción de integrar Zoom en la plataforma, una idea asi de primeras es permitir que un comerciante pueda elegir si permite que un visitante pueda solicitar una reunión/entrevista/charla con el comerciante, por ejemplo el comerciante podrá tener en la config de su perfil una opción donde diga permitir o no permitir solicitud de contacto via Zoom, el comerciante si lo quiere se le abrira un panel donde deba ingresar el dato de su cuenta (creo que hay cuentas gratuitas de zoom) o en su defecto que les podamos nosotros asignar una gratuitamente, pendiente de valorar. Si el comerciante acepta ese tipo de contacto (debería también indicar en que o cuales comercios desea aplicarlo), en el frontend de su o sus comercios aparecerá un recuadro de concertar reunión o charla, el usuario visitante podrá mandar la invitación junto con el asunto, eso le llegaría al panel del comerciante como aviso de solicitud de reunión y el comerciante la aceptaría o pospondría a otra fecha y hora (el usuario deberia tener la opción de poder indicar fecha y hora de interes la cual el comerciante aceptara o cambiara), una vez lo acepte o haga un cambio el comerciante, el visitante (obviamente registrado, no podria hacerlo sin estar registrsado el visitante-general) en su panel vera la aceptación del comerciante o propuesta de cambio de fecha y hora para aceptarla o no y asi sucesivamente, En caso de llegar a acuerdo para reunión ya entiendo que Zoom hace el resto y envia las notificaciones a las partes, aunque también se podría añadir un template de email de notificaciones cambios y resto de cosas que se vayan haciendo, sería interesante tener algo tipo esto en la web. Abririamos la veda a reuniones para propsición de servicios e incluso contacto directo con proveedores etc..


Es algo que no está visto. Pero insto que esto a parte del proyecto principal y se debe indicar claramente si esta incluido o no, o precio aproximado de extensión a parte. Preferimos que se detalle la propuesta sin esto e indicar que si queremos esta funcionalidad sería tanto monto mas.










Gracias.

Recordamos que todo lo que añada, se cambie o se modifique debe quedar redactado en un doc, se requiere ser ordenado, necesitamos un buen documento de guía para futuros programadores y tener donde mirar. Gracias

Quedamos a la espera, gracias.

El profesional nos mandará su ok con un doc adjunto indicando todo lo que realizará, lo marcado en rojo no (hablado con varios candidatos y avisados de la actualización del proyecto - descripción con todos los detalles).

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo el diseño
Disponibilidad requerida Según se necesite
Experiencia en este tipo de proyectos Sí (He administrado este tipo de proyectos anteriormente)
Integraciones de API Payment Processor (Paypal, Stripe, etc.), Cloud Storage (Dropbox, Google Drive, etc.), Otros (Otras APIs)
Roles necesarios Diseñador, Programador, Gerente de proyecto

Plazo de Entrega: 07 Junio, 2020

Habilidades necesarias

Otros proyectos publicados por S. H.