WIP Preorder web gui changes
This commit is contained in:
@@ -19,7 +19,65 @@
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body mb-3">
|
||||
<h4 class="header-title mb-3">Filter</h4>
|
||||
|
||||
<form method="get" action="<?=self::getUrl("Preorder")?>">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_preordercampaign_id">Kampagne</label>
|
||||
<select name="filter[preordercampaign_id]" id="filter_preordercampaign_id" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
<?php foreach(PreordercampaignModel::getAll() as $c): ?>
|
||||
<option value="<?=$c->id?>" <?=($c->id == $campaign->id) ? "selected='selected'" : ""?>><?=$c->name?></option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_status">Status</label>
|
||||
<select name="filter[status][]" id="filter_status" class="form-control" multiple="multiple">
|
||||
<option value="new" <?=(isset($filter) && array_key_exists("status", $filter) && in_array("new", $filter['status'])) ? "selected='selected'" : ""?>>Aufgenommen</option>
|
||||
<option value="approved" <?=(isset($filter) && array_key_exists("status", $filter) && in_array("approved", $filter['status'])) ? "selected='selected'" : ""?>>Freigegeben</option>
|
||||
<option value="pipework" <?=(isset($filter) && array_key_exists("status", $filter) && in_array("pipework", $filter['status'])) ? "selected='selected'" : ""?>>Tiefbau</option>
|
||||
<option value="linework" <?=(isset($filter) && array_key_exists("status", $filter) && in_array("linework", $filter['status'])) ? "selected='selected'" : ""?>>Leitungsbau</option>
|
||||
<option value="finished" <?=(isset($filter) && array_key_exists("status", $filter) && in_array("finished", $filter['status'])) ? "selected='selected'" : ""?>>Hergestellt</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_type">Bestelltyp</label>
|
||||
<select name="filter[type][]" id="filter_type" class="form-control" multiple="multiple">
|
||||
<option value="interest" <?=(isset($filter) && array_key_exists("type", $filter) && in_array("interest", $filter['type'])) ? "selected='selected'" : ""?>>Interessensbekundung</option>
|
||||
<option value="provision" <?=(isset($filter) && array_key_exists("type", $filter) && in_array("provision", $filter['type'])) ? "selected='selected'" : ""?>>Vorsorgeanschluss</option>
|
||||
<option value="order" <?=(isset($filter) && array_key_exists("type", $filter) && in_array("order", $filter['type'])) ? "selected='selected'" : ""?>>Vollanschluss</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-1">
|
||||
<label class="form-label" for="filter_email">Email</label>
|
||||
<input type="text" class="form-control" name="filter[email]" id="filter_email" value="<?=$filter['email']?>" />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row mt-2">
|
||||
<div class="col">
|
||||
<button type="submit" class="btn btn-primary">Filter anwenden</button>
|
||||
<?php if(isset($campaign) && $campaign->id): ?>
|
||||
<a class="btn btn-secondary" href="<?=self::getUrl("Preorder", "Index", ['filter' => ['preordercampaign_id' => $campaign->id]])?>">Filter zurücksetzen</a>
|
||||
<?php else: ?>
|
||||
<a class="btn btn-secondary" href="<?=self::getUrl("Preorder")?>">Filter zurücksetzen</a>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body mb-3">
|
||||
@@ -35,9 +93,11 @@
|
||||
<table class="table table-striped table-hover">
|
||||
<tr>
|
||||
<th>Kampagne</th>
|
||||
<th>Typ</th>
|
||||
<th>Bestelltyp</th>
|
||||
<th>Status</th>
|
||||
<th>Anschlussadresse</th>
|
||||
<th>Kunde</th>
|
||||
<th>Adresse</th>
|
||||
<th>Kontakt</th>
|
||||
<th>Partner</th>
|
||||
<th>Anschluss</th>
|
||||
<th>Erstellt</th>
|
||||
@@ -48,7 +108,7 @@
|
||||
<tr>
|
||||
<td><?=$preorder->campaign->name?></td>
|
||||
<td><?=__($preorder->type, "preorder")?></td>
|
||||
<td><?=($preorder->company) ? $preorder->company : $preorder->firstname." ".$preorder->lastname?></td>
|
||||
<td>Aufgenommen</td>
|
||||
<?php if($preorder->building_id): ?>
|
||||
<td><?=$preorder->building->street?><br /><?=$preorder->building->zip?> <?=$preorder->building->city?></td>
|
||||
<?php elseif($preorder->adb_hausnummer_id): ?>
|
||||
@@ -57,11 +117,21 @@
|
||||
<?=$preorder->adb_hausnummer->hausnummer?><br />
|
||||
<?=($preorder->adb_wohneinheit_id) ? ((string)$preorder->adb_wohneinheit ? $preorder->adb_wohneinheit."<br />" : "") : "<i class='text-pink'><keine Wohneinheit></i><br />"?>
|
||||
<?=$preorder->adb_hausnummer->plz->plz?>
|
||||
<?=$preorder->adb_hausnummer->strasse->ortschaft->name?>
|
||||
<?=$preorder->adb_hausnummer->strasse->gemeinde->name?>
|
||||
</td>
|
||||
<?php else: ?>
|
||||
<td></td>
|
||||
<?php endif; ?>
|
||||
<td>
|
||||
<?=($preorder->company) ? $preorder->company : $preorder->firstname." ".$preorder->lastname?><br />
|
||||
<?=$preorder->street?><br />
|
||||
<?=$preorder->zip?> <?=$preorder->city?>
|
||||
</td>
|
||||
<td>
|
||||
<?=($preorder->phone) ? $preorder->phone."<br />" : ""?>
|
||||
<?=($preorder->email) ? $preorder->email : ""?>
|
||||
</td>
|
||||
|
||||
<td><?=($preorder->partner_id) ? $preorder->partner->getCompanyOrName() : ""?></td>
|
||||
<td><?=($preorder->termination) ? $preorder->termination->code : ""?></td>
|
||||
<td><?=date('d.m.Y H:i', $preorder->create)?></td>
|
||||
@@ -79,4 +149,9 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
$("#filter_type").select2({closeOnSelect: false});
|
||||
$("#filter_status").select2({closeOnSelect: false});
|
||||
</script>
|
||||
<?php include(realpath(dirname(__FILE__)."/../../$mfLayoutPackage")."/footer.php"); ?>
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
<td><?=$camp->network->name?></td>
|
||||
<td><?=$camp->name?></td>
|
||||
<td><?=$camp->area?></td>
|
||||
<td><a href="<?=self::getUrl("Preorder", "Index", ["filter" => ["campaign_id" => $camp->id]])?>"><?=count($camp->preorders)?></a></td>
|
||||
<td><a href="<?=self::getUrl("Preorder", "Index", ["filter" => ["preordercampaign_id" => $camp->id]])?>"><?=count($camp->preorders)?></a></td>
|
||||
<td><?=date('d.m.Y',$camp->from)?></td>
|
||||
<td><?=date('d.m.Y',$camp->to)?></td>
|
||||
<td style="text-align: left; letter-spacing: 4px; font-size: 1.1em;">
|
||||
|
||||
@@ -42,17 +42,15 @@ class PreorderController extends mfBaseController {
|
||||
|
||||
$campaign_filter = [];
|
||||
|
||||
if($filter['campaign_id']) {
|
||||
$campaign_id = $filter['campaign_id'];
|
||||
if($filter['preordercampaign_id']) {
|
||||
$campaign_id = $filter['preordercampaign_id'];
|
||||
if(is_numeric($campaign_id) && $campaign_id > 0) {
|
||||
$campaign = new Preordercampaign($campaign_id);
|
||||
$this->layout()->set("campaign", $campaign);
|
||||
}
|
||||
|
||||
$campaign_filter["preordercampaign_id"] = $campaign_id;
|
||||
}
|
||||
//var_dump($campaign_filter);exit;
|
||||
$preorders = PreorderModel::search($campaign_filter);
|
||||
$preorders = PreorderModel::search($filter);
|
||||
$this->layout()->set("preorders", $preorders);
|
||||
}
|
||||
|
||||
|
||||
@@ -165,6 +165,18 @@ class PreorderModel {
|
||||
}
|
||||
}
|
||||
|
||||
if(array_key_exists("type", $filter)) {
|
||||
$type = $filter['type'];
|
||||
if(is_array($type) && count($type)) {
|
||||
$where .= " AND type IN ('".implode("','",$type)."')";
|
||||
} else {
|
||||
$type = FronkDB::singleton()->escape($filter['type']);
|
||||
if($type) {
|
||||
$where .= " AND type like '%$type%'";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(array_key_exists("ucode", $filter)) {
|
||||
$ucode = FronkDB::singleton()->escape($filter['ucode']);
|
||||
if($ucode) {
|
||||
|
||||
@@ -47,7 +47,7 @@ class PreordercampaignModel {
|
||||
|
||||
$db = FronkDB::singleton();
|
||||
|
||||
$res = $db->select("Preordercampaign", "*", "ORDER BY `create`");
|
||||
$res = $db->select("Preordercampaign", "*", "1=1 ORDER BY name,`create`");
|
||||
if($db->num_rows($res)) {
|
||||
while($data = $db->fetch_object($res)) {
|
||||
$items[] = new Preordercampaign($data);
|
||||
@@ -61,7 +61,7 @@ class PreordercampaignModel {
|
||||
$db = FronkDB::singleton();
|
||||
|
||||
$where = self::getSqlFilter($filter);
|
||||
$res = $db->select("Preordercampaign", "*", "$where ORDER BY `create`");
|
||||
$res = $db->select("Preordercampaign", "*", "$where ORDER BY name,`create`");
|
||||
if($db->num_rows($res)) {
|
||||
$data = $db->fetch_object($res);
|
||||
$item = new Preordercampaign($data);
|
||||
@@ -79,7 +79,7 @@ class PreordercampaignModel {
|
||||
$db = FronkDB::singleton();
|
||||
|
||||
$where = self::getSqlFilter($filter);
|
||||
$res = $db->select("Preordercampaign", "*", "$where ORDER BY `create`");
|
||||
$res = $db->select("Preordercampaign", "*", "$where ORDER BY name,`create`");
|
||||
if($db->num_rows($res)) {
|
||||
while($data = $db->fetch_object($res)) {
|
||||
$items[] = new Preordercampaign($data);
|
||||
|
||||
Reference in New Issue
Block a user