int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Cliente w;
    w.show();

    return a.exec();
}
Exemple #2
0
/**
 * Método atendeCliente
 * Retira o cliente da fila caso o tempo necessário para
 * processar suas compras já tenha passado.
 */
void Caixa::atendeCliente(int horario) {
    if (fila->obtemNumClientes() == 0) {
        return;
    }
    Cliente *c = fila->proximoCliente();
    if (horario >= c->obtemHorarioSaida()) {
        faturamento += c->valorCompras();
        clientesAtendidos += 1;
        tempoTotalClientesFila += (c->obtemHorarioSaida() - c->obtemHorarioChegada());
        fila->retiraCliente();
    }
}
Exemple #3
0
bool compareAmmounts(Cliente ammountA, Cliente ammountB) // Usado para ordenar os clientes por ordem de quem comprou menos para quem comprou mais
{
	if (ammountA.getVolCompras() < ammountB.getVolCompras())
	{
		return true;
	}

	else
	{
		return false;
	}
}
Exemple #4
0
bool compareNames(Cliente nameA, Cliente nameB) // compara os nomes para ordenaçao alfabetica
{
	if (nameA.getNome() < nameB.getNome())
	{
		return true;
	}

	else
	{
		return false;
	}

}
void CCliente::muestra(){
	CCliente aux;
	Cliente x;
	while (!colaVacia()){
		x=saca();
		cout<<"\nNombre: "<<x.getNombre()<<" "<<x.getApPat()<<" "<<x.getApMat();
		cout<<"\nCorreo: "<<x.getTelefono();
		aux.mete(x);
	}
	while (!aux.colaVacia()){
		mete(aux.saca());
	}
}
Exemple #6
0
bool operator<(const Cliente &cliente1, const Cliente &cliente2) {

	if (cliente1.getVolCompras() < cliente2.getVolCompras()) {

		return true;

	}

	else {

		return true;
	}

}
int main(int argc, char **argv) {
//	testing::InitGoogleTest(&argc, argv);
//	return RUN_ALL_TESTS();

	if (argc > 1){
		Cliente c = Cliente();
		c.run();
	}
	else{
		Listener l = Listener();
		l.run();
	}
	wait(0);
	return 0;
}
int main()
{
	Cliente cliente;
	vector<string> v_resultados;
	string mensaje;

	cliente.Conectar("127.0.0.1", 8888);
	/*
	cin >> mensaje;

	while (mensaje != "salir")
	{

		cliente.EnviarDatos(mensaje);

		cliente.RecibirDatos(v_resultados);

		for (unsigned int i = 0; i < v_resultados.size(); i++)
		{
			cout << v_resultados[i] << endl;
		}

		v_resultados.clear();
		cout << v_resultados.size() << endl;
		cin >> mensaje;
	}


	//Enviamos el mensaje de salida
	cliente.EnviarDatos("salir");
	*/
	//Recibimos el fichero

	getline(cin, mensaje);

	while (mensaje != "salir")
	{
		cliente.EnviarDatos(mensaje);
		cliente.RecibirFichero();
		getline(cin, mensaje);
	}

	//cliente.RecibirFichero();

}
Exemple #9
0
int update_datos_cliente(MYSQL *my_con, const Cliente &c)
{
    std::string     consulta = c.get_mysql_update_str();

    if(mysql_query(my_con, consulta.c_str()) != 0) {
        print_mysql_error(my_con, "Fallo al actualizar cliente.");
        return 1;
    }

    return 0;
}
Exemple #10
0
int main(int argc, char* argv[])
{
    if (argc != 2){
        cout << "Debe pasar un unico parametro al programa especificando si quiere ejecutar como 'cliente' o como 'servidor'." << endl;
        return 1;
    }
    char* archivo = "main.cpp";
    char letra = 'a';
    if (strcmp(argv[1], "cliente") == 0){
        Cliente* cliente = new Cliente(archivo, letra);
        cliente->run();
        delete cliente;
    }
    else if(strcmp(argv[1], "servidor") == 0){
        Servidor* servidor = new Servidor(archivo, letra);
        servidor->run();
        delete servidor;
    }
    cout << "--Se termino la ejecución."<<endl;
    return 0;
}
Exemple #11
0
bool ListaClientes::esta(const Cliente &cliente){
	bool encontrado=false;
	int pos = 0;
	while ((pos < _numClientes)&&(!encontrado))
	{
		if (cliente.idCliente() == _clientes[pos].idCliente())
			encontrado=true;
		else
			pos++;
	}
	return encontrado;
}
Exemple #12
0
void LerVendas(std::string arquivo, Maps* mapas, std::vector<MeioPagamento*>* MPs)
{
	vector<vector<string> > dados = Ler(arquivo.c_str());
	for(vector<string>& data : dados)
	{
		int corr = 0;
		if(data.empty()) continue;
		char MP = data.at(data.size()-1).at(0);
		if(MP != 'F') corr = -1;
		Produto *prod = mapas->produtoId(atoi(data.at(2+corr).c_str()));
		int quant = atoi(data.at(3+corr).c_str());
		if(MP == 'F')
		{
			Cliente *clt = mapas->clienteId(atoi(data.at(0).c_str()));
			clt->setDivida(quant * prod->getPreco());
		}

		prod->setEstoqueAtual(-quant);
		prod->setVendidos(quant);
		MPs->at(MeioPagamento::getNum(MP))->addReceita(prod->getPreco()*quant, (prod->getPreco()-prod->getCusto())*quant);
	}
	return;
}
void CCliente::buscarCliente(Cliente b){
	CCliente aux;
	Cliente x;
	int encontrado=0;
	while (!colaVacia() && encontrado!=1){
		x=saca();
		if (x.getApPat()==b.getApPat() && x.getApMat()==b.getApMat() && x.getNombre()==b.getNombre()){
			encontrado=1;
		}
		aux.mete(x);
	}
	while(!aux.colaVacia()){
		mete(aux.saca());
	}
	if(encontrado=1){
		cout<<"\nEste cliente se encuentra en al cola";
	}
	else{
		cout<<"\nEste cliente no se encuentra en la cola";
	}
}
int main() {

	int opcion = 0;
	int opcionClientes = 0;
	int tempOpcion = 0;
	int tempID = 0;
	int id = 0;
	int idLibros = 0;
	int numItem = 0;
	int cantidad = 0;
	int precio = 0;
	bool continuar = true;
	bool volverMenu = true;
	char estado;
	char tempConfirmacion;
	string nombre = "";
	string apellido = "";
	string direccion = "";
	string titulo = "";
	string autor = "";
	string codigoLibro = "";


	ListaClientes* lista = new ListaClientes();
	ListaLibro* listaLibro = new ListaLibro();


	while(continuar){


		cout << "\n\nBienvenido a Shopping Somewhere\n" << endl;
		cout << "Menú principal:" << endl;
		cout << "1 - Clientes" << endl;
		cout << "2 - Libros" << endl;
		cout << "3 - Órdenes" << endl;
		cout << "4 - Salir\n" << endl;

		cout << "Seleccione una opcion: ";
		cin >> opcion;

		switch(opcion){
		case 1:
			while(volverMenu){
				cout << "\nMenu de clientes:" << endl;
				cout << "1 - Listar Clientes" << endl;
				cout << "2 - Crear Cliente" << endl;
				cout << "3 - Buscar Cliente" << endl;
				cout << "4 - Modificar Cliente" << endl;
				cout << "5 - Eliminar Cliente" << endl;
				cout << "6 - Volver al menu principal\n" << endl;

				cout << "Seleccione una opcion: ";
				cin >> opcionClientes;

				switch(opcionClientes){

					case 1:
						lista->listarClientes();
						break;

					case 2:
						{
							cout << "Creación de clientes\n" << endl;
							cout << "Nombre: ";
							cin >> nombre;

							cout << "Apellido: ";
							cin >> apellido;

							cout << "Dirección: ";
							cin >> direccion;

							Cliente* cliente = new Cliente();
							id++;
							cliente->crearCliente(id,nombre,apellido,direccion);
							lista->agregar(cliente);
						}
						break;

					case 3:
					{
						string nombreCliente = "";
						cout<<"Introduzca el nombre del cliente: "<<endl;
						cin>>nombreCliente;
						int contador = 0;
						string clientes[] = {};

						Cliente* busquedaCliente = lista->getPrimerElemento();

						while(busquedaCliente != NULL){
							clientes[contador] = busquedaCliente->getNombre();
							//cout << cliente[contador] << endl;
							busquedaCliente = busquedaCliente->getSiguienteCliente();
							contador++;
							//cout<<contador<<endl;

						}
						//cout<<nombreCliente<<endl;

						vector<string> myvector(clientes, clientes+(sizeof(clientes)/sizeof(clientes[0])));
						sort(myvector.begin(), myvector.end());
						if(lista->buscar(myvector, myvector.size(), nombreCliente) > -1){
								cout<<"Found "+nombreCliente<<endl;
						}
							else
							{
								cout<<"Not found "+nombreCliente<<endl;
							}


					}
						break;

					case 4:

						lista->listarClientes();
						cout << "\nIntroduzca el numero de cliente a modificar: ";
						cin >> tempOpcion;
						lista->modificar(tempOpcion);
						break;

					case 5:

						lista->listarClientes();
						cout << "\nElige el numero del cliente a eliminar: ";
						cin >> tempID;
						cout << tempID;
						cout << "\nEsta seguro de elimar el contacto (s/n): ";
						cin >> tempConfirmacion;
						if(tempConfirmacion == 's' || tempConfirmacion == 'S'){
							lista->eliminar(tempID);
						}
						break;

					case 6:
						{
							cout <<"Saliendo..." << endl;
							volverMenu = false;
						}
						break;
				}
			}
			break;

			case 2:
				while(volverMenu){
					cout << "\nMenu de Libros:" << endl;
					cout << "1 - Listar Libros" << endl;
					cout << "2 - Crear Libro" << endl;
					cout << "3 - Buscar Libro" << endl;
					cout << "4 - Modificar Libro" << endl;
					//cout << "5 - Cambiar Libro" << endl;
					cout << "5 - Volver al menu principal\n" << endl;

					cout << "Seleccione una opcion: ";
					cin >> opcionClientes;

					switch(opcionClientes){

						case 1:
							listaLibro->listarLibro();
							break;

						case 2:
							{
								cout << "Insercion de nuevo libro\n" << endl;
								cout << "Titulo: ";
								cin >> titulo;

								cout << "Autor: ";
								cin >> autor;

								cout << "Codigo del libro: ";
								cin >> codigoLibro;

								cout << "Cantidad: ";
								cin >> cantidad;

								cout << "Precio: ";
								cin >> precio;
								/*cout << "Dirección: ";
								cin >> estado;*/

								Libro* libro = new Libro();
								idLibros++;
								libro->crearLibro(idLibros, titulo, autor, codigoLibro, 'D', cantidad ,precio);
								listaLibro->agregar(libro);
							}
							break;

						case 4:

							listaLibro->listarLibro();
							cout << "\nIntroduzca el numero del libro a modificar: ";
							cin >> tempOpcion;
							listaLibro->modificar(tempOpcion);
							break;

						/*case 5:

							listaLibro->listarLibro();
							cout << "\nElige el numero del libro a cambiar el estado: ";
							cin >> tempID;
							cout << "\nEsta seguro cambiar el estado (s/n): ";
							cin >> tempConfirmacion;
							if(tempConfirmacion == 's' || tempConfirmacion == 'S'){
								listaLibro->cambiarEstado(tempID);
							}
							break;*/

						case 5:
							{
								cout <<"Saliendo..." << endl;
								volverMenu = false;
							}
							break;
					}
				}
				break;

			case 4:

				cout <<"Saliendo..." << endl;
				continuar = false;
				break;

			default:
				cout <<"'"<< opcion <<"' no es un valor válido" << endl;
				break;
		}
	}

	return 0;
}
Exemple #15
0
void Menu::modifyMenu(Oficina &oficina){
	cout << "1 - Modificar nome Cliente" << endl;
	cout <<	"2 - Modificar nome Funcionario" << endl;
	cout << "3 - Modificar data de serviço" << endl;
	cout << "0 - Sair" << endl;

	int opcao;
		cin >> opcao;

		switch(opcao){
		case 0:
			menu(oficina);
			break;
		case 1:{
			string nome;
			try{
				cin.sync();
				cout << "Insira o nome do cliente: ";
				getline(cin,nome);
				Cliente f = oficina.getClienteNome(nome);
				string nomeF;
				cin.sync();
				cout << "Insira o novo nome do cliente: ";
				getline(cin,nomeF);
				f.setNome(nomeF);
				oficina.setClientes(oficina.getClientes());
			}catch(ClienteInexistente &e){
				cout << e.getNome() << " não é um cliente.\n";
			}
			oficina.guardaClientes();
			modifyMenu(oficina);
			break;
		}
		case 2:{
			string nome;
			try{
				cin.sync();
				cout << "Insira o nome do funcionário: ";
				getline(cin,nome);
				Funcionario f = oficina.getFuncionarioNome(nome);
				string nomeF;
				cin.sync();
				cout << "Insira o novo nome do funcionário: ";
				getline(cin,nomeF);
				f.setNome(nomeF);
				oficina.setFuncionarios(oficina.getFuncionarios());
			}catch(FuncionarioInexistente &e){
				cout << e.getNome() << " não é um funcionário.\n";
			}
			oficina.guardaFuncionarios();
			modifyMenu(oficina);
			break;
		}
		case 3:{
			int ano,mes,dia,hora,minutos;
			cout << "Data do servico: " << endl;
			cout << "Ano: ";
			cin >> ano;
			cout << "Mês: ";
			cin >> mes;
			cout << "Dia: ";
			cin >> dia;
			cout << "Hora: ";
			cin >> hora;
			cout << "Minuto: ";
			cin >> minutos;
			Date d(ano,mes,dia,hora,minutos);
			Servico *s = new Servico("",0,0,d);
			cout << "Data nova: " << endl;
			cout << "Ano: ";
			cin >> ano;
			cout << "Mês: ";
			cin >> mes;
			cout << "Dia: ";
			cin >> dia;
			cout << "Hora: ";
			cin >> hora;
			cout << "Minuto: ";
			cin >> minutos;
			Date d2(ano,mes,dia,hora,minutos);
			oficina.remarcaServico(s,d2);
			modifyMenu(oficina);
			break;
		}
		default:
			cout << "Opção inválida. Insira outra vez." << endl;
			modifyMenu(oficina);
			break;
		}
}
Exemple #16
0
void Menu::displayMenu(Oficina &oficina){
	cout << "1 - Display Funcionários" << endl;
	cout <<	"2 - Display Veículos do Funcionário" << endl;
	cout <<	"3 - Display Clientes" << endl;
	cout <<	"4 - Display Veículos do Cliente" << endl;
	cout <<	"5 - Display de Serviços do Veículo" << endl;
	cout << "6 - Display da Agenda" << endl;
	cout << "7 - Display cliente inativo" << endl;
	cout << "8 - Display fila de clientes" << endl;
	cout <<	"0 - Sair" << endl;

	int opcao;
	cin >> opcao;

	switch(opcao){
	case 0:
		menu(oficina);
		break;
	case 1:
		oficina.displayFuncionarios();
		displayMenu(oficina);
		break;
	case 2:{
		string nome;
		try{
			cin.sync();
			cout << "Insira o nome do funcionário: ";
			getline(cin,nome);
			Funcionario f = oficina.getFuncionarioNome(nome);
			f.displayFuncionario();
		}catch(FuncionarioInexistente &e){
			cout << e.getNome() << " não é um funcionário.\n";
		}
		displayMenu(oficina);
		break;
	}
	case 3:
		oficina.displayClientes();
		displayMenu(oficina);
		break;
	case 4:{
		string nome;
		try{
			cin.sync();
			cout << "Insira o nome do cliente: ";
			getline(cin,nome);
			Cliente c = oficina.getClienteNome(nome);
			c.displayCliente();
		}catch(ClienteInexistente &e){
			cout << e.getNome() << " não é um cliente.\n";
		}
		displayMenu(oficina);
		break;
	}
	case 5:	{
		string matricula;
		try{
			cout << "Insira a matricula do veiculo: ";
			cin >> matricula;
			Veiculo *v = oficina.getVeiculoMatricula(matricula);
			vector<Servico *> serv = v->getServicos();
			for(unsigned int i = 0; i < serv.size(); i++){
				serv[i]->displayServico();
				cout << endl;
			}
		}catch(VeiculoInexistente &e){
			cout << e.getMatricula() << " não existe.\n";
		}
		displayMenu(oficina);
		break;
	}
	case 6:
		oficina.printArvore();
		displayMenu(oficina);
		break;
	case 7:{
		Date d(2010,12,31,23,59);
		oficina.atualizaInativos(d);
		oficina.displayClientesInativos();
		displayMenu(oficina);
		break;
	}
	case 8:{
		oficina.displayFila();
		displayMenu(oficina);
		break;
	}
	default:
		cout << "Opção inválida. Insira outra vez." << endl;
		displayMenu(oficina);
		break;
	}
}
Exemple #17
0
int main(int argc, char* argv[]) {
	Cliente cliente ( (char *) COLA_SERVIDOR,'a' );
	cliente.iniciar();
	wait ( NULL );
	return 0;
}
Exemple #18
0
bool Cliente::operator==(Cliente rhs) const {
	return  nome== rhs.getNome() && NIF == rhs.getNIF();
}