Skip to content

Commit

Permalink
Merge pull request #101 from LCOGT/fix/percent-complete-frontend
Browse files Browse the repository at this point in the history
Update percent complete for repeat types in tooltip
  • Loading branch information
eheinrich committed Feb 2, 2020
2 parents dc22f5a + e29c7d6 commit e5b9013
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 11 deletions.
7 changes: 5 additions & 2 deletions static/js/components/observationhistory.vue
Expand Up @@ -101,10 +101,13 @@
}
observation.state = state;
if (observation.fail_reason !== '') {
if (_.isString(observation.fail_reason) && observation.fail_reason !== '') {
observation.fail_reason = '<br/>reason: ' + observation.fail_reason;
} else {
observation.fail_reason = '';
}
if (observation.percent_completed > 0) {
if (_.isFinite(observation.percent_completed) && observation.percent_completed > 0) {
observation.percent_completed = '<br/>percent completed: ' + observation.percent_completed.toFixed(1);
}
else {
Expand Down
44 changes: 35 additions & 9 deletions static/js/request_detail.vue
Expand Up @@ -410,27 +410,53 @@
let fail_reason = '';
for (let csIndex in that.observationData[observationIdx].configuration_statuses) {
let configurationStatus = that.observationData[observationIdx].configuration_statuses[csIndex];
if (!_.isEmpty(configurationStatus.summary)) {
time_completed += configurationStatus.summary.time_completed;
if (fail_reason === '' && configurationStatus.summary.reason !== 'N/A') {
fail_reason = configurationStatus.summary.reason;
}
let summaryExists = !_.isEmpty(configurationStatus.summary);
if (summaryExists) {
fail_reason = that.getFailReason(fail_reason, configurationStatus.summary.reason);
}
// Find the configuration that goes with this configuration status
let configuration;
for (let cIndex in that.request.configurations) {
if (that.request.configurations[cIndex].id === configurationStatus.configuration) {
for (let icIndex in that.request.configurations[cIndex].instrument_configs) {
let instConfig = that.request.configurations[cIndex].instrument_configs[icIndex];
configuration = that.request.configurations[cIndex];
break;
}
}
if (configuration) {
if (_.startsWith(configuration.type, 'REPEAT') && configuration.repeat_duration) {
if (summaryExists) {
let start = new Date(configurationStatus.summary.start);
let end = new Date(configurationStatus.summary.end);
time_completed += (end - start) / 1000;
}
total_time += configuration.repeat_duration;
} else {
if (summaryExists) {
time_completed += configurationStatus.summary.time_completed;
}
for (let icIndex in configuration.instrument_configs) {
let instConfig = configuration.instrument_configs[icIndex];
total_time += instConfig.exposure_time * instConfig.exposure_count;
}
break;
}
}
}
that.observationData[observationIdx].percent_completed = (time_completed / total_time) * 100.0;
let percentCompleted;
if (total_time > 0) {
percentCompleted = (time_completed / total_time) * 100.0;
}
that.observationData[observationIdx].percent_completed = percentCompleted;
that.observationData[observationIdx].fail_reason = fail_reason;
}
});
},
getFailReason: function(currentFailReason, newFailReason) {
let failReason = '';
if (currentFailReason === '' && newFailReason !== 'N/A') {
failReason = newFailReason;
}
return failReason;
},
loadAirmassData: function() {
if (this.hasTarget) {
let that = this;
Expand Down

0 comments on commit e5b9013

Please sign in to comment.