Herramientas Informaticas

Etiqueta: Desarrollo Página 2 de 5

CodeIgniter 4 Boilerplate Arqueo de Caja

Entrada fija
Latest Stable Version
Total Downloads
Latest Unstable Version
License

   

CodeIgniter 4 Boilerplate Arqueo de caja

CodeIgniter4 Boilerplate Arqueo de caja, este modulo servira para abrir y cerrar las cajas en una fecha determinada.

El funcionamiento es que al abrir la caja todas las ventas realizadas se ingresaran a ese arqueo, el cual va a generar un reporte de cuales ventas son a credito y cuales a contado.

Al registrar el arqueo de caja capturamos cuando hay en caja actualmente y cuanto hay en el reconteo de efectivo

Requerimientos

  • PhpCfdi\SatCatalogos
  • julio101290/boilerplatelog
  • hermawan/codeigniter4-datatables

Instalación

Ejecutar los siguientes comandos

composer require phpcfdi/sat-catalogos

composer require hermawan/codeigniter4-datatables

composer require julio101290/boilerplatelog

composer require julio101290/boilerplatecompanies

composer require julio101290/boilerplatestorages

composer require julio101290/boilerplatetypesmovement

composer require julio101290/boilerplatequotes

composer require julio101290/boilerplatecashtonnage

Ejecutar los comandos para la migración de tablas y sembrado de datos

php spark boilerplatecompanies:installcompaniescrud

php spark boilerplatelog:installlog

php spark boilerplatestorages:installstorages

php spark boilerplatetypesmovement:installtypesmovement

php spark boilerplatequotes:installquotes

php spark boilerplatecashtonnage:installcashtonnage

Creamos el menú, Como se ve en la imagen

image

Listo

image
image
image

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.

CodeIgniter 4 Boilerplate Cotizaciones

Entrada fija
Latest Stable Version
Total Downloads
Latest Unstable Version
License

   

image

CodeIgniter 4 Boilerplate Cotizaciones

Biblioteca CodeIgniter4 Boilerplatequotes para generar cotizaciones con formato de impresión PDF para enviar a los clientes

Requerimientos

  • PhpCfdi\SatCatalogos
  • julio101290/boilerplatelog
  • hermawan/codeigniter4-datatables

Instalación

Ejecutar Comandos para integrar librerias al proyecto

composer require phpcfdi/sat-catalogos

composer require hermawan/codeigniter4-datatables

composer require julio101290/boilerplatelog

composer require julio101290/boilerplatecompanies

composer require julio101290/boilerplatestorages

composer require julio101290/boilerplatetypesmovement

Ejecutar comandos de migración y sembrado

php spark boilerplatecompanies:installcompaniescrud

php spark boilerplatelog:installlog

php spark boilerplatestorages:installstorages

php spark boilerplatetypesmovement:installtypesmovement

Creamos el menú, Ejemplo

image

Listo

image
image
image

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.

CodeIgniter 4: Herramienta de Respaldo para Bases de Datos

Entrada fija
Latest Stable Version
Total Downloads
Latest Unstable Version
License

CodeIgniter 4 Boilerplate Backup

Esta biblioteca es una extensión del texto estándar de CodeIgniter4, diseñada específicamente para facilitar la interacción con bases de datos a través de un enfoque intuitivo y eficiente. Con una interfaz sencilla de base de datos de copias de seguridad para MariaDB/MySQL, permite a los desarrolladores gestionar respaldos de manera rápida y segura, eliminando la complejidad que a menudo acompaña a estos procesos. Además, cuenta con diversas funcionalidades adicionales, como la programación de tareas automáticas y la restauración fácil de datos, lo que la convierte en una herramienta esencial para aquellos que buscan optimizar el manejo de sus bases de datos en aplicaciones web.

Instalación

Ejecutar el siguiente comando

composer require julio101290/boilerplatbackup

Ejecutar el siguiente comando para crear las tablas y sembrar los datos de los permisos

php spark boilerplatebackup:installbackup

Crear el menú tal cual se ve en la imagen

Listo

Uso

Puede descubrir cómo funciona con las rutas de lectura de código, el controlador y las vistas, etc. Finalmente… ¡Feliz codificación!

Changelog

Please see CHANGELOG for more information what has changed recently.

Contribuciones

Las contribuciones son muy bienvenidas.

License

This package is free software distributed under the terms of the MIT license.

Instalación y Uso de Boilerplate Settings en CodeIgniter 4

Entrada fija

CodeIgniter 4 Boilerplate Settings

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

image

Listo al final queda asi

image

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.

Obtener lista de usuarios SAP a través de Service Layer

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

    /* =============================================
      MOSTRAR
      ============================================= */

    static public function ctrMostrar($cookie, $filtro) {


        $curl = curl_init();

        curl_setopt_array($curl, [
            CURLOPT_PORT => "50000",
            CURLOPT_URL => "https://localhost:50000/b1s/v1/Users?%24select=InternalKey%2CUserCode%2CGroup%2CUserName&%24filter=Group%20eq%20'ug_Regular'%20%20and%20substringof('$filtro'%2CUserName)%20%20or%20substringof('$filtro'%2CUserCode)&%24orderby=InternalKey",
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_ENCODING => "",
            CURLOPT_COOKIE => $cookie,
            CURLOPT_SSL_VERIFYHOST => false,
            CURLOPT_SSL_VERIFYPEER => false,
            CURLOPT_MAXREDIRS => 10,
            CURLOPT_TIMEOUT => 30,
            CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST => "GET",
            CURLOPT_HTTPHEADER => [
                "Accept: */*",
                "User-Agent: Thunder Client (https://www.thunderclient.com)"
            ],
        ]);

        $response = curl_exec($curl);
        $err = curl_error($curl);

        curl_close($curl);

        if ($err) {
            return "cURL Error #:" . $err;
        } else {
            return json_decode($response);
        }


        $response = json_decode($response);

        return $response;
    }

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

   $busqueda = $_POST["searchTerm"];

    $conexionSAP = ServiceLayer::login();

    $cookie = "B1SESSION=" . $conexionSAP->SessionId . ";  ROUTEID=.node1";

    $usuariosSAP = ControladorUsuariosSAP::ctrMostrar($cookie, $busqueda);

    $usuariosSAPLista = $usuariosSAP->value;

    $usuariosSAP = ServiceLayer::logout($cookie);

    $jsonVariable = ' { "results": [';

    foreach ($usuariosSAPLista as $keyUsuarios1 => $valueUsuarios1) {


        $jsonVariable .= ' {
      "id": "' . $valueUsuarios1->UserCode . '",
      "text": "' . utf8_encode($valueUsuarios1->UserCode . " - " . $valueUsuarios1->UserName) . '"
    },';
    }

    $jsonVariable = substr($jsonVariable, 0, -1);

    $jsonVariable .= ' ]
}';

    echo ($jsonVariable);

Y listo ya esto obtenemos los datos requeridos

Ejemplos Service Layer SAP

A continuación pondremos a su disposición algunos ejemplos de peticiones al Service Layer del SAP así como el código en PHP

  1. Postman en Visual Studio Code
  2. Haciendo Login en Service Layer en SAP y pasar el código en PHP 8.3
  3. Haciendo Logout en Service Layer en SAP y pasar el código en PHP 8.3
  4. Obtener lista de usuarios SAP a través de Service Layer
  5. Obtener la lista de precios de SAP a través Service Layer
  6. Crear Consultas Personalizadas en Service Layer SAP
  7. Modificar consultas Personalizadas en Service Layer SAP
  8. Leer consultas Personalizadas en Service Layer SAP

Postman en Visual Studio Code

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

Problema con la ejecución de Seeders en Codeignter 4

Una de las ventajas de trabajar en el framework de codeigniter 4 son las migraciones, es decir, en lugar de crear la tabla directamente creamos los archivos de migración y cuando actualicemos los fuentes desde nuestra maquina al servidor basta con correr un php spark migrate y los campos y tablas nuevas se actualizan instantáneamente en servidor de base de datos de nuestro servidor.

En los archivos de base de datos o de migración de de dos tipos que son los siguientes

  • Migration
  • Seeds

Los archivos de migración en resumen es para poner tablas y campos nuevos mientras que los archivos seeds son para insertar datos a la tabla, en nuestro caso permisos, menus ETC

Según teníamos entendido que los seeders se ejecutaban también con el comando de php spark migrate, pero al parecer no se ejecuto en el servidor el motivo era por que tenia errores, pero no los mostro el comando.

Lo que se tuvo que hacer fue correr el siguiente comando

php spark db:seed

A continuación nos solicitara el nombre del archivo seed

CodeIgniter v4.5.1 Command Line Tool - Server Time: 2024-06-24 09:19:25 UTC-07:00

Nombre de semilla :

Le ponemos el nombre de la semilla en nuestro caso es nuestro archivo se llama PermissionNotaCreditoSeeder.phpl a clase se llama igual solo que sin la extension .php quedaria de la siguiente forma y le damos enter en caso de que el archivo contenga un error nos los mostrara, en nuestro caso como todo nos salió bien nos arrojo este mensaje

El contenido del archivo seed era el siguiente

<?php

namespace App\Database\Seeds;

use CodeIgniter\Config\Services;
use CodeIgniter\Database\Seeder;
use Myth\Auth\Entities\User;
use Myth\Auth\Models\UserModel;
use julio101290\boilerplate\Models\MenuModel;

class PermissionNotaCreditoSeeder extends Seeder {

    /**
     * @var Authorize
     */
    protected $authorize;

    /**
     * @var Db
     */
    protected $db;

    /**
     * @var Users
     */
    protected $users;

    //protected $menu;

    public function __construct() {
        $this->authorize = Services::authorization();
        $this->db = \Config\Database::connect();
        $this->users = new UserModel();
    }

    public function run() {

        $this->authorize->createPermission('listaNotaCredito-permission', 'Permiso para la lista de notas de crédito');
        $this->authorize->addPermissionToGroup('listaNotaCredito-permission', 'admin');
        $this->authorize->addPermissionToUser('listaNotaCredito-permission', 1);
        
    }
}

Creando CRUD de remolques para la carta porte 3.0 en CodeIgniter 4 #22

Para la carta porte3.0 también requerimos del catalogo de remolques el cual tendrá los siguientes datos.

  • Id
  • idEmpresa
  • Descripcion
  • subtipo Remolque
  • Placa

Agregando campos nuevos para choferes y usarlo en carta porte 3.0 en CodeIgniter 4 #21

En este caso vamos a requerir tres campos mas que son los siguientes

  • tipoFigura
  • RFCFigura
  • numLicencia

Página 2 de 5

Creado con WordPress & Tema de Anders Norén