Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void AppEngine()
- {
- string wybor, produkt;
- long PIN;
- int ilosc;
- cout << "Witaj w Hipermarkecie. Wybierz prosze tryb(poprzez wpisane numeru), w ktorym chcesz dzialac:" << endl;
- cout << "1. Jestem klientem, chce zrobic zakupy!" << endl;
- cout << "2. Jestem pracownikiem/wlascicielem." << endl;
- cout << "3. Trafilem tu przez pomylke, chce wyjsc! :-(" <<endl;
- cin >> wybor;
- if (stoi(wybor) == 1 || wybor == "klient")
- {
- system("CLS");
- Market M;
- Rachunek R;
- M.wczytajBaze("Sklep.txt");
- cout << "Dzien dobry! Co chcialbys zakupic?" << endl;
- while (1)
- {
- system("CLS");
- cout << "Jesli chcesz zakonczyc zakupy, wcisnij Q" << endl;
- cout << "Wybierz numer dzialu, z ktorego chcialbys zakupic produkty:" << endl;
- cout << M;
- cin >> wybor;
- if (wybor == "Q")
- break;
- else if (stoi(wybor))
- {
- int N = stoi(wybor);
- ListaDzialow* tmp = M.gethead();
- for (int i = 1; i < N; i++)
- {
- tmp = tmp->next;
- }
- while (1)
- {
- system("CLS");
- cout << "Wybierz produkt, ktory chcialbys zakupic, jesli bedziesz chcial wrocic do katalogu działów, wciśnij Q" << endl;
- cout << tmp->Dz;
- cin >> produkt;
- if (produkt == "Q" || produkt == "q")
- break;
- //TODO: konwersja stringa na male litery, by zabezpieczyc sie przed bledem
- else if (tmp->Dz.findproduct(produkt) != nullptr)
- {
- ListaProduktow* temp = tmp->Dz.findproduct(produkt);
- cout << "Podaj ilosc:" << endl;
- cin >> ilosc;
- if (ilosc < temp->p.getilosc())
- {
- double cena = temp->p.getcena() * ilosc;
- Produkt P(produkt, ilosc, cena);
- R.addproduct(P);
- temp->p -= ilosc;
- cout << "Pomyslnie dodano produkt do koszyka" << endl;
- }
- else
- {
- cout << "Za duza ilosc, wybrano maksymalna mozliwa" << endl;
- ilosc = temp->p.getilosc();
- double cena = temp->p.getcena() * ilosc;
- Produkt P(produkt, ilosc, cena);
- R.addproduct(P);
- temp->p -= ilosc;
- cout << "Pomyslnie dodano produkt do koszyka" << endl;
- }
- }
- else
- {
- cout << "Podana nazwa produktu jest nieprawidlowa";
- }
- }
- }
- else cout << "Prosze podac NUMER, nie NAZWE";
- }
- while (1)
- {
- system("CLS");
- cout << "Faktura czy paragon ?" << endl;
- cout << "1. Faktura" << endl;
- cout << "2. Paragon" << endl;
- cin >> wybor;
- if (stoi(wybor) == 1 || (wybor == "Faktura" || wybor == "faktura"))
- {
- while (1)
- {
- system("CLS");
- cout << "Prosze podac 10-cyfrowy numer NIP" << endl;
- cin >> wybor;
- if (wybor.length == 10 && stol(wybor))
- {
- GenerateInvoice("Faktura.txt", wybor, R);
- break;
- }
- else cout << "Sprobuj ponownie";
- }
- break;
- }
- else if(stoi(wybor) == 2 || (wybor == "Paragon" || wybor == "paragon"))
- GenerateBill("Rachunek.txt", R);
- }
- //GenerateSupplyList("Do_zamowienia.txt");
- //UpdateDataBase("Sklep.txt");
- }
- else if (stoi(wybor) == 2 || wybor == "wlasciciel")
- {
- cout << "Wybrano tryb dla pracownika/wlasciciela. Kazdy pracownik ma uniwersalny identyfikator PIN, prosze o podanie aby kontynuowac" << endl;
- cin >> wybor;
- PIN = stol(wybor);
- if (PINDecoder(PIN) || PIN == 0)
- {
- }
- else
- {
- cerr << "Odmowiono dostepu, nastapi zatrzymanie programu" << endl;
- return;
- }
- }
- else return;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement