Merge branch 'main' of bitbucket.org:studiotem/jandl-taskmanager-app

This commit is contained in:
Matej Glasnák committed 2026-01-19 15:33:56 +01:00
commit fd86454de9
1 file changed
+17 -5
+17 -5
View File
@@ -157,8 +157,15 @@ class SubTaskController extends Controller
->orderBy('created_at', 'desc'); ->orderBy('created_at', 'desc');
// ak je zadané employee_id, filtrovať podľa neho // ak je zadané employee_id, filtrovať podľa neho
// draft sa zobrazuje: 1) creatorovi (user_id) ALEBO 2) zamestnancom v draft_data
if (isset($parameters['employee_id'])) { if (isset($parameters['employee_id'])) {
$query->where('user_id', $parameters['employee_id']); $employeeId = $parameters['employee_id'];
$query->where(function ($q) use ($employeeId) {
// Creator vidí svoje drafty
$q->where('user_id', $employeeId)
// Alebo zamestnanec je v draft_data
->orWhereRaw("JSON_CONTAINS(draft_data, JSON_OBJECT('id', CAST(? AS UNSIGNED)))", [$employeeId]);
});
} }
return response()->json([ return response()->json([
@@ -497,11 +504,16 @@ class SubTaskController extends Controller
{ {
$subtask = SubTask::find($id); $subtask = SubTask::find($id);
// ak existuje timesheet k subtasku, nemoze sa zmazat // ak existuje timesheet k subtasku, nemoze sa zmazat (okrem draftov)
if ($subtask->timesheets()->exists()) { if ($subtask->timesheets()->exists()) {
return response()->json([ if ($subtask->is_draft) {
'message' => 'Cannot delete subtask with submitted timesheets.', // Pre drafty zmazeme timesheety automaticky
], 400); $subtask->timesheets()->delete();
} else {
return response()->json([
'message' => 'Cannot delete subtask with submitted timesheets.',
], 400);
}
} }
$subtask->timeblocks()->delete(); $subtask->timeblocks()->delete();