Added Contract CSV Export
This commit is contained in:
10
Layout/default/Contract/Export.csv.php
Normal file
10
Layout/default/Contract/Export.csv.php
Normal file
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
$filename = "contracts-export-".date("Y-m-d_H-i-s").".csv";
|
||||
header("Content-type: text/csv; charset=utf-8");
|
||||
header('Content-disposition: attachment; filename="'.$filename.'"');
|
||||
?>
|
||||
<?="\u{FEFF}"?>Contract ID;Vertragsinhaber Kundennummer;Vertragsinhaber Name;Vertragsinhaber Straße;Vertragsinhaber PLZ;Vertragsinhaber Ort;Vertragsinhaber Land;Rechnungsempfänger Kundennummer;Rechnungsempfänger Name;Rechnungsempfänger Straße;Rechnungsempfänger PLZ;Rechnungsempfänger Ort;Rechnungsempfänger Land;SLA;Produktgruppe;Produktname;Matchcode;Menge;Einzelpreis;Gesamtpreis;Preis Setup;Rechungsperiode;Verrechnungsstart Verzögerung;Bestelldatum;Fertigstellungsdatum;Kündigungsdatum;Erstellt;Zuletzt bearbeitet
|
||||
<?php foreach($contracts as $contract): ?>
|
||||
<?=$contract->id?>;<?=$contract->owner->customer_number?>;"<?=$contract->owner->getCompanyOrName()?>";"<?=$contract->owner->street?>";"<?=$contract->owner->zip?>";"<?=$contract->owner->city?>";"<?=$contract->owner->country->isocode?>";<?=$contract->billingaddress->customer_number?>;"<?=$contract->billingaddress->getCompanyOrName()?>";"<?=$contract->billingaddress->street?>";"<?=$contract->billingaddress->zip?>";"<?=$contract->billingaddress->city?>";"<?=$contract->billingaddress->country->isocode?>";"<?=$contract->sla->name?>";"<?=$contract->product->productgroup->name?>";"<?=$contract->product->name?>";"<?=str_replace(["\r","\n",'"'],[" ", " ", '""'],$contract->matchcode)?>";<?=$contract->amount?>;<?=$contract->price?>;<?=$contract->price * $contract->amount?>;<?=$contract->price_setup?>;<?=__($contract->billing_period, "billing_period")?>;<?=$contract->billing_delay?>;<?=($contract->order_date) ? date("Y-m-d", $contract->order_date) : ""?>;<?=($contract->finish_date) ? date("Y-m-d", $contract->finish_date) : ""?>;<?=($contract->cancel_date) ? date("Y-m-d", $contract->cancel_date) : ""?>;<?=date("Y-m-d", $contract->create)?>;<?=date("Y-m-d", $contract->edit)?>
|
||||
|
||||
<?php endforeach; ?>
|
||||
@@ -89,6 +89,7 @@
|
||||
<div class="col">
|
||||
<button type="submit" class="btn btn-primary">Filter anwenden</button>
|
||||
<a class="btn btn-secondary" href="<?=self::getUrl("Contract")?>?resetFilter=1">Filter zurücksetzen</a>
|
||||
<button type="submit" name="export" value="csv" class="btn btn-outline-success ml-2"><i class="fas fa-fw fa-file-csv"></i> CSV-Export</button>
|
||||
</div>
|
||||
<!--<div class="col">
|
||||
<button class="btn btn-info" type="button" onclick="refreshMap()"><i class="far fa-map"></i> Auf Karte anzeigen</button>
|
||||
|
||||
@@ -50,10 +50,17 @@ class ContractController extends mfBaseController {
|
||||
}
|
||||
//var_dump($filter);exit;
|
||||
$pagination['maxItems'] = ContractModel::count($filter);
|
||||
|
||||
if($this->request->export == "csv") {
|
||||
$pagination = false;
|
||||
$this->layout()->setTemplate("Contract/Export.csv");
|
||||
}
|
||||
|
||||
$contracts = ContractModel::search($filter, $pagination);
|
||||
|
||||
$this->layout()->set("contracts", $contracts);
|
||||
$this->layout()->set("pagination", $pagination);
|
||||
|
||||
}
|
||||
|
||||
private function getPreparedFilter($filter) {
|
||||
|
||||
Reference in New Issue
Block a user