no message

This commit is contained in:
StudioTem committed 2024-03-27 10:24:44 +01:00
1 parent 3f55219a67
commit 3c799743d3
2 files changed
+117 -106

No files matched your search

@@ -21,12 +21,14 @@ class MasterTaskController extends Controller
$mastertasks = MasterTask::select('*');
// filtrovanie na zaklade parametrov
foreach ( $parameters as $field => $value ) {
if (!$value) continue;
foreach ($parameters as $field => $value) {
if ( ! $value) {
continue;
}
switch ($field) {
case 'month':
$mastertasks->where('created_at', 'like', $parameters['year'] . '-' . $parameters['month'] . '-%');
$mastertasks->where('created_at', 'like', $parameters['year'] . '-' . $parameters['month'] . '-%');
break;
case 'employee_id':
@@ -47,12 +49,12 @@ class MasterTaskController extends Controller
});
break;
// vracia vsetky mastertasky v jednoduchom formate pre potreby dropdownu na FE (problem bol dlhy load time na zaciatku appky)
// vracia vsetky mastertasky v jednoduchom formate pre potreby dropdownu na FE (problem bol dlhy load time na zaciatku appky)
case 'simple':
$mastertasks = MasterTask::select('id', 'title', 'project_id', 'color');
break;
// year sa pouziva iba pri month
// year sa pouziva iba pri month
case 'year':
break;
@@ -74,39 +76,40 @@ class MasterTaskController extends Controller
$created_by = User::getUserIdFromBearerToken($request->bearerToken());
$validator = Validator::make($request->all(), [
'data.name' => 'required',
'data.name' => 'required',
'data.description' => 'required',
'data.duration' => 'required',
'data.deadline' => 'required',
'data.project_id' => 'required',
'data.employees' => 'required',
'data.duration' => 'required',
'data.deadline' => 'required',
'data.project_id' => 'required',
'data.employees' => 'required',
]);
if($validator->fails()){
if ($validator->fails()) {
return response()->json($validator->errors(), 400);
}
// 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 ) {
if ($file->getSize() > 52428800)
foreach ($files['files'] as $file) {
if ($file->getSize() > 52428800) {
return response()->json([
'files' => 'File size must be less than 50MB',
], 400);
}
}
}
// upratanie requestu, pretoze frontend pouziva inu nomenklaturu fieldov ako appka
$data['data'] = $request->all()['data'];
$data['data']['title'] = $request->all()['data']['name'];
$data['data'] = $request->all()['data'];
$data['data']['title'] = $request->all()['data']['name'];
$data['data']['estimated_time'] = $request->all()['data']['duration'];
$data['data']['created_by'] = $created_by;
$data['data']['created_by'] = $created_by;
foreach ( $data['data']['employees'] as $key => $employee ) {
$data['data']['employees'][$key]['user_id'] = $employee['id'];
foreach ($data['data']['employees'] as $key => $employee) {
$data['data']['employees'][$key]['user_id'] = $employee['id'];
$data['data']['employees'][$key]['estimated_time'] = $employee['duration'];
$data['data']['employees'][$key]['created_by'] = $created_by;
$data['data']['employees'][$key]['created_by'] = $created_by;
}
$request->merge($data);
@@ -121,7 +124,7 @@ class MasterTaskController extends Controller
}
return response()->json([
'message' => 'Master Task created successfully',
'message' => 'Master Task created successfully',
'mastertask' => $mastertask
], 201);
}
@@ -131,21 +134,20 @@ class MasterTaskController extends Controller
$created_by = User::getUserIdFromBearerToken($request->bearerToken());
$validator = Validator::make($request->all(), [
'data.name' => 'required',
'data.name' => 'required',
'data.description' => 'required',
'data.duration' => 'required',
'data.deadline' => 'required',
'data.project_id' => 'required',
'data.duration' => 'required',
'data.deadline' => 'required',
'data.project_id' => 'required',
]);
if ($validator->fails()){
if ($validator->fails()) {
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)) {
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);
@@ -157,7 +159,7 @@ class MasterTaskController extends Controller
$mastertask->save();
return response()->json([
'message' => 'Master Task opened successfully',
'message' => 'Master Task opened successfully',
'mastertask' => $mastertask
]);
}
@@ -172,41 +174,42 @@ class MasterTaskController extends Controller
}
}
if (!$atLeastOneSubtaskHasTimesheet)
if ( ! $atLeastOneSubtaskHasTimesheet) {
return response()->json([
'message' => 'Finishing mastertask is only possible where at least one subtask contains timesheet',
], 400);
}
$mastertask->is_finished = 1;
$mastertask->save();
return response()->json([
'message' => 'Master Task finished successfully',
'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 ) {
if ($file->getSize() > 52428800)
foreach ($files['files'] as $file) {
if ($file->getSize() > 52428800) {
return response()->json([
'files' => 'File size must be less than 50MB',
], 400);
}
}
}
// upratanie requestu, pretoze frontend pouziva inu nomenklaturu fieldov ako appka
$data['data'] = $request->all()['data'];
$data['data']['title'] = $request->all()['data']['name'];
$data['data'] = $request->all()['data'];
$data['data']['title'] = $request->all()['data']['name'];
$data['data']['estimated_time'] = $request->all()['data']['duration'];
foreach ( $data['data']['employees'] as $key => $employee ) {
$data['data']['employees'][$key]['user_id'] = $employee['id'];
foreach ($data['data']['employees'] as $key => $employee) {
$data['data']['employees'][$key]['user_id'] = $employee['id'];
$data['data']['employees'][$key]['estimated_time'] = $employee['duration'];
$data['data']['employees'][$key]['created_by'] = $created_by;
$data['data']['employees'][$key]['created_by'] = $created_by;
}
$request->merge($data);
@@ -238,7 +241,7 @@ class MasterTaskController extends Controller
// $mastertask->subtasks()->createMany($request->all()['data']['employees']);
return response()->json([
'message' => 'Master Task updated successfully',
'message' => 'Master Task updated successfully',
'mastertask' => $mastertask
]);
}
@@ -258,7 +261,7 @@ class MasterTaskController extends Controller
$mastertask->deleteAttachments();
foreach ( $mastertask->subtasks as $subtask ) {
foreach ($mastertask->subtasks as $subtask) {
$subtask->timeblocks()->delete();
}
@@ -267,7 +270,7 @@ class MasterTaskController extends Controller
$mastertask->delete();
return response()->json([
'message' => 'Master Task deleted successfully.',
'message' => 'Master Task deleted successfully.',
'mastertask' => $mastertask
]);
}