From a696f60383f8231538328ac14b4f4f264af0435c Mon Sep 17 00:00:00 2001 From: Luca Haid Date: Wed, 6 Nov 2024 12:39:14 +0000 Subject: [PATCH] Feature/add historic bills --- Layout/default/Device/Form.php | 4 +- Layout/default/menu.php | 1 + application/HistoricBill/HistoricBill.php | 9 ++++ .../HistoricBill/HistoricBillController.php | 16 +++++++ .../HistoricBill/HistoricBillModel.php | 19 ++++++++ .../20241106120000_add_historic_bill.php | 46 +++++++++++++++++++ public/js/pages/HistoricBill/HistoricBill.js | 18 ++++++++ 7 files changed, 111 insertions(+), 2 deletions(-) create mode 100644 application/HistoricBill/HistoricBill.php create mode 100644 application/HistoricBill/HistoricBillController.php create mode 100644 application/HistoricBill/HistoricBillModel.php create mode 100644 db/migrations/20241106120000_add_historic_bill.php create mode 100644 public/js/pages/HistoricBill/HistoricBill.js diff --git a/Layout/default/Device/Form.php b/Layout/default/Device/Form.php index cd2a995a1..fe72b8bcd 100644 --- a/Layout/default/Device/Form.php +++ b/Layout/default/Device/Form.php @@ -59,7 +59,7 @@ asort($Devices);

id) ? "Device bearbeiten" : "Neues Device" ?>

$_GET["returnto"]]) ?>"> + action=" $_GET["returnto"] ?? ""]) ?>">
@@ -101,7 +101,7 @@ asort($Devices);
diff --git a/Layout/default/menu.php b/Layout/default/menu.php index 89b64c5fe..a14b56c1c 100644 --- a/Layout/default/menu.php +++ b/Layout/default/menu.php @@ -98,6 +98,7 @@
  • "> Erweiterte Suche
  • is(["Admin"]) && $me->can("Billing")): ?>
  • "> Verrechnung
  • is(["Admin"]) && $me->can("Billing")): ?>
  • "> Rechnungen
  • + is(["Admin"]) && $me->can("Billing")): ?>
  • "> Historische Rechnungen
  • diff --git a/application/HistoricBill/HistoricBill.php b/application/HistoricBill/HistoricBill.php new file mode 100644 index 000000000..b6e8d26a2 --- /dev/null +++ b/application/HistoricBill/HistoricBill.php @@ -0,0 +1,9 @@ + 'invoice_number', 'text' => 'Rechnungsnummer', 'required' => true], + ['key' => 'cinvoice_number', 'text' => 'Kundennummer', 'required' => true], + ['key' => 'address1', 'text' => 'Adresse 1', 'required' => true], + ['key' => 'address2', 'text' => 'Adresse 2', 'required' => true], + ['key' => 'address3', 'text' => 'Adresse 3', 'required' => true], + ['key' => 'address4', 'text' => 'Adresse 4', 'required' => true], + ['key' => 'date_outgoing', 'text' => 'Ausgangsdatum', 'required' => true], + ]; +} \ No newline at end of file diff --git a/application/HistoricBill/HistoricBillModel.php b/application/HistoricBill/HistoricBillModel.php new file mode 100644 index 000000000..42d93a2bf --- /dev/null +++ b/application/HistoricBill/HistoricBillModel.php @@ -0,0 +1,19 @@ +getEnvironment() == "thetool") { + //HistoricTicket Table + $HistoricBills = $this->table("HistoricBill", ["signed" => true]); + + $HistoricBills->addColumn("invoice_number", "integer", ["null" => true]); + $HistoricBills->addColumn("cinvoice_number", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("invoice_number", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("cid", "integer", ["null" => false, "default" => "0"]); + $HistoricBills->addColumn("address1", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("address2", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("address3", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("address4", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("date_outgoing", "date", ["null" => false]); + $HistoricBills->addColumn("bankcode", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("accountnumber", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("BIC", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("IBAN", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("Mandatinvoice_number", "string", ["null" => false, "limit" => 255]); + $HistoricBills->addColumn("payment", "integer", ["null" => false, "default" => "0"]); + $HistoricBills->save(); + + $HistoricBills->addIndex("invoice_number", ["name" => "invoice_number"]); + } + + if ($this->getEnvironment() == "addressdb") { + + } + } + + public function down(): void { + if ($this->getEnvironment() == "thetool") { + $this->table("HistoricBill")->drop()->save(); + } + + if ($this->getEnvironment() == "addressdb") { + + } + } +} diff --git a/public/js/pages/HistoricBill/HistoricBill.js b/public/js/pages/HistoricBill/HistoricBill.js new file mode 100644 index 000000000..e0b2fcad4 --- /dev/null +++ b/public/js/pages/HistoricBill/HistoricBill.js @@ -0,0 +1,18 @@ +Vue.component('historic-bill', { + //language=Vue + template: ` + + + + + + + + `, data() { + return { + window: window, historyModal: false, historyModalId: null, + } + }, +})