app.controller('ricercaFilialiCtrl', function ($scope,$mdDialog,Banche, utilsSvc, locals) { $scope.searchText = locals.istituto; $scope.istituto = locals.istituto; $scope.permettiCreazione = false; $scope.filiali=[]; if (typeof locals.permettiCreazione!="undefined") $scope.permettiCreazione = locals.permettiCreazione; $scope.filter = { abi:locals.abi, cab: locals.cab, bic:'', agenzia:'', indirizzo:'', localita:'', comune:'', tipoRicerca:0, provincia:'', cap:'' } $scope.getGridItemHeight = function() { return utilsSvc.getGridWithButtonHeight(); } $scope.selectFiliale = function(filiale) { if (!$scope.permettiCreazione) $mdDialog.hide($scope.filiali[filiale]); } $scope.cancelDialog = function() { $mdDialog.cancel(); } $scope.cercaIstituto = function() { return $scope.ricercaIstitutoChange(); } $scope.ricercaIstitutoChange = function() { return Banche.AutocompleteIstituti({filter:$scope.searchText}).$promise; } $scope.trovaBancaDaAbi = function() { if ($scope.filter.abi && $scope.filter.abi!='') Banche.GetByAbi({abi: $scope.filter.abi}).$promise.then( function(data) { $scope.istituto = data; $scope.istitutoSelezionato = data; $scope.searchText = data.descri; $scope.cercaIstituto(); }, function(err){ utilsSvc.handleHttpError(err); } ) } $scope.selectIstituto = function() { if ($scope.istitutoSelezionato!=null) { $scope.filter.abi = $scope.istitutoSelezionato.abi; $scope.filter.cab = ''; $scope.filter.bic = $scope.istitutoSelezionato.bic; $scope.istituto = $scope.istitutoSelezionato.descri; $scope.eseguiRicerca(); } } $scope.nuovaBanca = function() { Banche.NuovaBanca().$promise.then( function(data) { data.descri=''; $scope.editBanca(data); }); } $scope.eseguiRicerca = function() { Banche.FilterFiliali({},$scope.filter).$promise.then(function(data) { $scope.filiali = data; }, function(error) { utilsSvc.handleHttpError(error); }); } $scope.eseguiRicerca(); $scope.editBanca = function(banca) { $mdDialog.show({ templateUrl: 'templates/banca.html', controller: 'bancaCtrl', locals: banca, multiple: true }).then(function(istituto){ Banche.SaveBanca({},istituto) .$promise.then(function(res){ $scope.istitutoSelezionato = banca; if (res.value=="") utilsSvc.showMessage('Operazione completata'); else utilsSvc.showMessage(res.value); }); }, function(){ }); } $scope.nuovoSportello=function(event){ Banche.NuovoSportello().$promise.then(function(data){ data.abi = $scope.istitutoSelezionato.abi; $scope.filiali.push(data); $scope.editSportello($scope.filiali.length-1, event); }) } $scope.editSportello=function(ndx, event){ $mdDialog.show({ templateUrl: 'templates/filiale.html', controller: 'filialeCtrl', locals: $scope.filiali[ndx], multiple: true }).then(function(filiale){ Banche.SaveFiliale({},filiale) .$promise.then(function(res){ $scope.eseguiRicerca(); if (res.value=="") utilsSvc.showMessage('Operazione completata'); else utilsSvc.showMessage(res.value); }); }, function(){ }); } $scope.deleteFiliale=function(ndx, event){ utilsSvc.showConfirm('Conferma','Confermi la cancellazione dello sportello?') .then(function(){ Banche.EliminaFiliale({id: $scope.filiali[ndx].id}) .$promise.then(function(res){ if (res.value=='') $scope.eseguiRicerca(); else utilsSvc.showMessage(res.value); }) }) } // if ($scope.searchText!='') // $scope.cercaIstituto(); // if (locals.abi && locals.abi!='') $scope.trovaBancaDaAbi(); }) .controller('bancaCtrl', function($scope,$mdDialog, utilsSvc, locals){ $scope.banca = locals; $scope.confirmDialog=function(){ if (($scope.tipo!=1 && $scope.abiNew=="") ||($scope.tipo==1 && $scope.abiNew!="")) { utilsSvc.showMessage('Attenzione, i dati della banca assorbita non sono congruenti'); return; } if (($scope.descri=="")) { utilsSvc.showMessage('Attenzione, inserire la denominazione della banca'); return; } $mdDialog.hide($scope.banca); } $scope.cancelDialog=function(){ $mdDialog.cancel(); } }) .controller('filialeCtrl', function($scope,$mdDialog, utilsSvc, locals){ $scope.filiale = locals; $scope.confirmDialog=function(){ if (($scope.descri=="")) { utilsSvc.showMessage('Attenzione, inserire la denominazione della banca'); return; } $mdDialog.hide($scope.filiale); } $scope.cancelDialog=function(){ $mdDialog.cancel(); } }) ;