Commit 09122424e9885dc52ae361301c7b2e66f5c97a9d

Authored by Eric Fernandez
Exists in master

Merge branch 'master' into 'master'

Master

See merge request !16
src/js/controllerItem.js
... ... @@ -5,6 +5,7 @@ angular.module('focaAbmVendedorCobrador')
5 5 function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService,
6 6 $timeout, $uibModal, $location, focaModalService) {
7 7  
  8 + $scope.guardado = false;
8 9 $scope.now = new Date();
9 10 $scope.focused = 0;
10 11 $scope.vendedorCobrador = {
... ... @@ -59,36 +60,42 @@ angular.module('focaAbmVendedorCobrador')
59 60 });
60 61  
61 62 $scope.guardar = function() {
62   - var vendedorCobrador = angular.copy($scope.vendedorCobrador);
  63 + if($scope.guardado) {
  64 + $scope.cambiarPassword();
63 65  
64   - vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID;
65   - vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID;
  66 + } else {
66 67  
67   - delete vendedorCobrador.provincia;
68   - delete vendedorCobrador.localidad;
69   - if (vendedorCobrador.rol == 1) {
70   - delete vendedorCobrador.comisionCobrador;
71   - } else if (vendedorCobrador.rol == 2) {
72   - delete vendedorCobrador.comisionVendedor;
  68 + var vendedorCobrador = angular.copy($scope.vendedorCobrador);
  69 +
  70 + vendedorCobrador.PciVen = vendedorCobrador.provincia.ID;
  71 + vendedorCobrador.LocVen = vendedorCobrador.localidad.ID;
  72 +
  73 + delete vendedorCobrador.provincia;
  74 + delete vendedorCobrador.localidad;
  75 + if (vendedorCobrador.rol == 1) {
  76 + delete vendedorCobrador.comisionCobrador;
  77 + } else if (vendedorCobrador.rol == 2) {
  78 + delete vendedorCobrador.ComVen;
  79 + }
  80 + vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar';
  81 +
  82 + focaAbmVendedorCobradorService
  83 + .guardarVendedorCobrador(vendedorCobrador)
  84 + .then(function(res) {
  85 + if ($scope.edicion) {
  86 + $location.path('/vendedor-cobrador');
  87 + } else {
  88 + $scope.vendedorCobrador = res.data;
  89 + $scope.cambiarPassword();
  90 + $scope.guardado = true;
  91 + }
  92 + })
  93 + .catch(function(err) {
  94 + if (err.status === 409) {
  95 + focaModalService.alert(err.data);
  96 + }
  97 + });
73 98 }
74   -
75   - vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar';
76   -
77   - focaAbmVendedorCobradorService
78   - .guardarVendedorCobrador(vendedorCobrador)
79   - .then(function(res) {
80   - if ($scope.edicion) {
81   - $location.path('/vendedor-cobrador');
82   - } else {
83   - $scope.vendedorCobrador = res.data;
84   - $scope.cambiarContrasenia();
85   - }
86   - })
87   - .catch(function(err) {
88   - if (err.status === 409) {
89   - focaModalService.alert(err.data);
90   - }
91   - });
92 99 };
93 100  
94 101 $scope.seleccionarProvincia = function(key) {
... ... @@ -158,14 +165,34 @@ angular.module('focaAbmVendedorCobrador')
158 165 };
159 166  
160 167 $scope.cancelar = function() {
161   - $location.path('/vendedor-cobrador');
  168 + if(!$scope.formVendedorCobrador.$pristine) {
  169 +
  170 + focaModalService.confirm('¿Está seguro de que desea salir?' +
  171 + 'Se perderán todos los datos cargados.')
  172 + .then(function(confirmed) {
  173 + if(confirmed && $scope.guardado && !$scope.edicion) {
  174 +
  175 + focaAbmVendedorCobradorService
  176 + .eliminarVendedorCobrador($scope.vendedorCobrador.CodVen)
  177 + .then(function() {
  178 + $location.path('/vendedor-cobrador');
  179 + });
  180 +
  181 + } else if (confirmed) {
  182 + $location.path('/vendedor-cobrador');
  183 + }
  184 + });
  185 +
  186 + } else {
  187 + $location.path('/vendedor-cobrador');
  188 + }
162 189 };
163 190  
164 191 $scope.next = function(key) {
165 192 if(key === 13) $scope.focused++;
166 193 };
167 194  
168   - $scope.cambiarContrasenia = function() {
  195 + $scope.cambiarPassword = function() {
169 196 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
170 197 vendedorCobrador.nombre = vendedorCobrador.NOM;
171 198  
... ... @@ -190,11 +217,6 @@ angular.module('focaAbmVendedorCobrador')
190 217  
191 218 modalInstance.result.then(function() {
192 219 if (!$scope.edicion) $location.path('/vendedor-cobrador');
193   - }, function() {
194   - if (!$scope.edicion) {
195   - $scope.cambiarContrasenia();
196   - focaModalService.alert('Debe crear una contraseña para el usuario');
197   - }
198 220 });
199 221  
200 222 };
src/views/foca-abm-vendedor-cobrador-item.html
... ... @@ -205,7 +205,7 @@
205 205 <button
206 206 class="btn btn-primary float-right mr-3"
207 207 type="button"
208   - ng-click="cambiarContrasenia()"
  208 + ng-click="cambiarPassword()"
209 209 ng-show="edicion"
210 210 >Cambiar contraseña</button>
211 211 </div>