Diferencia entre revisiones de «SIU-Sanaviron-Quilmes/version1.0.0/instalar sq produccion»

De SIU
Saltar a: navegación, buscar
(Instalación)
(Esquema de Instalación de SIU-Sanavirón-Quilmes)
Línea 161: Línea 161:
 
#Darle permisos a la carpeta de manera recursiva para que el usuario Apache pueda escribir:
 
#Darle permisos a la carpeta de manera recursiva para que el usuario Apache pueda escribir:
 
#*<path proyecto UV>/config
 
#*<path proyecto UV>/config
 +
 +
#Configurar acceso al la API Rest
 +
Ingresar al directorio <path proyecto UV>/config/i__desarrollo/p__sq_uv/rest/ y editar los archivos:
 +
*servidor.ini
 +
<source lang="php" enclose="div">
 +
autenticacion = basic
 +
</source>
 +
*servidor_usuarios.ini
 +
<source lang="php" enclose="div">
 +
[aca_escribir_nombre_usuario_acceso_api]
 +
password = password_usuario_acceso_api
 +
;api_key= APIKEY_CAMBIAR
 +
</source>
  
 
Luego hay que publicar en el servidor web, en el caso de apache se deja la configuración en el archivo config/toba.conf
 
Luego hay que publicar en el servidor web, en el caso de apache se deja la configuración en el archivo config/toba.conf

Revisión del 17:39 30 ago 2017

Siu-sanaviron-quilmes.png

Esquema de Instalación de SIU-Sanavirón-Quilmes

En esta sección se va a encontrar información sobre:

  • Instalación de los distintos sub módulos de SIU Sanaviron Quilmes.
  • Configuración para establecer la comunicacion entre los distintos sub módulos y otros modulos (SIU Pilaga, SIU Guarani, MercadoPago)

Requisitos

Herramientas Nucleo Unidad de venta SQ Pagos G.C.O.
Postgres1 >=9.5 >=9.5
PHP >= 5.5 >= 5.5 >= 5.5 >= 5.5
Extensiones PHP php5-pgsql, php5-gd php5-pgsql, php5-gd php5-curl
Redis >= 3.2 >= 3.2
PHP-Composer Si Si Si
NodeJS2 SI

1 La db debe tener la codificación es_AR.UTF8

2 https://nodejs.org/en/download/package-manager/

SQ Núcleo

Instalación

  • Iniciar módulo rewrite (a2enmod rewrite)

Actualmente el sistema se encuentra disponible en el repositorio GIT del SIU solo para los usuarios que lo soliciten.

  1. Posicionarse en la ubicación deseada para la instalación del proyecto:
  1. cd /usr/local/proyectos/sanaviron_quilmes/
  2. Bajar el proyecto del GIT desde la URL correspondiente:
    git clone https://hub.siu.edu.ar/sanaviron-quilmes/nucleo.git
    Ahora tenemos el path:
    /usr/local/proyectos/sanaviron_quilmes/nucleo/
    Nota: en lo sucesivo denominaremos esta carpeta como <path proyecto NUCLEO>.


Una vez descargado, ejecutar en la raíz del mismo:

 composer install --no-dev
 composer siu:instalar --no-dev

En el caso de querer instalarlo en modo desarrollo, quitar el flag --no-dev

  1. y completar o ENTER utiliza los valores por defecto
    > Incenteev\ParameterHandler\ScriptHandler::buildParameters
    Creating the "config/parameters-only-install.yml" file
    Some parameters are missing. Please provide them.
    database_host (localhost):
    database_port (5432):
    database_name (sq_nucleo):
    database_name_toba (toba_sq_nucleo):
    database_user (postgres):
    database_password (postgres):
    url_base ('http://localhost'):
    url_port (null):
    sqnucleo_usuario (admin):
    sqnucleo_password (admin):
    sqnucleo_id_desarrollador (0):
    sqnucleo_alias (/sq_nucleo):
  2. Darle permisos a la carpeta de manera recursiva para que el usuario Apache pueda escribir:
    • <path proyecto NUCLEO>/config
  1. Configurar acceso al la API Rest

Ingresar al directorio <path proyecto NUCLEO>/config/i__desarrollo/p__sq_nucleo/rest/ y editar los archivos:

  • servidor.ini
autenticacion = basic
  • servidor_usuarios.ini
[aca_escribir_nombre_usuario_acceso_api]
password = password_usuario_acceso_api
;api_key= APIKEY_CAMBIAR

Luego hay que publicar en el servidor web, en el caso de apache se deja la configuración en el archivo config/toba.conf

  1. ln -s <path proyecto NUCLEO>/config/toba.conf /etc/apache2/sites-enabled/toba_nucleo.conf
    y luego reiniciar Apache

Activar el planificador de tareas

Configurar el cron:

Ejecutar en la consola:

crontab -e

Para que el planificador de tareas se ejecute cada un minuto en búsqueda de tareas programadas hay que agregar al crontab la siguiente línea:

 * * * * * <PATH_HASTA_EL_PROYECTO>nucleo/bin/sq tareas_planificadas

Nota: se ponen los 5 asteriscos para que este comando se ejecute cada un minuto.

Este comando se encarga de verificar cada minuto si es el momento de ejecutar determinada tarea según se haya configurado en la operación toba Procesos > Planificador de tareas.

Luego guardar el archivo y reiniciar la pc.


Configurar la ejecución programada de procesos:

En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea.

La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.

Unidades de ventas (Cursos)

Instalación

Iniciar módulo rewrite (a2enmod rewrite)

Actualmente el sistema se encuentra disponible en el repositorio GIT del SIU solo para los usuarios que lo soliciten.

  1. Posicionarse en la ubicación deseada para la instalación del proyecto:
  1. cd /usr/local/proyectos/sanaviron_quilmes/
  2. Bajar el proyecto del GIT desde la URL correspondiente:
    git clone https://hub.siu.edu.ar/sanaviron-quilmes/unidad-venta.git
    Ahora tenemos el path:
    /usr/local/proyectos/sanaviron_quilmes/unidad-venta/
    Nota: en lo sucesivo denominaremos esta carpeta como <path proyecto UV>.

Una vez descargado, ejecutar en la raíz del mismo:

composer install --no-dev
composer siu:instalar --no-dev

En el caso de querer instalarlo en modo desarrollo, quitar el flag --no-dev

  1. y completar o ENTER utiliza los valores por defecto
    > Incenteev\ParameterHandler\ScriptHandler::buildParameters
    Creating the "config/parameters-only-install.yml" file
    Some parameters are missing. Please provide them.
    database_host (localhost):
    database_port (5432):
    database_name (sq_uv):
    database_name_toba (toba_sq_uv):
    database_user (postgres):
    database_password (postgres):
    url_base ('http://localhost'):
    url_port (null):
    squv_usuario (admin):
    squv_password (admin):
    squv_id_desarrollador (0):
    squv_alias (/sq_uv):
  2. Darle permisos a la carpeta de manera recursiva para que el usuario Apache pueda escribir:
    • <path proyecto UV>/config
  1. Configurar acceso al la API Rest

Ingresar al directorio <path proyecto UV>/config/i__desarrollo/p__sq_uv/rest/ y editar los archivos:

  • servidor.ini
autenticacion = basic
  • servidor_usuarios.ini
[aca_escribir_nombre_usuario_acceso_api]
password = password_usuario_acceso_api
;api_key= APIKEY_CAMBIAR

Luego hay que publicar en el servidor web, en el caso de apache se deja la configuración en el archivo config/toba.conf

  1. ln -s <path proyecto UV>/config/toba.conf /etc/apache2/sites-enabled/toba_uv.conf
    y luego reiniciar Apache

Activar el planificador de tareas

Configurar el cron: Ejecutar en la consola:

crontab -e

Para que el planificador de tareas se ejecute cada un minuto en búsqueda de tareas programadas hay que agregar al crontab la siguiente línea:


* * * * * <PATH_HASTA_EL_PROYECTO>unidad-venta/bin/sq tareas_planificadas

Nota: se ponen los 5 asteriscos para que este comando se ejecute cada un minuto. Este comando se encarga de verificar cada minuto si es el momento de ejecutar determinada tarea según se haya configurado en la operación toba Procesos > Planificador de tareas.

luego guardar el archivo y reiniciar la pc.


Configurar la ejecución programada de procesos:

En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. Los procesos que deberías configurar son los siguientes en este orden:


  • Generar_reporte_cobranzas_recibidas (Guarda en la tabla rep_cobranzas_recibidas los payments de MP. necesario para la operación de conciliaciones)
  • Vencer ventas
  • Anular inscripciones g3 (Anula las inscripciones que quedaron en estado inicio_cobro_digital o pendiente si pasaron 6 hs desde la generación de la misma. Anula las inscripciones que quedaron en pendiente_cobro_digital si pasaron 3 días desde la generación de la misma.)
  • Notificar morosos a g3 (Notifica a guarSe deben editar:ani todos los ids de los clientes que no pagaron pasada la fecha de vencimiento)
  • Enviar notificaciones por email a clientes
  • Notificar ventas al nucleo (Envía al núcleo las ventas que se encuentran cobradas y que la comisión a la que pertenecen está confirmada)
  • La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.
  • El proceso generar_reporte_cobranzas_recibidas se podría configurar para que se ejecute cada media hora y mantener lo más actualizado posible el informe de Conciliaciones.

SQ Pagos

Modulo para derivar el pago online a un gestor de cobranza externo

Instalación

Requiere:

Actualmente el sistema se encuentra disponible en el repositorio GIT del SIU solo para los usuarios que lo soliciten.

Pasos para la instalación

  1. Posicionarse en la ubicación deseada para la instalación del proyecto:
    cd /usr/local/proyectos/sanaviron_quilmes/
  2. Bajar el proyecto del GIT desde la URL correspondiente:
    git clone https://hub.siu.edu.ar/sanaviron-quilmes/sq_pagos.git
    Ahora tenemos el path:
    /usr/local/proyectos/sanaviron_quilmes/sq_pagos/
    Nota: en lo sucesivo denominaremos esta carpeta como <path proyecto SQP>.
  3. Entrar en la carpeta <path proyecto SQP>/config y editar el archivo angular-config.json:
    {
            "entorno": "desarrollo",
            "desarrollo": {
                    "config": {
                            "api_backend_url": "http://localhost/sq_pagos_backend/",
                            "titulo": "Universidad de prueba :: Plataforma de pagos :: SIU­-Sanaviron-Quilmes"
                    }
            },
            "produccion": {
                    "config": {
                            "api_backend_url": "http://sq_server.edu.ar/sq_pagos_backend/",
                            "titulo": "Universidad de prueba :: Plataforma de pagos :: SIU­-Sanaviron-Quilmes"
                    }
            }
    }
  4. Instalar el proyecto, para ello, ejecutar:
    cd <path proyecto SQP>
    npm install
  5. Luego hay que publicar en el servidor web
    Editar el archivo sq_pagos.conf que se encuentra en la carpeta config/ y modificar el path para que apunte a la carpeta donde se encuentra el proyecto sq_pagos y el alias que se desea darle al mismo
    Alias /sq_pagos "<path proyecto SQP>/app"
        <Directory "<path proyecto SQP>/app/">
            Options MultiViews FollowSymLinks
            AllowOverride None
                    <IfModule !mod_authz_core.c>
                            Order allow,deny
                            Allow from all
                    </IfModule>
                    <IfModule mod_authz_core.c>
                            Require all granted
                    </IfModule>
        </Directory>
    Crear el link simbólico para que apache cargue el proyecto:
    ln -s <path proyecto SQP>/config/sq_pagos.conf /etc/apache2/sites-enabled/sq_pagos.conf
    y luego reiniciar Apache


G.C.O.

Backend para manejar la API del gestor de pagos externo y comunicar a SQ Pagos con la Unidad de Venta.


Instalación

Actualmente el sistema se encuentra disponible en el repositorio GIT del SIU solo para los usuarios que lo soliciten.

Pasos para la instalación

  1. Posicionarse en la ubicación deseada para la instalación del proyecto:
    cd /usr/local/proyectos/sanaviron_quilmes/
  2. Bajar el proyecto del GIT desde la URL correspondiente:
    git clone https://hub.siu.edu.ar/sanaviron-quilmes/gco.git
    Ahora tenemos el path:
    /usr/local/proyectos/sanaviron_quilmes/gco/
    Nota: en lo sucesivo denominaremos esta carpeta como <path proyecto SQGCO>.
  3. Instalar el proyecto, para ello, ejecutar:
    cd <path proyecto SQGCO>
    composer install
  4. Se debe crear una carpeta llamada logs en la raíz del proyecto y darle permisos a la carpeta para que el usuario Apache pueda escribir.

Configuración

Generar config.ini

  1. Entrar en la carpeta <path proyecto SQGCO>/config y crear una copia del archivo _config.ini.

Editar el archivo config.ini:

  1. ;dejar en 0 si es producción. Poner en 1 para ver los mensajes de error en el browser si es en entorno de desarrollo

    [debug]
    debug_mode = 0
    ; opciones del backend de sq_pagos. Estos parámetros no deben editarse.
    [sq_pagos_backend]
    elige_gestor = 0
    gestor_pago_por_defecto = 'mercado_pago'

    ; Configuración de la API REST de SQ_UV
    [sq_uv_api]
    base_url = ''
    user = ''
    pass = ''

    ; Credenciales de la API de Mercado Pago.
    ; Las mismas se encuentran en la pestaña BASIC CHECKOUT en la url:
    ; https://www.mercadopago.com/mla/account/credentials

    [mercado_pago]
    client_id = ''
    client_secret = ''

    ;url de callback para configurar al momento de generar la preferencia de pago
    back_url = 'http://localhost/sq_pagos_backend/mercado_pago/'

    ;url completa de la imagen default para mostrar en la página de mercadopago, puede ser el logo de la universidad
    imagen_producto_default = 'http://www.unq.edu.ar/images/logo_unqui.png'

    ;url para configurar las notificaciones que envía mercado pago
    url_notificaciones = 'http://localhost/sq_pagos_backend/mercado_pago/notificacion'

    ; SQ UV Auth (usuario y contraseña con los que debe autenticarse la unidad de venta)
    ; la clave es el usuario y el valor la contraseña.
    [sq_uv_users]
    sq_uv = '123456'

    ; IP de la unidad de venta que informará las bajas de los cupones de pagos
    ; de mercadopago
    [sq_uv_ips]
    ip1 = ''

    ;especificar en segundos el tiempo maxima de espera
    ;de respuesta de una conexion a un servicio
    [opciones_conexion]
    connect_timeout = ''
    timeout = ''


Se deben editar:

  • Las credenciales de mercadopago de la cuenta a la que irá el dinero cobrado, la url de callback y la imagen default para mostrar en la página de mercadopago
  • La url, usuario y contraseña de la API REST de la Unidad de Venta.
  • Usuario y contraseña con los que debe autenticarse la unidad de venta para dar de baja los cupones de pago.
  • IP de la unidad de venta que informará las bajas de los cupones de pago


Generar Alias en Apache

El archivo .conf debe ser de este estilo:

Alias /sq_pagos_backend "<path a SQGCO>/public"
    <Directory "<path a SQGCO>/public/">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
  1. Crear el link simbólico para que apache cargue el proyecto:
    ln -s <path proyecto SQGCO>/config/sq_pagos_backend.conf /etc/apache2/sites-enabled/sq_gco.conf
    y luego reiniciar Apache

Configurar SQ