|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* variavel que vai conter o template
|
|
|
|
|
*/
|
|
|
|
|
//VerificaPerfilAcesso(SEG_CONTRIBUINTE);
|
|
|
|
|
$template = "contribuinteSelect.tpl";
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* fields correspondem aos campos retornados da consulta
|
|
|
|
|
*/
|
|
|
|
|
$fields = array("client_id", "client_tipo_documento", "client_documento", "client_razao_social", "client_municipio", "client_uf", "client_nome_contato", "client_status", "client_email", "client_telefone", "client_obs");
|
|
|
|
|
//$fields = array("client_id", "client_razao_social", "client_nome_contato", "client_status", "contrib_email", "client_telefone");
|
|
|
|
|
//
|
|
|
|
|
//-- DROP TABLE pbx_cliente;
|
|
|
|
|
//
|
|
|
|
|
//CREATE TABLE pbx_cliente
|
|
|
|
|
//(
|
|
|
|
|
// client_id bigserial NOT NULL,
|
|
|
|
|
// client_tipo_documento character varying(16) NOT NULL DEFAULT 'CPF'::character varying,
|
|
|
|
|
// client_documento character varying(64),
|
|
|
|
|
// client_status character varying(32),
|
|
|
|
|
// client_razao_social character varying(128) NOT NULL,
|
|
|
|
|
// client_razao_fantasia character varying(128),
|
|
|
|
|
// client_telefone character varying(32),
|
|
|
|
|
// client_email character varying(128),
|
|
|
|
|
// client_nome_contato character varying(128) NOT NULL,
|
|
|
|
|
// client_fone_contato character varying(32),
|
|
|
|
|
// client_email_contato character varying(128),
|
|
|
|
|
// client_obs text,
|
|
|
|
|
// client_data timestamp without time zone NOT NULL DEFAULT now(),
|
|
|
|
|
// client_update timestamp without time zone,
|
|
|
|
|
// CONSTRAINT pbx_cliente_pkey PRIMARY KEY (client_id)
|
|
|
|
|
//);
|
|
|
|
|
/*
|
|
|
|
|
* nome das colunas que v<EFBFBD>o aparecer na consulta
|
|
|
|
|
*/
|
|
|
|
|
$fieldsDiplay = array();
|
|
|
|
|
$fieldsDiplay["client_id"] = "ID";
|
|
|
|
|
$fieldsDiplay["client_tipo_documento"] = "Tipo de Documento";
|
|
|
|
|
$fieldsDiplay["client_documento"] = "Documento";
|
|
|
|
|
$fieldsDiplay["client_status"] = "Status";
|
|
|
|
|
$fieldsDiplay["client_razao_socia"] = "Raz<EFBFBD>o Social";
|
|
|
|
|
$fieldsDiplay["client_nome_fantasia"] = "Nome de Fantasia";
|
|
|
|
|
$fieldsDiplay["client_telefone"] = "Telefone";
|
|
|
|
|
$fieldsDiplay["client_email"] = "Email";
|
|
|
|
|
$fieldsDiplay["client_nome_contato"] = "Respons<EFBFBD>vel";
|
|
|
|
|
$fieldsDiplay["client_fone_contato"] = "Fone Respons<EFBFBD>vel";
|
|
|
|
|
$fieldsDiplay["client_email_contato"] = "E-mail Respons<EFBFBD>vel";
|
|
|
|
|
$fieldsDiplay["client_obs"] = "Obs";
|
|
|
|
|
$fieldsDiplay["client_tipo_contato"] = "Contatar";
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* campos obrigatorios usados na funcao validaForm
|
|
|
|
|
*/
|
|
|
|
|
$fieldsObrig = array();
|
|
|
|
|
$fieldsObrig["contrib_razao_social"] = 1;
|
|
|
|
|
//$fieldsObrig["client_status"] = 1;
|
|
|
|
|
//$fieldsObrig["client_documento"] = 1;
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* identifica o tipo do dado
|
|
|
|
|
*/
|
|
|
|
|
$fieldsType = array();
|
|
|
|
|
$fieldsType["client_id"] = TYPE_INTEGER;
|
|
|
|
|
$fieldsType["client_tipo_documento"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_documento"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_status"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_razao_socia"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_nome_fantasia"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_municipio"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_uf"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_telefone"] = TYPE_FONE;
|
|
|
|
|
$fieldsType["client_email"] = TYPE_EMAIL;
|
|
|
|
|
$fieldsType["client_nome_contato"] = TYPE_STRING;
|
|
|
|
|
$fieldsType["client_fone_contato"] = TYPE_FONE;
|
|
|
|
|
$fieldsType["client_email_contato"] = TYPE_EMAIL;
|
|
|
|
|
$fieldsType["client_obs"] = TYPE_STRING;
|
|
|
|
|
/*
|
|
|
|
|
* Valores para o form
|
|
|
|
|
*/
|
|
|
|
|
$fielsValues = array();
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* TIPO DE INDENTIFICA<EFBFBD><EFBFBD>O
|
|
|
|
|
*/
|
|
|
|
|
define("CONTRIB_TIPO_CPF", 'CPF');
|
|
|
|
|
define("CONTRIB_TIPO_CRC", 'CRC');
|
|
|
|
|
define("CONTRIB_TIPO_IE", 'IE');
|
|
|
|
|
define("CONTRIB_TIPO_CNPJ", 'CNPJ');
|
|
|
|
|
define("CONTRIB_TIPO_OUTROS", 'Outro');
|
|
|
|
|
//define tamanho da janela de cadastro
|
|
|
|
|
$janW = 500;
|
|
|
|
|
$janH = 260;
|
|
|
|
|
|
|
|
|
|
if ((GetFormAcao() == FORM_SELECT) || (GetFormAcao() == FORM_DELETE)) {
|
|
|
|
|
include("cadastros/cliente/contribSelect.php");
|
|
|
|
|
} else if ((GetFormAcao() == FORM_NEW) || (GetFormAcao() == FORM_INSERT)) {
|
|
|
|
|
$tpLayout = 1;
|
|
|
|
|
include("cadastros/cliente/contribInsert.php");
|
|
|
|
|
} else if ((GetFormAcao() == FORM_UPDATE) || (GetFormAcao() == FORM_SAVE)) {
|
|
|
|
|
$tpLayout = 1;
|
|
|
|
|
include("cadastros/cliente/contribUpdate.php");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//variaveis para o template
|
|
|
|
|
$smarty->assign("selContrib", isset($selContrib) ? $selContrib : "" );
|
|
|
|
|
$smarty->assign("tForm", isset($tForm) ? $tForm : "");
|
|
|
|
|
$smarty->assign("wTab", isset($wTab) ? $wTab : '' );
|
|
|
|
|
$smarty->assign("formAction", isset($acaoForm) ? $acaoForm : '' );
|
|
|
|
|
$smarty->assign("formAcaoDesc", GetFormAcaoDesc($acaoForm));
|
|
|
|
|
$smarty->assign("nomeCadCli", GetNomeCadCli());
|
|
|
|
|
/*
|
|
|
|
|
* Carrega o template correspondente ao cadastro
|
|
|
|
|
*/
|
|
|
|
|
GetTemplate($smarty, $template);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* FUN<EFBFBD><EFBFBD>O PARA RETORNAR A ETAPA EM QUE O LEAD SE ENCONTRA
|
|
|
|
|
* @param type $etapa
|
|
|
|
|
* @param type $semEtapa
|
|
|
|
|
* @return string
|
|
|
|
|
*/
|
|
|
|
|
function GetEtapaProspect($etapa, $readonly = false) {
|
|
|
|
|
|
|
|
|
|
$readonly = $readonly ? 'disabled="true"' : '';
|
|
|
|
|
|
|
|
|
|
$serv = "<select name=\"client_etapa\" id=\"client_etapa\" size=\"1\" {$readonly}>";
|
|
|
|
|
$sel = !$etapa ? 'selected="selected"' : "";
|
|
|
|
|
$serv .= sprintf('<option value="0" %s>----------------</option>', ($etapa == '0' ? : ''));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$query = "select cletp_id, cletp_descricao from pbx_cliente_etapa;";
|
|
|
|
|
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
while ($dados = pg_fetch_row($result)) {
|
|
|
|
|
$sel = ($etapa === $dados[0]) ? 'selected="selected"' : "";
|
|
|
|
|
$serv .= "<option value=\"$dados[0]\" $sel>$dados[1]</option>";
|
|
|
|
|
}
|
|
|
|
|
$serv .= "</select>";
|
|
|
|
|
|
|
|
|
|
return $serv;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* FUN<EFBFBD><EFBFBD>O PARA RETORNAR O SELECT DOS STATUS DO CLIENTES
|
|
|
|
|
* @param type $status
|
|
|
|
|
* @param type $semStatus
|
|
|
|
|
* @return string
|
|
|
|
|
*/
|
|
|
|
|
function GetStatusProspect($status, $semStatus = false, $readonly = false) {
|
|
|
|
|
|
|
|
|
|
$readonly = $readonly ? 'disabled="true"' : '';
|
|
|
|
|
|
|
|
|
|
$serv = "<select name=\"client_status\" id=\"client_status\" size=\"1\" {$readonly}>";
|
|
|
|
|
$sel = "";
|
|
|
|
|
if ($semStatus) {
|
|
|
|
|
$serv .= sprintf('<option value="-1" %s>----------------</option>', ($status == '00' ? 'selected="selected"' : ''));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$query = sprintf("SELECT DISTINCT d.ctst_id, d.ctst_nome
|
|
|
|
|
FROM pbx_usuarios a
|
|
|
|
|
INNER JOIN pbx_grupo_usuario b ON a.id = b.user_id
|
|
|
|
|
INNER JOIN pbx_grupo_campanha_contato_status c ON b.gp_id = c.gp_id
|
|
|
|
|
INNER JOIN pbx_campanha_contato_status d ON c.ctst_id = d.ctst_id
|
|
|
|
|
WHERE matricula = '%s'
|
|
|
|
|
AND d.ctst_status = 1
|
|
|
|
|
ORDER BY ctst_nome", GetMatricula());
|
|
|
|
|
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
while ($dados = pg_fetch_row($result)) {
|
|
|
|
|
if ($status === $dados[0]) {
|
|
|
|
|
$sel = "selected";
|
|
|
|
|
} else {
|
|
|
|
|
$sel = "";
|
|
|
|
|
}
|
|
|
|
|
$serv .= "<option value=\"$dados[0]\" $sel>$dados[1]</option>";
|
|
|
|
|
}
|
|
|
|
|
$serv .= "</select>";
|
|
|
|
|
|
|
|
|
|
return $serv;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function GetClientTipoContato($clientTipoContato) {
|
|
|
|
|
$tipos = array('TELEFONE', 'WHATSAPP', 'EMAIL', 'TELEGRAM', 'SMS', 'SKYPE');
|
|
|
|
|
$opt = "<select name=\"client_tipo_contato\" id=\"client_tipo_contato\" size=\"1\">";
|
|
|
|
|
$opt .= sprintf('<option value="0" %s>----------------</option>', (!$clientTipoContato ? 'selected="selected"' : ''));
|
|
|
|
|
|
|
|
|
|
foreach ($tipos as $tipo) {
|
|
|
|
|
$opt .= sprintf('<option value="%s" %s>%s</option>', $tipo, (($clientTipoContato == $tipo) ? 'selected="selected"' : ''), $tipo);
|
|
|
|
|
}
|
|
|
|
|
$opt .= "</select>";
|
|
|
|
|
return $opt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function GetClientUf($clientUf) {
|
|
|
|
|
$tipos = array('AC', 'AL', 'AP', 'AM', 'BA', 'CE', 'DF', 'ES', 'GO', 'MA', 'MT', 'MS', 'MG', 'PA', 'PB', 'PR', 'PE', 'PI', 'RJ', 'RN', 'RS', 'RO', 'RR', 'SC', 'SP', 'SE', 'TO');
|
|
|
|
|
$opt = "<select name=\"client_uf\" id=\"client_tipo_contato\" size=\"1\">";
|
|
|
|
|
$opt .= sprintf('<option value="" %s>----------------</option>', (!$clientUf ? 'selected="selected"' : ''));
|
|
|
|
|
|
|
|
|
|
foreach ($tipos as $tipo) {
|
|
|
|
|
$opt .= sprintf('<option value="%s" %s>%s</option>', $tipo, (($clientUf == $tipo) ? 'selected="selected"' : ''), $tipo);
|
|
|
|
|
}
|
|
|
|
|
$opt .= "</select>";
|
|
|
|
|
return $opt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function GetClassificacaoVendas($select = null) {
|
|
|
|
|
$query = "SELECT b.clit_id, b.clit_descricao, a.clas_status FROM pbx_classifica_atendimento a
|
|
|
|
|
INNER JOIN pbx_classifica_item b ON b.clas_id = a.clas_id
|
|
|
|
|
WHERE clas_descricao = 'CAMPANHA_TELEVENDAS'
|
|
|
|
|
AND clas_status = 1";
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
$data = pg_fetch_all($result);
|
|
|
|
|
|
|
|
|
|
$opt = "<option value='0'>-------------</option>";
|
|
|
|
|
if ($data) {
|
|
|
|
|
foreach ($data as $clas) {
|
|
|
|
|
$selected = $select == $clas['clit_id'] ? 'selected' : '';
|
|
|
|
|
$opt .= "<option value='{$clas['clit_id']}' $selected> {$clas['clit_descricao']}</option>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return $opt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function SetDataAgendamento($id, $clientAgenda) {
|
|
|
|
|
$query = "UPDATE pbx_cliente SET client_agendamento = '{$clientAgenda}' WHERE client_id = {$id}";
|
|
|
|
|
pg_query($query);
|
|
|
|
|
|
|
|
|
|
if (pg_last_error()) {
|
|
|
|
|
throw new Exception('N<EFBFBD>o foi poss<EFBFBD>vel atualizar a DATA de Agendamento do cliente!');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function GetClienteLista($select = null) {
|
|
|
|
|
$query = "SELECT clo_id, clo_titulo FROM pbx_cliente_origem ";
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
$data = pg_fetch_all($result);
|
|
|
|
|
|
|
|
|
|
$opt = "<select name=\"clo_id\" id=\"clo_id\" size=\"1\">";
|
|
|
|
|
$opt .= "<option value='0'>-------------</option>";
|
|
|
|
|
if ($data) {
|
|
|
|
|
foreach ($data as $clas) {
|
|
|
|
|
$selected = $select == $clas['clo_id'] ? 'selected' : '';
|
|
|
|
|
$opt .= "<option value='{$clas['clo_id']}' $selected> {$clas['clo_titulo']}</option>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$opt .= "</select>";
|
|
|
|
|
return $opt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function AgenteCampanha($select = null) {
|
|
|
|
|
$query = "SELECT DISTINCT id, nome, apelido, matricula FROM pbx_usuarios a
|
|
|
|
|
INNER JOIN pbx_grupo_usuario b ON a.id = b.user_id
|
|
|
|
|
INNER JOIN pbx_grupo_funcoes c ON c.gp_id = b.gp_id
|
|
|
|
|
WHERE b.gp_id IN(SELECT gp_id FROM (SELECT CASE WHEN(COUNT(gp_id) > 1) THEN gp_id END AS gp_id
|
|
|
|
|
FROM pbx_grupo_funcoes WHERE fun_id = 209 OR fun_id = 2
|
|
|
|
|
GROUP BY gp_id
|
|
|
|
|
ORDER BY 1) AS DATA)";
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
$resp = pg_fetch_all($result);
|
|
|
|
|
|
|
|
|
|
$opt = "<select name=\"client_user_contato\" id=\"client_user_contato\" size=\"1\">";
|
|
|
|
|
$opt .= "<option value='0'>-------------</option>";
|
|
|
|
|
if ($resp) {
|
|
|
|
|
foreach ($resp as $val) {
|
|
|
|
|
$selected = $select == $val['matricula'] ? 'selected' : '';
|
|
|
|
|
$opt .= "<option value='{$val['matricula']}' $selected>{$val['apelido']}</option>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$opt .= "</select>";
|
|
|
|
|
return $opt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function PermissaoAdminCampanha($matricula) {
|
|
|
|
|
$query = "SELECT * FROM pbx_fornecedor_permissao WHERE matricula_permissao = '$matricula'";
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
$resp = pg_fetch_assoc($result);
|
|
|
|
|
return $resp;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function GetAllMailAdmin(){
|
|
|
|
|
$query = "SELECT email FROM pbx_usuarios a
|
|
|
|
|
INNER JOIN pbx_fornecedor_permissao b ON b.matricula_permissao = a.matricula
|
|
|
|
|
WHERE email <> ''";
|
|
|
|
|
$result = pg_query($query);
|
|
|
|
|
$resp = pg_fetch_all($result);
|
|
|
|
|
return $resp;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function ConectaMssql() {
|
|
|
|
|
$dbhost = "192.168.115.28";
|
|
|
|
|
$dbname = "VendaMaisDB_simplesip";
|
|
|
|
|
$user = "sa";
|
|
|
|
|
$passwd = "SimpleS_root";
|
|
|
|
|
$conn = mssql_connect($dbhost, $user, $passwd);
|
|
|
|
|
mssql_select_db($dbname);
|
|
|
|
|
|
|
|
|
|
return $conn;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
?>
|