updateFacturas()

Las Facturas Pendientes de un cliente serán mostradas en la app del agente para realizar labor de cobranza. A través de las visitas el agente podrá cobrar. Seller Manager usa esta información como verificación antes de realizar el cobro.

  1. Código
  2. Ejemplo

Código

El método recibe como parámetros el número de factura, el RUC, así como los parámetros fecha_emision, fecha_venc, subtotal, subtotal IVA y el estado.


//function update facturas pendientes del cliente
    function updateFacturas(){
        var no_factura = $('#no_factura').val(); //No de Factura
        var codigo_reg = $('#codigo_reg').val(); //No de control
        var ruc = $('#ruc').val(); //Ruc del Cliente
        var fecha_emision = $('#fecha_emision').val(); //Fecha de emisión de la factura
        var fecha_venc = $('#fecha_venc').val(); //Fecha límite de pago fijada para la factura
        var subtotal = $('#subtotal').val(); // Subtotal sin IVA
        var subtotal_iva = $('#subtotal_iva').val(); // Subtotal del IVA
        var total_pagado = $('#total_pagado').val(); // Valor pagado por el cliente (parciales o totales)
        var estado = $('#estado').val(); // estado de la factura
        //obtener detalles de la factura
        var i = 0;
        var array_factura_detalle = [];
        var t = document.getElementById('facturas_detalle').getElementsByTagName('tbody')[0];
        $("#facturas_detalle tbody tr").each(function() {
            var cod_prod = $(t.rows[i].cells[0]).find('input').val();
            var descripcion = $(t.rows[i].cells[1]).find('input').val();
            var cantidad = $(t.rows[i].cells[2]).find('input').val();
            var precio = $(t.rows[i].cells[3]).find('input').val();
            var desc = $(t.rows[i].cells[4]).find('input').val();
            var subtotal = $(t.rows[i].cells[5]).find('input').val();
            var IVA = $(t.rows[i].cells[6]).find('input').val();
            if($.trim(cod_prod)!='' && $.trim(descripcion)!='' && $.trim(cantidad)!='' && $.trim(precio)!='' && $.trim(subtotal)!=''){
                objeto = {
                    "cod_prod": cod_prod,
                    "description": descripcion,
                    "quantity": cantidad,
                    "price": precio,
                     "desc": desc,
                    "subtotal": subtotal,
                    "subtotal_iva": IVA,
                    "factura": no_factura,
                    "customer_id": 0
                  };
                array_factura_detalle.push(objeto);
            }else{
                alert('Por favor complete los campos.');
                return false;
            }
            i++;
        });
       array_factura_detalle = JSON.stringify(array_factura_detalle);
        params = {
            no_factura: no_factura,
            codigo_reg: codigo_reg,
            ruc: ruc,
            fecha_emision: fecha_emision,
            fecha_venc: fecha_venc,
            subtotal: subtotal,
            subtotal_iva: subtotal_iva,
            total_pagado: total_pagado,
            estado. estado,
            token: ,
            array_factura_detalle: array_factura_detalle
        }
        callAPI('updateFacturas', params);
    }
    ///////////////////////////////////////////////////
    //Ejemplo de la respuesta que recibe de la API.

     if (data.code == 1) {
        alert('Las facturas han sido enviadas con éxito desde API');
    }else{
        alert(data.msg);
    }

Ejemplo:

Enviar facturas pendientes del un Cliente en Seller Manager: El ejemplo ha sido preparado para seleccionar un cliente y enviar No Factura, fecha_emision, fecha_pago, subtotal, subtotal_iva y estado.

Detalle de la Factura:

Código prod Descripción Cant. Precio Desc. Subtotal IVA

 <form id="frm-facturas" method="POST"  onsubmit="return false;">
  <div class="form-group">
      <label for="cliente">RUC</label>
      <select id="cliente" data-placeholder="Tienda Juanito" required class="form-control">
          <option value="">RUC del Cliente... </option>
          <option value="0987456321">Posada de las Garzas</option>
          <option value="0222222222001">Knela Shop</option>
      </select>
  </div>
  <div class="form-group">
      <label for="factura">No Factura</label>
      <input id="factura" type="text" placeholder="Ej: 0001-000125-021450" required class="form-control">
  </div>
  <div class="form-group">
          <label for="codigo_reg">No de Control</label>
                  <input id="codigo_reg" type="text" placeholder="Ej: 0001-000125-021450" required class="form-control">
   </div>
  <div class="form-group">
      <label for="subtotal">Subtotal</label>
      <input type="text" id="subtotal" required placeholder="Ej: 388.00" class="form-control" >
  </div>
  <div class="form-group">
      <label for="subtotal_iva">Subtotal IVA</label>
      <input type="text" id="subtotal_iva" required placeholder="Ej: 88.00" class="form-control">
  </div>
  <div class="form-group">
          <label for="total_pagado">Total Pagado</label>
          <input type="text" id="total_pagado" required placeholder="Ej: 100.00" class="form-control">
   </div>
  <div class="form-group">
      <label for="fecha_emision">Fecha Emisión</label>
      <input type="text" id="fecha_emision" required placeholder="Ej: 2018-08-25" class="form-control">
  </div>
  <div class="form-group">
      <label for="fecha_venc">Fecha Pago</label>
      <input type="text" id="fecha_venc" required placeholder="Ej: 2018-09-30" class="form-control">
  </div>
  <div class="form-group">
      <label for="estado">Estado</label>
      <select type="text" id="estado" required placeholder="Ej: Pendiente" class="form-control">
          <option value="Pendiente">Pendiente</option>
          <option value="Respaldada">Respaldada</option>
          <option value="Parcial">Parcial</option>
          <option value="Cheque Devuelto">Cheque Devuelto</option>
          <option value="Vencida">Vencida</option>
      </select>
  </div>
  <div class="form-group text-right m-b-0">
      <button onclick="updateFacturas();" class="btn btn-primary waves-effect waves-light" >
          Enviar Factura
      </button>
  </div>

</form>

//function update facturas pendientes del cliente
    function updateFacturas(){
        var no_factura = $('#no_factura').val(); //No de Factura
        var codigo_reg = $('#codigo_reg').val(); //No de control
        var ruc = $('#ruc').val(); //Ruc del Cliente
        var fecha_emision = $('#fecha_emision').val(); //Fecha de emisión de la factura
        var fecha_venc = $('#fecha_venc').val(); //Fecha límite de pago fijada para la factura
        var subtotal = $('#subtotal').val(); // Subtotal sin IVA
        var subtotal_iva = $('#subtotal_iva').val(); // Subtotal del IVA
        var total_pagado = $('#total_pagado').val(); // Valor pagado por el cliente (parciales o totales)
        var estado = $('#estado').val(); // estado de la factura
        //obtener detalles de la factura
        var i = 0;
        var array_factura_detalle = [];
        var t = document.getElementById('facturas_detalle').getElementsByTagName('tbody')[0];
        $("#facturas_detalle tbody tr").each(function() {
            var cod_prod = $(t.rows[i].cells[0]).find('input').val();
            var descripcion = $(t.rows[i].cells[1]).find('input').val();
            var cantidad = $(t.rows[i].cells[2]).find('input').val();
            var precio = $(t.rows[i].cells[3]).find('input').val();
            var desc = $(t.rows[i].cells[4]).find('input').val();
            var subtotal = $(t.rows[i].cells[5]).find('input').val();
            var IVA = $(t.rows[i].cells[6]).find('input').val();
            if($.trim(cod_prod)!='' && $.trim(descripcion)!='' && $.trim(cantidad)!='' && $.trim(precio)!='' && $.trim(subtotal)!=''){
                objeto = {
                    "cod_prod": cod_prod,
                    "description": descripcion,
                    "quantity": cantidad,
                    "price": precio,
                     "desc": desc,
                    "subtotal": subtotal,
                    "subtotal_iva": IVA,
                    "factura": no_factura,
                    "customer_id": 0
                  };
                array_factura_detalle.push(objeto);
            }else{
                alert('Por favor complete los campos.');
                return false;
            }
            i++;
        });
       array_factura_detalle = JSON.stringify(array_factura_detalle);
        params = {
            no_factura: no_factura,
            codigo_reg: codigo_reg,
            ruc: ruc,
            fecha_emision: fecha_emision,
            fecha_venc: fecha_venc,
            subtotal: subtotal,
            subtotal_iva: subtotal_iva,
            total_pagado:total_pagado,
            estado: estado,
            token: token,
            array_factura_detalle: array_factura_detalle
        }
        callAPI('updateFacturas', params);
    }
    ///////////////////////////////////////////////////
    //Ejemplo de la respuesta que recibe de la API.

     if (data.code == 1) {
        alert('Las facturas han sido enviadas con éxito desde API');
    }else{
        alert(data.msg);
    }