Advertisement
Guest User

Untitled

a guest
Dec 8th, 2016
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.25 KB | None | 0 0
  1. .controller('opcionalCtrl', ['$scope', '$stateParams', '$http', '$rootScope', '$state','url', '$ionicPopup','$ionicLoading',
  2. function ($scope, $stateParams, $http, $rootScope, $state, url, $ionicPopup, $ionicLoading) {
  3. $scope.teste = {};
  4. $scope.idopcionais = $rootScope.idopcionais;
  5.  
  6. if($scope.idopcionais == '' || $scope.idopcionais == 0 || $scope.idopcionais == undefined){
  7. location.href='#/side-menu21/complementos';
  8. }else{
  9.  
  10. $scope.desabilitarBotao = true;
  11. $scope.habilitaBotao = function(){
  12. $scope.desabilitarBotao = false;
  13. }
  14.  
  15. function removeKey(arrayName,key)
  16. {
  17. var x;
  18. var tmpArray = new Array();
  19. for(x in arrayName)
  20. {
  21. if(x!=key) { tmpArray[x] = arrayName[x]; }
  22. }
  23. return tmpArray;
  24. }
  25. //parte aonde eu dou append ao que vai pro carrinho
  26. $scope.syncOps = function(x, preco, nome, obGeral){
  27.  
  28. var carrinho = JSON.parse(localStorage.getItem('carrinho'));
  29.  
  30. var found = false;
  31. for(i in obGeral){
  32. for(j in carrinho[$rootScope.stamp]){
  33. if(obGeral[i].idproduto == carrinho[$rootScope.stamp][j].idproduto){
  34. carrinho[$rootScope.stamp] = removeKey(carrinho[$rootScope.stamp], j);
  35. carrinho[$rootScope.stamp].push({idproduto:x, nome: nome, preco:preco, tipo:'opcionais', qtd:1, totalUnitario:preco});
  36. found = true;
  37. break;
  38. }
  39. }
  40. }
  41. if(!found){
  42. carrinho[$rootScope.stamp].push({idproduto:x, nome: nome, preco:preco, tipo:'opcionais', qtd:1, totalUnitario:preco});
  43. }
  44. localStorage.setItem('carrinho', JSON.stringify(carrinho));
  45. }
  46.  
  47. $scope.syncDsc = function(x){
  48. $rootScope.dscVenda = x;
  49. }
  50.  
  51. $ionicLoading.show({
  52. content: 'Loading',
  53. animation: 'fade-in',
  54. showBackdrop: true,
  55. maxWidth: 200,
  56. showDelay: 0
  57. });
  58.  
  59. //requisição que pegar os opcionais
  60. $http({
  61. method: 'POST',
  62. url: url+'Cardapio.php',
  63. data: "metodo=listarCardapioApp&idcliente="+$rootScope.idcliente+'&idopcionais='+$scope.idopcionais,
  64. cache:false,
  65. headers: {'Content-Type': 'application/x-www-form-urlencoded'}
  66. }).success(function(data){
  67. //para o loader
  68. $ionicLoading.hide();
  69.  
  70. var retorno = data.msg;
  71. $scope.opcionais = retorno;
  72. $scope.tituloPagina = data.titulo_pagina;
  73.  
  74. if(data.success == 0){
  75. $state.go('menu.complementos');
  76. }
  77.  
  78. }).error(function(data){
  79. //para o loader
  80. $ionicLoading.hide();
  81.  
  82. $ionicPopup.alert({
  83. title: 'Atenção',
  84. template: 'Falha ao listar os pedidos',
  85. okText: 'ok',
  86. okType: 'button-stable'
  87. });
  88.  
  89.  
  90. });
  91. }
  92. }])
  93.  
  94. .controller('complementosCtrl', ['$scope', '$stateParams', '$http', '$rootScope', '$state','url', '$ionicPopup','$ionicLoading',
  95. function ($scope, $stateParams, $http, $rootScope, $state, url, $ionicPopup, $ionicLoading) {
  96.  
  97. $scope.syncDsc = function(x){
  98. $rootScope.dscVenda = x;
  99. $ionicPopup.alert({
  100. title: 'Atenção',
  101. template: 'Adicionado ao carrinho!',
  102. okText: 'ok',
  103. okType: 'button-stable'
  104. });
  105. }
  106.  
  107. $scope.idcomplementos = $rootScope.idcomplementos;
  108. if($scope.idcomplementos == '' || $scope.idcomplementos == 0 || $scope.idcomplementos == undefined){
  109. $scope.tituloPagina = "Anotações";
  110. }else{
  111. $scope.tituloPagina = "Complementos";
  112. function removeKey(arrayName,key)
  113. {
  114. var x;
  115. var tmpArray = new Array();
  116. for(x in arrayName)
  117. {
  118. if(x!=key) { tmpArray[x] = arrayName[x]; }
  119. }
  120. return tmpArray;
  121. }
  122.  
  123. //parte aonde eu dou append ao que vai pro carrinho
  124. $scope.syncOps = function(x, preco, nome, isChecked, qtd){
  125. var totalUnitario = parseFloat(preco.replace(',','.')).toFixed(2) * qtd;
  126. totalUnitario = parseFloat(totalUnitario).toFixed(2).replace('.', ',');
  127.  
  128. var carrinho = JSON.parse(localStorage.getItem('carrinho'));
  129.  
  130. if(isChecked){
  131. carrinho[$rootScope.stamp].push({idproduto:x, nome: nome, preco:preco, tipo:'complementos', qtdOriginal:qtd, qtd:qtd, totalUnitario:totalUnitario});
  132. }else{
  133. for(i in carrinho[$rootScope.stamp]){
  134. if(x == carrinho[$rootScope.stamp][i].idproduto){
  135. carrinho[$rootScope.stamp] = removeKey(carrinho[$rootScope.stamp], i);
  136. }
  137. }
  138. }
  139. localStorage.setItem('carrinho', JSON.stringify(carrinho));
  140. }
  141.  
  142. //inicia o loader
  143. $ionicLoading.show({
  144. content: 'Loading',
  145. animation: 'fade-in',
  146. showBackdrop: true,
  147. maxWidth: 200,
  148. showDelay: 0
  149. });
  150.  
  151. //requisição que pegar os complementos
  152. $http({
  153. method: 'POST',
  154. url: url+'Cardapio.php',
  155. data: "metodo=listarCardapioApp&idcliente="+$rootScope.idcliente+'&idcomplementos='+$scope.idcomplementos,
  156. headers: {'Content-Type': 'application/x-www-form-urlencoded'}
  157. }).success(function(data){
  158. //para o loader
  159. $ionicLoading.hide();
  160.  
  161. if(data.success == 0){
  162. $state.go('menu.cardapio');
  163. }
  164.  
  165. var retorno = data.msg;
  166. $scope.complementos = retorno;
  167.  
  168. $scope.counter = {};
  169. //Atribui as models dinamicas os valores que estão no localstorage do carrinho
  170. for(i in $scope.complementos){
  171. $scope.counter[$scope.complementos[i].idproduto] = 1;
  172. }
  173.  
  174. $scope.add = function(key){
  175. $scope.counter[key] = parseInt($scope.counter[key]);
  176. $scope.counter[key]++;
  177. }
  178.  
  179. $scope.decrement = function(key, idproduto){
  180. $scope.counter[key] = parseInt($scope.counter[key]);
  181. if($scope.counter[key] != 0){
  182. $scope.counter[key]--;
  183. }
  184. }
  185. }).error(function(data){
  186. //para o loader
  187. $ionicLoading.hide();
  188.  
  189. $ionicPopup.alert({
  190. title: 'Atenção',
  191. template: 'Falha ao listar os pedidos',
  192. okText: 'ok',
  193. okType: 'button-stable'
  194. });
  195.  
  196. });
  197.  
  198. }
  199. }])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement