Skip to content

Commit 91a3ce7

Browse files
committed
version 0.8
1 parent b03774b commit 91a3ce7

File tree

4 files changed

+297
-0
lines changed

4 files changed

+297
-0
lines changed

BD/bd_sfm_msql.sql

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
DROP DATABASE IF EXISTS bd_sfm_msql;
2+
CREATE DATABASE bd_sfm_msql;
3+
USE bd_sfm_msql;
4+
5+
CREATE TABLE empresa(
6+
codigo CHAR(3) PRIMARY KEY,
7+
ruc CHAR(11) UNIQUE,
8+
nombre VARCHAR(50) NOT NULL,
9+
direccion VARCHAR(50),
10+
distrito VARCHAR(50),
11+
telefono VARCHAR(11),
12+
imagen VARCHAR(200)
13+
);
14+
15+
-- EMPRESA
16+
INSERT INTO empresa (codigo,ruc,nombre,direccion,distrito,telefono,imagen) VALUE ('EP1','44445555777','Shoes For Men','Av. Carlos Izaguirre 233','Independencia','000-0000','https://raw.githubusercontent.com/paledot02/Img_Calzados/main/logo_reporte_01.png');
17+
-- https://raw.githubusercontent.com/paledot02/Img_Calzados/main/logo_reporte_02.png
18+
-- SELECT * FROM empresa;

BD/bd_sfm_psql.sql

Lines changed: 275 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,275 @@
1+
-- FALSE = INACTIVO: 0
2+
-- TRUE = ACTIVO: 1
3+
4+
CREATE TABLE IF NOT EXISTS estado(
5+
cod_estado CHAR(3) PRIMARY KEY,
6+
nombre_estado VARCHAR(25) NOT NULL UNIQUE
7+
);
8+
9+
CREATE TABLE IF NOT EXISTS distrito(
10+
cod_distrito CHAR(4) PRIMARY KEY,
11+
nombre_distrito VARCHAR(25) NOT NULL UNIQUE
12+
);
13+
14+
CREATE TABLE IF NOT EXISTS moneda(
15+
cod_moneda CHAR(4) PRIMARY KEY,
16+
nombre_moneda VARCHAR(25) NOT NULL UNIQUE
17+
);
18+
19+
CREATE TABLE IF NOT EXISTS talla(
20+
cod_talla CHAR(4) PRIMARY KEY,
21+
numero_talla DECIMAL NOT NULL UNIQUE,
22+
estado SMALLINT DEFAULT 1
23+
);
24+
25+
CREATE TABLE IF NOT EXISTS color(
26+
cod_color CHAR(4) PRIMARY KEY,
27+
nombre_color VARCHAR(25) NOT NULL UNIQUE,
28+
estado SMALLINT DEFAULT 1
29+
);
30+
31+
CREATE TABLE IF NOT EXISTS categoria(
32+
cod_categoria CHAR(4) PRIMARY KEY,
33+
nombre_categoria VARCHAR(25) NOT NULL UNIQUE
34+
);
35+
36+
CREATE TABLE IF NOT EXISTS estilo(
37+
cod_estilo CHAR(4) PRIMARY KEY,
38+
nombre_estilo VARCHAR(25) NOT NULL UNIQUE
39+
);
40+
41+
CREATE TABLE IF NOT EXISTS rol(
42+
cod_rol CHAR(4) PRIMARY KEY,
43+
nombre_rol VARCHAR(25) NOT NULL UNIQUE
44+
);
45+
46+
CREATE TABLE IF NOT EXISTS empleado( -- DROP TABLE IF EXISTS empleado;
47+
cod_empleado CHAR(7) PRIMARY KEY,
48+
cod_distrito CHAR(4),
49+
cod_estado CHAR(3),
50+
nombre VARCHAR(25) NOT NULL,-- CHECK (nombre != "") ,
51+
apellidos VARCHAR(25) NOT NULL,
52+
dni CHAR(8) UNIQUE,
53+
direccion VARCHAR(45),
54+
telefono VARCHAR(12),
55+
email VARCHAR(45) UNIQUE,
56+
usuario VARCHAR(25) NOT NULL UNIQUE,
57+
contrasena VARCHAR(100) NOT NULL,
58+
FOREIGN KEY (cod_distrito) REFERENCES distrito(cod_distrito) ON DELETE CASCADE,
59+
FOREIGN KEY (cod_estado) REFERENCES estado(cod_estado) ON DELETE CASCADE
60+
);
61+
62+
CREATE TABLE IF NOT EXISTS empleado_rol( -- DROP TABLE IF EXISTS empleado_rol;
63+
cod_rol CHAR(4),
64+
cod_empleado CHAR(7),
65+
PRIMARY KEY (cod_rol, cod_empleado),
66+
FOREIGN KEY (cod_rol) REFERENCES rol(cod_rol) ON DELETE CASCADE,
67+
FOREIGN KEY (cod_empleado) REFERENCES empleado(cod_empleado) ON DELETE CASCADE
68+
);
69+
70+
CREATE TABLE IF NOT EXISTS marca(
71+
cod_marca CHAR(7) PRIMARY KEY,
72+
nombre_marca VARCHAR(25) NOT NULL UNIQUE
73+
);
74+
75+
CREATE TABLE IF NOT EXISTS modelo( -- DROP TABLE IF EXISTS modelo;
76+
cod_modelo CHAR(7) PRIMARY KEY,
77+
cod_marca CHAR(7),
78+
cod_categoria CHAR(4),
79+
cod_estilo CHAR(4),
80+
nombre_modelo VARCHAR(25) NOT NULL UNIQUE,
81+
precio_compra DECIMAL NOT NULL,
82+
precio_venta DECIMAL NOT NULL, -- precio final
83+
precio_lista DECIMAL NOT NULL, -- precio inicial
84+
descuento_modelo INT DEFAULT 0 CHECK(descuento_modelo>=0 AND descuento_modelo<=100),
85+
descripcion VARCHAR(250) DEFAULT 'descrixion generica',
86+
stock_min INT DEFAULT 0,
87+
FOREIGN KEY (cod_marca) REFERENCES marca(cod_marca) ON DELETE CASCADE,
88+
FOREIGN KEY (cod_categoria) REFERENCES categoria(cod_categoria) ON DELETE CASCADE,
89+
FOREIGN KEY (cod_estilo) REFERENCES estilo(cod_estilo) ON DELETE CASCADE
90+
);
91+
92+
CREATE TABLE IF NOT EXISTS modelo_color( -- DROP TABLE IF EXISTS modelo_color;
93+
--cod_mc CHAR(7),
94+
cod_modelo CHAR(7),
95+
cod_color CHAR(4),
96+
imagen_url VARCHAR(200),
97+
PRIMARY KEY (cod_modelo, cod_color),
98+
FOREIGN KEY (cod_modelo) REFERENCES modelo(cod_modelo) ON DELETE CASCADE,
99+
FOREIGN KEY (cod_color) REFERENCES color(cod_color) ON DELETE CASCADE
100+
);
101+
102+
CREATE TABLE IF NOT EXISTS calzado( -- DROP TABLE IF EXISTS calzado;
103+
cod_calzado CHAR(8) UNIQUE, -- *****************
104+
cod_modelo CHAR(7),
105+
cod_color CHAR(4),
106+
cod_talla CHAR(4),
107+
codigo_br VARCHAR(20) UNIQUE,
108+
stock INT DEFAULT 1 CHECK(stock>=0),
109+
PRIMARY KEY (cod_calzado,cod_modelo,cod_color,cod_talla),
110+
CONSTRAINT fk_calzado1 FOREIGN KEY(cod_modelo,cod_color) REFERENCES modelo_color(cod_modelo,cod_color) ON DELETE CASCADE,
111+
FOREIGN KEY (cod_talla) REFERENCES talla(cod_talla) ON DELETE CASCADE
112+
);
113+
114+
CREATE TABLE IF NOT EXISTS cliente( -- DROP TABLE IF EXISTS cliente;
115+
cod_cliente CHAR(8) PRIMARY KEY,
116+
cod_distrito CHAR(4),
117+
nombre VARCHAR(25) NOT NULL,
118+
apellidos VARCHAR(25) NOT NULL,
119+
dni CHAR(8) NOT NULL UNIQUE,
120+
direccion VARCHAR(45),
121+
telefono VARCHAR(12),
122+
email VARCHAR(45) UNIQUE,
123+
FOREIGN KEY (cod_distrito) REFERENCES distrito(cod_distrito) ON DELETE CASCADE
124+
);
125+
126+
CREATE TABLE IF NOT EXISTS boleta( -- DROP TABLE IF EXISTS boleta;
127+
cod_boleta CHAR(8) PRIMARY KEY,
128+
cod_cliente CHAR(8),
129+
cod_empleado CHAR(7),
130+
cod_moneda CHAR(4),
131+
fecha_hora_emision TIMESTAMP NOT NULL,
132+
importe_total DECIMAL NOT NULL,
133+
FOREIGN KEY (cod_cliente) REFERENCES cliente(cod_cliente) ON DELETE CASCADE,
134+
FOREIGN KEY (cod_empleado) REFERENCES empleado(cod_empleado) ON DELETE CASCADE,
135+
FOREIGN KEY (cod_moneda) REFERENCES moneda(cod_moneda) ON DELETE CASCADE
136+
);
137+
138+
CREATE TABLE IF NOT EXISTS detalle_boleta( -- DROP TABLE IF EXISTS detalle_boleta;
139+
cod_boleta CHAR(8),
140+
cod_calzado CHAR(8),
141+
cantidad INT NOT NULL,
142+
-- importe bruto -> cantidad * [p_venta(P.U) - igv]
143+
igv DECIMAL DEFAULT 0.18,
144+
descuento DECIMAL DEFAULT 0,
145+
importe DECIMAL NOT NULL,
146+
PRIMARY KEY (cod_boleta, cod_calzado),
147+
FOREIGN KEY (cod_boleta) REFERENCES boleta(cod_boleta) ON DELETE CASCADE,
148+
FOREIGN KEY (cod_calzado) REFERENCES calzado(cod_calzado) ON DELETE CASCADE
149+
);
150+
151+
-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
152+
-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
153+
154+
-- ESTADO -> SELECT * FROM estado;
155+
INSERT INTO estado (cod_estado, nombre_estado) VALUES ('ES1','INACTIVO');
156+
INSERT INTO estado (cod_estado, nombre_estado) VALUES ('ES2','ACTIVO');
157+
INSERT INTO estado (cod_estado, nombre_estado) VALUES ('ES3','SUSPENDIDO');
158+
159+
-- DISTRITO -> SELECT * FROM distrito;
160+
INSERT INTO distrito (cod_distrito, nombre_distrito) VALUES ('DI01','Comas');
161+
INSERT INTO distrito (cod_distrito, nombre_distrito) VALUES ('DI02','Lince');
162+
INSERT INTO distrito (cod_distrito, nombre_distrito) VALUES ('DI03','Miraflores');
163+
INSERT INTO distrito (cod_distrito, nombre_distrito) VALUES ('DI04','Los Olivos');
164+
INSERT INTO distrito (cod_distrito, nombre_distrito) VALUES ('DI05','S.J.L');
165+
INSERT INTO distrito (cod_distrito, nombre_distrito) VALUES ('DI06','Independencia');
166+
167+
-- MONEDA -> SELECT * FROM moneda;
168+
INSERT INTO moneda (cod_moneda, nombre_moneda) VALUES ('MN01','SOL');
169+
INSERT INTO moneda (cod_moneda, nombre_moneda) VALUES ('MN02','DOLAR');
170+
171+
-- TALLA -> SELECT * FROM talla;
172+
INSERT INTO talla (cod_talla, numero_talla) VALUES ('TL01',38);
173+
INSERT INTO talla (cod_talla, numero_talla) VALUES ('TL02',39);
174+
INSERT INTO talla (cod_talla, numero_talla) VALUES ('TL03',40);
175+
INSERT INTO talla (cod_talla, numero_talla) VALUES ('TL04',41);
176+
INSERT INTO talla (cod_talla, numero_talla) VALUES ('TL05',41.5);
177+
INSERT INTO talla (cod_talla, numero_talla) VALUES ('TL06',42);
178+
179+
-- COLOR -> SELECT * FROM color;
180+
INSERT INTO color (cod_color, nombre_color) VALUES ('CR01','Negro');
181+
INSERT INTO color (cod_color, nombre_color) VALUES ('CR02','Marron');
182+
INSERT INTO color (cod_color, nombre_color) VALUES ('CR03','Azul');
183+
INSERT INTO color (cod_color, nombre_color) VALUES ('CR04','Canela');
184+
INSERT INTO color (cod_color, nombre_color) VALUES ('CR05','Azul Marino');
185+
186+
-- CATEGORIA -> SELECT * FROM categoria;
187+
INSERT INTO categoria (cod_categoria, nombre_categoria) VALUES ('CT01','Mocasin');
188+
INSERT INTO categoria (cod_categoria, nombre_categoria) VALUES ('CT02','Botin');
189+
190+
-- ESTILO -> SELECT * FROM estilo;
191+
INSERT INTO estilo (cod_estilo, nombre_estilo) VALUES ('ET01','Casual');
192+
INSERT INTO estilo (cod_estilo, nombre_estilo) VALUES ('ET02','Vestir');
193+
194+
-- ROL -> SELECT * FROM rol;
195+
INSERT INTO rol (cod_rol, nombre_rol) VALUES ('RL01','ROLE_ADMIN');
196+
INSERT INTO rol (cod_rol, nombre_rol) VALUES ('RL02','ROLE_USER');
197+
198+
-- EMPLEADO -> SELECT * FROM empleado;
199+
INSERT INTO empleado (cod_empleado,cod_distrito,cod_estado,nombre,apellidos,dni,direccion,telefono,email,usuario,contrasena) VALUES ('EM10001','DI01','ES2','KEVIN','B','00000000','DIRECCION','999999999','paledot01@gmail.com','kevinB','$2a$10$Jtfxa0EuEjZrfQ4OvR4WbuqD00OBIfIp.5Sv33A7G8ya3xTI542nq');
200+
201+
-- EMPLEADO-ROL -> SELECT * FROM empleado_rol;
202+
INSERT INTO empleado_rol (cod_rol,cod_empleado) VALUES ('RL01','EM10001');
203+
INSERT INTO empleado_rol (cod_rol,cod_empleado) VALUES ('RL02','EM10001');
204+
205+
-- MARCA -> SELECT * FROM marca; --> DELETE FROM marca WHERE cod_marca = 'MA10002'; --> UPDATE marca SET field='C', field2='Z' WHERE id=3;
206+
INSERT INTO marca (cod_marca, nombre_marca) VALUES ('MA10001','Calimod');
207+
INSERT INTO marca (cod_marca, nombre_marca) VALUES ('MA10002','Basement');
208+
INSERT INTO marca (cod_marca, nombre_marca) VALUES ('MA10003','Call It Spring');
209+
210+
-- MODELO -> SELECT * FROM modelo; --> DELETE FROM modelo WHERE cod_modelo = 'MD10002';
211+
INSERT INTO modelo (cod_modelo,cod_marca,cod_categoria,cod_estilo,nombre_modelo,precio_compra,precio_venta,precio_lista,stock_min) VALUES ('MD10001','MA10001','CT01','ET01','1CEA003',75,150,150,3);
212+
INSERT INTO modelo (cod_modelo,cod_marca,cod_categoria,cod_estilo,nombre_modelo,precio_compra,precio_venta,precio_lista,stock_min) VALUES ('MD10002','MA10002','CT02','ET02','Burkos Cl',120,200,200,5);
213+
214+
-- MODELO_COLOR -> SELECT * FROM modelo_color;
215+
INSERT INTO modelo_color (cod_modelo, cod_color, imagen_url) VALUES ('MD10001','CR02',NULL);
216+
INSERT INTO modelo_color (cod_modelo, cod_color, imagen_url) VALUES ('MD10001','CR03',NULL);
217+
INSERT INTO modelo_color (cod_modelo, cod_color, imagen_url) VALUES ('MD10002','CR04',NULL);
218+
INSERT INTO modelo_color (cod_modelo, cod_color, imagen_url) VALUES ('MD10002','CR05',NULL);
219+
220+
-- CALZADO -> SELECT * FROM calzado;
221+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100001','MD10001','CR02','TL02',NULL,10);
222+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100002','MD10001','CR02','TL03',NULL,6);
223+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100003','MD10001','CR02','TL04',NULL,3);
224+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100004','MD10001','CR02','TL05',NULL,8);
225+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100005','MD10001','CR02','TL06',NULL,9);
226+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100006','MD10001','CR03','TL02',NULL,12);
227+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100007','MD10001','CR03','TL03',NULL,10);
228+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100008','MD10001','CR03','TL04',NULL,9);
229+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100009','MD10001','CR03','TL05',NULL,13);
230+
INSERT INTO calzado (cod_calzado, cod_modelo, cod_color, cod_talla, codigo_br, stock) VALUES ('CZ100010','MD10001','CR03','TL06',NULL,7);
231+
232+
-- CLIENTE -> SELECT * FROM cliente;
233+
INSERT INTO cliente (cod_cliente,cod_distrito,nombre,apellidos,dni,direccion,telefono,email) VALUES ('CL100001','DI02','ANETH LUANA','TINEO URIBE','32425643','AV. LOS GIRASOLES # 1800','990990230','LUANITAHERMOSA@GMAIL.COM');
234+
INSERT INTO cliente (cod_cliente,cod_distrito,nombre,apellidos,dni,direccion,telefono,email) VALUES ('CL100002','DI03','JOSE LUIS','TARAZONA ZELA','78395021','AV. LAS FLORES # 1800',null,'JOSESITO@GMAIL.COM');
235+
INSERT INTO cliente (cod_cliente,cod_distrito,nombre,apellidos,dni,direccion,telefono,email) VALUES ('CL100003','DI05','ANA MARIA','VILLAVICENCIO CASTRO','48502717','AV. LAS FLORES # 2560','989434228','ANITAMARIA@GMAIL.COM');
236+
INSERT INTO cliente (cod_cliente,cod_distrito,nombre,apellidos,dni,direccion,telefono,email) VALUES ('CL100004','DI06','JOSE ANTONIO','ENCISO NOLASCO','86294711','AV. PROCERES DE LA INDEPENDENCIA # 5000','987845874','JOSANTONIO@GMAIL.COM');
237+
INSERT INTO cliente (cod_cliente,cod_distrito,nombre,apellidos,dni,direccion,telefono,email) VALUES ('CL100005','DI05','ALEJANDRA','CHUCO HUERTA','97537923','AV. GRAN CHIMU # 3500','963245874','ALEJANDRITA5245@HOTMAIL.COM');
238+
239+
-- BOLETA -> SELECT * FROM boleta;
240+
INSERT INTO boleta (cod_boleta,cod_cliente,cod_empleado,cod_moneda,fecha_hora_emision,importe_total) VALUES ('BL100001','CL100001','EM10001','MN01',NOW(),750);
241+
242+
-- DETALLE BOLETA -> SELECT * FROM detalle_boleta;
243+
INSERT INTO detalle_boleta (cod_boleta,cod_calzado,cantidad,descuento,importe) VALUES ('BL100001','CZ100001',2,0,300);
244+
INSERT INTO detalle_boleta (cod_boleta,cod_calzado,cantidad,descuento,importe) VALUES ('BL100001','CZ100002',3,0,450);
245+
246+
247+
-- DROP DATABASE db_shoesformen
248+
-- DROP TABLE IF EXISTS distrito;
249+
-- IMPORTANTE : PARA QUE EL VALOR POR DEFAULT DE UN CAMPO FUNCIONE ESTE NO DEBE SER NI MENSIONADO, NO PUEDE SER NI NULL PORQUE NULL YA ES UN VALOR.
250+
251+
/*
252+
SELECT * FROM calzado AS ca
253+
INNER JOIN modelo_color AS mc ON ca.cod_modelo = mc.cod_modelo AND ca.cod_color = mc.cod_color
254+
INNER JOIN modelo AS mo ON mc.cod_modelo = mo.cod_modelo
255+
INNER JOIN talla AS ta ON ca.cod_talla = ta.cod_talla
256+
*/
257+
258+
259+
260+
-- SELECT CONCAT('EM',CAST(SUBSTRING(MAX(e.cod_empleado),3) AS INT) + 1) FROM empleado AS e
261+
-- SELECT version();
262+
263+
264+
265+
266+
267+
268+
269+
270+
271+
272+
273+
274+
275+

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
![][img_1]
2+
3+
[img_1]: ./screenshot/img01_BD.png
4+

screenshot/img01_BD.png

152 KB
Loading

0 commit comments

Comments
 (0)