fixed workorder stuff

This commit is contained in:
Luca Haid
2025-11-12 14:46:19 +01:00
parent 0b88c73bcf
commit d084235f88

View File

@@ -167,41 +167,39 @@ class WorkorderBaseController extends TTCrud
$filters['preordercampaign_id'] = $tenantCampaigns;
$newPreorders = PreorderModel::searchActive($filters);
foreach ($newPreorders as $preorder) {
$existingWorkorder = WorkorderModel::getFirst(['preorderId' => $preorder->id]);
foreach ($newPreorders as $preorder) {
$existingWorkorder = (array) WorkorderModel::getFirst(['preorderId' => $preorder->id]);
if ($existingWorkorder) {
if ($existingWorkorder->status === 'archived') {
$oldStatus = $existingWorkorder->status;
if ($existingWorkorder) {
if ($existingWorkorder['status'] === 'archived') {
$oldStatus = $existingWorkorder['status'];
$new = (array) $existingWorkorder;
$new = (array) $existingWorkorder;
$new['status'] = 'new';
$new['companyId'] = null;
$new['civilEngineeringCompanyId'] = null;
$new['deadlineDate'] = null;
$new['appointmentDate'] = null;
$new['clusterId'] = $preorder->preordercampaign_id;
$new['status'] = 'new';
$new['companyId'] = null;
$new['civilEngineeringCompanyId'] = null;
$new['deadlineDate'] = null;
$new['appointmentDate'] = null;
$new['clusterId'] = $preorder->preordercampaign_id;
WorkorderModel::update($new);
WorkorderJournalModel::create([
'workorderId' => $existingWorkorder->id,
'text' => 'Arbeitsauftrag wurde automatisch reaktiviert, da die zugehörige Vorbestellung wieder den Kriterien entspricht.',
'statusChange' => $this->getStatusText($oldStatus) . " -> " . $this->getStatusText('new'),
'create' => time(),
'createBy' => 1,
]);
}
} else {
WorkorderModel::create([
'preorderId' => $preorder->id,
'clusterId' => $preorder->preordercampaign_id,
'status' => 'new',
'create' => time(),
'createBy' => 1
]);
}
}
WorkorderJournalModel::create([
'workorderId' => $existingWorkorder['id'],
'text' => 'Arbeitsauftrag wurde automatisch reaktiviert, da die zugehörige Vorbestellung wieder den Kriterien entspricht.',
'statusChange' => $this->getStatusText($oldStatus) . " -> " . $this->getStatusText('new'),
'create' => time(),
'createBy' => 1,
]);
}
} else {
WorkorderModel::create([
'preorderId' => $preorder->id,
'clusterId' => $preorder->preordercampaign_id,
'status' => 'new',
'create' => time(),
'createBy' => 1
]);
}
}
}
file_put_contents($lockFile, time());
}