Blame view

app/partials/scheduler/scheduler.controller.js 7.47 KB
feacde5ff   Rishav   setup acuefuel in...
1
  'use strict';
a55ef20b5   Swarn Singh   schedular added
2
  angular.module('acufuel')
feacde5ff   Rishav   setup acuefuel in...
3

4728ddfdd   Swarn Singh   schedule module f...
4
  .controller('schedulerController', ['$scope','$compile', 'uiCalendarConfig', 'schedulerService', function($scope, $compile, uiCalendarConfig, schedulerService) {
a49ef5361   Kuldeep Arora   dashboard & Sched...
5
      
4728ddfdd   Swarn Singh   schedule module f...
6
    $scope.showLoader = true;
a49ef5361   Kuldeep Arora   dashboard & Sched...
7
8
9
     getEventsList();
    
    /*---get events on calendar---*/
4728ddfdd   Swarn Singh   schedule module f...
10
11
12
    $scope.events = [];
    function getEventsList(){
      schedulerService.getEvents().then(function(result) {
7f6e3b1df   Kuldeep Arora   final code
13
        console.log("===events==",result)
565570086   Kuldeep Arora   highcharts(MFS,CS...
14
        
4728ddfdd   Swarn Singh   schedule module f...
15
        for (var i = 0; i < result.length; i++) {
613acf859   Anchit Jindal   fixed schedular i...
16
          var newTime = new Date(result[i].deployDate);
613acf859   Anchit Jindal   fixed schedular i...
17
18
19
20
21
22
          var dmonth = newTime.getUTCMonth() + 1; //months from 1-12
          var dday = newTime.getUTCDate();
          var dyear = newTime.getUTCFullYear();
          var hours = newTime.getHours();
          var min = newTime.getMinutes();
          var sec = newTime.getSeconds();
ea94f521f   Kuldeep Arora   scheduler bug fixed
23

2d9601181   Kuldeep Arora   scheduler design
24
25
26
27
28
          $scope.events.push({
            'id': result[i].id,
            'title': result[i].aircraft +'
  ' + '(' + result[i].make +'/' + result[i].model + ')' + '
  ' + 'for' + ' ' + result[i].requestedVolume + ' ' + 'gal.' + ' ' +'@' + ' ' +'$'+result[i].priceQuote,
5e800f325   Anchit Jindal   fixed schedular i...
29
            'start': dyear+'-'+dmonth+'-'+dday + ' ' + hours + ':' + min + ':' + sec
2d9601181   Kuldeep Arora   scheduler design
30
              
4728ddfdd   Swarn Singh   schedule module f...
31
          })
ea7d14ca1   Anchit Jindal   fixed schedular i...
32
        //  $scope.showEventsList();
a49ef5361   Kuldeep Arora   dashboard & Sched...
33
           $scope.showLoader = false;
a49ef5361   Kuldeep Arora   dashboard & Sched...
34
       }
ea94f521f   Kuldeep Arora   scheduler bug fixed
35
           
961a97a2f   Kuldeep Arora   Enhancement in de...
36
          $('#my-calendar').fullCalendar('removeEvents');
ea7d14ca1   Anchit Jindal   fixed schedular i...
37
          $('#my-calendar').fullCalendar('addEventSource',$scope.events);
ea94f521f   Kuldeep Arora   scheduler bug fixed
38
39
40
          $('#my-calendar').fullCalendar('refetchEvents');
  
         //$scope.eventSources = [$scope.events, $scope.eventSource, $scope.eventsF];
ea7d14ca1   Anchit Jindal   fixed schedular i...
41
      
ea7d14ca1   Anchit Jindal   fixed schedular i...
42
      // $scope.newFuelPricing[i].futureFuelPricing.deployDate = dmonth+'/'+dday+'/'+dyear;
a49ef5361   Kuldeep Arora   dashboard & Sched...
43
44
     })
  }
4728ddfdd   Swarn Singh   schedule module f...
45

4728ddfdd   Swarn Singh   schedule module f...
46
47
48
  
    $scope.newEvent = {};
    $scope.addNewEvent = function(){
4728ddfdd   Swarn Singh   schedule module f...
49
50
51
52
53
54
55
      $scope.showLoader = true;
      if ($scope.newEvent.deployDate != undefined) {
        $scope.newEvent.deployDate = new Date($scope.newEvent.deployDate);
        $scope.newEvent.deployDate = $scope.newEvent.deployDate.getTime();
      }
      //var data = 'aircraft='+$scope.newEvent.aircraft+'&deployDate='+$scope.newEvent.deployDate;
      schedulerService.addNewEventService($scope.newEvent).then(function(response){
4728ddfdd   Swarn Singh   schedule module f...
56
57
        $scope.newEvent = {};
        $('#addEvent').modal('hide');
c622f8e75   Swarn Singh   drog-drop and upd...
58
        $scope.events = [];
4728ddfdd   Swarn Singh   schedule module f...
59
60
61
62
63
64
65
        getEventsList();
      })
    }
  
    $scope.cancelAdd = function(){
      $scope.newEvent = {};
    }
956e0d9ed   Swarn Singh   contact view effe...
66

4728ddfdd   Swarn Singh   schedule module f...
67
68
    $scope.editData = {};
    $scope.editEvent = function(data){
4728ddfdd   Swarn Singh   schedule module f...
69
      $scope.editData = data;
4728ddfdd   Swarn Singh   schedule module f...
70
      $('#editEvent').modal('show');
4728ddfdd   Swarn Singh   schedule module f...
71
    }
956e0d9ed   Swarn Singh   contact view effe...
72
73
74
75
    $scope.updateEvent = function(){
      $scope.showLoader = true;
      $scope.updatedData = {};
      $scope.updatedData.id = $scope.editData.id;
956e0d9ed   Swarn Singh   contact view effe...
76
77
78
79
80
81
      $scope.updatedData.deployDate = $scope.editData.start;
      if ($scope.updatedData.deployDate != undefined) {
        $scope.updatedData.deployDate = new Date($scope.updatedData.deployDate);
        $scope.updatedData.deployDate = $scope.updatedData.deployDate.getTime();
      }
      schedulerService.updateScheduledEvent($scope.updatedData).then(function(response){
956e0d9ed   Swarn Singh   contact view effe...
82
83
84
85
86
        $scope.updatedData = {};
        $('#editEvent').modal('hide');
        toastr.success('Updated Successfully', {
          closeButton: true
        })
c622f8e75   Swarn Singh   drog-drop and upd...
87
        $scope.events = [];
956e0d9ed   Swarn Singh   contact view effe...
88
89
90
        getEventsList();
      })
    }
4728ddfdd   Swarn Singh   schedule module f...
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
  
  
    /*  code for calendar  */
  
    var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();
  
    $scope.changeTo = 'Hungarian';
  
    $scope.eventSource = {};
  
    $scope.eventsF = function (start, end, timezone, callback) {
      var s = new Date(start).getTime() / 1000;
      var e = new Date(end).getTime() / 1000;
      var m = new Date(start).getMonth();
      var events = [{title: 'Feed Me ' + m,start: s + (50000),end: s + (100000),allDay: false, className: ['customFeed']}];
      callback(events);
    };
  
    $scope.calEventsExt = {
     color: '#f00',
     textColor: 'yellow',
     events: []
   };
  
   $scope.alertOnEventClick = function( date, jsEvent, view){
    $scope.alertMessage = (date.title + ' was clicked ');
  };
  
  $scope.alertOnDrop = function(event, delta, revertFunc, jsEvent, ui, view){
        var dmonth = event.start._d.getUTCMonth() + 1; //months from 1-12
        var dday = event.start._d.getUTCDate();
        var dyear = event.start._d.getUTCFullYear();
754a525b9   Anchit Jindal   fixed schedular i...
126
127
128
129
130
        var setDeploy = new Date();
        var hours = setDeploy.getHours();
        var min = setDeploy.getMinutes();
        var sec = setDeploy.getSeconds();
        
4728ddfdd   Swarn Singh   schedule module f...
131
132
        for (var i = 0; i < $scope.events.length; i++) {
          if ($scope.events[i].id == event.id) {
c622f8e75   Swarn Singh   drog-drop and upd...
133
134
135
136
137
            //$scope.events[i].start = dyear+'-'+dmonth+'-'+dday;
            $scope.showLoader = true;
            $scope.updatedDataDrop = {};
            $scope.updatedDataDrop.id = $scope.events[i].id;
            $scope.updatedDataDrop.aircraft = $scope.events[i].title;
754a525b9   Anchit Jindal   fixed schedular i...
138
            $scope.updatedDataDrop.deployDate = dyear+'-'+dmonth+'-'+dday + ' ' + hours + ':' + min + ':' + sec;
c622f8e75   Swarn Singh   drog-drop and upd...
139
140
141
142
143
            if ($scope.updatedDataDrop.deployDate != undefined) {
              $scope.updatedDataDrop.deployDate = new Date($scope.updatedDataDrop.deployDate);
              $scope.updatedDataDrop.deployDate = $scope.updatedDataDrop.deployDate.getTime();
            }
            schedulerService.updateScheduledEvent($scope.updatedDataDrop).then(function(response){
c622f8e75   Swarn Singh   drog-drop and upd...
144
145
146
147
148
149
150
151
              $scope.updatedDataDrop = {};
              $('#editEvent').modal('hide');
              toastr.success('Updated Successfully', {
                closeButton: true
              })
              $scope.events = [];
              getEventsList();
            })
a55ef20b5   Swarn Singh   schedular added
152
          }
03cf7c388   Swarn Singh   minor changes due...
153
        }
4728ddfdd   Swarn Singh   schedule module f...
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
        $scope.alertMessage = ('Event Droped to make dayDelta ' + delta);
      };
      
      $scope.alertOnResize = function(event, delta, revertFunc, jsEvent, ui, view ){
       $scope.alertMessage = ('Event Resized to make dayDelta ' + delta);
     };
  
     $scope.addRemoveEventSource = function(sources,source) {
      var canAdd = 0;
      angular.forEach(sources,function(value, key){
        if(sources[key] === source){
          sources.splice(key,1);
          canAdd = 1;
        }
      });
      if(canAdd === 0){
        sources.push(source);
      }
    };
  
    $scope.addEvent = function() {
      $scope.events.push({
        title: 'Open Sesame',
        start: new Date(y, m, 28),
        end: new Date(y, m, 29),
        className: ['openSesame']
      });
    };
  
    $scope.remove = function(index) {
      $scope.events.splice(index,1);
    };
  
    $scope.changeView = function(view,calendar) {
      uiCalendarConfig.calendars[calendar].fullCalendar('changeView',view);
    };
  
    $scope.renderCalender = function(calendar) {
      if(uiCalendarConfig.calendars[calendar]){
        uiCalendarConfig.calendars[calendar].fullCalendar('render');
      }
    };
  
    $scope.eventRender = function( event, element, view ) { 
      element.attr({'tooltip': event.title,
       'tooltip-append-to-body': true});
      $compile(element)($scope);
    };
  
    $scope.uiConfig = {
      calendar:{
        height: 450,
        editable: true,
        droppable: true,
        drop: function (event, delta, revertFunc, jsEvent, ui, view) {
        },
        header:{
          right: 'month basicWeek basicDay',
          center: 'title',
          left: 'prev,next, today'
        },
        eventClick: $scope.alertOnEventClick,
        eventDrop: $scope.alertOnDrop,
        eventResize: $scope.alertOnResize,
        eventRender: $scope.eventRender
      }
    };
  
    $scope.addEvent = function(index) {
      //console.log('INDEX', index);
      //console.log('EVENTS', $scope.eventSources);
a49ef5361   Kuldeep Arora   dashboard & Sched...
225
      // $scope.events.push($scope.eventList[index]);
4728ddfdd   Swarn Singh   schedule module f...
226
    }
a49ef5361   Kuldeep Arora   dashboard & Sched...
227
228
229
230
231
   
    /*$scope.showEventsList = function(){
      console.log('testing', $scope.eventsF);
      
    };*/
961a97a2f   Kuldeep Arora   Enhancement in de...
232

ea94f521f   Kuldeep Arora   scheduler bug fixed
233
      //$scope.eventSources = [$scope.events, $scope.eventSource, $scope.eventsF];
961a97a2f   Kuldeep Arora   Enhancement in de...
234
      //$scope.eventSources2 = [$scope.calEventsExt, $scope.eventsF, $scope.events];
4728ddfdd   Swarn Singh   schedule module f...
235
  }]);
feacde5ff   Rishav   setup acuefuel in...
236