projekt_programowanie/Admin.cpp

152 lines
3.6 KiB
C++

#include "admin.hpp"
#include "Wycieczka.hpp"
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
#include <stdlib.h>
#include <vector>
using namespace std;
bool Admin::autoryzacja()
{
string haslo="hulajnoga";
string kod;
licznik=0;
cout<<"Wpisz haslo dostepu do panelu administracji: "<<endl;
cin>>kod;
while(kod!=haslo&&licznik<=2)
{
licznik=licznik+1;
cout<<"Podane haslo nie jest poprawne. Sprobuj jeszcze raz"<<endl;
cin>>kod;
}
if(licznik>2)
{
cout<<"Zbyt duzo prob logowania."<<endl;
return false;
}
if(kod==haslo)
{
cout<<"Autoryzacja zatwierdzona.";
return true;
}
}
Wycieczka* Admin::dodaj_wycieczke(string plik_nazwa)
{
fstream plik;
string slowo;
plik.open(plik_nazwa, ios::out | ios::app);
if(plik.good()==true)
{
cout<<"Podaj id wycieczki: ";
cin>>id;
cout<<"Podaj miejsce wycieczki: ";
cin>>miejsce;
cout<<"Podaj date wyjazdu w formacie dd-mm-rrrr: ";
cin>>od;
cout<<"Podaj date powrotu w formacie dd-mm-rrrr: ";
cin>>d_do;
cout<<"Podaj cene wycieczki: ";
cin>>cena;
Wycieczka* w = new Wycieczka(id, miejsce, od, d_do, cena);
plik<<id; plik<<" "; plik<<miejsce; plik<<" "; plik<<od; plik<<" "; plik<<d_do; plik<<" "; plik<<cena; plik<<",\n";
plik.close();
cout<<"Dodano wycieczke o numerze id: "<<id<<endl;
return w;
}
}
void Admin::dodaj_klienta()
{
fstream plik;
string linia;
plik.open("Klienci.txt", ios::out | ios::app);
if(plik.good()==true)
{
string imie, nazwisko, adres, numer;
int id;
cout<<"Podaj identyfikator wycieczki klienta: ";
cin>>id;
cout<<"Podaj imie klienta: ";
cin>>imie;
cout<<"Podaj nazwisko klienta: ";
cin>>nazwisko;
cout<<"Podaj adres klienta: ";
cin.ignore();
getline(cin, adres);
cout<<"Podaj numer telefonu klienta: ";
cin.ignore();
getline(cin, numer);
plik<<id; plik<<" "; plik<<imie; plik<<" "; plik<<nazwisko; plik<<" "; plik<<adres; plik<<" "; plik<<numer; plik<<",\n";
plik.close();
cout<<"Dodano klienta o nazwisku: "<<nazwisko<<endl;
}
}
Wycieczka* Admin::usun_wycieczke(int u)
{
string usun;
string linia;
ifstream fin;
if(u==1)
{
fin.open("lista_wycieczek_samoloty.txt");
}
if(u==0)
{
fin.open("lista_wycieczek_statki.txt");
}
ofstream temp;
temp.open("temp.txt");
cout << "Wpisz id wycieczki do usuniecia ";
cin.ignore();
getline(cin, usun);
while (getline(fin,linia))
{
size_t pos = linia.find(usun);
if (pos >= linia.length()) temp << linia << endl;
}
temp.close();
fin.close();
if(u==1)
{
remove("lista_wycieczek_samoloty.txt");
rename("temp.txt","lista_wycieczek_samoloty.txt");
}
if(u==0)
{
remove("lista_wycieczek_statki.txt");
rename("temp.txt","lista_wycieczek_statki.txt");
}
cout<<"Wycieczka zostala usunieta"<<endl;
}
void Admin::usun_klienta()
{
string usun;
string linia;
ifstream fin;
fin.open("Klienci.txt");
ofstream temp;
temp.open("temp.txt");
cout << "Wpisz id wycieczki oraz imie klienta: ";
cin.ignore();
getline(cin, usun);
while (getline(fin,linia))
{
size_t pos = linia.find(usun);
if (pos >= linia.length()) temp << linia << endl;
}
temp.close();
fin.close();
remove("Klienci.txt");
rename("temp.txt","Klienci.txt");
}