fixed bugs

This commit is contained in:
Luca Haid
2025-09-08 14:43:43 +02:00
parent 090ed349ce
commit 4bea970a6b
2 changed files with 18 additions and 6 deletions

View File

@@ -10,6 +10,7 @@ class WorkorderAdminController extends WorkorderBaseController
protected array $columns = [
['key' => 'id', 'text' => 'Auftrags-Nr.', 'table' => ['sortable' => true, 'filter' => 'numberRange']],
['key' => 'netOwnerId', 'text' => 'Netzeigentümer', 'modal' => false, 'table' => ['filter' => 'select'], 'required' => false],
['key' => 'preordercampaign_id', 'text' => 'Kampagne', 'modal' => false, 'table' => ['filter' => 'select', 'sortable' => true]],
['key' => 'preorderInfo', 'text' => 'Kunde', 'modal' => false, 'table' => ['filter' => 'search', 'sortable' => false]],
['key' => 'companyName', 'text' => 'Firma', 'modal' => false, 'table' => ['filter' => 'search', 'sortable' => true]],
['key' => 'rimo_fcp_name', 'text' => 'FCP', 'modal' => false, 'table' => ['filter' => 'search', 'sortable' => true]],
@@ -27,6 +28,7 @@ class WorkorderAdminController extends WorkorderBaseController
$preorderInfoColIdx = array_search('preorderInfo', array_column($this->columns, 'key'));
array_splice($this->columns, $preorderInfoColIdx + 1, 0, [$this->statusColumn]);
$netOwnerColIdx = array_search('netOwnerId', array_column($this->columns, 'key'));
$preCamColIdx = array_search('preordercampaign_id', array_column($this->columns, 'key'));
if ($netOwnerColIdx !== false) {
if ($this->user->isAdmin()) {
@@ -36,6 +38,16 @@ class WorkorderAdminController extends WorkorderBaseController
$this->columns[$netOwnerColIdx]['table'] = false;
}
}
$campaigns = Helper::getPreorderCampaignFromUser($this->user, true);
if ($preCamColIdx !== false) {
$this->columns[$preCamColIdx]['table']['filterOptions'] = array_map(fn($c) => ['value' => $c->id, 'text' => $c->name], $campaigns);
if (!$this->user->isAdmin() && count($campaigns) === 1) {
$this->columns[$preCamColIdx]['table']['defaultFilter'] = $campaigns[0]->id;
}
}
}
//region ACTIONS
@@ -146,9 +158,9 @@ class WorkorderAdminController extends WorkorderBaseController
if ($workorder->status !== 'documented') self::sendError("Die Dokumentation muss zuerst von der Firma als fertig markiert werden.");
$preorder = new Preorder($workorder->preorderId);
$preorderCampaign = new Preordercampaign($preorder->campaign_id);
$preorderCampaign = new Preordercampaign($preorder->preordercampaign_id);
$network = new Network($preorderCampaign->network_id);
if ($preorder->id && $network->owner_id == 4807) {
if ($preorder->id && $network->owner_id == 4807) {
$preorder->status_id = 15;
$preorder->edit_by = $this->user->id;
$preorder->save();
@@ -253,10 +265,11 @@ class WorkorderAdminController extends WorkorderBaseController
'workorderId' => $workorder->id, 'text' => "Firma '{$company->name}' wurde zugewiesen.", 'create' => time(), 'createBy' => $userId,
]);
$preorder = new Preorder($workorder->preorderId);
$preorderCampaign = new Preordercampaign($preorder->campaign_id);
$preorderCampaign = new Preordercampaign($preorder->preordercampaign_id);
$network = new Network($preorderCampaign->network_id);
if ($preorder->id && $network->owner_id == 4807) {
if ($preorder->id && $network->owner_id == 4807) {
$preorder->status_id = 10; // In Ausführung
$preorder->edit_by = $this->user->id;
$preorder->save();