Advertisement
Guest User

pck

a guest
Jan 25th, 2020
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.39 KB | None | 0 0
  1. void AppEngine()
  2. {
  3.     string wybor, produkt;
  4.     long PIN;
  5.     int ilosc;
  6.     cout << "Witaj w Hipermarkecie. Wybierz prosze tryb(poprzez wpisane numeru), w ktorym chcesz dzialac:" << endl;
  7.     cout << "1. Jestem klientem, chce zrobic zakupy!" << endl;
  8.     cout << "2. Jestem pracownikiem/wlascicielem." << endl;
  9.     cout << "3. Trafilem tu przez pomylke, chce wyjsc! :-(" <<endl;
  10.     cin >> wybor;
  11.     if (stoi(wybor) == 1 || wybor == "klient")
  12.     {
  13.         system("CLS");
  14.         Market M;
  15.         Rachunek R;
  16.         M.wczytajBaze("Sklep.txt");
  17.         cout << "Dzien dobry! Co chcialbys zakupic?" << endl;
  18.         while (1)
  19.         {
  20.             system("CLS");
  21.             cout << "Jesli chcesz zakonczyc zakupy, wcisnij Q" << endl;
  22.             cout << "Wybierz numer dzialu, z ktorego chcialbys zakupic produkty:" << endl;
  23.             cout << M;
  24.             cin >> wybor;
  25.             if (wybor == "Q")
  26.                 break;
  27.             else if (stoi(wybor))
  28.             {
  29.  
  30.                 int N = stoi(wybor);
  31.                 ListaDzialow* tmp = M.gethead();
  32.                 for (int i = 1; i < N; i++)
  33.                 {
  34.                     tmp = tmp->next;
  35.                 }
  36.                 while (1)
  37.                 {
  38.                     system("CLS");
  39.                     cout << "Wybierz produkt, ktory chcialbys zakupic, jesli bedziesz chcial wrocic do katalogu działów, wciśnij Q" << endl;
  40.                     cout << tmp->Dz;
  41.                     cin >> produkt;
  42.                     if (produkt == "Q" || produkt == "q")
  43.                         break;
  44.  
  45.  
  46.                     //TODO: konwersja stringa na male litery, by zabezpieczyc sie przed bledem
  47.  
  48.                     else if (tmp->Dz.findproduct(produkt) != nullptr)
  49.                     {
  50.                         ListaProduktow* temp = tmp->Dz.findproduct(produkt);
  51.                         cout << "Podaj ilosc:" << endl;
  52.                         cin >> ilosc;
  53.                         if (ilosc < temp->p.getilosc())
  54.                         {
  55.                             double cena = temp->p.getcena() * ilosc;
  56.                             Produkt P(produkt, ilosc, cena);
  57.                             R.addproduct(P);
  58.                             temp->p -= ilosc;
  59.                             cout << "Pomyslnie dodano produkt do koszyka" << endl;
  60.                         }
  61.                         else
  62.                         {
  63.                             cout << "Za duza ilosc, wybrano maksymalna mozliwa" << endl;
  64.                             ilosc = temp->p.getilosc();
  65.                             double cena = temp->p.getcena() * ilosc;
  66.                             Produkt P(produkt, ilosc, cena);
  67.                             R.addproduct(P);
  68.                             temp->p -= ilosc;
  69.                             cout << "Pomyslnie dodano produkt do koszyka" << endl;
  70.                         }
  71.  
  72.                     }
  73.                     else
  74.                     {
  75.                         cout << "Podana nazwa produktu jest nieprawidlowa";
  76.                     }
  77.                 }
  78.             }
  79.             else cout << "Prosze podac NUMER, nie NAZWE";
  80.         }
  81.         while (1)
  82.         {
  83.             system("CLS");
  84.             cout << "Faktura czy paragon ?" << endl;
  85.             cout << "1. Faktura" << endl;
  86.             cout << "2. Paragon" << endl;
  87.             cin >> wybor;
  88.             if (stoi(wybor) == 1 || (wybor == "Faktura" || wybor == "faktura"))
  89.             {
  90.                 while (1)
  91.                 {
  92.                     system("CLS");
  93.                     cout << "Prosze podac 10-cyfrowy numer NIP" << endl;
  94.                     cin >> wybor;
  95.                     if (wybor.length == 10 && stol(wybor))
  96.                     {
  97.                         GenerateInvoice("Faktura.txt", wybor, R);
  98.                         break;
  99.                     }
  100.                     else cout << "Sprobuj ponownie";
  101.                 }
  102.                 break;
  103.             }
  104.             else if(stoi(wybor) == 2 || (wybor == "Paragon" || wybor == "paragon"))
  105.                 GenerateBill("Rachunek.txt", R);
  106.         }
  107.         //GenerateSupplyList("Do_zamowienia.txt");
  108.         //UpdateDataBase("Sklep.txt");
  109.     }
  110.     else if (stoi(wybor) == 2 || wybor == "wlasciciel")
  111.     {
  112.         cout << "Wybrano tryb dla pracownika/wlasciciela. Kazdy pracownik ma uniwersalny identyfikator PIN, prosze o podanie aby kontynuowac" << endl;
  113.         cin >> wybor;
  114.         PIN = stol(wybor);
  115.         if (PINDecoder(PIN) || PIN == 0)
  116.         {
  117.  
  118.         }
  119.         else
  120.         {
  121.             cerr << "Odmowiono dostepu, nastapi zatrzymanie programu" << endl;
  122.             return;
  123.         }
  124.     }
  125.     else return;
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement