Merge branch 'feature/partner-search-preorder' into 'master'

added partner search to preorder

See merge request fronk/thetool!765
This commit is contained in:
Luca Haid
2024-11-27 11:30:40 +00:00
3 changed files with 38 additions and 10 deletions

View File

@@ -136,15 +136,25 @@
<div class="row">
<div class="col-sm-12 col-md-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($my_campaigns as $c): ?>
<option value="<?=$c->id?>" <?=(isset($campaign) && $c->id == $campaign->id) ? "selected='selected'" : ""?>><?=$c->name?></option>
<?php endforeach; ?>
</select>
</div>
<div class="col-sm-12 col-md-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($my_campaigns as $c): ?>
<option value="<?=$c->id?>" <?=(isset($campaign) && $c->id == $campaign->id) ? "selected='selected'" : ""?>><?=$c->name?></option>
<?php endforeach; ?>
</select>
</div>
<div class="col-sm-12 col-md-2">
<label class="form-label" for="partner_id">Partner</label>
<select name="filter[partner_id]" id="filter_partner_id" class="form-control">
<option value="">Alle</option>
<?php foreach($partners as $partner): ?>
<option value="<?=$partner['partner_id']?>" <?=(isset($filter) && array_key_exists("partner_id", $filter) && $filter["partner_id"] == $partner['partner_id']) ? "selected='selected'" : ""?>><?=$partner['name']?></option>
<?php endforeach; ?>
</select>
</div>
<div class="col-sm-12 col-md-2">
<label class="form-label" for="filter_status">Status</label>

View File

@@ -164,7 +164,7 @@ class PreorderController extends mfBaseController {
}
$this->layout()->set("pagination", $pagination);
$this->layout()->set("preorders", $preorders);
$this->layout()->set("partners", PreorderModel::getAllPartners());
}
private function getPreparedFilter($filter) {

View File

@@ -177,6 +177,24 @@ class PreorderModel {
}
return null;
}
public static function getAllPartners(): array {
$items = [];
$db = FronkDB::singleton();
$res = $db->select("Preorder", "partner_id", "partner_id IS NOT NULL AND partner_id > 0 GROUP BY partner_id");
if($db->num_rows($res)) {
while($data = $db->fetch_object($res)) {
$partner = AddressModel::getOne($data->partner_id);
$items[] = [
"partner_id" => $data->partner_id,
"name" => $partner->getCompanyOrName()
];
}
}
return $items;
}
public static function countWithLogistics($filter) {
$db = FronkDB::singleton();