Exemplo n.º 1
0
int menu_principal(Usuario sesion){
	/* Menu pricipal según perfil de usuario */
  int opcion = 1;
  list<Permiso> mis_permisos = sesion.permisos;
  list<Permiso>::iterator it;
	while (opcion!=0){
  		it = mis_permisos.begin();
	  //Mostrando la lista de modulos segun permisos
	  cout << "+---------------------+"<< endl;
	  cout << "|---MENU PRINCIPAL----|"<< endl;
	  cout << "+---------------------+"<< endl;
	  cout << "|" + pull_left(" 0 SALIR.",21)+ "|"<< endl;
	  while(it != mis_permisos.end()){
			cout << "| " << pull_left(it->codigo + " " + it->descripcion + ".",20) << "|"<< endl;
			it++;
		}
	  cout << "+---------------------+"<< endl;
		cout << "Seleccionar:";
		cin >> opcion;
  		if (sesion.tiene_permiso(opcion)){
			switch(opcion){	
				 case 0 :
				 	salir();
				 	break;
				 case 1 :
				 	inicio();
				  	break;
				 case 2 :
				  	pedidos();
				  	break;
				 case 3 :
				  	pagos();
				  	break;
				 case 4 :
				  	stock();

				  	break;
				 case 5 :
				  	finanzas();
				  	break;
				 case 6 :
				 	cout << "Modulo de mantenimiento" << endl;
				  	mantenimiento(sesion);
	 
				  	break;
				 case 7 :
				  	miscelaneos();
				  	break;
				 default:
			  		cout << "Opcion inválida." << endl;
		 	}
  		}else{
  			if (opcion!=0){
  				cout << "Ingrese una opción válida." << endl;
  			}else{
  				salir();
  			}
  		}
	}

  return 1;
};