Advertisement
danielbrito1987

abrirOSController.js

May 2nd, 2019
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.63 KB | None | 0 0
  1. 'use strict';
  2. vixplataforma.controller('abrirOSController', ['$scope', '$location', '$cordovaBarcodeScanner', '$ionicTabsDelegate', '$http', 'AUTHSETTINGS', '$timeout', function ($scope, $location, $cordovaBarcodeScanner, $ionicTabsDelegate, $http, AUTHSETTINGS, $timeout) {
  3. var serviceBase = AUTHSETTINGS.APISERVICEBASEURI;
  4. $scope.TipoManutencao = 0;
  5. $scope.Observacao = "";
  6.  
  7. $scope.OS = {};
  8. $scope.OSAtual = {};
  9. $scope.OS.Localizacao = "";
  10. $scope.OS.Equipamento = {};
  11. $scope.OS.Equipamento.Numero = "";
  12. $scope.OS.TipoManutencao = "";
  13. $scope.StatusOS = {};
  14. $scope.StatusOS.TipoStatus = "";
  15. $scope.localizacoes = [];
  16.  
  17. $scope.TiposManutencao = [
  18. {Codigo: 1, Text: "PREVENTIVA"},
  19. {Codigo: 2, Text: "CORRETIVA"}
  20. ];
  21.  
  22. $scope.disableReturnButton = function($event){
  23. document.onkeypress = function(e) {
  24. var keyCode = e.keyCode || e.which;
  25. console.log(keyCode);
  26. if(keyCode === 9){
  27. $event.preventDefault();
  28. return false;
  29. }
  30. }
  31. }
  32.  
  33. $scope.OS.DataInicio = new Date().getMonth() + "-" + new Date().getDate() + "-" + new Date().getUTCFullYear() + " " + new Date().getHours() + ":" + new Date().getMinutes() + ":" + new Date().getSeconds();
  34.  
  35. $scope.loadLocalizacao = function() {
  36. $http.get(serviceBase + 'api/Patio').success(function (response) {
  37. $scope.localizacoes = response;
  38. });
  39. };
  40.  
  41. $scope.loadLocalizacao();
  42.  
  43. $scope.GoToListaGuincho = function() {
  44. $location.path('/app/disponiblidade_frota/lista_guincho');
  45. };
  46.  
  47. $scope.changeLocalizacao = function(value) {
  48. $scope.OS.Localizacao = value;
  49. };
  50.  
  51. $scope.scanNow = function() {
  52. $cordovaBarcodeScanner.scan().then(function(data) {
  53. if(data.text.split(';')[2] != null && data.text.split(';')[2] != "")
  54. {
  55. $scope.OS.Equipamento.Numero = data.text.split(';')[2];
  56. $scope.verificaPlaca();
  57. } else {
  58. $scope.OS.Equipamento.Numero = "";
  59. $scope.showAlert('QR Code Inválido!');
  60. }
  61. }, function(error) {
  62. console.log(error);
  63. });
  64. };
  65.  
  66. $scope.verificaPlaca = function() {
  67. if($scope.OS.Equipamento.Numero.length == 7) {
  68. $http.get(serviceBase + 'api/Status_OS/ObterStatusVeiculo/' + $scope.OS.Equipamento.Numero).success(function (response) {
  69. if(response['Erro'] != null && response['Erro'] != '') {
  70. $scope.showAlert(response['Erro']);
  71. $scope.OS.Equipamento.Numero = "";
  72. } else if(response['TipoStatus'] != null && response['TipoStatus'] != 'VeiculoDisponivel'){
  73. $scope.showAlert('Veículo Indisponível');
  74. $scope.OS.Equipamento.Numero = "";
  75. } else {
  76. console.log(response);
  77. $scope.OS.Equipamento = response;
  78. }
  79. })
  80. }
  81. };
  82.  
  83. $scope.change = function(item) {
  84. $scope.OS.TipoManutencao = item.Codigo;
  85. };
  86.  
  87. $scope.salvar = function(data) {
  88. //console.log(JSON.stringify($scope.OS));
  89. if($scope.OS.TipoManutencao == null || $scope.OS.TipoManutencao == "") {
  90. $scope.showAlert('Tipo de Manutenção é obrigatório!');
  91. } else {
  92. console.log($scope.OS);
  93. $http.post(serviceBase + 'api/OS/', $scope.OS).success(function (response) {
  94. //console.log(response);
  95. $scope.OS = response;
  96. $scope.OSAtual = response;
  97. $scope.showAlert('OS cadastrada com sucesso!');
  98. $ionicTabsDelegate.select(2);
  99. //$scope.salvarStatus();
  100. }).error(function(error){
  101. console.log(error);
  102. });
  103. }
  104. };
  105.  
  106. $scope.salvarStatus = function() {
  107. $scope.StatusOS.OS = $scope.OSAtual;
  108. $scope.StatusOS.TipoStatus = 2;
  109. $scope.StatusOS.DataInicio = new Date();
  110.  
  111. $http.get(serviceBase + 'api/Status_OS/ObterStatusAtual/' + $scope.OSAtual.Codigo).success(function(response){
  112. $scope.TipoStatus = response;
  113. $scope.TipoStatus.DataFim = new Date();
  114.  
  115. if(response != null)
  116. {
  117. $http.post(serviceBase + 'api/Status_OS/', JSON.stringify($scope.TipoStatus)).success(function(response){
  118. $http.post(serviceBase + 'api/Status_OS/', JSON.stringify($scope.StatusOS)).success(function(response){
  119. $scope.showAlert('OS cadastrada com sucesso!');
  120. $ionicTabsDelegate.select(2);
  121. }).error(function(error){
  122. console.log('Erro ao salvar novo Status -> ' + error);
  123. });
  124. }).error(function(error){
  125. console.log('Erro ao alterar Status Atual -> ' + error);
  126. });
  127. } else {
  128. $http.post(serviceBase + 'api/Status_OS/', JSON.stringify($scope.StatusOS)).success(function(response){
  129. $scope.showAlert('OS cadastrada com sucesso!');
  130. $ionicTabsDelegate.select(2);
  131. }).error(function(error){
  132. console.log('Erro ao salvar novo Status -> ' + error);
  133. });
  134. }
  135.  
  136. }).error(function(error){
  137. console.log('Erro ao obter Status Atual -> ' + error);
  138. });
  139. };
  140. }]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement