Documentos de Académico
Documentos de Profesional
Documentos de Cultura
use inventario;
Usuarios
Lo principal son los usuarios, tengo contemplado 2 niveles de acceso, 1 para
usuarios normales con capacidades basicas y otra para usuarios administradores
con capacidades avanzadas.
El codigo SQL de la tabla de usuarios es el siguiente:
create table user( id int not null auto_increment primary key,
name varchar(50) not null,
lastname varchar(50) not null,
username varchar(50), password
varchar(60) not
null,
is_active boolean not null default 1,
is_admin boolean not
null default 0, created_at datetime not null );
Descripcion de los campos:
Valores iniciales:
insert
into
user(name,lastname,username,password,is_active,is_admin,creat
ed_at)
value
("Administrador", "","admin","90b9aa7e25f80cf4f64e990b78a9fc5
ebd6cecad",1,1,NOW());
Productos
Los productos son las entidades sobre las que operaremos, de ellos
almacenaremos el nombre, precio de entrada, de salida, unidad y presentacion, el
codigo SQL es el siguiente:
<span style="line-height: 1.5;">create table product( id int
not null auto_increment primary key, name varchar(50) not
null,
price_in float
not
null,
price_out float,
unit varchar(255) not null,
presentation varchar(255) not
null );</span>
<span style="line-height: 1.5;">
Descripcion de los campos:
Tipos de operacion
Los tipos de operacion son 2: entrada y salida, pero usaremos una tabla auxiliar
para almacenar estos valores, esto ayudara si en un futuro pensamos agregar los
tipos de operacion : faltante o devolucion.
Codigo SQL
create
table
operation_type(
id int
not
auto_increment primary key, name varchar(50) not null );
Descripcion de los campos:
null
Valores iniciales
insert into operation_type (name) value ("entrada");
into operation_type (name) value ("salida");
insert
Venta
Normalmente una venta esta compuesta por varias operaciones, asi que
necesitaremos aunque sea un identificador de venta para relacionarlo con las
operaciones y la fecha.
create table sell( id int not null auto_increment primary key,
created_at datetime not null );
Descripcion de los campos
Operaciones
Las operaciones son las entidades que relacionan la actividad de la tienda, estan
compuesta por tipo de operacion, producto afectado, cantidad de producto, id de
venta (solo para operaciones de salida) y fecha de la operacion.
Codigo SQL:
create table operation( id int not null auto_increment primary
key,
product_id int
not
null,
q float
not
null,
operation_type_id int not null,
sell_id int,
created_at
datetime not
null, foreign
key
(product_id) references
product(id), foreign
key
(operation_type_id) references
operation_type(id), foreign
key
(sell_id) references
sell(id) );
Descripcion de los campos
Conclusion
He tratado de detallar lo mas posible el modelado de la base de datos, espero todo
valla bien hasta aqui, si tienen dudas por favor envien sus comentarios.
Para finalizar solo basta juntar todo el codigo de las tablas en un archivo que se
llamara schema.sql listo para ejecutar desde MySQL Workbench, PHPMyAdmin o
desde la Terminal
Conocimientos
HTML
PHP
MySQL
Bootstrap
LegoBox
Se requiere aunque sea lo mas minimo, tratare de explicar lo mas minimo, sin
embargo no tener nocion de estos conocimientos no impidira el avance en el
curso, ya que yo proporcionare todos los recursos necesarios.
Herramientas
Las herramientas que utilizaremos son software o librerias con las que deben
contar.
Tecnicas
Las tecnicas nos ayudan a desarrollar mas rapido, normalmente se basan en la
experiencia y aunque no se usaran en su totalidad ayudaran mucho para la
comprencion.
http://evilnapsis.com/courses/crear-un-sistema-de-inventario-y-ventas-con-php-y-mysql/