Introducción

Este ejemplo nos va servir como base para crear un punto de venta de una tiendita de abarrotes.Sus necesidades son las siguientes:
  1. Creación de inventario para agregar productos y precios.
  2. Reporte de ventas para ver lo que se vende por día.
  3. Generador de código de barras para producto como el kilo de huevo que no tiene código de barras,azúcar, etc.
  4. Vista o formulario donde se escanearán los productos para su venta
  5. Opción de recargas telefónicas(nota:Esta tal vez no la podemos mostrar ya que necesitaríamos permiso de proveedor para consumir su webservice.)

Requisitos

Base de datos

Nota:La base de datos ira cambiando conforme vayamos desarrollando el proyecto.
 
            
            
            CREATE DATABASE puntodeventadb CHARACTER SET utf8 COLLATE utf8_general_ci;
            
            
            CREATE TABLE `usuario` (
            `idusuario` int(11) NOT NULL AUTO_INCREMENT,
            `usuario` varchar(100) DEFAULT NULL,
            `password` varchar(100) DEFAULT NULL,
            PRIMARY KEY (`idusuario`)
            ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
            
            
            INSERT INTO `usuario` VALUES (1,'admin','admin');
            
            
            CREATE TABLE `producto` (
           `idProducto` int(11) NOT NULL AUTO_INCREMENT,
           `codigoBarras` varchar(100) DEFAULT NULL,
           `nombre` varchar(250) NOT NULL,
           `precio` decimal(30,2) DEFAULT NULL,
            PRIMARY KEY (`idProducto`)
            ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT=' ';
            
            CREATE TABLE `puntodeventadb`.`ventastotales` (
           `idventa` INT NOT NULL AUTO_INCREMENT,
           `llaveventa` VARCHAR(200) NULL,
           `total` DECIMAL(30,2) NULL,
           `fecha` DATETIME NULL,
            PRIMARY KEY (`idventa`))
            ENGINE = MyISAM
            DEFAULT CHARACTER SET = utf8;

            CREATE TABLE `puntodeventadb`.`ventasdetalle` (
            `idventa` INT(11) NOT NULL,
            `cantidad` INT NULL,
            `idProducto` INT(11) NULL,
            `total` DECIMAL(30,2) NULL,
            PRIMARY KEY (`idventa`))
            ENGINE = MyISAM
            DEFAULT CHARACTER SET = utf8;
            
     
     Para correr el software en tu computadora sin modificar el codigo
     necesitas crear el siguiente usuario
     
     CREATE USER 'admin'@localhost IDENTIFIED BY 'adminlara';
     
     Le damos los privilegios
     
     GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost';
     
     
     Refrescamos los privilegios
     
     FLUSH PRIVILEGES;