3 Commits

Author SHA1 Message Date
32f2686f14 se supone que volvio
Some checks failed
build-and-deploy / filter (push) Successful in 2s
Sync to GitHub / sync (push) Failing after 1s
build-and-deploy / build (push) Successful in 54s
build-and-deploy / deploy (push) Successful in 15s
2025-05-30 23:51:22 -06:00
google-labs-jules[bot]
242dc66983 Refactor: Centralize Prisma schema and restrict DB access
This commit refactors the project to use a shared Prisma schema and restricts direct database access to the API service.

Key changes:

- Created a new shared package `core/prisma` containing the Prisma schema, generated client, and types.
- Configured the monorepo to use NPM workspaces, including `core/prisma` and all services.
- Updated all services (`api`, `ui`, `mcp`, `agent`, and the background processing service) to depend on `@empresa/prisma-schema`.
- The API service now imports `PrismaClient` from `@empresa/prisma-schema/client`.
- Other services import only types from `@empresa/prisma-schema`.
- Removed redundant Prisma configurations from `api` and the background processing service.
- Updated the background processing service's `sync-empleados.js` to fetch data via an API call instead of direct database access.
- Updated TypeScript configurations (`tsconfig.base.json` and service-specific ones) to support the new structure and path aliases.
- Updated `README.md` to reflect the new architecture and added convenience scripts for Prisma operations.

This change promotes a single source of truth for data models, reduces code duplication, and improves the overall architecture by centralizing database operations within the API service.
2025-05-30 23:40:00 +00:00
google-labs-jules[bot]
3fdba1fe89 feat: Add daily employee data synchronization
I've added a new capability to synchronize employee data from the local database to an external database on a daily basis.

Key changes:

-   **`worker/sync-empleados.js`**: This new script:
    -   Connects to the local Prisma database to fetch `Cliente` records where `empleado` is true.
    -   Provides clear placeholders and guidance for connecting to an external database (you must configure details like host, credentials, DB type, and table name, and implement specific DB client logic).
    -   Outlines a conceptual "upsert" logic (update existing, insert new) for the external database.
    -   Includes extensive comments on configuration, operation, and testing considerations.

-   **`worker/cron-worker.js`**:
    -   I modified this to import and schedule the `syncEmpleadosToExternalDB` function from the new script.
    -   The synchronization is scheduled to run daily at midnight.
    -   The existing example 5-second cron job has been commented as an example.

-   **Documentation**:
    -   I added in-code comments to both modified/new files to explain functionality.
    -   `sync-empleados.js` includes sections on external DB configuration and detailed testing considerations (manual and automated).

You will need to provide the actual connection details and logic for your specific external database system.
2025-05-30 06:48:19 +00:00