Esta biblioteca es una extensión para configuraciones globales de plantilla Boilerplate. Puede guardar el nombre de la compañía, el número de teléfono, el correo electrónico y cambiar el idioma en toda la aplicación CodeIgniter 4.
Instalación
Ejecutar comando
composer require julio101290/boilerplatesettings
Ejecutar el comando para la migración y sembrado
php spark boilerplatesettings:installsettings
Creamos el menu
Listo al final queda asi
Usage
You can find how it works with the read code routes, controller and views etc. Finnally… Happy Coding!
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Contributions are very welcome.
License
This package is free software distributed under the terms of the MIT license.
La protección de los datos de una aplicación es fundamental. Los respaldos de bases de datos son una línea de defensa esencial ante posibles pérdidas de información causadas por errores humanos, fallas del sistema o ciberataques. En este post, te presentaremos una solución práctica y flexible para realizar respaldos automáticos de bases de datos MySQL: la herramienta mysql-backup autor original ramazancetinkaya/mysql-backup y las modificaciones que hemos implementado en nuestro fork julio101290.
¿Por qué un fork de mysql-backup?
Partiendo de la excelente base que ofrece mysql-backup, decidimos crear un fork con el objetivo de adaptar la herramienta a nuestras necesidades específicas y resolver ciertas limitaciones que identificamos durante su uso. Algunos de los motivos que nos llevaron a crear este fork fueron:
Mejorar el rendimiento: Optimizamos el proceso de respaldo, especialmente para bases de datos de gran tamaño, dividiendo las consultas en fragmentos más pequeños y evitando operaciones innecesarias.
Aumentar la estabilidad: Identificamos y corregimos algunos errores que podían causar inestabilidad en ciertos escenarios, como el manejo de valores nulos o la separación de consultas.
Añadir funcionalidades: Incorporamos nuevas características para ampliar las capacidades de la herramienta, como la posibilidad de personalizar el formato de los archivos de respaldo o integrar la herramienta con otros sistemas.
Instalación con Composer
Para instalar nuestro fork de mysql-backup, utiliza el siguiente comando en tu terminal:
Nuestro fork de mysql-backup ofrece una solución robusta y eficiente para realizar respaldos automáticos de bases de datos MySQL. Al personalizar esta herramienta, hemos obtenido un mayor control y flexibilidad para adaptarla a nuestras necesidades específicas.
Recomendaciones Adicionales:
Automatización: Integra esta funcionalidad en un sistema de automatización para realizar respaldos de forma periódica.
Seguridad: Implementa medidas de seguridad adecuadas para proteger los archivos de respaldo.
Pruebas: Realiza pruebas periódicas de restauración para verificar la integridad de los respaldos.
Documentación: Consulta la documentación completa de nuestro fork en GitHub para obtener más información.
Ejemplo de Uso con CodeIgniter4
PHP
// ... (código existente)
// Cargar la clase MySQLBackup
use Julio101290\MysqlBackup\Backup;
// Obtener los datos de conexión a la base de datos
$host = config('Database')->default["hostname"];
$dbname = config('Database')->default["database"];
$username = config('Database')->default["username"];
$password = config('Database')->default["password"];
$port = config('Database')->default["port"];
$DNS = "mysql:host=$host;port:$port;dbname=$dbname'";
$dbBackupConection = new \PDO($DNS, $username, $password);
// Crear una instancia de MySQLBackup
$mysqlBackup = new MySQLBackup($dbBackupConection, ROOTPATH . "writable/database/backup");
// Realizar un respaldo completo
$backup = $mysqlBackup->backup(false, true, false);
// ... (resto del código)
WheelSoft 1.5 La solución definitiva para el mantenimiento de flotillas.
¿Tienes una flota de vehículos? ¡WheelSoft es la solución que estabas buscando! Optimiza la gestión de tus neumáticos, reduce los tiempos de inactividad y disminuye los costos operativos. Con WheelSoft, podrás programar mantenimientos preventivos, monitorear el estado de todos tus vehículos y garantizar la seguridad de tus conductores.
Optimiza la gestión de tu flota con nuestro software. Genera reportes de evaluación PDF personalizados y enviarlos automáticamente a tus clientes. Programa mantenimientos, lleva un control exhaustivo de tus vehículos y mejora la satisfacción de tus clientes. ¡Pruébalo ahora y descubre cómo simplificar sus procesos!
Módulos
Tenemos muy pocos módulos lo cual hace que hasta el momento el funcionamiento sea muy básico y son los siguientes
Catálogos
Catálogo de vehículos
Catálogo de clientes
Operaciones
Nuevo Registro
Lista Registros
Administración de Usuario
Perfil
Usuarios
Roles
Permisos
Menú
Configuraciones
Empresas
Configuración de correo
Licencias
Catálogo de Clientes
En este catálogo nos sirve para dar de alta, bajas y cambios los clientes a los cuales se les da a dar el servicio los campos a registrar son los siguientes
Nombre
Dirección
Contacto
Correo Electrónico 1
Correo Electrónico 2
Correo Electrónico 3
Correo Electrónico 4
Correo Electrónico 5
A continuación, vemos la lista de clientes, en el botón Azul es para agregar un cliente nuevo, y en la columna de acciones tenemos los botones para editar y eliminar
Al dar click en agregar nuevo o editar el cliente nos mostrará la siguiente ventana modal
Catálogo de Vehículos
En este catálogo daremos de alta los vehículos a los cuales vamos a registrar los datos a capturar son los siguientes
Nombre de Vehículo
Número de neumáticos
Placa
PSI Recomendado
Kilometraje
Ficha
Tipo neumático
Cliente “Es importante ya que al momento de hacer el registro sólo se mostrarán los vehículos enlazados al cliente seleccionado al registro”
A continuación, vemos la lista de vehículos en la parte superior derecha tenemos el botón azul para registrar el vehículo y en la tabla en la columna acciones tenemos los botones de editar y eliminar vehículo
Al darle click a editar o agregar vehículo nos mostrará la siguiente pantalla modal
Catálogo de Usuario
En este catálogo podemos dar altas, bajas y cambios de usuarios, así como cambiar la contraseña
En imagen posterior vemos la lista de usuarios
Al dar click al botón +Agregar usuario o en el botón editar que está en la columna acción nos mostrará el siguiente modal para capturar el usuario, en esa captura donde podemos dar los permisos necesarios al usuario y asignarle un rol
Catálogo de Permisos
Aquí damos de alta, modificamos y eliminamos los permisos necesarios en el sistema, es mejor no tocarlo
Catálogo de Roles
En este catálogo creamos los roles, en los cuales le asignamos los permisos por rol.
Posteriormente en el catálogo de usuario le asignamos el rol y con eso el usuario se le asignará todos los permisos del rol.
A continuación, vemos la lista de roles
Igualmente, al darle click al botón Editar o nuevo nos abre el modal para agregar o modificar
Catálogo Menú
Aquí es mejor no tocar, es para acomodar el menú al gusto.
Catálogo Empresas
Aquí modificamos los datos de la empresa, solo es para una empresa, solo se debe modificar cuando sea necesario ya que con estos datos se genera la licencia.
Configuración de Correo
En este módulo se configura el correo, esto es para el momento de guardar el registro se envíe el PDF al cliente, si no está bien configurado entonces no se enviará.
Módulo de Licencias
Aquí capturamos la licencia por fecha, si no hay licencia, no está válida o está vencida entonces solo dejara capturar 50 registros en los últimos 30 días
En caso de querer comprar la licencia completa, favor de dar click en el botón verde y le mostrará un texto, ese texto es el que tiene que enviar al desarrollador para el desarrollador le envié la clave de licencia
Una vez enviado y realizado el pago el desarrollador le enviará una licencia la cual tiene que capturar en el campo licencia
Módulo Nuevo Registro
Esta es la parte del día al día, aquí capturamos el registro o también llamada hoja de inspección como pueden ver tenemos un encabezado y detalle de la información, en el encabezado tenemos los siguientes datos
Fecha
No de inspección
No de inspección de cliente
Cliente
Que usuario realizó la hoja inspección
Contacto
Se puede observar que también existen dos botones uno llamado Agregar Cliente Nuevo el cual nos permite registrar un cliente que actualmente no existe en la base de datos del programa
Una vez registrado ya se podrá ver en la lista de usuarios
Tenemos también el botón de ver registros anteriores el cual nos permitirá ver los registros del cliente que esté seleccionado
Al darle click nos mostrará la lista de registros del cliente, en el cual vemos la fecha contacto y acciones, en acciones nos da los botones de modificar e imprimir la hoja de inspección
Al dar click imprimir la hoja de inspección “El botón azul con el icono de PDF” nos arroja el PDF de la Hoja de Inspección
Y al darle click al botón editar nos va llevar a editar esa hoja de inspección
En la parte de abajo tenemos el detalle de la hoja de inspección que es donde ponemos el vehículo, automáticamente nos da los datos de fecha, placa, vehículo, PSI recomendado, Kilometraje, rueda y cantidad de neumáticos
Como se puede observar, en la parte media tenemos los botones de añadir vehículo y Registrar Vehículo Nuevo
Al darle click en Añadir Vehículo nos mostrará la lista de todos los artículos del cliente
Al darle click al botón “+” ese vehículo se agregará a la lista
En caso de que el vehículo sea nuevo le damos click al botón, Registrar Vehículo Nuevo
Nos mostrará la hoja de captura
Le damos guardar y automáticamente ese vehículo se le asigna al cliente en el que estamos haciendo el registro y ya se mostrar el vehículo registrado
En el detalle tenemos los botones de eliminar y el de los engranajes, el de eliminar simplemente elimina el registro y el de los engranes nos captura los datos de inspección de ese vehículo.
Al darle click nos sale el siguiente modal con dos pestañas, en la primera capturamos el PSI y los MM de cada neumático que tiene el vehículo, como este vehículo tiene 4 neumáticos es la razón por la cual solo cuatro campos están habilitados.
En la segunda pestaña NOTAS, nos sales diferentes checks, como el de calibrar Presión de aire, Rotar neumáticos, chequeo de tren Delantero, cambiar neumático, tapar neumático, y un área de texto para capturar una nota
Dependiente de los checks seleccionado es como se imprimirá el PDF
Y esto es de la primer pestaña
Ya al final nos quedan los botones de Guardar y Guardar e Imprimir
El botón guardar simplemente nos guarda la información y Guardar e Imprimir nos guarda el registro, lo manda imprimir y por último lo envía por correo en caso de que el cliente tenga correo en su catálogo.
Instalación
Ejecutamos el instalador
Seleccionamos el lenguaje, solo tenemos español de momento
La siguiente ventana elegimos la carpeta destino, la dejamos tal y como está y le damos siguiente
Ahora nos mostrará la ventana de tareas adicionales, vamos activar la check para crear el acceso directo al escritorio
Posteriormente nos arroja el resumen de la instalación, le damos click en instalar
Y empieza el proceso de instalación
Al finalizar nos mostrará la ventana final con el check de si desamor ejecutar el software, lo activamos y le damos click en el botón finalizar
Listo, el programa se ejecuta, es posible que la primera vez la ventana salga en blanco, lo que tienen que hacer es cerrarlo y ejecutar el acceso directo
Me complace avisar que ya tenemos las primeras versiones del software medico en el que hemos estado trabajando, aun puede que salgan detalles pero se van corrigiendo
¿Qué es CodeIgniter 4 medicalSoft?
CodeIgniter 4 medicalSoft es un software básico para la correcta administración/manejo del catálogo de pacientes, historial médico, control de fechas, impresión de recetas.
Características
Altas, Bajas y cambios de Pacientes
Altas, bajas y cambios Medicamentos
altas bajas y cambios de diagnósticos / enfermedades
Registro de Citas Medicas
Registrar consulta médica
Imprimir en PDF prescripción médica
Configuraciones Generales del Hospital
Instalacióny actualizaciones
composer create-project julio101290/ci4medical-soft y luego composer update cada vez que haya una nueva versión del marco.
Al actualizar, consulte las notas de la versión para ver si hay algún cambio que deba aplicar a la carpeta de su aplicación. Los archivos afectados se pueden copiar o combinar desde el vendor/codeigniter4/framework/app.
Copie env a .env y personalícelo para su aplicación, específicamente la baseURL y cualquier configuración de la base de datos.
Base de datos
Puede encontrar el archivo de base de datos en la base de datos en la carpeta base de datos / medicalsoft2022.sql
Pronto crearemos los archivos de migración para construir las tablas sin tener que ejecutar el archivo .sql
Además conforme se vayan haciendose cambios vamos a generar una aplicación instalable para windows para que la instalación sea lo más fácil posible.
Primero ejecutamos el instalador
En la ruta la dejamos tal como está y le damos click en el botón siguiente
Activamos la casilla para que se genere el acceso directo al escritorio
Verificamos que la información esté correcta
Una vez que se le da click se empezará a instalar
Una vez terminado nos sale la ventana de login, en caso de salir la pantalla en blanco cerrar la ventana y volverla abrir, el usuario es admin y la contraseña es super-admin
Una vez ingresado al sistema nos mostrará la pantalla principal y podremos empezar a usar el sistema MedicalSoft
index.php ya no está en la raíz del proyecto! Se ha movido dentro de la carpeta, public para una mejor seguridad y separación de componentes.
Esto significa que debe configurar su servidor web para que “se dirija” a su proyecto carpeta public y no a la raíz del proyecto. Una mejor práctica sería configurar un host virtual para que apunte allí. Una mala práctica sería apuntar su servidor web a la raíz del proyecto y esperar ingresar public/…, como el resto de tu lógica y el El marco está expuesto.
Por favor lea la guía del usuario para obtener una mejor explicación de cómo funciona CI4!
Requisitos del servidor
Se requiere PHP versión 7.4 o superior, con las siguientes extensiones instaladas:
Para traer la el catalogo de listas de precios usaremos la siguiente URL en GET
https://localhost:50000/b1s/v1/PriceLists?$select=PriceListNo,PriceListName&$filter=Active eq 'tYES' and substringof('TRIT',PriceListNo) or substringof('TRIT',PriceListName)
Como pueden observar usamos la funcion substringof como el equivalente al like de SQL
Lo que haremos en esta ocasión en hacer la consulta al service layer para usarlo en un Select2 vía AJAX y PHP primera mente usaremos la siguiente petición de tipo GET URL
https://localhost:50000/b1s/v1/Users?$select=InternalKey,UserCode,Group,UserName&$filter=Group eq 'ug_Regular' and substringof('Julio',UserName) or substringof('Julio',UserCode)&$orderby=InternalKey
Como ven usamos la función substringof que seria el equivalente en SQL al like ‘%%’
Quedando mas o menos asi
Ahora transformamos la petición a una función de PHP en la que recibimos la cookie y el filtro para buscar los usuarios
Ahora en el archivo de consulta se usaría de la siguiente forma, hacemos el Login, consultamos, hacemos el Logout, y formamos la cadena JSON de la siguiente forma
Algunas veces en el desarrollo es necesario consumir web Service para los proyectos, como puede ser facturación electrónica mexica, obtener el precio del dólar del DOF ETC .
Existen herramientas ya conocidas para realizar las pruebas como Postman las cuales funcionan muy bien y cuentan con excelentes funciones como la de exportar la petición al lenguaje que estemos utilizando ya sea PHP, C#, Java, Python,Ruby on Rails ETC
Pero como siempre hay alternativas en todo.
Existe una buena alternativa y es una extensión de Visual Studio Code.
Thunder Client es una extensión de cliente Rest API liviana para VS Code, diseñada a mano por Ranga Vadhineni con un enfoque en la simplicidad, el diseño limpio y el almacenamiento local.
Para instalarlo nomas vamos a extensiones buscamos Thunder Client, le damos instalar y listo
Y listo ya podemos hacer pruebas con los webservice
Usamos cookies en nuestro sitio web para brindarle la experiencia más relevante recordando sus preferencias y visitas repetidas. Al hacer clic en "Aceptar", acepta el uso de TODAS las cookies.
This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.