91bac5697b1d09aeac4ca4e264422a4363f98969
[vid.git] / vid-app-common / src / main / webapp / app / vid / scripts / modals / change-management-manual-tasks-controller / change-management-manual-tasks.controller.js
1 (function () {
2     'use strict';
3
4     appDS2.controller("changeManagementManualTasksController", ["$uibModalInstance", "jobInfo", "MsoService", "COMPONENT",
5         "$log", changeManagementManualTasksController]);
6
7     function changeManagementManualTasksController($uibModalInstance, jobInfo, MsoService, COMPONENT, $log) {
8         var vm = this;
9
10         vm.manualTasks = [];
11         vm.MANUAL_TASKS = COMPONENT.MANUAL_TASKS;
12         var init = function() {
13             if (jobInfo && jobInfo.details) {
14                 vm.content = jobInfo.details;
15             } else {
16                 vm.content = "The VNF change alerted due to unknown reason.";
17             }
18
19             loadAvailableTasks(jobInfo.job.requestId);
20
21         };
22
23         function loadAvailableTasks(requestId) {
24             MsoService.getManualTasks(requestId)
25                 .then(function(response) {
26                     vm.task = response.data[0];
27                     vm.manualTasks = vm.task && vm.task.validResponses;
28                 })
29                 .catch(function(error) {
30                     $log.error(error);
31                 });
32         }
33
34         vm.completeTask = function(task) {
35             MsoService.completeTask(vm.task.taskId, task)
36                 .then(function(response) {
37                     vm.manualTasks = response.data;
38                     $uibModalInstance.close(task + " action completed successfully.");
39                 })
40                 .catch(function(error) {
41                     $uibModalInstance.close(task + " action failed.");
42                     $log.error(error);
43                 });
44         };
45
46         vm.close = function () {
47             $uibModalInstance.close();
48         };
49
50         vm.isTaskAvailable = function(task) {
51             return vm.manualTasks.includes(task);
52         };
53
54         init();
55     }
56 })();