diff --git a/SAS/TMSS/frontend/tmss_webapp/src/layout/sass/_timeline.scss b/SAS/TMSS/frontend/tmss_webapp/src/layout/sass/_timeline.scss index 646313a71923a83eccdd036824d53647e4caaea1..e63ad4e4d174221e96044ceee74ab094a2b6e53e 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/layout/sass/_timeline.scss +++ b/SAS/TMSS/frontend/tmss_webapp/src/layout/sass/_timeline.scss @@ -594,7 +594,7 @@ $vh: 1vh; } .legend-sunset { - background-color: #FFB74D; + background-color: #F5D49A; color: black; } diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/WeekView.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/WeekView.js index 86c96057710e03743afebb472752b0ea92f09d40..2d4836c73b013dd9787f6ef50db9bc8d482f9198 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/WeekView.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/WeekView.js @@ -294,7 +294,7 @@ export default function WeekView() { if (summaryItem.type === "RESERVATION") { fetchReservationSummaryInformation(summaryItem.id, setSummarySettings).catch(e => console.error("Couldn't retrieve reservations details for id: ", summaryItem.id, e)) } else { //a Scheduling Unit summary is selected - fetchSUSummaryInformation(summaryItem.id, setSummarySettings).catch(e => console.error("Couldn't retrieve summary details for id: ", summaryItem.id, e)) + fetchSUSummaryInformation(summaryItem.id, setSummarySettings,summaryItem.item).catch(e => console.error("Couldn't retrieve summary details for id: ", summaryItem.id, e)) } } }, [summaryItem]); diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/data/week.view.data.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/data/week.view.data.js index 7d4e3957ce544d383ba83cb88b63cb3cd5f7117b..dbced405280cc5c71bed5ed8c0bc0de30bd88d7c 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/data/week.view.data.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/data/week.view.data.js @@ -108,29 +108,19 @@ export function GetLstShiftinSeconds(lst, UTCTimeNow) { return shift; } -async function addNestedBlueprintInformation(suBluePrint) { - let missingStations = [] - for (let taskIndex = 0; taskIndex < suBluePrint.task_blueprints.length; taskIndex++) { - const task = suBluePrint.task_blueprints[taskIndex] - let subtasksSpecifications = [] - for (const subtaskId of task.subtasks_ids) { - subtasksSpecifications.push(await TaskService.getSubtaskDetails(subtaskId, "specifications_doc")) - const foundMissingStations = await TaskService.getSubtaskMissingStations(subtaskId); - missingStations = missingStations.concat(foundMissingStations.filter((item) => missingStations.indexOf(item) < 0)) - } - suBluePrint.task_blueprints[taskIndex].subtasks = subtasksSpecifications - } - const timelineCommonUtils = new TimelineCommonUtils(); - suBluePrint.stations = timelineCommonUtils.getSUStations(suBluePrint); - suBluePrint.missingStations = missingStations - const projectInfo = await ScheduleService.getSchedulingSet(suBluePrint.draft.scheduling_set_id, "project_id") - suBluePrint.project = projectInfo.project_id; +// we get the missing_stations and the stations from the already present in memory information from the timeline view +// The Deeper subtasks information is removed. +async function addNestedBlueprintInformation(suBluePrint,inMemoryItem) { + let missingStations = inMemoryItem.missing_stations; + suBluePrint.stations = inMemoryItem.specified_stations; + suBluePrint.missingStations = missingStations + suBluePrint.project = inMemoryItem.project; } -export async function fetchSUSummaryInformation(id, setSummarySettings) { +export async function fetchSUSummaryInformation(id, setSummarySettings, inMemoryItem) { let suBluePrint = await ScheduleService.getBlueprintByschedulingUnitId(id, "task_blueprints,draft") - await addNestedBlueprintInformation(suBluePrint); + await addNestedBlueprintInformation(suBluePrint,inMemoryItem); const suConstraintTemplate = await ScheduleService.getSchedulingConstraintTemplateById(suBluePrint.scheduling_constraints_template_id) diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/helpers/timeline.renderer.helper.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/helpers/timeline.renderer.helper.js index 8e5979d94ee2e6926cb90089ac11c24624dae51b..612aa7b63ddfab2a6c62a40376044b4671f2a499 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/helpers/timeline.renderer.helper.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/helpers/timeline.renderer.helper.js @@ -105,7 +105,7 @@ function renderSUItem({ itemContext, getItemProps }, setPopPositionCallback, setMouseOverItemCallback, setSummaryItemCallback) { - const scheduleMethodBorder = item.scheduler === "dynamic" ? "1.5px dashed black" : "1.5px solid black" + const scheduleMethodBorder = item.scheduler === "dynamic" ? "1.5px dashed black " : "1.5px solid black" let itemDivStyle = getItemDivStyle(itemContext, item); itemDivStyle.fontWeight = 600 itemDivStyle.border = scheduleMethodBorder @@ -117,7 +117,7 @@ function renderSUItem({ style: itemDivStyle, className: `${item.status ? 'su-' + item.status : ''}`, })} - onMouseDown={() => setSummaryItemCallback({ id: item.suId, type: item.type })} + onMouseDown={() => setSummaryItemCallback({ id: item.suId, type: item.type,item:item })} onMouseOver={(evt) => { hoverOverItem(evt, item, setPopPositionCallback, setMouseOverItemCallback) }}