Implementando o widget do Notes
Os associados da loja usam o widget Notas para capturar e visualizar detalhes, como o histórico de pedidos ou quaisquer outras informações adicionais associadas a um perfil do cliente... Esta seção descreve as APIs, os serviços e outros componentes que são usados para implementar o widget do Notes no Sterling Store Engagement.
Suposições e Limitações
- Notas são classificadas com base na data de criação.
- Os filtros do Notes são reconfigurados ao incluir novas notas ou ao fechar o widget Notes.
- O widget Notes suporta a paginação do lado do cliente.
- Por padrão, os filtros do Notes não são selecionados
Solução
O widget Notes está disponível em várias páginas do Sterling Store Engagement, como a página de resumo da OT e as várias páginas de recebimento de inventário e de pesquisa de inventário. O widget do Notes também está disponível nas páginas de resumo do pedido, detalhes do cliente e detalhes do carrinho de compras.
É possível marcar uma nota como importante se você desejar sinalizar a nota como importante. Também é possível filtrar a lista de notas com base no usuário que a incluiu, Sistema ou Usuário e o sinalizador Importante.
A API getNoteList é chamada para recuperar notas baseadas em TableKey e TableName. A mesma API é usada para filtrar as notas com base em se ela foi registrada pelo usuário, sistema gerado ou o sinalizador Importante está configurado. Essas ações são manipuladas dentro do próprio componente do Notes.
Nos casos em que a busca da lista de notas não usa a API genérica, os dados da lista de notas podem ser transmitidos diretamente para o componente-filho A lógica e a implementação do mashup Add new note permanecerão como estão. Como os parâmetros de entrada e a API para incluir uma nota são principalmente diferentes com base na tela, novos dados de notas serão emitidos para o componente pai.
notesList no componente modal Notes filho por um dos métodos a seguir:- Chamando o método
AddNewNoteno componente modal Notes. - Atualizando diretamente a propriedade
noteListusandocomponentInstance
Por padrão, os filtros estão disponíveis No entanto, é possível configurar para ocultar os filtros passando showFilters como false para o componente Notes
Detalhes do Componente
- Se os parâmetros de entrada ou a API que é usada para buscar as notas não forem genéricos, o componente pai poderá passar diretamente notesList. Caso contrário, o noteTableEntityobject deve ser passado com as propriedades
entityTableKeyeentityTableName, que o widget Notes usa para obter as notas. - A página de detalhes do cliente usa a API getParticipantNoteList. Nesse caso, deve-se passar
isParticipantNotecomo true e somente a propriedadeentityTableKeyé necessária Com base nisso, o widget do Notes busca e filtra os dados. - Nos casos em que os dados do
notesListsão transmitidos do componente pai, na atualização de filtros, os dados são emitidos para o componente pai. O componente-pai, então, busca os dados donotesListnovamente e atualiza no componente-filho Nota - Para alterar o título do widget Notes de Notes (contagem), deve-se passar
modalTitleKey, que é a chave de tradução, do componente pai... Contagem pode ser usado como um parâmetro de tradução no título
Decoradores de entrada
notes-modal são os seguintes:notesList. Usado se uma API diferente da API dogetNoteListfor usada para buscar a lista de notasshowFilters. Usado para exibir os filtros, ou seja, Sistema, Usuário e Importante O valor padrão é true.noteTableEntity. Passado quando a entrada ou API usada para buscar notas não é genérica.isParticipantNote. Configure comotruese desejar que o widget Notes use a APIgetParticipantNoteListem vez da APIgetNoteList. O padrão é false.modalTitleKey. Use esta chave de conversão para alterar o título modal de Notas (contagem)..noNotesMessage. Opcional. Utilize se desejar exibir uma mensagem exclusiva quando a contagem de notas for 0.
Emissores de saída
newNoteItem. Usado para incluir uma nova notanoteFilterCriteria. Usado se uma API diferente da API dogetNoteListfor usada para buscar a lista de notas
Uso
Opção 1 (Genérico. Passe entityTableKey e entityTableName como parte do objeto noteTableEntity . O mashup da API getNoteList é chamado internamente dentro desse componente Na aplicação de filtros, a lista de notas é atualizada dentro do componente
Opção 2. Passe isParticipantNote como true se desejar usar a API getParticipantNoteList em vez da API getNoteList para buscar e filtrar as notas. Nesse caso, você deve passar apenas entityTableKey como parte do objeto noteTableEntity Você não precisa passar entityTableName.
Opção 3 (específica). A chamada getNotes é feita a partir do componente-pai, pois a API ou a entrada de mashup é exclusiva Em seguida, noteList é inicializado durante a abertura do modal usando componentInstance Nesse caso, quando os filtros são aplicados, o emissor noteFilterCriteria emite a consulta complexa, que pode ser usada pelo componente pai para buscar novamente as notas e reconfigurar o notesList no componente filho. O método updateNotesCount pode ser usado para atualizar notesCount do componente-pai.
implementação
Os mashups a seguir são usados para a implementação do widget Notes:
- API-
getNoteListou, no caso da página Detalhes do cliente ,getParticipantNoteList - Entrada-
{ 'Note': { 'TableKey': tableKey, TableName: tableName } }
- API-específico para o componente pai. Por exemplo,
changeOrder.. - Entrada-específico para o componente pai. Por exemplo, para a API
changeOrder, a entrada pode ser a seguinte:{ 'Order': { 'OrderHeaderKey': key, 'Notes'; { 'Note': [ 'NoteText': text, 'Priority': 0 ] } }