getContacts()

Los vendedores pueden agregar nuevos clientes desde la aplicación móvil de Seller Manager, para ello se ha creado el método getContacts(). Use este método para importar los nuevos clientes a su sistema empresarial o de gestión de clientes.

  1. Código
  2. Ejemplo

Código

Cuando un agente agrega un nuevo cliente mediante la App móvil, el sistema guarda el origen del contacto como 'App', este estado es temporal y se usa para detectar nuevos clientes que necesitan ser agregados al sistema empresarial. El método devuelve todos los campos de la tabla contactos.

Los clientes importados deben ser actualizados para evitar duplicados en futuras importaciones. El campo "origen" tiene valor: "App" cuando el cliente es agregado por el agente desde la app. Una vez importado debe enviarse la actualización del campo "origen" y cambiarlo a "Importado".


//get contacts, buscar nuevos clientes agregados desde app móvil
function getContacts(){
    var origen = 'App';
    params = {
        origen: origen,
        token: token
    }
    callAPI('getContacts', params);
}
    ///////////////////////////////////////////////////////////////////////////////
    //Ejemplo de la respuesta que recibe de la API.

    if (data.code == 1) {
        arrdatos = data.details;
        filas = '';
        for(i=0;i<arrdatos.length; i++){
            contact_id = arrdatos[i].contact_id;
            nombre_comercial = arrdatos[i].fullname;
            razon_social = arrdatos[i].representante;
            ruc = arrdatos[i].ruc; //para RUC, Cedula o pasaporte
            email = arrdatos[i].email;
            phone = arrdatos[i].phone;
            estado = arrdatos[i].status; //active, pending (Prospecto), blocked
            fecha_creado = arrdatos[i].date_created;
            driver_id = arrdatos[i].driver_id; //ID del vendedor que lo agregó
            agente = arrdatos[i].agente; //Nombre del vendedor que lo agregó
            credito = arrdatos[i].credito; //toma valor 0 ó 1 (0 -> no tiene crédito, 1 -> tiene crédito)
            cupo = arrdatos[i].cupo; //cupo asignado si tiene crédito
            balance = arrdatos[i].balance; //monto de la deuda  si tiene
            address = arrdatos[i].address;
            origen = arrdatos[i].origen;
            origen = '<label class="label label-danger">'+origen+'</label>';
            //coordenadas del mapa
            lat = arrdatos[i].addresss_lat;
            lng = arrdatos[i].addresss_lng;
            var nuevoestado='';
            switch(estado){
                case 'blocked':
                    nuevoestado = 'Bloqueado';
                    estado = '<label class="label label-danger">'+nuevoestado+'</label>';

                    break;
                case 'pending':
                    nuevoestado = 'Pendiente';
                    estado = '<label class="label label-primary">'+nuevoestado+'</label>';

                    break;
                case 'active':
                    nuevoestado = 'Activo';
                    estado = '<label class="label label-success">'+nuevoestado+'</label>';
                    break;
            }
            filas += '<tr class="contact_'+contact_id+'"><td>'+contact_id+'</td><td>'+nombre_comercial+'</td><td>'+ruc+'</td><td>'+phone+'</td><td>'+address+'</td><td>'+agente+'</td><td>'+estado+'</td><td>'+origen+'</td><td><button onclick="updateContact('+contact_id+')" class="btn btn-info">Actualizar</button></td><</tr>';
        }
        $('#clientes').html(filas);
    }else{
        alert(data.msg);
    }
    //////////////////////////////////////////////////////////////
    //function origen del Contacto
function updateContactOrigen(contact_id){
    var origen = 'Importado';
    params = {
        origen: origen,
        contact_id: contact_id,
        token: token
    }
    callAPI('updateContactOrigen', params);
}
    ///////////////////////////////////////////////////////////////////////////////
    //Ejemplo de la respuesta que recibe de la API.

    if (data.code == 1) {
        alert(data.msg);
        contact_id = params.contact_id;
        nuevo_origen = '<label class="label label-success">Importado</label>';
        $('.contact_'+contact_id).find('td:eq(7)').html(nuevo_origen);
    }else{
        alert(data.msg);
    }

Ejemplo:

Obtener nuevos Clientes y actualizar origen del cliente una vez importado: El ejemplo obtiene nuevos clientes agregados desde la app Seller Manager.



IDNombre ComercialRUCTeléfonoDirecciónAgenteEstadoOrigenActualizar

<div class="form-group">
  <button onclick="getContacts();" class="btn btn-primary">Obtener Nuevos Clientes</button><br>
  <label> Resultado:</label> <br>
  <table class="table table-bordered table-responsive table-striped">
      <theah>
          <tr>
              <th>ID</th><th>Nombre Comercial</th><th>RUC</th><th>Teléfono</th><th>Dirección</th><th>Agente</th><th>estado</th><th>origen</th><th>Actualizar</th>
          </tr>
      </theah>
      <tbody id="clientes">

      </tbody>
  </table>
</div>

//get contacts, buscar nuevos clientes agregados desde app móvil
function getContacts(){
    var origen = 'App';
    params = {
        origen: origen,
        token: token
    }
    callAPI('getContacts', params);
}
  ////////////////////////////////////////
  Respuesta de la API
if (data.code == 1) {
        arrdatos = data.details;
        filas = '';
        for(i=0;i<arrdatos.length; i++){
            contact_id = arrdatos[i].contact_id;
            nombre_comercial = arrdatos[i].fullname;
            razon_social = arrdatos[i].representante;
            ruc = arrdatos[i].ruc; //para RUC, Cedula o pasaporte
            email = arrdatos[i].email;
            phone = arrdatos[i].phone;
            estado = arrdatos[i].status; //active, pending (Prospecto), blocked
            fecha_creado = arrdatos[i].date_created;
            driver_id = arrdatos[i].driver_id; //ID del vendedor que lo agregó
            agente = arrdatos[i].agente; //Nombre del vendedor que lo agregó
            credito = arrdatos[i].credito; //toma valor 0 ó 1 (0 -> no tiene crédito, 1 -> tiene crédito)
            cupo = arrdatos[i].cupo; //cupo asignado si tiene crédito
            balance = arrdatos[i].balance; //monto de la deuda  si tiene
            address = arrdatos[i].address;
            origen = arrdatos[i].origen;
            origen = '<label class="label label-danger">'+origen+'</label>';
            //coordenadas del mapa
            lat = arrdatos[i].addresss_lat;
            lng = arrdatos[i].addresss_lng;
            var nuevoestado='';
            switch(estado){
                case 'blocked':
                    nuevoestado = 'Bloqueado';
                    estado = '<label class="label label-danger">'+nuevoestado+'</label>';

                    break;
                case 'pending':
                    nuevoestado = 'Pendiente';
                    estado = '<label class="label label-primary">'+nuevoestado+'</label>';

                    break;
                case 'active':
                    nuevoestado = 'Activo';
                    estado = '<label class="label label-success">'+nuevoestado+'</label>';
                    break;
            }
            filas += '<tr class="contact_'+contact_id+'"><td>'+contact_id+'</td><td>'+nombre_comercial+'</td><td>'+ruc+'</td><td>'+phone+'</td><td>'+address+'</td><td>'+agente+'</td><td>'+estado+'</td><td>'+origen+'</td><td><button onclick="updateContactOrigen('+contact_id+')" class="btn btn-info">Actualizar</button></td><</tr>';
        }
        $('#clientes').html(filas);
    }else{
        alert(data.msg);
    }
   //////////////////////////////////////////////////////////////
   //function actualizar origen del Contacto
    function updateContactOrigen(contact_id){
    var origen = 'Importado';
    params = {
        origen: origen,
        contact_id: contact_id,
        token: token
    }
    callAPI('updateContactOrigen', params);
}
    ///////////////////////////////////////////////////////////////////////////////
    //Ejemplo de la respuesta que recibe de la API.

    if (data.code == 1) {
        alert(data.msg);
        contact_id = params.contact_id;
        nuevo_origen = '<label class="label label-success">Importado</label>';
        $('.contact_'+contact_id).find('td:eq(7)').html(nuevo_origen);
    }else{
        alert(data.msg);
    }