Skip to content

Tag-icone-mini.png Projetos, Análise, Guia de análise

Referenciado por: Modelo de Protótipo |

Análise
Projeto 222377
Data da Análise: 24/06/2019

Projeto ​

PJ5345 - 222377 - PROCESSO DE INTEGRAÇÃO HOME SALES x LOJAS Ticket: 201905/4739 - PROCESSO DE INTEGRAÇAO HOME SALES x LOJAS

http://gesti.eme4.inf.br/gesti/atendimento/chamado_detalhes.php?COD_CHAMADO=2019054739

Essa análise levanta as customizações necessárias no sistema para atender a solicitação do cliente.

\\ttadm\Anexos_PRJ\GIMBA\222377 - PROCESSO DE INTEGRAÇÃO HOME SALES x LOJAS

Alterações na consulta de saldo utilizando o serviço do Middleware.
Criar serviços independentes para inclusão de Parceiro/Endereços e DAV/Pré-Venda.

Especificação Técnica ​

Configurações Necessárias ​

Origem da Requisição Externa ​

Configuração da Origem é importante para Ambientes que tenham PAF-ECF pois configuração é utilizada na exportação no Arquivos de Registros do PAF-ECF, não sendo obrigatória, assim não será realizado nenhuma validação.

TTConfig >>> Outros >>> Ambiente >>> Guia "Operação" >>> Guia "Outros" >>> Origem da Requisição Externa -> "O - Outros" (TT_CFG.ORICRE).

Diagrama de Processos ​

Diagrama de Processos

Mudanças por Módulo ​

Banco de Dados ​

ESTOQUE ​
GES- 201906/5278 - Banco de Dados - Criar novas colunas na tabela de pagamentos do E-Commerce ​
  1. Criar nova coluna com as seguintes especificações: Tabela: TT_RDV Coluna: EXTCAR Descrição Abrev. (até 20 pos.): Cód. Externo Cartão Descrição Completa: Código Externo da Bandeira do Cartão Tipo/Precisão: VARCHAR(20) Default: -X- Aceita nulo?: Sim Constraints (CK, FK, I_FK, I_LC e I_UQ): -X- Exporta para Checkout?: Não Tratar log?: Sim Incluir coluna nas seguintes views: -X-
  2. Criar nova coluna com as seguintes especificações: Tabela: TT_RDV Coluna: NOSNUM Descrição Abrev. (até 20 pos.): Nosso número Descrição Completa: Nosso número Tipo/Precisão: VARCHAR(20) Default: -X- Aceita nulo?: Sim Constraints (CK, FK, I_FK, I_LC e I_UQ): -X- Exporta para Checkout?: Não Tratar log?: Sim Incluir coluna nas seguintes views: -X-
  3. Criar nova coluna com as seguintes especificações: Tabela: TT_RDV Coluna: VLDCAR Descrição Abrev. (até 20 pos.): Validade Cartão Descrição Completa: Mês e Ano de Validade Cartão Tipo/Precisão: VARCHAR(4) Default: -X- Aceita nulo?: Sim Constraints (CK, FK, I_FK, I_LC e I_UQ): -X- Exporta para Checkout?: Não Tratar log?: Sim Incluir coluna nas seguintes views: -X-
  4. Documentar no Metadados
GES- 201906/1332 - Banco de Dados - Criar novas colunas para código externo no Endereço ​
  1. Criar nova coluna com as seguintes especificações: Tabela: TT_END Coluna: CODEXT Descrição Abrev. (até 20 pos.): Cód. Externo Descrição Completa: Código Externo Tipo/Precisão: VARCHAR(20) Default: -X- Aceita nulo?: Sim Constraints (CK, FK, I_FK, I_LC e I_UQ): -X- Exporta para Checkout?: Não Tratar log?: Sim Incluir coluna nas seguintes views: -X-
  2. Documentar no Metadados
SEPARAÇÃO ​
GES- 201906/3248 - Banco de Dados - Novo Parâmetro de Sistema [NF_APOS_SEPARACAO_EC] ​

Inserir no banco um novo Parâmetro de Configuração de sistema com os seguintes dados: Tabela: TT_PCS Ativo? (PCSATI): T Nome Parâmetro (NOMPCS): NF_APOS_SEPARACAO_EC Descrição Parâmetro (DESPCS): Gera Nota Fiscal após separação completa de pedido do E-Commerce Tipo do Parâmetro (TIPPCS): B - Boolean Geral? (PCSGER): T Filial? (PCSFIL): T ECF? (PCSECF): F Série? (PCSSER): F

Totali Middleware ​

Autenticação Servidor REST ​

Alterações no controle de Autenticação Basica do servidor REST. Inclusão de permissão de conexão com código de empresa especifico para Gimba.

GES- 201906/5567 - Middleware - Alteração no controle de Autenticação Básica do serviço REST ​
  • Descrição da implementação:

Alterar processo de Validação do usuário de Autenticação Basica do Middleware controlando por uma Lista de usuário e não apenas um.

Unit TTDWebHTTPRestMiddleware, alterar pontos de validação do "ARequestInfo.AuthUsername" para validar com base em uma lista.

Na Lista deve conter o usuário atual e um novo especifico para GIMBA com uma senha Forte.

GES- 201906/5568 - Middleware - Permissão para Conexão ao Middleware com Código de Empresa Especifico ​
  • Descrição da implementação:

Criar código de empresa 9 na TTUSEGURDLL para GIMBA. Tratar novo código nas funções do PAF-ECF. Tratar na função "TSessaoMiddlewareHelper.fromJSON" para permitir uma lista de empresas sendo a Totali, Gimba e no futuro outras. Sugestão adicionar a lista de empresas parceiras atualmente validadas no PAF-ECF pela função RetSenInt da unit TTUSEGURDLL, e adicionar a GIMBA

TOTALI = 0; INTERSYS = 1; ADVANCE = 2; SARAIVA = 3; MODERNA = 4; WALLIS = 5; BENNER = 6; MLBC = 7; KINDER = 8; GIMBA := 9;

ESTOQUE ​

O E-Commerce deverá acessar a "Tab. Saldos" para consultar, e depois ao registrar a Venda do Pedido, o saldo será atualizado pelo Totali.

  1. E-Commerce deverá utilizar o método "Commerce API -> ConsultaRetaguarda" de consulta a base da retaguarda.
  2. Será alterado a consulta "500 - Saldo de Estoque do Produto" tornando o parâmetro "set_Produtos" opcional e adicionando filtro simplificado
    onde irá receber a chave obtida e deverá desmenbrar o valor para realizar a consulta.
GES- 201906/5025 - Middleware - Alterar SQL da consulta "500 - Saldo de Estoque do Produto" ​
  • Descrição da implementação:

Substituir o sql da consulta "500 - Saldo de Estoque do Produto" pelo SQL: select coalesce(sal.qtdest,0) - coalesce(sal.reserv,0) as "Qtd", cast( gra.filmat || gra.sequen as varchar(13) ) as "Chave", cast( sal.codmul as varchar(5) ) as "Documento", cast( 'true' as varchar(5)) as "B_Ok" from tt_sal sal inner join tt_gra gra on gra.filmat = sal.filmat and gra.codmat = sal.codmat and gra.codcor = sal.codcor and gra.codtam = sal.codtam where sal.codfil = :str_Filial /*<opcional>*/ and (gra.filmat, gra.sequen) in (:set_Produtos) /*</opcional>*/ /*<opcional>*/ and gra.filmat = substr(:str_Produto,1,03) /*</opcional>*/ /*<opcional>*/ and gra.sequen = substr(:str_Produto,4,10) /*</opcional>*/ /*<opcional>*/ and cast( sal.codmul as varchar(5) ) in (:set_Chaves) /*</opcional>*/

PEDIDOS ​

Será criado dois web service para atender a necessidade do cliente de Registro do DAV enviado pelo E-commerce.

  1. Este web service para cadastro/alteração do Parceiro/Endereço semelhante ao processo do Totali POS.
  2. Este web service guardará o DAV, Itens e a forma de pagamento efetuada Dav (TT_ORC), Itens (TT_IOR) e Pagamentos (TT_RDV).
GES- 201906/4839 - Middleware - Criar Serviço REST para Persistência de Parceiro/Endereços ​

Serviço: Commerce API -> PersisteParceiro
Papel do Middleware: Matriz
Validar acesso ao Middleware?: Sim

  • Descrição da implementação:

Criar um serviço que realize a persistência do parceiro e endereços retornando a Chave de inclusão do Parceiro e Endereços.
Serviço deve tratar a inclusão/alteração de parceiro quando localizado pelo código externo, chave "filcli/codcli" ou Documento.
Serviço deve tratar a inclusão/alteração de endereço do parceiro quando localizado pelo código externo, chave "filcli/codcli/codfil,numend" ou Documento.
Código da Filial caso não informado buscar da TT_IDF.CODLOJ.
Código do usuário buscar TT_IDF.USUADM -> TT_USU.APEUSU pegando o FILUSU e CODUSU da TT_USU.

  • Parâmetros de Entrada / Parâmetros de Saída:

http://intra.totall.com.br:8080/wiki/index.php/TCommerceAPI_PersisteParceiro

GES- 201906/5069 - Middleware - Criar Serviço REST para Persistência de DAV/Pré-Venda de Origem Externa ​

Serviço: Commerce API -> PersisteDAV
Papel do Middleware: Matriz
Validar acesso ao Middleware?: Sim

  • Descrição da implementação:

Criar um serviço que realize a persistência do DAV retornando a Chave de inclusão.
Serviço deve tratar a inclusão/alteração de Dav(TT_ORC)/Itens(TT_IOR)/Pagamentos(TT_RDV) quando localizado pelo código externo "TT_ORC.NUMPED_RE" que deve ser obrigatório.

  1. Produtos devem reservar estoque ao serem inseridos.
  2. Sugestão é utilizar processo semelhante a gravação da transação do POS quando Tipo DAV/DAV-OS/Pré-Venda.

Quando Origem do DAV for E-Commerce deve-se marcar o mesmo como Televendas assim irá gerar registro na TT_IVO para realização da separação do DAV. pode-se identificar quando for informado valor na coluna "SituacaoEcommerce".
Se DAV localizado e existir pagamentos(TT_RDV) gerar mensagem de inconsistência informando que não é permitido alteração de DAV com pagamentos.
Código do usuário buscar TT_IDF.USUADM -> TT_USU.APEUSU pegando o FILUSU e CODUSU da TT_USU.
Plano de Pagamento caso não informado buscar da TT_CFG.VC_FILPGT, TT_CFG.VC_CODPGT - TCommerceUtilDAO.GetPlanoDePagamentoAVista. Tabela de Preço caso não informado buscar da TT_CFG.FILPRE, TT_CFG.CODPRE - TCommerceUtilDAO.GetTabelaDePrecos.

  • Parâmetros de Entrada / Parâmetros de Saída:

http://intra.totall.com.br:8080/wiki/index.php/TCommerceAPI_PersisteDAV

SEPARAÇÃO ​
  1. Criar serviço para Impressão de Ordem de Separação do DAV, conforme Modelo selecionando no diretório "Report\OrdemDeSeparacao\DAV"
    1. Será criado método para consulta de modelo TCommerceLocalAPI_ConsultaModelosOrdemDeSeparacaoDAV

    2. Será criado método para impressão de Ordem de Separação TCommerceLocalAPI_ImprimeOrdemDeSeparacaoDAV
      Obs: O problema de utilizar o mesmo método de impressão de DAV é que o processo espera o XML de Transação do POS e não apenas um objeto de DAV, sugestão é criar algo para receber apenas a chave do DAV, montar os objetos e passar para o Serviço atual de impressão.

    3. Será criado opção no WSMiddleware para possibilitar edição de Modelo de Ordem de Separação semelhante a edição do modelo de DAV/DAV-OS.

  2. Criar novo serviço para geração de Nota com base em um DAV/Pré-Venda.
    1. Serviço deverá gerar parcelas pagas quando já existir pagamentos vinculados a DAV (TT_RDV).
    2. Serviço deverá gerar parcela em aberto quando não existir pagamento para que pagamento seja realizado posteriormente pelas opções já existente no sistema para receber débitos como a função do POS (F5 - Recebimento - Função 400).
  3. Alteração no processo de separação para tratar emissão automática de nota fiscal quando separação total do DAV de origem do e-commerce.
    1. Alterar processo existente de separação para chamar serviço de emissão de nota com base no DAV quando pedido for separado totalmente, origem do e-commerce e parâmetro [NF_APOS_SEPARACAO_EC] ativo.
    2. Será criado uma nova configuração padrão de impressora do DANFE para Nota emitida automática após separação.
GES- 201906/3249 - Middleware - Criar Serviço REST para Imprimir Ordem de Separação ​

Serviço: Commerce API -> ImprimeOrdemDeSeparacaoDAV
Papel do Middleware: Matriz
Validar acesso ao Middleware?: Sim

  • Descrição da implementação:

Criar serviço para Imprimir Ordem de Separação conforme Modelo informado. Caso não informado o NomeImpressora deverá imprimir na impressora padrão do windows. Caso informado a não impressão retornar em Base64 o arquivo PDF. considerar retorno comprimido conforme parâmetro. Deve-se utilizar o componente de relatório ReportBuilder. Modelos devem ser validados no diretório "Report\OrdemDeSeparacao\DAV".

  1. Sugestão é utilizar processo semelhante a TCommerceLocalAPI_ImprimeDAV.

Modelo Padrão deve seguir imagem destacada no artigo de analise incluindo os campos conforme solicitação do cliente.

  1. "Incluir na Ordem de Separação Impressa/Tel: Cliente (CPF/CNPJ e Nome), Nº Pedido/Requisição Externo, Hora do Pedido, Endereço de Entrega (Logradouro, Nº, CEP, Bairro), Contato (Nome e Telefone), Valor Totali do Pedido, Forma de Pgto, Qtde de Produtos e Tipo de Entrega."

Modelo Ordem Separação

  • Parâmetros de Entrada / Parâmetros de Saída:

http://intra.totall.com.br:8080/wiki/index.php/TCommerceAPI_ImprimeOrdemDeSeparacaoDAV

GES- 201906/3250 - Middleware - Criar Serviço REST para Consultar Modelo de Ordem de Separação ​

Serviço: Commerce API -> ConsultaModeloOrdemDeSeparacaoDAV
Papel do Middleware: Matriz
Validar acesso ao Middleware?: Sim

  • Descrição da implementação:

Criar serviço para cunsultar modelos Disponíveis para Impressão de Ordem de Separação no diretório "Report\OrdemDeSeparacao\DAV".

  1. Sugestão é utilizar processo semelhante a TCommerceLocalAPI_ConsultaModelosDAV.
  • Parâmetros de Entrada / Parâmetros de Saída:

http://intra.totall.com.br:8080/wiki/index.php/TCommerceAPI_ConsultaModeloOrdemDeSeparacaoDAV

GES- 201906/3251 - WSMiddleware - Criar menu para possibilitar a edição do Modelo de Ordem de Separação ​
  • Descrição da implementação:

Criar Guia no WSMiddleware para possibilitar edição do Modelo de Ordem de Separação de DAV no diretório "Report\OrdemDeSeparacao\DAV".

  1. Trazer combo com Modelos Personalizados existentes.
  2. Sugestão é utilizar semelhante ao existente para edição do Modelo DAV/DAV-OS do WSMiddleware.
GES- 201906/3252 - WSMiddleware - Criar configuração de impressora padrão para Notas automática após a separação ​
  • Descrição da implementação:

Criar nova configuração por empresa para definição da impressora padrão para DANFE da nota gerada após separação.

Configurações por Empresa >>> 5 - Impressão >>> Criar combo dentro do Grupo "DANFE pela Mensageria Totali Commerce" para Seleção de Impressora para nota gerada após separação. TCfgEmpresa -> ImpressaoNFe (TCfgImpressaoNFe -> ImpressoraNotaSeparacao)

GES- 201906/3254 - Middleware - Criar Serviço REST para gerar Nota com base em um Orçamento (DAV/Pré-Venda) ​

Serviço: Commerce API -> GeraNotaDAVPreVenda
Papel do Middleware: Matriz
Validar acesso ao Middleware?: Sim

  • Descrição da implementação:

Criar serviço para gerar nota a partir de um orçamento, gerando suas parcelas como pagas ou em aberto conforme pagamentos do Orçamento.

Tabelas de origem envolvidas. (TT_ORC - Orçamento, TT_IOR - Itens do Orçamento, TT_RDV - Pagamentos do DAV).

A Ideia é receber a chamada do serviço ao efeturar a separação completa do Orçamento recebendo assim o a chave do DAV/Pré-Venda. Gerar nota fiscal para o DAV/Pré-Venda.

quando houver pagamentos na TT_RDV deve gerar as parcelas correspondentes como Pagas gerando detalhes do pagamento quando possível. quando não houver pagamentos deve gerar uma parcela em aberto para que possa ser recebida posteriormente pelo POS.

A nota fiscal depende de algumas informações como Unidade de negocio, série, natureza e etc. nesses casos devemos buscar essas informações das configurações como por exemplo utilizando os métodos.

TCommerceUtilDAO.GetUnidadeDeNegocioFaturamento, TCommerceUtilDAO.GetSerieFilial, TCommerceUtilDAO.GetNaturezaPadraoVenda

  • Parâmetros de Entrada / Parâmetros de Saída:

http://intra.totall.com.br:8080/wiki/index.php/TCommerceAPI_GeraNotaDAVPreVenda

GES- 201906/3255 - Middleware - Tratar geração automática da nota fiscal após separação do Pedido do E-Commerce ​

Serviço: Commerce API -> Separar
Papel do Middleware: Matriz
Validar acesso ao Middleware?: Sim

  • Descrição da implementação:

Ao processar uma separação do pedido (DAV/Pré-Venda) gerar nota do pedido pelo método "TCommerceAPI\GeraNotaDAVPreVenda" considerando as condições:

Pedido teve sua separação total realizada. Pedido de E-Commerce. idenfifica-se pedido de E-Commerce quando valor definido na coluna "TT_ORC.FLGECO". Parâmetro [NF_APOS_SEPARACAO_EC] ativo. Enviar impressora padrão configurada para emissão de nota após separação "TCfgEmpresa -> ImpressaoNFe (TCfgImpressaoNFe -> ImpressoraNotaSeparacao)"

Totali Commece Web ​

SEPARAÇÃO ​
  1. Será criado uma tela para consulta de DAV/Pré-Venda possibilitando multipla seleção para impressão da Ordem de Separação.
    1. Criar tela possibilidando filtrar pedidos pela situação, gerados pelo E-Commerce, com dados de cliente (nome, telefones e e-mail), hora do pedido, CEP e valor.
GES- 201906/3256 - Commece Web - Criar tela para consulta de DAV/Pré-Venda ​
  • Descrição da implementação:

Menu: CommerceWeb >>> DAV/Pré-Venda >>> Consulta Filtros Fixos: Situação - Valor inicial apenas Pendentes. Filtros Dinámicos: Apenas Pedidos de Origem do E-Commerce identifica-se que um DAV é do E-Commerce quando existe Valor na Coluna "TT_ORC.FLGECO", Filial, Período, Cliente, Número Pedido Externo. 1º Tela - Exibir colunas: Filial, Tipo do Dav, Número Pedido, Número Pedido Externo, Nome do cliente, Telefone do Cliente, E-mail do Cliente, Data/Hora do pedido, CEP do Endereço de Entraga, Valor Total, Situação da DAV no E-Commerce. 2º Tela - Exibir combo para selecionar (Nome da Impressora, Modelo da Orderm de Separação), checkbox para definir de deverá imprimir ou não. Carregado combo buscando as informações do Middleware, através do serviço "TConexaoAPI/ConsultaImpressora" e "TCommerceAPI\ConsultaModeloOrdemDeSeparacaoDAV". Criar Botão para imprimir "Ordem de Separação", possibilitar selecionar um ou mais pedido.

Layout de Integração ​

http://intra.totall.com.br:8080/wiki/index.php/APIs_do_Totall_Middleware