no message

This commit is contained in:
StudioTem committed 2023-09-06 15:45:53 +02:00
1 parent 3b8250db8f
commit 069f5a04e1
2 files changed
+37 -25

No files matched your search

@@ -131,6 +131,42 @@ class MasterTaskController extends Controller
return response()->json($validator->errors(), 400);
}
$mastertask = MasterTask::find($id);
// ak je Master task v stave ukončený, nedovolime update. vynimkou je iba znovuotvorenie mastertasku
if ($mastertask->is_finished == 1 && isset($request->all()['data']['is_finished']) && $request->all()['data']['is_finished'] == 1) {
return response()->json([
'message' => 'Cannot update mastertask that is finished.',
], 400);
}
// ak chcem ukoncit mastertask, ktory nema ani jeden subtask, ktory ma natrackovany cas, tak to nedovolim
if (isset($request->all()['data']['is_finished']) && $request->all()['data']['is_finished'] == 1) {
$atLeastOneSubtaskHasTimesheet = false;
foreach ($mastertask->subtasks as $subtask) {
if ($subtask->timesheets()->exists()) {
$atLeastOneSubtaskHasTimesheet = true;
}
}
if (!$atLeastOneSubtaskHasTimesheet)
return response()->json([
'message' => 'Finishing mastertask is only possible where at least one subtask contains timesheet',
], 400);
}
// ukoncenie master tasku
if ($mastertask->is_finished == 0 && isset($request->all()['data']['is_finished']) && $request->all()['data']['is_finished'] == 1) {
$mastertask->is_finished = 1;
$mastertask->save();
return response()->json([
'message' => 'Master Task finished successfully',
'mastertask' => $mastertask
]);
}
// validacia na max 50MB size pre attachmenty. neslo dat do klasickeho laravel validation, tak je to separe
if ($files = $request->file('data')) {
foreach ( $files['files'] as $file ) {
@@ -154,30 +190,6 @@ class MasterTaskController extends Controller
$request->merge($data);
$mastertask = MasterTask::find($id);
// ak je Master task v stave ukončený, nedovolime update. vynimkou je iba znovuotvorenie mastertasku
if ($mastertask->is_finished == 1 && isset($request->all()['data']['is_finished']) && $request->all()['data']['is_finished'] == 1) {
return response()->json([
'message' => 'Cannot update mastertask with is_finished 1.',
], 400);
}
// ak chcem ukoncit mastertask, ktory nema ani jeden subtask, ktory ma natrackovany cas, tak to nedovolim
if (isset($request->all()['data']['is_finished']) && $request->all()['data']['is_finished'] == 1) {
$atLeastOneSubtaskHasTimesheet = false;
foreach ($mastertask->subtasks as $subtask) {
if ($subtask->timesheets()->exists()) {
$atLeastOneSubtaskHasTimesheet = true;
}
}
if (!$atLeastOneSubtaskHasTimesheet)
return response()->json([
'message' => 'Finishing mastertask is only possible where at least one subtask contains timesheet',
], 400);
}
$mastertask->update($request->all()['data']);