Ich baue eine Anwendung für Lagerverwaltung und Abrechnung. Das Lager ist alles Paletten, also ist das sehr einfach, eine Palette = $ X pro Monat. Aber ich habe Mühe, durch das beste Datenbankdesign zu denken, um zu verfolgen, welche Bedürfnisse wann berechnet werden. Eine Palette könnte einen Tag pro Monat im Jahr sitzen usw. Sie kommen und gehen in scheinbar zufälligen Intervallen. Ein Kunde kann über 1000 Paletten haben, die alle zu unterschiedlichen Zeiten angekommen sind.
Wie kann ich die Datenbank und die Logik am besten strukturieren, um zu verfolgen, was in Rechnung gestellt wurde und was in Rechnung gestellt wird?Lagerverwaltung wiederkehrende Abrechnung Datenbank Design und Logik
2
A
Antwort
1
Tabelle 1: Paletten (PalletID (PKey), Kosten pro Monat)
Tabelle 2: Holdings (HoldingID (PKey), Kundennummer, Kundenname, PalletsID, Startdatum, das Rückgabedatum)
Sie benötigen einen Java/.net basierte Benutzeroberfläche Daten aus diesen beiden Tabellen zu ziehen, wo durch Paletten-Tabelle Bezug genommen wird, können Sie Menge wie unten
Kunde X berechnen:
Startdatum: XXXX: XX: XX
Return Datum: XXXX: XX: XX
Anzahl erhalten Monaten zwischen diesen beiden Terminen.
5. Rechnungsbetrag wird Anzahl * Kosten der Paletten
hoffe, das hilft
Verwandte Themen
- 1. Streifen wiederkehrende/Abonnement-Abrechnung beste Design/Praktiken?
- 2. Variable Menge wiederkehrende Abrechnung
- 3. Wiederkehrende Abrechnung mit Stripe - sind Abonnements ausreichend?
- 4. Lagerverwaltung mit PHP und Mysql
- 5. Business-Logik und RESTful API Design
- 6. Datenbank Design
- 7. OO Design vs Datenbank Design
- 8. Paypal Advanced Wiederkehrende Abrechnung mit Express Checkout und Kreditkartenzahlung mit gehosteten Seiten
- 9. Datenbank-Design für Billing-System Anwendung
- 10. Datenbank-Design
- 11. MongoDB Datenbank-Design für Produkte und Pakete
- 12. Recurring Billing Database Design
- 13. Design Login-Controller-Logik mit Yii
- 14. Beste Ansätze für eCommerce-Lagerverwaltung
- 15. Wiederkehrende Rechnung Generation
- 16. Logik: Datenbank oder Anwendung/2 (Constraints check)
- 17. Symfony3 Entity Design für wiederkehrende Daten mit mehreren Zeitintervallen
- 18. Datenbank Logik für Benutzer achievments
- 19. Datenbank Design für Beiträge und Kommentare
- 20. Datenbank Design-Beratung für Gebühren und Zahlungen
- 21. Entity Framework und Multi-Tenancy-Datenbank-Design
- 22. Kämpfen mit Datenbank-Design
- 23. Datenbank Design Related
- 24. SymmetricDS: Datenbank System Design
- 25. Mehrsprachige Datenbank Geburtsort Design
- 26. Datenbank-Design: Tabellenstruktur
- 27. Datenbank-Design-Lookup-Tabellen
- 28. "Benutzereinstellungen" Datenbank Tabelle Design
- 29. Datenbank Design myqsl
- 30. SQL Datenbank Design Feedback
Vielen Dank für die Antwort sein. Einige spezifischere Fragen. Nehmen wir an, eine Palette kommt am 15. Juli an und geht am 20. August. Das sind 2 Abrechnungszyklen. Ich muss es irgendwie als versendet markieren, aber es muss immer noch für den zusätzlichen Monat in Rechnung gestellt werden, dann natürlich im nächsten Monat nicht berechnet. Wie würde ich das schaffen? – bairdmar
Sie haben zwei Daten 2016: 07: 15 und 2016: 08: 20. Mit vielen eingebauten Methoden können Sie die Anzahl der unterschiedlichen Monate zwischen diesen 2 Daten berechnen. und einfach noOfMonths * Kosten für Paletten –
Gute Antwort. Einige Tipps ... [Standard-Datumsformat] (https://en.m.wikipedia.org/wiki/ISO_8601) verwendet Bindestriche anstelle von Doppelpunkten, JJJJ-MM-TT wie 2016-01-23. Verwenden Sie die Klasse 'java.time.LocalDate', um die Daten darzustellen, wenn Sie nur einen Standort haben und sich nicht um Zeitzonen kümmern (zu einem bestimmten Zeitpunkt variiert das Datum je nach Zeitzone). –