01. DADOS GERAIS
Produto: | TOTVS Saúde Planos |
---|---|
Linha de Produto: | Linha Datasul |
Segmento: | Saúde |
Módulo: | HVP - Venda de Planos - Inovação |
Função: | Gestão de Protocolos Unimed integrado ao CRM (Manutenção de Ocorrências - Gestão de Planos) |
País: | Brasil |
Requisito/Story/Issue (informe o requisito relacionado): | DSAUGPSCONTRAT2-16492 |
02. SITUAÇÃO/REQUISITO
Processo de integração do TOTVS Saúde Planos com o GPU (Gestão de Protocolos Unimed) para solicitação e resposta de protocolos Não Clientes.
03. SOLUÇÃO
Foi desenvolvido o endpoint "solicitar-protocolo-nao-cliente" para criação automática de protocolos, irá criar protocolos do tipo "Cliente Particular" no CRM (Manutenção Ocorrências - Gestão de Planos), com as informações recebidas.
Para utilização, basta atualizar a mídia contendo a atualização, e configurar os campos do CRM abaixo através do script que será disponibilizado nesta documentação. Os códigos a serem utilizados são do CRM, e ficam disponíveis na URL do detalhar do respectivo cadastro, conforme prints abaixo:
- Categoria de Atendimento (categoryId) - html-crm.ticket-type
- Motivo de Atendimento (motiveId) - html-crm.ticket-subject
- Setor de Atendimento (userGroupId) - html-crm.group-user
- Canal de Atendimento (channelId) - html-crm.ticketSource
Nesta tela, é necessário abrir o F12 do browser, na parte do Network, antes de clicar no nome do Canal de Atendimento, irá mostrar o código interno no nome da requisição, conforme print abaixo.
Script para atualização dos quatro campos citados acima:
function getParamGlobal return char (cod-indic-tab-par as char, cod-param-par as char): for first param-geral fields(param-geral.des-param) where param-geral.cod-indic-tab = cod-indic-tab-par and param-geral.cod-param = cod-param-par no-lock: return param-geral.des-param. end. return "". end function. define variable cod-categoria-atend-aux as integer no-undo. define variable cod-motivo-atend-aux as integer no-undo. define variable cod-setor-atend-aux as integer no-undo. define variable cod-canal-atend-aux as integer no-undo. define frame f-param cod-categoria-atend-aux at 2 label "Categoria Atendimento" format "99999" view-as fill-in size 10 by 1.5 cod-motivo-atend-aux at 2 label "Motivo Atendimento" format "99999" view-as fill-in size 10 by 1.5 cod-setor-atend-aux at 2 label "Setor Atendimento" format "99999" view-as fill-in size 10 by 1.5 cod-canal-atend-aux at 2 label "Canal Atendimento" format "99999" view-as fill-in size 10 by 1.5 with side-labels title "Editar parametros CRM nao clientes" overlay size 40 by 8 three-d centered row 2.3. assign cod-categoria-atend-aux = int(getParamGlobal("CRM","cod-categ-solic-nao-cli")). assign cod-motivo-atend-aux = int(getParamGlobal("CRM","cod-motivo-solic-nao-cli")). assign cod-setor-atend-aux = int(getParamGlobal("CRM","cod-setor-solic-nao-cli")). assign cod-canal-atend-aux = int(getParamGlobal("CRM","cod-canal-solic-nao-cli")). update cod-categoria-atend-aux with frame f-param. update cod-motivo-atend-aux with frame f-param. update cod-setor-atend-aux with frame f-param. update cod-canal-atend-aux with frame f-param. run atualizar. procedure atualizar private: find first param-geral where param-geral.cod-indic-tab = "CRM" and param-geral.cod-param = "cod-categ-solic-nao-cli" exclusive-lock no-error. if avail param-geral then assign param-geral.des-param = string(cod-categoria-atend-aux). else run criar("cod-categ-solic-nao-cli",cod-categoria-atend-aux). validate param-geral. release param-geral. find first param-geral where param-geral.cod-indic-tab = "CRM" and param-geral.cod-param = "cod-motivo-solic-nao-cli" exclusive-lock no-error. if avail param-geral then assign param-geral.des-param = string(cod-motivo-atend-aux). else run criar("cod-motivo-solic-nao-cli",cod-motivo-atend-aux). validate param-geral. release param-geral. find first param-geral where param-geral.cod-indic-tab = "CRM" and param-geral.cod-param = "cod-setor-solic-nao-cli" exclusive-lock no-error. if avail param-geral then assign param-geral.des-param = string(cod-setor-atend-aux). else run criar("cod-setor-solic-nao-cli",cod-setor-atend-aux). validate param-geral. release param-geral. find first param-geral where param-geral.cod-indic-tab = "CRM" and param-geral.cod-param = "cod-canal-solic-nao-cli" exclusive-lock no-error. if avail param-geral then assign param-geral.des-param = string(cod-canal-atend-aux). else run criar("cod-canal-solic-nao-cli",cod-canal-atend-aux). validate param-geral. release param-geral. end procedure. PROCEDURE criar PRIVATE: DEF INPUT PARAM cod-param-par AS CHAR NO-UNDO. DEF INPUT PARAM int-campo-par AS INT NO-UNDO. CREATE param-geral. ASSIGN param-geral.cod-indic-tab = "CRM" param-geral.cod-param = cod-param-par param-geral.des-param = string(int-campo-par). END PROCEDURE.
Também foi desenvolvido o processo de resposta ou solução do protocolo não cliente. Quando o protocolo é respondido ou solucionado no CRM, é efetuada a integração com o GPU, informando os dados da resposta e se o protocolo foi resolvido (solucionado), conforme o manual.
Conteúdos relacionados: