mirror of
https://bitbucket.org/studiotem/jandl-taskmanager-app.git
synced 2026-10-21 14:29:34 +00:00
no message
This commit is contained in:
1 parent
253d02c167
commit
da05ab44da
2 files changed
+37
-12
No files matched your search
@@ -1051,6 +1051,13 @@ export default {
|
||||
return timesheet;
|
||||
});
|
||||
|
||||
// Filter out existing attachments (from backend) and keep only new File objects
|
||||
// Existing attachments have 'path' property, new files are File instances
|
||||
const newFiles = (this.subtask.files || []).filter(
|
||||
(file) => file instanceof File,
|
||||
);
|
||||
this.subtask.files = newFiles;
|
||||
|
||||
// Convert timeblocks from internal format to BE format for update
|
||||
// Filter out completely empty timeblocks AND timeblocks without all required fields
|
||||
// Pre draft s multiple employees preskočiť - timeblocks sú v employees array
|
||||
@@ -1210,21 +1217,28 @@ export default {
|
||||
},
|
||||
|
||||
_mergeDeadlineTimeDate() {
|
||||
// Override for concept tasks which may not have a deadline time set (check for invalid date)
|
||||
if (
|
||||
isNaN(new Date(this.subtask.deadline).getTime()) ||
|
||||
!this.subtask._deadline_time
|
||||
) {
|
||||
this.subtask.deadline = null;
|
||||
} else {
|
||||
const date = new Date(this.subtask.deadline);
|
||||
const timeParts = this.subtask._deadline_time.split(':');
|
||||
// Check if deadline date is valid
|
||||
const isValidDate = !isNaN(new Date(this.subtask.deadline).getTime());
|
||||
|
||||
if (!isValidDate) {
|
||||
this.subtask.deadline = null;
|
||||
return;
|
||||
}
|
||||
|
||||
const date = new Date(this.subtask.deadline);
|
||||
|
||||
// If time is set, use it; otherwise use default time (23:59) for concepts
|
||||
if (this.subtask._deadline_time) {
|
||||
const timeParts = this.subtask._deadline_time.split(':');
|
||||
date.setHours(parseInt(timeParts[0]));
|
||||
date.setMinutes(parseInt(timeParts[1]));
|
||||
|
||||
this.subtask.deadline = date;
|
||||
} else {
|
||||
// Default time for concepts without time specified
|
||||
date.setHours(23);
|
||||
date.setMinutes(59);
|
||||
}
|
||||
|
||||
this.subtask.deadline = date;
|
||||
},
|
||||
|
||||
_filterValidEmployees(employees, isConcept) {
|
||||
|
||||
@@ -381,7 +381,18 @@ class SubTaskController extends Controller
|
||||
}
|
||||
$data['data']['title'] = isset($request->all()['data']['title']) ? $request->all()['data']['title'] : null;
|
||||
$data['data']['deadline'] = isset($request->all()['data']['deadline']) ? $request->all()['data']['deadline'] : null;
|
||||
$data['data']['estimated_time'] = $request->all()['data']['duration'] ?? $subtask->estimated_time;
|
||||
|
||||
// Pre drafty s viacerými zamestnancami: prepočítaj estimated_time zo všetkých employees
|
||||
if ($isDraftWithMultipleEmployees && $employeesData) {
|
||||
$totalEstimatedTime = 0;
|
||||
foreach ($employeesData as $employee) {
|
||||
$totalEstimatedTime += $employee['duration'] ?? 0;
|
||||
}
|
||||
$data['data']['estimated_time'] = $totalEstimatedTime;
|
||||
} else {
|
||||
$data['data']['estimated_time'] = $request->all()['data']['duration'] ?? $subtask->estimated_time;
|
||||
}
|
||||
|
||||
$data['data']['updated_by'] = User::getUserIdFromBearerToken($request->bearerToken());
|
||||
|
||||
// publikovanie draftu
|
||||
|
||||
Reference in new issue
Block a user