| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- app.controller('editPedidoCtrl', function ($scope, $http, $routeParams, notify, $location, $timeout, editing) {
- $scope.cero=true;
- $scope.total=0;
- $scope.observaciones="";
- $scope.fecha = new Date();
- $scope.modificar = function() {
- $scope.cero=true;
- }
- $scope.confirmar = function() {
- var filtrados = $scope.listaproductos.filter(function(el) { return el.cantidad > 0; });
- if (!pedidosService.pedidoValido(filtrados))
- return;
- $scope.cero=false;
- };
- $scope.update = function() {
- $http.get('back/cliente/' + $routeParams.hash).then(function(data) {
- $scope.userdata = data.data;
- });
- if (editing) {
- $http.get('back/pedido/'+$routeParams.hash+'/'+$routeParams.id).then(
- function(data) {
- $scope.listaproductos = data.data.productos;
- $scope.observaciones = data.data.observaciones || "";
- $scope.updateTotal();
- },
- function(data) {
- });
- } else {
- $http.get('back/productos/' + $routeParams.hash).success(function(data) {
- $scope.listaproductos = data;
- }).error(function(data) {
- });
-
- }
- };
- $scope.filterCero = function(criteria) {
- return function(item) {
- if ($scope.cero)
- return true;
- return item.cantidad > 0;
- };
-
- };
- $scope.validateKeypress = function(e) {
- if ( [46, 8, 9, 27, 13, 37, 39, 116].indexOf(e.keyCode) > -1 )
- return;
- if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
- e.preventDefault();
- }
- if ( this.p.cantidad >= 10 )
- e.preventDefault();
- };
- $scope.updateTotal = function() {
- var total=0;
- total=$scope.listaproductos.reduce(
- function(acc,cur) {
- return acc+(cur.cantidad*cur.precio)
- },0);
- $scope.total=total;
- };
- $scope.reset = function() {
- $scope.update();
- };
- $scope.ok = function () {
- var pedido = {};
- var filtrados = $scope.listaproductos.filter(function(el) { return el.cantidad > 0; });
- if (!pedidosService.pedidoValido(filtrados))
- return;
- pedido.productos = filtrados;
- pedido.cliente = $routeParams.hash;
- pedido.id = $routeParams.id;
- pedido.observaciones = $scope.observaciones;
- $http.post('back/pedido', { pedido: pedido } )
- .success(function(data, status, headers, config) {
- notify("Actualizado correctamente");
- $timeout(function() { $location.url("/"+$routeParams.hash) }, 2000);
- })
- .error(function(data, status, headers, config) {
- notify({classes:"alert alert-danger", message:"Error: "+ data.err});
- });
- };
- $scope.reset();
- });
|