Blame view

app/partials/customers/customers.controller.js 10.6 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
  		$(document).ready(function() {
05bfa28a2   Mr. Hot Foods   remove save butto...
9
  		    // $('#example').DataTable();
4bb02bb84   Rishav   new integration w...
10
  		});
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
  		}
05bfa28a2   Mr. Hot Foods   remove save butto...
16

7152ff131   Rishav   model handle
17
  		
4bb02bb84   Rishav   new integration w...
18
19
20
  		$scope.data = {};
  		$scope.aircraft = {};
  		$scope.data.activate = true;
05bfa28a2   Mr. Hot Foods   remove save butto...
21
  		$scope.showLoader = true;
b6f0311a3   Rishav   get Company api i...
22
  		getAllCompanies();
eefc1c74d   Swarn Singh   minor updates
23
  		/*function getAllCompanies(){
b6f0311a3   Rishav   get Company api i...
24
  			CustomersService.getAllCompanies().then(function(result) {
b6f0311a3   Rishav   get Company api i...
25
  				$scope.companyList = result;
3a9f4472b   Rishav   Implement contact...
26
27
28
  				for(var i=0; i<$scope.companyList.length; i++){
  					$scope.companyList[i].masterMargin = $scope.companyList[i].margin.id;
  				}
b6f0311a3   Rishav   get Company api i...
29
  			})
eefc1c74d   Swarn Singh   minor updates
30
31
32
33
34
35
36
37
  
  		}*/
  
  		$scope.statusFilter = [
  			{id: "", title: "Show All"},
  			{id: "true", title: "Active"},
  			{id: "false", title: "Inactive"}
  		]
b97bc56e0   Swarn Singh   table search and ...
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
  		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
  		      });
05bfa28a2   Mr. Hot Foods   remove save butto...
65
  			  $scope.showLoader = false;
b97bc56e0   Swarn Singh   table search and ...
66
  			})
b6f0311a3   Rishav   get Company api i...
67
  		}
feacde5ff   Rishav   setup acuefuel in...
68

3a9f4472b   Rishav   Implement contact...
69
          $scope.editMargin = function(customer){
b97bc56e0   Swarn Singh   table search and ...
70
          	console.log('customer', customer);
52fea957f   Anchit Jindal   csv and search co...
71
          	$scope.showLoader = true;
d24318592   Rishav   changes and new i...
72
          	event.stopPropagation();
3a9f4472b   Rishav   Implement contact...
73
74
75
76
77
78
79
  
          	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...
80
          	ViewCompanyService.updateCompany(companyMargin).then(function(result) {
3a9f4472b   Rishav   Implement contact...
81
                if(result != null && result.success){
52fea957f   Anchit Jindal   csv and search co...
82
              	$scope.showLoader = false;
3a9f4472b   Rishav   Implement contact...
83
84
85
86
                  toastr.success(''+result.success+'', {
                    closeButton: true
                  })
                }else{
52fea957f   Anchit Jindal   csv and search co...
87
              	$scope.showLoader = false;
3a9f4472b   Rishav   Implement contact...
88
89
90
91
92
93
                  toastr.error(''+result.statusText+'', {
                    closeButton: true
                  })
                }
              })
          }
4bb02bb84   Rishav   new integration w...
94
95
          getData();
      	function getData(){
05bfa28a2   Mr. Hot Foods   remove save butto...
96
  			$scope.showLoader = true;
4bb02bb84   Rishav   new integration w...
97
  			CustomersService.getAircraftMake().then(function(result) {
4bb02bb84   Rishav   new integration w...
98
  			  $scope.aircraftMakeList = result;
05bfa28a2   Mr. Hot Foods   remove save butto...
99
  			  $scope.showLoader = false;
4bb02bb84   Rishav   new integration w...
100
101
  			})
  		}
3a9f4472b   Rishav   Implement contact...
102
        	
a7a7cfeca   Rishav Singla   fuel vendor page ...
103
104
105
106
107
108
  
  		// CustomersService.getMargin().then(function(result) {
  		//   $scope.marginList = result;
  		// })
  		$scope.marginFilterOptions = [];
  		CustomersService.getJetMargin($scope.userProfileId).then(function(result) {
9aae3d136   Mr. Hot Foods   show loaders and ...
109
  			$scope.showLoader = true;
07328f442   Rishav Singla   new code added fo...
110
111
112
113
114
115
116
117
118
119
120
  			$scope.jetMarginList = result;
  			$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
  				})
  			}
  		  	$scope.showLoader = false;
a7a7cfeca   Rishav Singla   fuel vendor page ...
121
  		})
c95befcd3   Swarn Singh   table issue, filt...
122

a7a7cfeca   Rishav Singla   fuel vendor page ...
123
124
  		CustomersService.getAvgMargin($scope.userProfileId).then(function(result) {
  		  $scope.avgsMarginList = result;
3a9f4472b   Rishav   Implement contact...
125
  		})
a7a7cfeca   Rishav Singla   fuel vendor page ...
126

32286a73a   Swarn Singh   tier issue resolved
127
128
129
130
  		$scope.showCompanyError = false;
  		$scope.showMarginError = false;
  
  		$scope.removeValidation = function(){
32286a73a   Swarn Singh   tier issue resolved
131
132
  			$scope.showCompanyError = false;
  	    	$('.companyNameInput').removeClass('customErrorInput');
5e7aae2d2   Anchit Jindal   new changes
133
134
135
136
  	    	if($scope.data.companyName == 'undefined' || $scope.data.companyName == '') {
  	    		$('.companyNameInput').addClass('customErrorInput');
  	    		$scope.showCompanyError = true;
  	    	}
32286a73a   Swarn Singh   tier issue resolved
137
138
139
140
141
142
  		}
  
  		$scope.removeMarginValidation = function(){
  			$scope.showMarginError = false;
  	    	$('.marginSelectBox').removeClass('customErrorInput');
  		}
6efd9a0a8   Anchit Jindal   new desing changes
143
144
  		
  		var companyData;
4bb02bb84   Rishav   new integration w...
145
  	    $scope.addFirstData = function(sel, step){
9aae3d136   Mr. Hot Foods   show loaders and ...
146
  			$scope.showLoader = true;
3a9f4472b   Rishav   Implement contact...
147
  	    	if($scope.data.companyName == undefined){
32286a73a   Swarn Singh   tier issue resolved
148
149
  	    		$scope.showCompanyError = true;
  	    		$('.companyNameInput').addClass('customErrorInput');
3a9f4472b   Rishav   Implement contact...
150
  	    	}else if($scope.data.masterMargin == undefined){
32286a73a   Swarn Singh   tier issue resolved
151
152
  	    		$scope.showMarginError = true;
  	    		$('.marginSelectBox').addClass('customErrorInput');
3a9f4472b   Rishav   Implement contact...
153
  	    	}else{
cdf775224   Anchit Jindal   fixed company and...
154
155
156
157
158
159
160
161
162
  	    		$scope.aircraftDetails = [{ 
  	                'tail':'',
  	                'make': '',
  	                'model': '',
  	                'sizeId' : '',
  	                'marginId': $scope.data.masterMargin,
  	                'avgasMarginId': $scope.data.avgasMargin
  	            }];
  	    	    
3a9f4472b   Rishav   Implement contact...
163
164
165
  	    	 	$(sel).trigger('next.m.' + step);
  	    	 	getData();
  	    	}
9aae3d136   Mr. Hot Foods   show loaders and ...
166
  			$scope.showLoader = false;
4bb02bb84   Rishav   new integration w...
167
  	    }
55e075d7e   Rishav   add contact, add ...
168
          $scope.addNew = function(){
9aae3d136   Mr. Hot Foods   show loaders and ...
169
  			$scope.showLoader = true;
55e075d7e   Rishav   add contact, add ...
170
171
172
173
              $scope.aircraftDetails.push({ 
                  'tail':'',
  	            'make': '',
  	            'model': '',
3a9f4472b   Rishav   Implement contact...
174
  	            'sizeId' : '',
a7a7cfeca   Rishav Singla   fuel vendor page ...
175
176
  	            'marginId': $scope.data.masterMargin,
              	'avgasMarginId': $scope.data.avgasMargin
55e075d7e   Rishav   add contact, add ...
177
              });
9aae3d136   Mr. Hot Foods   show loaders and ...
178
  			$scope.showLoader = false;
55e075d7e   Rishav   add contact, add ...
179
180
181
          };
  
          $scope.getModal = function(makeId, index){
d24318592   Rishav   changes and new i...
182
          	$scope.showLoader = true;
55e075d7e   Rishav   add contact, add ...
183
184
185
  	  		$scope.aircraft.make = makeId;
  	        //var makeId = makeId;
  	        CustomersService.getModal($scope.aircraft.make).then(function(result) {
d24318592   Rishav   changes and new i...
186
  	        	$scope.showLoader = false;
55e075d7e   Rishav   add contact, add ...
187
188
189
190
  	          $scope.aircraftDetails[index].aircraftModalList = result;
  	          //$scope.aircraftDetails[index].model = $scope.aircraftModalList[0];
  	        })
        	}
4bb02bb84   Rishav   new integration w...
191

55e075d7e   Rishav   add contact, add ...
192
        	$scope.getSize = function(model, index){
d24318592   Rishav   changes and new i...
193
        		$scope.showLoader = true;
55e075d7e   Rishav   add contact, add ...
194
  	        CustomersService.getAircraftSize($scope.aircraft.make, model).then(function(result) {
d24318592   Rishav   changes and new i...
195
  	        	$scope.showLoader = false;
7152ff131   Rishav   model handle
196
  	          	$scope.aircraftDetails[index].aircraftSizeList = result;
55e075d7e   Rishav   add contact, add ...
197
  	          //$scope.aircraftDetails[index].size = $scope.aircraftSizeList[0];
55e075d7e   Rishav   add contact, add ...
198
199
200
201
202
203
  	        })
        	}
  
        	$scope.aircraftListData = {};
        	$scope.addData = [];
        	$scope.saveCompanyData = function(){
cdf775224   Anchit Jindal   fixed company and...
204
        		CustomersService.addCompany($scope.data).then(function(result) {
6efd9a0a8   Anchit Jindal   new desing changes
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
              	$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...
221
222
223
224
      	        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
225
      	        CustomersService.addAircraft($scope.aircraftListData).then(function(result) {
b6f0311a3   Rishav   get Company api i...
226

6efd9a0a8   Anchit Jindal   new desing changes
227
228
229
230
231
232
233
234
235
236
237
238
      	        	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...
239
      	        
6efd9a0a8   Anchit Jindal   new desing changes
240
241
            	})
        		
55e075d7e   Rishav   add contact, add ...
242
243
244
245
246
247
248
249
  	        
        	}
  
  	    // $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...
250

67044e31e   Rishav Singla   modify changes an...
251
252
253
254
  	    $scope.setFuel = function(){
  	    	event.stopPropagation();
  	    	$state.go('app.updateFuelManager');
  	    }
eefc1c74d   Swarn Singh   minor updates
255
  	    /*  ng table  */
52fea957f   Anchit Jindal   csv and search co...
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
  	    
  	    $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;
  	    	 })
  	    }
5e7aae2d2   Anchit Jindal   new changes
271
272
273
  	    getCompanyName();
  	    function getCompanyName(){
  	        CustomersService.getCompanyName().then(function(result) {
a9aef0b1c   Anchit Jindal   new changes imple...
274
275
276
  	        	$scope.compNameList = result;
  	        })
        	}
eefc1c74d   Swarn Singh   minor updates
277

4bb02bb84   Rishav   new integration w...
278
279
  
      }