businessService.js 2.2 KB
angular.module('focaCrearNotaPedido')
    .factory('notaPedidoBusinessService', [
        'crearNotaPedidoService',
        function(crearNotaPedidoService) {
        return {
            addArticulos: function(articulosNotaPedido, idNotaPedido, cotizacion) {
                for(var i = 0; i < articulosNotaPedido.length; i++) {
                    delete articulosNotaPedido[i].editCantidad;
                    delete articulosNotaPedido[i].editPrecio;
                    articulosNotaPedido[i].idNotaPedido = idNotaPedido;
                    articulosNotaPedido[i].precio = articulosNotaPedido[i].precio * cotizacion;
                    crearNotaPedidoService.crearArticulosParaNotaPedido(articulosNotaPedido[i]);
                }
            },
            addEstado: function(idNotaPedido, idVendedor) {
                var date = new Date();
                var estado = {
                    idNotaPedido: idNotaPedido,
                    fecha: new Date(date.getTime() - (date.getTimezoneOffset() * 60000))
                                        .toISOString().slice(0, 19).replace('T', ' '),
                    estado: 0,
                    idVendedor: idVendedor
                };
                crearNotaPedidoService.crearEstadoParaNotaPedido(estado);
            },
            addPuntosDescarga: function(idNotaPedido, puntosDescarga) {

                var puntos = [];

                puntosDescarga.forEach(function(punto) {
                    puntos.push({
                        idPuntoDescarga: punto.puntoDescarga.id,
                        idNotaPedido: idNotaPedido,
                    });
                });

                return crearNotaPedidoService.crearPuntosDescarga(puntos);
            },
            calcularArticulos: function(articulos, cotizacion) {
                for(var i = 0; i < articulos.length; i++) {
                    articulos[i].precio = articulos[i].precio / cotizacion;
                }
            },
            plazoToString: function(plazos) {
                var result = '';
                for(var i = 0; i < plazos.length; i++) {
                    result += plazos[i].dias + ' ';
                }
                return result.trim();
            }
        };
    }]);