void workerHandlingProductsMenu(Product *products, int *productCount) { int op; do { workerHandlingProductsMenuPrint(); readInt(&op, MENU_OPT_MIN, MENU_OPT_MAX, MENU_MSG_OPT); switch (op) { case 0: //exit break; case 1: cleanScreen(); addProduct(products, productCount); break; case 2: cleanScreen(); editProduct(products, productCount); break; case 3: cleanScreen(); removeProduct(products, productCount); break; case 4: cleanScreen(); listProducts(products, productCount); break; default: printf(MENU_MSG_OPT_INVALID); } } while (op != 0); }
int main(int argc, char *argv[]) { // erstelle irgendwelche rabatte int i, i1; for(i = 0; i < x; i++) { for(i1 = 0; i1 < y; i1++) { discounts[i][i1] = rand() % 100; } } while(option != 3) { printf("\nOptionen:\n"); printf("1: Neue Produkte eingeben\n"); printf("2: Neue Kunden eingeben\n"); printf("3: Beenden\n\n"); printf("Weitere Optionen\n"); printf("4: Alle Produkte auflisten\n"); printf("5: Alle Personen auflisten\n"); printf("6: Alle Aufträge auflisten\n"); printf("7: Neuen Auftrag anlegen\n"); printf("8: Auftrag bearbeiten\n"); printf("9: Auftrag löschen\n"); printf("10: Person bearbeiten\n"); printf("11: Produkt bearbeiten\n"); printf("12: Nach Produkt suchen\n"); printf("13: Nach Kunde suchen\n"); printf("14. Rekusiver Warenwert\n"); printf("15. Iterativer Warenwert\n"); printf("16. Rabattliste"); printf("\nAuswahl: "); scanf("%i", &option); Order o; Product p; Customer c; switch(option) { case 1: while(decision != 'n') { p = newProduct(); getchar(); printf("Wollen Sie noch einen Eintrag erstellen (j/n)?\n"); scanf("%c", &decision); if(max_products == p.id + 1) resizeProductArray(&product, &max_products); product[p.id] = p; productIndex++; } decision = 'j'; break; case 2: while(decision != 'n') { Customer c = newCustomer(); getchar(); printf("Wollen Sie noch einen Eintrag erstellen (j/n)?\n"); scanf("%c", &decision); if(max_customer == c.id + 1) resizeCustomerArray(&customer, &max_customer); customer[c.id] = c; customerIndex++; } decision = 'j'; break; case 3: printf("\nBeendet..\n"); break; case 4: printProducts(product, productIndex); break; case 5: printCustomer(customer, customerIndex); break; case 6: printOrders(order, orderIndex); break; case 7: o = newOrder(); if(max_order == c.id + 1) resizeOrderArray(&order, &max_order); order[o.id] = o; orderIndex++; break; case 8: // auftrag bearbeiten break; case 9: // auftrag loeschen break; case 10: c = searchCustomer(customer, customerIndex); c = editCustomer(c); customer[c.id] = c; break; case 11: p = searchProduct(product, productIndex); p = editProduct(p); product[p.id] = p; break; case 12: p = searchProduct(product, productIndex); printf("\nArtikelnummer: %i\n", p.id+1); printf("Artikelname: %s\n", p.name); printf("Artikelpreis: %0.2f\n", p.price); printf("Lagerbestand: %i\n", p.amount); break; case 13: c = searchCustomer(customer, customerIndex); printf("\nKundennummer: %i\n", c.id); printf("Kundenname: %s\n", c.name); break; case 14: printf("\nAktueller Warenwert: "); printf("%0.2f Euro (rekursiv)\n", recursiveProductValue(product, productIndex-1)); break; case 15: printf("\nAktueller Warenwert: "); printf("%0.2f Euro (iterativ)\n", iterativeProductValue(product, productIndex-1)); break; case 16: printf("Produkt/Anzahl"); for(i = 0; i < x; i++) { for(i1 = 0; i1 < y; i1++) { printf("[%02i]", discounts[i][i1]); } printf("\n"); } break; default: break; } } }