Migraciones y testeo
This commit is contained in:
@ -3,6 +3,7 @@ watch:
|
|||||||
- src
|
- src
|
||||||
- tests
|
- tests
|
||||||
- common
|
- common
|
||||||
|
- resources
|
||||||
fileMask: '*.php'
|
fileMask: '*.php'
|
||||||
notifications:
|
notifications:
|
||||||
passingTests: false
|
passingTests: false
|
||||||
|
@ -3,24 +3,26 @@
|
|||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"type": "project",
|
"type": "project",
|
||||||
"require": {
|
"require": {
|
||||||
"berrnd/slim-blade-view": "^1.0",
|
|
||||||
"ext-gd": "*",
|
"ext-gd": "*",
|
||||||
"ext-openssl": "*",
|
"ext-openssl": "*",
|
||||||
"ext-pdo": "*",
|
"ext-pdo": "*",
|
||||||
|
"berrnd/slim-blade-view": "^1.0",
|
||||||
"guzzlehttp/guzzle": "^7.8",
|
"guzzlehttp/guzzle": "^7.8",
|
||||||
"monolog/monolog": "^3.4",
|
"monolog/monolog": "^3.4",
|
||||||
"nyholm/psr7": "^1.8",
|
"nyholm/psr7": "^1.8",
|
||||||
"nyholm/psr7-server": "^1.0",
|
"nyholm/psr7-server": "^1.0",
|
||||||
"php-di/php-di": "^7.0",
|
"php-di/php-di": "^7.0",
|
||||||
"php-di/slim-bridge": "^3.4",
|
"php-di/slim-bridge": "^3.4",
|
||||||
"phpoffice/phpspreadsheet": "^1.29",
|
"phpoffice/phpspreadsheet": "^3.0",
|
||||||
"predis/predis": "^2.2",
|
"predis/predis": "^2.2",
|
||||||
|
"robmorgan/phinx": "^0.16.5",
|
||||||
"slim/slim": "^4.11"
|
"slim/slim": "^4.11"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fakerphp/faker": "^1.23",
|
"fakerphp/faker": "^1.23",
|
||||||
"kint-php/kint": "^5.1",
|
"kint-php/kint": "^5.1",
|
||||||
"phpunit/phpunit": "^10.2",
|
"odan/phinx-migrations-generator": "^6.2",
|
||||||
|
"phpunit/phpunit": "^11",
|
||||||
"spatie/phpunit-watcher": "^1.23"
|
"spatie/phpunit-watcher": "^1.23"
|
||||||
},
|
},
|
||||||
"authors": [
|
"authors": [
|
||||||
|
46
app/phinx.php
Normal file
46
app/phinx.php
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
return
|
||||||
|
[
|
||||||
|
'paths' => [
|
||||||
|
'migrations' => '%%PHINX_CONFIG_DIR%%/resources/database/migrations',
|
||||||
|
'seeds' => '%%PHINX_CONFIG_DIR%%/resources/database/seeds'
|
||||||
|
],
|
||||||
|
'environments' => [
|
||||||
|
'default_migration_table' => 'phinxlog',
|
||||||
|
'default_environment' => 'development',
|
||||||
|
'production' => [
|
||||||
|
'adapter' => 'mysql',
|
||||||
|
'host' => $_ENV['DB_HOST'] ?? 'localhost',
|
||||||
|
'name' => $_ENV['DB_DATABASE'],
|
||||||
|
'user' => $_ENV['DB_USER'],
|
||||||
|
'pass' => $_ENV['DB_PASSWORD'],
|
||||||
|
'port' => '3306',
|
||||||
|
'charset' => 'utf8',
|
||||||
|
],
|
||||||
|
'development' => [
|
||||||
|
'adapter' => 'mysql',
|
||||||
|
'host' => $_ENV['DB_HOST'] ?? 'localhost',
|
||||||
|
'name' => $_ENV['DB_DATABASE'],
|
||||||
|
'user' => $_ENV['DB_USER'],
|
||||||
|
'pass' => $_ENV['DB_PASSWORD'],
|
||||||
|
'port' => '3306',
|
||||||
|
'charset' => 'utf8',
|
||||||
|
],
|
||||||
|
'testing' => [
|
||||||
|
'adapter' => 'mysql',
|
||||||
|
'host' => $_ENV['DB_HOST'] ?? 'localhost',
|
||||||
|
'name' => $_ENV['DB_DATABASE'],
|
||||||
|
'user' => $_ENV['DB_USER'],
|
||||||
|
'pass' => $_ENV['DB_PASSWORD'],
|
||||||
|
'port' => '3306',
|
||||||
|
'charset' => 'utf8',
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'version_order' => 'creation',
|
||||||
|
'schema_file' => '%%PHINX_CONFIG_DIR%%/resources/database/schema.php',
|
||||||
|
'foreign_keys' => true,
|
||||||
|
'generate_migration_name' => true,
|
||||||
|
'default_migration_prefix' => 'incoviba_',
|
||||||
|
'mark_generated_migration' => true
|
||||||
|
];
|
@ -1,43 +1,43 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<phpunit
|
||||||
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.5/phpunit.xsd"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
bootstrap="vendor/autoload.php"
|
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/11.4/phpunit.xsd"
|
||||||
cacheDirectory="/code/cache/tests"
|
bootstrap="test.bootstrap.php"
|
||||||
executionOrder="depends,defects"
|
cacheDirectory="/code/cache/tests"
|
||||||
requireCoverageMetadata="false"
|
executionOrder="depends,defects"
|
||||||
beStrictAboutCoverageMetadata="false"
|
requireCoverageMetadata="false"
|
||||||
beStrictAboutOutputDuringTests="true"
|
beStrictAboutCoverageMetadata="false"
|
||||||
colors="true"
|
beStrictAboutOutputDuringTests="true"
|
||||||
failOnRisky="false"
|
colors="true"
|
||||||
failOnWarning="false">
|
failOnRisky="false"
|
||||||
<testsuites>
|
failOnWarning="false">
|
||||||
<testsuite name="unit">
|
<testsuites>
|
||||||
<directory>tests/units</directory>
|
<testsuite name="unit">
|
||||||
</testsuite>
|
<directory>tests/unit</directory>
|
||||||
<testsuite name="acceptance">
|
</testsuite>
|
||||||
<directory>tests/integration</directory>
|
<testsuite name="acceptance">
|
||||||
</testsuite>
|
<directory>tests/integration</directory>
|
||||||
<testsuite name="performance">
|
</testsuite>
|
||||||
<directory>tests/performance</directory>
|
<testsuite name="performance">
|
||||||
</testsuite>
|
<directory>tests/performance</directory>
|
||||||
</testsuites>
|
</testsuite>
|
||||||
|
</testsuites>
|
||||||
<source restrictDeprecations="true" restrictNotices="true" restrictWarnings="true">
|
<source restrictNotices="true" restrictWarnings="true" ignoreIndirectDeprecations="true">
|
||||||
<include>
|
<include>
|
||||||
<directory>src</directory>
|
<directory>src</directory>
|
||||||
<directory>common</directory>
|
<directory>common</directory>
|
||||||
</include>
|
</include>
|
||||||
</source>
|
</source>
|
||||||
<coverage includeUncoveredFiles="true" pathCoverage="false" ignoreDeprecatedCodeUnits="true" disableCodeCoverageIgnore="true">
|
<coverage pathCoverage="false" ignoreDeprecatedCodeUnits="true" disableCodeCoverageIgnore="true">
|
||||||
<report>
|
<report>
|
||||||
<html outputDirectory="/code/public/coverage/html" />
|
<html outputDirectory="/code/public/coverage/html"/>
|
||||||
<php outputFile="/code/public/coverage/coverage.php" />
|
<php outputFile="/code/public/coverage/coverage.php"/>
|
||||||
</report>
|
</report>
|
||||||
</coverage>
|
</coverage>
|
||||||
<logging>
|
<logging>
|
||||||
<junit outputFile="/code/cache/tests/junit.xml" />
|
<junit outputFile="/code/cache/tests/junit.xml"/>
|
||||||
<teamcity outputFile="/code/cache/tests/teamcity.txt" />
|
<teamcity outputFile="/code/cache/tests/teamcity.txt"/>
|
||||||
<testdoxHtml outputFile="/code/cache/tests/testdox.html" />
|
<testdoxHtml outputFile="/code/cache/tests/testdox.html"/>
|
||||||
<testdoxText outputFile="/code/cache/tests/testdox.txt" />
|
<testdoxText outputFile="/code/cache/tests/testdox.txt"/>
|
||||||
</logging>
|
</logging>
|
||||||
</phpunit>
|
</phpunit>
|
||||||
|
File diff suppressed because it is too large
Load Diff
19644
app/resources/database/schema.php
Normal file
19644
app/resources/database/schema.php
Normal file
File diff suppressed because it is too large
Load Diff
677
app/resources/database/schema.sql
Normal file
677
app/resources/database/schema.sql
Normal file
@ -0,0 +1,677 @@
|
|||||||
|
-- Adminer 4.8.1 MySQL 11.5.2-MariaDB-ubu2404 dump
|
||||||
|
|
||||||
|
SET NAMES utf8;
|
||||||
|
SET time_zone = '+00:00';
|
||||||
|
SET foreign_key_checks = 0;
|
||||||
|
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
|
||||||
|
|
||||||
|
USE `incoviba`;
|
||||||
|
|
||||||
|
SET NAMES utf8mb4;
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `action`;
|
||||||
|
CREATE TABLE `action` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`description` varchar(50) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `agente`;
|
||||||
|
CREATE TABLE `agente` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`tipo` int(11) DEFAULT NULL,
|
||||||
|
`rut` int(11) DEFAULT NULL,
|
||||||
|
`descripcion` varchar(100) DEFAULT NULL,
|
||||||
|
`representante` varchar(100) DEFAULT NULL,
|
||||||
|
`telefono` int(11) DEFAULT NULL,
|
||||||
|
`correo` varchar(50) DEFAULT NULL,
|
||||||
|
`direccion` int(11) DEFAULT NULL,
|
||||||
|
`giro` mediumtext DEFAULT NULL,
|
||||||
|
`abreviacion` varchar(20) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `idx_tipo` (`tipo`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `agente_tipo`;
|
||||||
|
CREATE TABLE `agente_tipo` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`agente` int(10) unsigned NOT NULL,
|
||||||
|
`tipo` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `agente` (`agente`),
|
||||||
|
KEY `tipo` (`tipo`),
|
||||||
|
CONSTRAINT `agente_tipo_ibfk_1` FOREIGN KEY (`agente`) REFERENCES `agente` (`id`) ON DELETE NO ACTION,
|
||||||
|
CONSTRAINT `agente_tipo_ibfk_2` FOREIGN KEY (`tipo`) REFERENCES `tipo_agente` (`id`) ON DELETE NO ACTION
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `avance_construccion`;
|
||||||
|
CREATE TABLE `avance_construccion` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`proyecto` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`numero` int(10) unsigned NOT NULL,
|
||||||
|
`avance` double unsigned NOT NULL,
|
||||||
|
`estado_pago` double unsigned NOT NULL,
|
||||||
|
`pagado` int(10) unsigned DEFAULT NULL,
|
||||||
|
`uf` double unsigned DEFAULT NULL,
|
||||||
|
`fecha_pagado` date DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `proyecto` (`proyecto`),
|
||||||
|
CONSTRAINT `avance_construccion_ibfk_1` FOREIGN KEY (`proyecto`) REFERENCES `proyecto` (`id`) ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `backup`;
|
||||||
|
CREATE TABLE `backup` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`date` datetime DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `banco`;
|
||||||
|
CREATE TABLE `banco` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`nombre` varchar(20) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `bono_pie`;
|
||||||
|
CREATE TABLE `bono_pie` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`valor` float DEFAULT NULL,
|
||||||
|
`pago` int(11) unsigned DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `pago` (`pago`),
|
||||||
|
CONSTRAINT `bono_pie_ibfk_1` FOREIGN KEY (`pago`) REFERENCES `pago` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `cartolas`;
|
||||||
|
CREATE TABLE `cartolas` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`cuenta_id` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`cargos` bigint(20) unsigned NOT NULL DEFAULT 0,
|
||||||
|
`abonos` bigint(20) unsigned NOT NULL DEFAULT 0,
|
||||||
|
`saldo` bigint(20) NOT NULL DEFAULT 0,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `cuenta_id` (`cuenta_id`),
|
||||||
|
CONSTRAINT `cartolas_ibfk_2` FOREIGN KEY (`cuenta_id`) REFERENCES `cuenta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `categorias_centros_costos`;
|
||||||
|
CREATE TABLE `categorias_centros_costos` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`descripcion` varchar(255) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `centros_costos`;
|
||||||
|
CREATE TABLE `centros_costos` (
|
||||||
|
`id` int(10) unsigned NOT NULL,
|
||||||
|
`tipo_centro_id` int(10) unsigned NOT NULL,
|
||||||
|
`categoria_id` int(10) unsigned NOT NULL,
|
||||||
|
`tipo_cuenta_id` int(10) unsigned DEFAULT NULL,
|
||||||
|
`cuenta_contable` varchar(100) NOT NULL,
|
||||||
|
`descripcion` mediumtext NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `tipo_centro_id` (`tipo_centro_id`),
|
||||||
|
KEY `categoria_id` (`categoria_id`),
|
||||||
|
KEY `tipo_cuenta_id` (`tipo_cuenta_id`),
|
||||||
|
CONSTRAINT `centros_costos_ibfk_3` FOREIGN KEY (`tipo_centro_id`) REFERENCES `tipos_centros_costos` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `centros_costos_ibfk_4` FOREIGN KEY (`categoria_id`) REFERENCES `categorias_centros_costos` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `cierre`;
|
||||||
|
CREATE TABLE `cierre` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`proyecto` int(10) unsigned NOT NULL,
|
||||||
|
`precio` double NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`relacionado` int(1) DEFAULT 0,
|
||||||
|
`propietario` int(10) unsigned DEFAULT 0,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `proyecto` (`proyecto`),
|
||||||
|
CONSTRAINT `cierre_ibfk_2` FOREIGN KEY (`proyecto`) REFERENCES `proyecto` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `cobro`;
|
||||||
|
CREATE TABLE `cobro` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`proyecto` int(11) DEFAULT NULL,
|
||||||
|
`agente` int(11) DEFAULT NULL,
|
||||||
|
`tipo` int(11) DEFAULT NULL,
|
||||||
|
`fecha` date DEFAULT NULL,
|
||||||
|
`valor` float DEFAULT NULL,
|
||||||
|
`iva` float DEFAULT 0,
|
||||||
|
`uf` float DEFAULT NULL,
|
||||||
|
`identificador` varchar(50) DEFAULT NULL,
|
||||||
|
`glosa` mediumtext DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `comentario`;
|
||||||
|
CREATE TABLE `comentario` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`venta` int(10) unsigned DEFAULT NULL,
|
||||||
|
`fecha` datetime DEFAULT NULL,
|
||||||
|
`texto` blob DEFAULT NULL,
|
||||||
|
`estado` int(11) DEFAULT 1,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `comuna`;
|
||||||
|
CREATE TABLE `comuna` (
|
||||||
|
`id` int(11) unsigned NOT NULL,
|
||||||
|
`descripcion` varchar(50) NOT NULL,
|
||||||
|
`provincia` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `fk_provincia` (`provincia`),
|
||||||
|
CONSTRAINT `comuna_ibfk_1` FOREIGN KEY (`provincia`) REFERENCES `provincia` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `configurations`;
|
||||||
|
CREATE TABLE `configurations` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`name` varchar(30) NOT NULL,
|
||||||
|
`value` varchar(255) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `costo`;
|
||||||
|
CREATE TABLE `costo` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`proyecto` int(11) DEFAULT NULL,
|
||||||
|
`tipo` int(11) DEFAULT NULL,
|
||||||
|
`valor` float DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `credito`;
|
||||||
|
CREATE TABLE `credito` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`banco` varchar(50) DEFAULT NULL,
|
||||||
|
`valor` float DEFAULT NULL,
|
||||||
|
`fecha` date DEFAULT NULL,
|
||||||
|
`uf` float DEFAULT NULL,
|
||||||
|
`abonado` int(1) DEFAULT 0,
|
||||||
|
`fecha_abono` date DEFAULT NULL,
|
||||||
|
`pago` int(11) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `cuenta`;
|
||||||
|
CREATE TABLE `cuenta` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`inmobiliaria` int(8) unsigned NOT NULL,
|
||||||
|
`banco` int(10) unsigned NOT NULL,
|
||||||
|
`cuenta` varchar(50) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `inmobiliaria` (`inmobiliaria`),
|
||||||
|
KEY `banco` (`banco`),
|
||||||
|
CONSTRAINT `cuenta_ibfk_1` FOREIGN KEY (`inmobiliaria`) REFERENCES `inmobiliaria` (`rut`) ON DELETE NO ACTION,
|
||||||
|
CONSTRAINT `cuenta_ibfk_2` FOREIGN KEY (`banco`) REFERENCES `banco` (`id`) ON DELETE NO ACTION
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `cuota`;
|
||||||
|
CREATE TABLE `cuota` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`pie` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`valor_$` int(10) unsigned NOT NULL,
|
||||||
|
`estado` tinyint(1) DEFAULT 0,
|
||||||
|
`banco` varchar(20) NOT NULL,
|
||||||
|
`fecha_pago` date DEFAULT NULL,
|
||||||
|
`abonado` tinyint(1) DEFAULT 0,
|
||||||
|
`fecha_abono` date DEFAULT NULL,
|
||||||
|
`uf` double DEFAULT 0,
|
||||||
|
`pago` int(10) unsigned DEFAULT NULL,
|
||||||
|
`numero` int(10) unsigned DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `fk_pago_cuota` (`pago`),
|
||||||
|
KEY `pie` (`pie`),
|
||||||
|
CONSTRAINT `cuota_ibfk_1` FOREIGN KEY (`pago`) REFERENCES `pago` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `cuota_ibfk_2` FOREIGN KEY (`pie`) REFERENCES `pie` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `depositos`;
|
||||||
|
CREATE TABLE `depositos` (
|
||||||
|
`id` int(10) unsigned NOT NULL,
|
||||||
|
`cuenta_id` int(10) unsigned NOT NULL,
|
||||||
|
`capital` int(10) unsigned NOT NULL,
|
||||||
|
`futuro` int(10) unsigned NOT NULL,
|
||||||
|
`inicio` date NOT NULL,
|
||||||
|
`termino` date NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `cuenta_id` (`cuenta_id`),
|
||||||
|
CONSTRAINT `depositos_ibfk_2` FOREIGN KEY (`cuenta_id`) REFERENCES `cuenta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `direccion`;
|
||||||
|
CREATE TABLE `direccion` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`calle` varchar(255) NOT NULL,
|
||||||
|
`numero` int(10) unsigned NOT NULL,
|
||||||
|
`extra` varchar(255) NOT NULL,
|
||||||
|
`comuna` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `fk_comuna` (`comuna`),
|
||||||
|
CONSTRAINT `direccion_ibfk_1` FOREIGN KEY (`comuna`) REFERENCES `comuna` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `entrega`;
|
||||||
|
CREATE TABLE `entrega` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`fondo_operacion` int(11) DEFAULT 0,
|
||||||
|
`fondo_reserva` int(11) DEFAULT 0,
|
||||||
|
`fecha_fondo_operacion` date DEFAULT NULL,
|
||||||
|
`fecha_fondo_reserva` date DEFAULT NULL,
|
||||||
|
`pago_operacion` int(11) DEFAULT NULL,
|
||||||
|
`pago_reserva` int(11) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `escritura`;
|
||||||
|
CREATE TABLE `escritura` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`valor` bigint(20) NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`uf` float DEFAULT NULL,
|
||||||
|
`abonado` int(11) DEFAULT 0,
|
||||||
|
`fecha_abono` date DEFAULT NULL,
|
||||||
|
`pago` int(11) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estados_cuentas`;
|
||||||
|
CREATE TABLE `estados_cuentas` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`cuenta_id` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`active` tinyint(1) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `cuenta_id` (`cuenta_id`),
|
||||||
|
CONSTRAINT `estados_cuentas_ibfk_2` FOREIGN KEY (`cuenta_id`) REFERENCES `cuenta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_cierre`;
|
||||||
|
CREATE TABLE `estado_cierre` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`cierre` int(10) unsigned NOT NULL,
|
||||||
|
`tipo` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `cierre` (`cierre`),
|
||||||
|
KEY `tipo` (`tipo`),
|
||||||
|
CONSTRAINT `estado_cierre_ibfk_3` FOREIGN KEY (`cierre`) REFERENCES `cierre` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `estado_cierre_ibfk_4` FOREIGN KEY (`tipo`) REFERENCES `tipo_estado_cierre` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_cobro`;
|
||||||
|
CREATE TABLE `estado_cobro` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`cobro` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`estado` int(11) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`,`cobro`,`estado`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_pago`;
|
||||||
|
CREATE TABLE `estado_pago` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`pago` int(11) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`estado` int(11) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `estado` (`estado`),
|
||||||
|
CONSTRAINT `estado_pago_ibfk_1` FOREIGN KEY (`estado`) REFERENCES `tipo_estado_pago` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_precio`;
|
||||||
|
CREATE TABLE `estado_precio` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`precio` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`estado` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `precio` (`precio`),
|
||||||
|
KEY `estado` (`estado`),
|
||||||
|
CONSTRAINT `estado_precio_ibfk_3` FOREIGN KEY (`precio`) REFERENCES `precio` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `estado_precio_ibfk_4` FOREIGN KEY (`estado`) REFERENCES `tipo_estado_precio` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_problema`;
|
||||||
|
CREATE TABLE `estado_problema` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`problema` int(11) DEFAULT NULL,
|
||||||
|
`fecha` date DEFAULT NULL,
|
||||||
|
`estado` enum('ingreso','revision','correccion','ok') DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_proyecto`;
|
||||||
|
CREATE TABLE `estado_proyecto` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`proyecto` int(10) unsigned NOT NULL,
|
||||||
|
`estado` int(11) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `proyecto` (`proyecto`),
|
||||||
|
KEY `estado` (`estado`),
|
||||||
|
CONSTRAINT `estado_proyecto_ibfk_1` FOREIGN KEY (`proyecto`) REFERENCES `proyecto` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `estado_proyecto_ibfk_3` FOREIGN KEY (`estado`) REFERENCES `tipo_estado_proyecto` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_proyecto_agente`;
|
||||||
|
CREATE TABLE `estado_proyecto_agente` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`agente` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`tipo` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_unidad_bloqueada`;
|
||||||
|
CREATE TABLE `estado_unidad_bloqueada` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`unidad` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`tipo` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `estado_venta`;
|
||||||
|
CREATE TABLE `estado_venta` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`venta` int(10) unsigned NOT NULL,
|
||||||
|
`estado` int(11) unsigned NOT NULL DEFAULT 1,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `escritura` (`venta`),
|
||||||
|
KEY `estado` (`estado`),
|
||||||
|
CONSTRAINT `estado_venta_ibfk_1` FOREIGN KEY (`estado`) REFERENCES `tipo_estado_venta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `estado_venta_ibfk_2` FOREIGN KEY (`venta`) REFERENCES `venta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `etapa_proyecto`;
|
||||||
|
CREATE TABLE `etapa_proyecto` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`descripcion` varchar(20) DEFAULT NULL,
|
||||||
|
`orden` int(10) unsigned DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `facturas`;
|
||||||
|
CREATE TABLE `facturas` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`venta_id` int(10) unsigned NOT NULL,
|
||||||
|
`index` int(10) unsigned NOT NULL,
|
||||||
|
`proporcion` double unsigned NOT NULL,
|
||||||
|
`data` text NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `venta_id` (`venta_id`),
|
||||||
|
CONSTRAINT `facturas_ibfk_2` FOREIGN KEY (`venta_id`) REFERENCES `venta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `factura_proyecto_operador`;
|
||||||
|
CREATE TABLE `factura_proyecto_operador` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`proyecto_id` int(10) unsigned NOT NULL,
|
||||||
|
`operador_id` int(10) unsigned NOT NULL,
|
||||||
|
`factura` int(10) unsigned NOT NULL,
|
||||||
|
`valor_uf` double unsigned NOT NULL,
|
||||||
|
`valor_neto` int(10) unsigned NOT NULL,
|
||||||
|
`iva` int(10) unsigned DEFAULT 0,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `proyecto_id` (`proyecto_id`),
|
||||||
|
KEY `operador_id` (`operador_id`),
|
||||||
|
CONSTRAINT `factura_proyecto_operador_ibfk_1` FOREIGN KEY (`proyecto_id`) REFERENCES `proyecto` (`id`) ON DELETE CASCADE,
|
||||||
|
CONSTRAINT `factura_proyecto_operador_ibfk_2` FOREIGN KEY (`operador_id`) REFERENCES `agente` (`id`) ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `factura_venta`;
|
||||||
|
CREATE TABLE `factura_venta` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`factura_id` int(10) unsigned NOT NULL,
|
||||||
|
`venta_id` int(10) unsigned NOT NULL,
|
||||||
|
`valor` double NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `factura_id` (`factura_id`),
|
||||||
|
KEY `venta_id` (`venta_id`),
|
||||||
|
CONSTRAINT `factura_venta_ibfk_1` FOREIGN KEY (`factura_id`) REFERENCES `factura_proyecto_operador` (`id`) ON DELETE CASCADE,
|
||||||
|
CONSTRAINT `factura_venta_ibfk_2` FOREIGN KEY (`venta_id`) REFERENCES `venta` (`id`) ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `inmobiliaria`;
|
||||||
|
CREATE TABLE `inmobiliaria` (
|
||||||
|
`rut` int(8) unsigned NOT NULL,
|
||||||
|
`dv` char(1) DEFAULT NULL,
|
||||||
|
`razon` varchar(255) DEFAULT NULL,
|
||||||
|
`abreviacion` varchar(50) DEFAULT NULL,
|
||||||
|
`cuenta` varchar(50) DEFAULT NULL,
|
||||||
|
`banco` int(11) DEFAULT NULL,
|
||||||
|
`sociedad` int(10) unsigned DEFAULT NULL,
|
||||||
|
`sigla` varchar(4) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`rut`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `inmobiliarias_nubox`;
|
||||||
|
CREATE TABLE `inmobiliarias_nubox` (
|
||||||
|
`inmobiliaria_rut` int(8) unsigned NOT NULL,
|
||||||
|
`alias` varchar(100) NOT NULL,
|
||||||
|
`usuario` varchar(100) NOT NULL,
|
||||||
|
`contraseña` varchar(100) NOT NULL,
|
||||||
|
KEY `inmobiliaria_rut` (`inmobiliaria_rut`),
|
||||||
|
CONSTRAINT `inmobiliarias_nubox_ibfk_2` FOREIGN KEY (`inmobiliaria_rut`) REFERENCES `inmobiliaria` (`rut`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `locations`;
|
||||||
|
CREATE TABLE `locations` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`controller` varchar(50) NOT NULL,
|
||||||
|
`action` varchar(100) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `logins`;
|
||||||
|
CREATE TABLE `logins` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`user_id` int(10) unsigned NOT NULL,
|
||||||
|
`time` datetime NOT NULL,
|
||||||
|
`selector` varchar(255) NOT NULL,
|
||||||
|
`token` varchar(255) NOT NULL,
|
||||||
|
`status` int(1) NOT NULL DEFAULT 1,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `fk_logins_users` (`user_id`),
|
||||||
|
CONSTRAINT `fk_logins_users` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `monolog`;
|
||||||
|
CREATE TABLE `monolog` (
|
||||||
|
`channel` varchar(255) DEFAULT NULL,
|
||||||
|
`level` varchar(100) DEFAULT NULL,
|
||||||
|
`message` longtext DEFAULT NULL,
|
||||||
|
`time` datetime DEFAULT NULL,
|
||||||
|
`context` longtext DEFAULT NULL,
|
||||||
|
`extra` longtext DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `movimientos`;
|
||||||
|
CREATE TABLE `movimientos` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`cuenta_id` int(10) unsigned NOT NULL,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`glosa` text NOT NULL,
|
||||||
|
`documento` varchar(50) NOT NULL,
|
||||||
|
`cargo` bigint(20) unsigned NOT NULL DEFAULT 0,
|
||||||
|
`abono` bigint(20) unsigned NOT NULL DEFAULT 0,
|
||||||
|
`saldo` bigint(20) NOT NULL DEFAULT 0,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `cuenta_id` (`cuenta_id`),
|
||||||
|
CONSTRAINT `movimientos_ibfk_2` FOREIGN KEY (`cuenta_id`) REFERENCES `cuenta` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `movimientos_detalles`;
|
||||||
|
CREATE TABLE `movimientos_detalles` (
|
||||||
|
`movimiento_id` int(10) unsigned NOT NULL,
|
||||||
|
`centro_costo_id` int(10) unsigned DEFAULT NULL,
|
||||||
|
`categoria` varchar(100) DEFAULT NULL,
|
||||||
|
`detalle` text DEFAULT NULL,
|
||||||
|
`rut` int(11) DEFAULT NULL,
|
||||||
|
`digito` varchar(1) DEFAULT NULL,
|
||||||
|
`nombres` varchar(255) DEFAULT NULL,
|
||||||
|
`identificador` varchar(100) DEFAULT NULL,
|
||||||
|
KEY `movimiento_id` (`movimiento_id`),
|
||||||
|
KEY `centro_costo_id` (`centro_costo_id`),
|
||||||
|
CONSTRAINT `movimientos_detalles_ibfk_3` FOREIGN KEY (`movimiento_id`) REFERENCES `movimientos` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `movimientos_detalles_ibfk_5` FOREIGN KEY (`centro_costo_id`) REFERENCES `centros_costos` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `pagare`;
|
||||||
|
CREATE TABLE `pagare` (
|
||||||
|
`id` int(10) unsigned NOT NULL,
|
||||||
|
`proyecto` int(10) unsigned NOT NULL,
|
||||||
|
`moneda` int(10) unsigned NOT NULL,
|
||||||
|
`capital` double unsigned NOT NULL DEFAULT 0,
|
||||||
|
`tasa` double unsigned NOT NULL DEFAULT 0,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`fecha_banco` date NOT NULL DEFAULT '0000-00-00',
|
||||||
|
`duracion` int(10) unsigned NOT NULL DEFAULT 0,
|
||||||
|
`uf` double unsigned NOT NULL DEFAULT 0,
|
||||||
|
`abonado` int(10) unsigned NOT NULL DEFAULT 0,
|
||||||
|
`estado_pago` int(10) unsigned NOT NULL DEFAULT 99999999,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `moneda` (`moneda`),
|
||||||
|
KEY `proyecto` (`proyecto`),
|
||||||
|
CONSTRAINT `pagare_ibfk_1` FOREIGN KEY (`moneda`) REFERENCES `tipo_moneda_pagare` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `pagare_ibfk_2` FOREIGN KEY (`proyecto`) REFERENCES `proyecto` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `pago`;
|
||||||
|
CREATE TABLE `pago` (
|
||||||
|
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`valor` double NOT NULL,
|
||||||
|
`banco` int(11) DEFAULT NULL,
|
||||||
|
`tipo` int(11) DEFAULT NULL,
|
||||||
|
`identificador` varchar(50) DEFAULT NULL,
|
||||||
|
`fecha` date DEFAULT NULL,
|
||||||
|
`uf` double DEFAULT NULL,
|
||||||
|
`pagador` varchar(50) DEFAULT NULL,
|
||||||
|
`asociado` int(10) unsigned DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `pagos_centros_costos`;
|
||||||
|
CREATE TABLE `pagos_centros_costos` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`pago_id` int(11) unsigned NOT NULL,
|
||||||
|
`centro_costo_id` int(10) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `pago_id` (`pago_id`),
|
||||||
|
KEY `centro_costo_id` (`centro_costo_id`),
|
||||||
|
CONSTRAINT `pagos_centros_costos_ibfk_3` FOREIGN KEY (`pago_id`) REFERENCES `pago` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
CONSTRAINT `pagos_centros_costos_ibfk_4` FOREIGN KEY (`centro_costo_id`) REFERENCES `centros_costos` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `permissions`;
|
||||||
|
CREATE TABLE `permissions` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`type` int(1) unsigned NOT NULL,
|
||||||
|
`ext_id` int(10) unsigned NOT NULL,
|
||||||
|
`action_id` int(10) unsigned NOT NULL,
|
||||||
|
`status` int(1) unsigned NOT NULL DEFAULT 1,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `phinxlog`;
|
||||||
|
CREATE TABLE `phinxlog` (
|
||||||
|
`version` bigint(20) NOT NULL,
|
||||||
|
`migration_name` varchar(100) DEFAULT NULL,
|
||||||
|
`start_time` timestamp NULL DEFAULT NULL,
|
||||||
|
`end_time` timestamp NULL DEFAULT NULL,
|
||||||
|
`breakpoint` tinyint(1) NOT NULL DEFAULT 0,
|
||||||
|
PRIMARY KEY (`version`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `pie`;
|
||||||
|
CREATE TABLE `pie` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`fecha` date NOT NULL,
|
||||||
|
`valor` double unsigned NOT NULL,
|
||||||
|
`uf` double unsigned DEFAULT NULL,
|
||||||
|
`cuotas` int(10) unsigned NOT NULL,
|
||||||
|
`asociado` int(11) DEFAULT 0,
|
||||||
|
`reajuste` int(11) unsigned DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `precio`;
|
||||||
|
CREATE TABLE `precio` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`unidad` int(10) unsigned NOT NULL,
|
||||||
|
`valor` double NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `unidad` (`unidad`),
|
||||||
|
CONSTRAINT `precio_ibfk_2` FOREIGN KEY (`unidad`) REFERENCES `unidad` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `problema`;
|
||||||
|
CREATE TABLE `problema` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`venta` int(11) DEFAULT NULL,
|
||||||
|
`descripcion` mediumtext DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||||
|
|
||||||
|
|
||||||
|
-- 2024-11-12 15:11:54
|
46
app/test.bootstrap.php
Normal file
46
app/test.bootstrap.php
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
require_once implode(DIRECTORY_SEPARATOR, [
|
||||||
|
__DIR__,
|
||||||
|
'vendor',
|
||||||
|
'autoload.php'
|
||||||
|
]);
|
||||||
|
|
||||||
|
function setupDatabase(string $schemaFilename): void {
|
||||||
|
printf("Loading database schema from %s", $schemaFilename);
|
||||||
|
$start = microtime(true);
|
||||||
|
|
||||||
|
$dsn = "mysql:host={$_ENV['DB_HOST']};dbname={$_ENV['DB_DATABASE']}";
|
||||||
|
$pdo = new PDO($dsn, $_ENV['DB_USER'], $_ENV['DB_PASSWORD']);
|
||||||
|
|
||||||
|
$sql = file_get_contents($schemaFilename);
|
||||||
|
$pdo->exec($sql);
|
||||||
|
|
||||||
|
$end = microtime(true);
|
||||||
|
printf(" in %.2f seconds\n", $end - $start);
|
||||||
|
}
|
||||||
|
function truncateTables(): void {
|
||||||
|
printf("Truncating tables");
|
||||||
|
$start = microtime(true);
|
||||||
|
|
||||||
|
$dsn = "mysql:host={$_ENV['DB_HOST']};dbname={$_ENV['DB_DATABASE']}";
|
||||||
|
$pdo = new PDO($dsn, $_ENV['DB_USER'], $_ENV['DB_PASSWORD']);
|
||||||
|
|
||||||
|
$pdo->exec("SET FOREIGN_KEY_CHECKS=0");
|
||||||
|
$statement = $pdo->query('SHOW TABLES');
|
||||||
|
$tables = array_map(function(array $row) {
|
||||||
|
return $row["Tables_in_{$_ENV['DB_DATABASE']}"];
|
||||||
|
}, $statement->fetchAll(PDO::FETCH_ASSOC));
|
||||||
|
|
||||||
|
foreach ($tables as $table) {
|
||||||
|
$pdo->exec("TRUNCATE TABLE `$table`");
|
||||||
|
}
|
||||||
|
$pdo->exec("SET FOREIGN_KEY_CHECKS=1");
|
||||||
|
|
||||||
|
$end = microtime(true);
|
||||||
|
printf(" in %.2f seconds\n", $end - $start);
|
||||||
|
}
|
||||||
|
$schemaFilename = implode(DIRECTORY_SEPARATOR, [__DIR__, 'resources', 'database', 'schema.sql']);
|
||||||
|
setupDatabase($schemaFilename);
|
||||||
|
register_shutdown_function(function() {
|
||||||
|
truncateTables();
|
||||||
|
});
|
29
testing.compose.yml
Normal file
29
testing.compose.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
services:
|
||||||
|
testing:
|
||||||
|
profiles:
|
||||||
|
- testing
|
||||||
|
container_name: incoviba_tests
|
||||||
|
build: .
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file:
|
||||||
|
- ${APP_PATH:-.}/.test.env
|
||||||
|
- ./.key.env
|
||||||
|
volumes:
|
||||||
|
- ${APP_PATH:-.}/:/code
|
||||||
|
- ./logs/test:/logs
|
||||||
|
command: [ '/code/bin/phpunit-watcher', 'watch' ]
|
||||||
|
depends_on:
|
||||||
|
- test-db
|
||||||
|
|
||||||
|
test-db:
|
||||||
|
profiles:
|
||||||
|
- testing
|
||||||
|
image: mysql:5.7
|
||||||
|
container_name: incoviba_test_db
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file: ${APP_PATH:-.}/.test.db.env
|
||||||
|
volumes:
|
||||||
|
- test-db:/var/lib/mysql
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
test-db: {}
|
Reference in New Issue
Block a user