TpvFox - Gestion de Empresa

Aplicación web para gestionar pequeñas y medianas empresas

Nuestro pequeño bebe 

Puede ver mas información en esta categoria ( Presentacion proyecto Tpvfox) e incluso ver y descargar el código en GITHUB

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Lo primero es deciros que esta entrada es un borrador para nosotros los programadores de tpvfox, no es un modelo a seguir, para nada, todo contrario ya que este proyecto empezó con código espagueti y poco a poco lo vamos mejorando.

Si estas interesado continuar mejorando nuestro TPVFOX es interesante que sigas leyendo. No dudes en ponerte en contacto con nosotros para cualquier aclaración o duda.

Un poco teoría y referencias.

Un MVC que precie debería separar la lógica de la aplicación con la vista (lo que muestra), es decir que nos permite separar los componentes de nuestra aplicación según su funcionalidad, que cuando hacemos un cambio en alguna parte de nuestro código, esto no afecte otra parte del mismo, no es una tarea fácil.

Por ejemplo:

En una web un usuario hace una petición en una web , el controlador responde esa petición, ya que es el controlador el se que encarga de la lógica de la web.

El controlador le pide al modelo la información de esa petición. El modelo se encarga de los datos ( consultar la base de datos) , una vez los tenga , se los envía al controlador nuevamente , por ultimo es el controlador el que se los envía a la vista para mostrarlos.

Tengo que decir que todas las referencias que fui leyendo , no  siempre los modelos se encargan de los datos, por lo que entiendo que no todas los sistema MVC son iguales.

 Algunas de las referencias que encontré MVC :

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

El modulo de importación a virtuemart es el que utilizamos para actualizar tpvfox desde virtuemart y viceversa, aun que el proceso queremos mejorar es el primero, es decir el que utilizamos para dar de alta productos en tpvfox desde virtuemart.

Es proceso es un poco lioso y ademas tiene opciones que no son correctas y otras que no funcionan, adjunto gráfica explicativa.(descargar svg siguiente gráfica ).

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

El objetivo es hacer un proceso sencillo para poder controlar eventos de tecla y raton. Una idea similar como shortcut.js.

Nosotros creamos lib teclado.js, que tenemos en lib/js/, donde una forma sencilla, creo :-), controlamos los eventos de teclado y los eventos de raton

¿Como empezar?

Lo primero añadiendo es añadir los objetos globales en JS en el head


var idInput = {
	id_input : 'idInput', // Este se añade ante construir ya que el id input es Unidad_Fila_1
	acciones : {
		 13 : 'accion_realizar_pulsar_intro', // Pulso intro
		 40 : 'accion_realizar_pulsar_abajo', // Pulso abajo. 
		 38 : 'accion_realizar_pulsar_arriba', // Pulso arriba pero va para abajo.
			},
	parametros : {
		dedonde : 'nombre_pantalla'
		// Los parametros que podemos necesitar
		}
}

Luego añadir la libreria

 <script src="/<?php echo $HostNombre; ?>/lib/js/teclado.js"></script> 

Poner en input,check,button o la caja permita eventos,el atributo data-obj="Nombre_objeto_global"

Tambien poner en el evento queramos controlas llamamos a la funcion controlEventos(event).

Y ya solo queda currar lo queremos que haga.

En esta parte tienes que tener en cuenta que las funciones que necesita y utiliza son:

  • function controladorAcciones(caja,accion)
  • function after_constructor(padre_caja,event)
  • function before_constructor(caja)

¿Que hace la funcion controladorAcciones ?

Esta funcion puede ser un switch o simple if donde comprobamos si existe la accion que le tenemos objeto global.

Llegamos a la funcion cuando pulso una tecla o un evento que tengamos definido en el objeto global, realizar la accion que le indiquemos

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

 Funciones y objetivo de TPVFOX

Es una aplicación para gestionar medianas y pequeñas empresas. En la que puedes:

  • Gestionar productos (Altas, modificaciones, gestión stock y control de precios)
  • Gestionar Proveedores ( Altas y modificaciones)
  • Gestionar Clientes ( Altas y modificaciones)
  • Gestión de compras ( Pedidos a proveedores, albaranes de entrada , control de que te factura y cobran)
  • Gestión de ventas ( Tickets-POS, pedidos de clientes, albaranes y facturación)

También se puede conectar con una tienda e-comerce (Joomla + Virtuemart ),  tiene la posibilidad conectarse otros e-comerce como :

  • Prestashop
  • woocommerce
  • ...

Estas aun no esta creada la API, te apetece hacerla.

Licencia y código

Esta publico en GITHUB y con licencia GNU General Public License v2.0

Puede utilizarlo, modificarlo y incluso venderlo, lo que no puedes cambiar la licencia, el código debe ser abierto siempre.( leer licencia )

Aunque el proyecto aun esta su fase beta , ya hay varias empresas que la utilizan, si estas interesado en utilizarlo para ti o tu empresa, estaríamos encantados en ayudar.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

En el listado de productos podemos visualizar todos los productos que tenemos almacenados en la base de datos.

 

El listado consta de 11 columnas, cada columna con un dato especifico de ese producto:

  • Id: id del producto.
  • Producto: Nombre del producto.
  • Código de barras: Listados de los códigos de barras de ese producto.
  • Referencia: Número de referencia del producto en la tienda.
  • Coste último: Último coste al que hemos comprado el producto.
  • %: Porcentaje del beneficio del producto.
  • Precio sin IVA: Cantidad de precio sin el iva.
  • IVA: Porcentaje del iva que se le aplica a ese producto.
  • P.V.P: Precio de venta al público.
  • Estado: Estado del producto.
  • Reg. Stock: Regularización de stock, cuando clicamos el en botón se regulariza el stock de ese producto.
Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Aquí intentaremos esplicar los posibles estado que pueda tener el campo estado en las distintas tablas del proyecto TPVFOX. Este campo hasta ahora era varchar, sabemos que no es lo correcto, ahora en estos momentos intentamos andamos un poco atope para resolverlo, pero todo se hará. Sabemos que lo ideal sería una tabla de estados con un id, este numero ser el relacione con el resto de tablas. :-)

Vamos definiendo los posibles estados que vamos utilizando en las distintas tablas.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

En el panel principal de inicio se sitúan los accesos directo a las funciones principales del programa.

 

INICIO1