Blame view

app/partials/customers/customers.controller.js 10.9 KB
feacde5ff   Rishav   setup acuefuel in...
1
2
3
4
  'use strict';
  
   //Load controller
    angular.module('acufuel')
eefc1c74d   Swarn Singh   minor updates
5
  	.controller('customersController', ['$scope', '$rootScope', '$uibModal', '$filter', '$http', '$state', 'CustomersService', 'ViewCompanyService', 'NgTableParams', customersController]);
feacde5ff   Rishav   setup acuefuel in...
6

eefc1c74d   Swarn Singh   minor updates
7
   	function customersController($scope, $rootScope, $uibModal, $filter, $http, $state, CustomersService, ViewCompanyService, NgTableParams) {
4bb02bb84   Rishav   new integration w...
8
9
10
  		$(document).ready(function() {
  		    $('#example').DataTable();
  		});
a7a7cfeca   Rishav Singla   fuel vendor page ...
11
  		$scope.userProfileId = JSON.parse(localStorage.getItem('userProfileId'))
7152ff131   Rishav   model handle
12
13
  		$scope.reset2 = function(){
  			$("input").val("");
49676befb   Anchit Jindal   new changes applied
14
  			$scope.removeMarginValidation();
7152ff131   Rishav   model handle
15
16
  		}
  		
4bb02bb84   Rishav   new integration w...
17
18
19
  		$scope.data = {};
  		$scope.aircraft = {};
  		$scope.data.activate = true;
d24318592   Rishav   changes and new i...
20
  		$scope.showLoader = false;
b6f0311a3   Rishav   get Company api i...
21
  		getAllCompanies();
eefc1c74d   Swarn Singh   minor updates
22
  		/*function getAllCompanies(){
b6f0311a3   Rishav   get Company api i...
23
  			CustomersService.getAllCompanies().then(function(result) {
b6f0311a3   Rishav   get Company api i...
24
  				$scope.companyList = result;
3a9f4472b   Rishav   Implement contact...
25
26
27
  				for(var i=0; i<$scope.companyList.length; i++){
  					$scope.companyList[i].masterMargin = $scope.companyList[i].margin.id;
  				}
b6f0311a3   Rishav   get Company api i...
28
  			})
eefc1c74d   Swarn Singh   minor updates
29
30
31
32
33
34
35
36
  
  		}*/
  
  		$scope.statusFilter = [
  			{id: "", title: "Show All"},
  			{id: "true", title: "Active"},
  			{id: "false", title: "Inactive"}
  		]
b97bc56e0   Swarn Singh   table search and ...
37
  		/*function getAllCompanies(){
eefc1c74d   Swarn Singh   minor updates
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
  			$scope.displayCompanyList = new NgTableParams({
  		       page: 1,
  		       count: 10
  		    }, {
  		       total: 0,
  		       getData: function($defer, params) {
  		       		CustomersService.getAllCompanies().then(function(result) {
  						$scope.companyList = result;
  						for(var i=0; i<$scope.companyList.length; i++){
  							$scope.companyList[i].masterMargin = $scope.companyList[i].margin.id;
  						}
  						var filteredData = params.filter() ?
  		                $filter('filter')($scope.companyList, params.filter()) : $scope.companyList;
  		                var orderedData = params.sorting() ?
  		                $filter('orderBy')(filteredData, params.orderBy()) : $scope.companyList;
  
  		                params.total(orderedData.length);
  		                $defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
  					})
  		         }
  		    });
b97bc56e0   Swarn Singh   table search and ...
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
  		}*/
  
  		function getAllCompanies(){
  			CustomersService.getAllCompanies().then(function(result) {
  				console.log('log', result);
  				$scope.companyList = result;
  				for (var i = 0; i < $scope.companyList.length; i++) {
  					if ($scope.companyList[i].companyContact != null) {
  						if ($scope.companyList[i].companyContact.contactNumber != null || $scope.companyList[i].companyContact.contactNumber != undefined) {
  							$scope.companyList[i].newContactNumber = $scope.companyList[i].companyContact.contactNumber;
  						}
  					}
  					if ($scope.companyList[i].primaryContact != null) {
  						if ($scope.companyList[i].primaryContact.firstName != null && $scope.companyList[i].primaryContact.lastName != null) {
  							$scope.companyList[i].primaryContactName = $scope.companyList[i].primaryContact.firstName + ' ' + $scope.companyList[i].primaryContact.lastName;
  						}
  					}
  					if ($scope.companyList[i].margin != null) {
  						if ($scope.companyList[i].margin.marginName != null) {
  							$scope.companyList[i].masterMargin = $scope.companyList[i].margin.id;
  						}
  					}
  				}
  				$scope.displayCompanyList = new NgTableParams({
  		        page: 1,
  		        count: 10,
  		      }, {
  		        data: $scope.companyList
  		      });
  			})
b6f0311a3   Rishav   get Company api i...
89
  		}
feacde5ff   Rishav   setup acuefuel in...
90

3a9f4472b   Rishav   Implement contact...
91
          $scope.editMargin = function(customer){
b97bc56e0   Swarn Singh   table search and ...
92
          	console.log('customer', customer);
52fea957f   Anchit Jindal   csv and search co...
93
          	$scope.showLoader = true;
d24318592   Rishav   changes and new i...
94
          	event.stopPropagation();
3a9f4472b   Rishav   Implement contact...
95
96
97
98
99
100
101
  
          	var companyMargin = "companyName=" + customer.companyName + "&masterMargin=" + customer.masterMargin 
                + "&addressOne=" + customer.addressOne + "&addressTwo=" + customer.addressTwo + "&city=" + customer.city + "&state=" 
                + customer.state + "&country=" + customer.country + "&zipcode=" + customer.zipcode + "&internalNote=" 
                + customer.internalNote + "&certificateType=" + customer.certificateType + "&baseTenant=" + customer.baseTenant
                + "&fuelerlinxCustomer=" + customer.fuelerlinxCustomer + "&contractFuelVendor=" + customer.contractFuelVendor 
                + "&activate=" + customer.activate + "&baseIcao=" + customer.baseIcao + "&companyId=" + customer.id;
cdf775224   Anchit Jindal   fixed company and...
102
          	ViewCompanyService.updateCompany(companyMargin).then(function(result) {
3a9f4472b   Rishav   Implement contact...
103
                if(result != null && result.success){
52fea957f   Anchit Jindal   csv and search co...
104
              	$scope.showLoader = false;
3a9f4472b   Rishav   Implement contact...
105
106
107
108
                  toastr.success(''+result.success+'', {
                    closeButton: true
                  })
                }else{
52fea957f   Anchit Jindal   csv and search co...
109
              	$scope.showLoader = false;
3a9f4472b   Rishav   Implement contact...
110
111
112
113
114
115
                  toastr.error(''+result.statusText+'', {
                    closeButton: true
                  })
                }
              })
          }
4bb02bb84   Rishav   new integration w...
116
117
118
          getData();
      	function getData(){
  			CustomersService.getAircraftMake().then(function(result) {
4bb02bb84   Rishav   new integration w...
119
  			  $scope.aircraftMakeList = result;
4bb02bb84   Rishav   new integration w...
120
121
  			})
  		}
3a9f4472b   Rishav   Implement contact...
122
        	
a7a7cfeca   Rishav Singla   fuel vendor page ...
123
124
125
126
127
128
129
  
  		// CustomersService.getMargin().then(function(result) {
  		//   $scope.marginList = result;
  		// })
  		$scope.marginFilterOptions = [];
  		CustomersService.getJetMargin($scope.userProfileId).then(function(result) {
  		  $scope.jetMarginList = result;
c95befcd3   Swarn Singh   table issue, filt...
130
131
132
133
134
135
136
137
138
  		  $scope.marginFilterOptions.push({
  		  	'id': '', 'title': 'Show All'
  		  });
  		  for (var i = 0; i < result.length; i++) {
  		  	$scope.marginFilterOptions.push({
  		  		'id': result[i].id,
  		  		'title': result[i].marginName
  		  	})
  		  }
a7a7cfeca   Rishav Singla   fuel vendor page ...
139
  		})
c95befcd3   Swarn Singh   table issue, filt...
140

a7a7cfeca   Rishav Singla   fuel vendor page ...
141
142
  		CustomersService.getAvgMargin($scope.userProfileId).then(function(result) {
  		  $scope.avgsMarginList = result;
3a9f4472b   Rishav   Implement contact...
143
  		})
a7a7cfeca   Rishav Singla   fuel vendor page ...
144

32286a73a   Swarn Singh   tier issue resolved
145
146
147
148
  		$scope.showCompanyError = false;
  		$scope.showMarginError = false;
  
  		$scope.removeValidation = function(){
32286a73a   Swarn Singh   tier issue resolved
149
150
151
152
153
154
155
156
  			$scope.showCompanyError = false;
  	    	$('.companyNameInput').removeClass('customErrorInput');
  		}
  
  		$scope.removeMarginValidation = function(){
  			$scope.showMarginError = false;
  	    	$('.marginSelectBox').removeClass('customErrorInput');
  		}
6efd9a0a8   Anchit Jindal   new desing changes
157
158
  		
  		var companyData;
4bb02bb84   Rishav   new integration w...
159
  	    $scope.addFirstData = function(sel, step){
3a9f4472b   Rishav   Implement contact...
160
  	    	if($scope.data.companyName == undefined){
32286a73a   Swarn Singh   tier issue resolved
161
162
  	    		$scope.showCompanyError = true;
  	    		$('.companyNameInput').addClass('customErrorInput');
3a9f4472b   Rishav   Implement contact...
163
  	    	}else if($scope.data.masterMargin == undefined){
32286a73a   Swarn Singh   tier issue resolved
164
165
  	    		$scope.showMarginError = true;
  	    		$('.marginSelectBox').addClass('customErrorInput');
3a9f4472b   Rishav   Implement contact...
166
  	    	}else{
cdf775224   Anchit Jindal   fixed company and...
167
168
169
170
171
172
173
174
175
  	    		$scope.aircraftDetails = [{ 
  	                'tail':'',
  	                'make': '',
  	                'model': '',
  	                'sizeId' : '',
  	                'marginId': $scope.data.masterMargin,
  	                'avgasMarginId': $scope.data.avgasMargin
  	            }];
  	    	    
3a9f4472b   Rishav   Implement contact...
176
177
178
  	    	 	$(sel).trigger('next.m.' + step);
  	    	 	getData();
  	    	}
4bb02bb84   Rishav   new integration w...
179
  	    }
55e075d7e   Rishav   add contact, add ...
180
181
182
183
184
          $scope.addNew = function(){
              $scope.aircraftDetails.push({ 
                  'tail':'',
  	            'make': '',
  	            'model': '',
3a9f4472b   Rishav   Implement contact...
185
  	            'sizeId' : '',
a7a7cfeca   Rishav Singla   fuel vendor page ...
186
187
  	            'marginId': $scope.data.masterMargin,
              	'avgasMarginId': $scope.data.avgasMargin
55e075d7e   Rishav   add contact, add ...
188
              });
55e075d7e   Rishav   add contact, add ...
189
190
191
          };
  
          $scope.getModal = function(makeId, index){
d24318592   Rishav   changes and new i...
192
          	$scope.showLoader = true;
55e075d7e   Rishav   add contact, add ...
193
194
195
  	  		$scope.aircraft.make = makeId;
  	        //var makeId = makeId;
  	        CustomersService.getModal($scope.aircraft.make).then(function(result) {
d24318592   Rishav   changes and new i...
196
  	        	$scope.showLoader = false;
55e075d7e   Rishav   add contact, add ...
197
198
199
200
  	          $scope.aircraftDetails[index].aircraftModalList = result;
  	          //$scope.aircraftDetails[index].model = $scope.aircraftModalList[0];
  	        })
        	}
4bb02bb84   Rishav   new integration w...
201

55e075d7e   Rishav   add contact, add ...
202
        	$scope.getSize = function(model, index){
d24318592   Rishav   changes and new i...
203
        		$scope.showLoader = true;
55e075d7e   Rishav   add contact, add ...
204
  	        CustomersService.getAircraftSize($scope.aircraft.make, model).then(function(result) {
d24318592   Rishav   changes and new i...
205
  	        	$scope.showLoader = false;
7152ff131   Rishav   model handle
206
  	          	$scope.aircraftDetails[index].aircraftSizeList = result;
55e075d7e   Rishav   add contact, add ...
207
  	          //$scope.aircraftDetails[index].size = $scope.aircraftSizeList[0];
55e075d7e   Rishav   add contact, add ...
208
209
210
211
212
213
  	        })
        	}
  
        	$scope.aircraftListData = {};
        	$scope.addData = [];
        	$scope.saveCompanyData = function(){
cdf775224   Anchit Jindal   fixed company and...
214
        		CustomersService.addCompany($scope.data).then(function(result) {
6efd9a0a8   Anchit Jindal   new desing changes
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
              	$scope.accountId = result;
        			$scope.aircraft.accountId = $scope.accountId;
        			
        			for(var i=0; i<$scope.aircraftDetails.length;i++){
            			$scope.addData.push({ 
      	                'tail': $scope.aircraftDetails[i].tail,
      		            'make': $scope.aircraftDetails[i].make,
      		            'model': $scope.aircraftDetails[i].model,
      		            'sizeId' : $scope.aircraftDetails[i].sizeId,
      		            'marginId': $scope.aircraftDetails[i].marginId,
      		            'avgasMarginId': $scope.aircraftDetails[i].avgasMarginId
      	            });
            		}
      	        $scope.aircraftListData.aircraftList = $scope.addData;
      	        $scope.aircraftListData.accountId = $scope.aircraft.accountId;
      	        
cdf775224   Anchit Jindal   fixed company and...
231
232
233
234
      	        if($scope.aircraftListData.aircraftList[0].tail == "" || $scope.aircraftListData.aircraftList[0].make == null || $scope.aircraftListData.aircraftList[0].model == null){
      	        	$scope.aircraftListData.aircraftList = [];
      	        }
      	        
6efd9a0a8   Anchit Jindal   new desing changes
235
      	        CustomersService.addAircraft($scope.aircraftListData).then(function(result) {
b6f0311a3   Rishav   get Company api i...
236

6efd9a0a8   Anchit Jindal   new desing changes
237
238
239
240
241
242
243
244
245
246
247
248
      	        	if(result != null && result.success){
      	        		toastr.success(''+result.success+'', {
      		            	closeButton: true
      		          	})
      		          	$('#demo-modal-3').modal('hide');
      		          	getAllCompanies();
      	        	}else{
      	        		toastr.error(''+result.statusText+'', {
      		            	closeButton: true
      		          	})
      	        	}
      	        });
cdf775224   Anchit Jindal   fixed company and...
249
      	        
6efd9a0a8   Anchit Jindal   new desing changes
250
251
            	})
        		
55e075d7e   Rishav   add contact, add ...
252
253
254
255
256
257
258
259
  	        
        	}
  
  	    // $scope.appendText = function() {
       //      getData();
  	    //   var newRow =  $('<tr> <td> <input type="text" style="width:100px;" ng-model="aircraft.tail" class="form-control"> </td> <td style="width: 25%;"> <select class="form-control" ng-model="aircraft.make" ng-change="getModal()"> <option ng-repeat="make in aircraftMakeList">{{make}}</option> </select> </td> <td style="width: 20%;"> <select class="form-control" ng-model="aircraft.model" ng-change="getSize()"> <option ng-repeat="model in aircraftModalList">{{model}}</option> </select> </td> <td style="width: 25%;"> <select class="form-control" ng-model="aircraft.size"> <option ng-repeat="size in aircraftSizeList">{{size}}</option> </select> </td> <td> <select class="form-control"> <option>Margin1</option> <option>Margin2</option> </select> </td> </tr>');  
  	    //   $('table.addRow').append(newRow);
  	    // }
4bb02bb84   Rishav   new integration w...
260

67044e31e   Rishav Singla   modify changes an...
261
262
263
264
  	    $scope.setFuel = function(){
  	    	event.stopPropagation();
  	    	$state.go('app.updateFuelManager');
  	    }
eefc1c74d   Swarn Singh   minor updates
265
  	    /*  ng table  */
52fea957f   Anchit Jindal   csv and search co...
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
  	    
  	    $scope.exportCompany = function() {
  	    	$scope.showLoader = true;
  	    	var fileName = "companies.csv";
  	    	var a = document.createElement("a");
  	    	document.body.appendChild(a);
  	    	 CustomersService.exportCompany().then(function(result) {
      	        var file = new Blob([result], {type: 'application/csv'});
      	        var fileURL = URL.createObjectURL(file);
      	        a.href = fileURL;
      	        a.download = fileName;
      	        a.click();
      	        $scope.showLoader = false;
  	    	 })
  	    }
eefc1c74d   Swarn Singh   minor updates
281

4bb02bb84   Rishav   new integration w...
282
283
  
      }