====== Especificação funcional: Atendimentos ======
===== Resumo =====
Este módulo cadastra atendimentos para serviços prestados a um determinado ponto de atendimento.
===== Descrição =====
O objetivo deste módulo é registrar os atendimentos realizados para os pontos de atendimentos cadastrados no sistema. Através deste cadastro o usuário consegue identificar os serviços prestados para os pontos de atendimento e a quantidade de atendimentos realizadas para um ponto específico. Consegue ainda discriminar quem solicitou o atendimento realizado para o ponto, além de registrar as coordenadas geográficas informando a localização da ocorrência do serviço prestado.
Para registrar um atendimento, são necessários os seguintes dados:
|< 100% 19% 60% 7% 7% 7%>|
^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^
|Data do cadastro | Data da entrada da solicitação na Secretaria | Data | -- | Sim |
|Número | Número do atendimento | Texto | 20 | Não |
|Solicitante | Identificação da Pessoa que solicitou o serviço | Número | -- | Sim |
|Ponto de atendimento | Indica o ponto de atendimento beneficiado | Número | -- | Sim |
|Serviços | Listagem de todos os serviços a serem prestados no atendimento | -- | -- | Sim |
|Observações | Informações adicionais | Texto | 500 | Não |
Junto com cada serviço, devem ser informados dados adicionais, conforme a tabela abaixo:
|< 100% 19% 60% 7% 7% 7%>|
^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^
|Serviço | Descrição do serviço previamente cadastrado | Texto | 40 | Sim |
|Estado | Andamento do [[softwares:geoservicos:requisitos:modulos:servicos|serviço]] | Objeto | -- | Sim |
|Objetivo de atendimento | Indica o objetivo esperado com a prestação do serviço | Texto | 60 | Não |
|Técnico responsável | Nome do técnico responsável pela execução do serviço | Texto | 120 | Não |
|Responsável pelo atendimento | Nome do usuário do sistema que cadastrou o atendimento (somente leitura) | Texto | 120 | Sim |
|Quantidade solicitada | Quantidade do serviço que foi solicitada, de acordo com a unidade do serviço | Número | 15 | Não |
|Quantidade atendida | Quantidade do serviço que foi executada, de acordo com a unidade do serviço | Número | 15 | Não |
|Data prevista | Data prevista para execução do serviço | Data | -- | Não |
|Data de execução | Data de execução do serviço | Data | -- | Não |
|Descrição do Serviço | Descrição detalhada dos serviços prestados | Texto | 500 | Não |
|Valor unitário* | Valor unitário do serviço | Número | 15 | Não |
|Valor total | Valor total do serviço: quantidade (solicitada ou atendida) x valor unitário | Número | 15 | Não |
|Informações adicionais | Campo informações adicionais | Texto | 2000 | Não |
|Títulos | Lista de títulos do Monnae vinculados ao serviço | Objeto | -- | Não |
|Anexos | Lista de arquivos anexados ao serviço | Objeto | -- | Não |
|Valores personalizados | Valores para os campos personalizado definidos no cadastro do serviço | Objeto | -- | Não |
|Histórico | Liste de alterações no estado do serviço, com usuário, data/hora e estado alterado | Objeto | -- | Não |
|Fotos |Lista de fotos do serviço, armazenadas na forma de arquivos anexados | Objeto | -- | Não |
==== Vincular serviços a um atendimento ====
=== Um serviço de cada vez ===
O usuário pode, ao cadastrar ou alterar um atendimento, selecionar os serviço um a um, cada um com seus dados, assim como os do atendimento, como listados acima.
Para isto o sistema deve permitir ao usuário incluir, alterar, excluir e visualizar serviços numa lista.
Nesta lista os dados dos serviços não serão editados e devem ser exibidos os campos: descrição do serviço, quantidade solicitada, quantidade atendida, data prevista, data de execução,
unidade de medida, valor unitário, valor total, status e descrição detalhada.
O sistema exibirá uma outra tela com os detalhes do serviço para que o usuário possa preencher os campos.
Além disto, na tela de detalhes do serviço o usuário deve ter acesso à lista de valores da UFIR cadastrados no serviço, onde poderá selecionar um dos pares cadastrados.
Este campo é opcional e só deve estar habilitado caso haja uma lista valores cadastrada no serviço.
O valor selecionado será usado no cálculo dos campos personalizados do mesmo serviço, quando aplicável.
=== Vários serviços de uma vez: inclusão ===
Para dar mais agilidade ao cadastrar vários serviços num mesmo atendimento, o usuário poderá informar apenas uma vez os campos em comum entre todos os serviços atendidos. O usuário seleciona uma lista de serviços a serem incluídos no atendimento, edita os campos que devem ter os mesmos valores para todos os serviços e, se for preciso, edita os campos específicos de cada serviço. Os serviços serão listados num grid onde estes campos específicos poderão ser editados diretamente.
Os campos em comum são:
* Objetivo do atendimento;
* Técnico responsável;
* Descrição detalhada;
* Informações adicionais;
Os campos que podem ter valores diferentes para cada serviço são:
* Quantidade solicitada;
* Quantidade atendida;
* Data prevista;
* Data de execução;
* Valor unitário;
* Estado.
Estes também podem ser informados uma única vez, junto com os campos em comum para facilitar o preenchimento dos valores para todos os serviços. Quando a alteração de um destes campos for feita desta forma, o valor correspondente deve ser replicado para todos os serviços no grid. Quando um valor for informado especificamente para um serviço, é este valor que deve ser salvo.
Os serviços cadastrados de uma só vez não terão registrados os títulos, anexos e campos personalizados.
=== Vários serviços de uma vez: alteração ===
Também visando facilitar o trabalho de cadastro, o sistema deve permitir a alteração de uma só vez de vários serviços previamente cadastrados em algum atendimento. Para isso, o usuário deve filtrar os serviços selecionados na tela de consulta de atendimentos, na visão ATENDIMENTOS x SERVIÇOS, e acionar a alteração. Mesmo que os serviços sejam de atendimentos diferentes, o sistema deve exibir a lista de serviços para alteração usando a mesma tela que faz a inclusão.
Os campos em comum para todos os serviços, que são os mesmos acima, devem ser exibidos em branco, só sendo replicados caso sejam alterados pelo usuário.
Como cada serviço pode ser de um atendimento diferente, o sistema deve exibir os dados do atendimento (data, solicitante e ponto de atendimento) quando o usuário selecionar um dos serviços, para que ele saiba em qual atendimento aquele serviço foi cadastrado.
Ao alterar vários serviços de uma vez, o usuário também não poderá fazer alterações nos títulos, anexos e campos personalizados
==== Vários atendimentos com o mesmo serviço ====
Para facilitar o trabalho de registro de atendimentos, o sistema deve permitir que o usuário cadastre de uma só vez o mesmo serviço para vários pontos de atendimento. Para isto, deverão ser usados os pontos dos atendimentos filtrados na consulta de pontos de atendimento.
Deverá ser exibida uma lista com cada ponto a ser atendido e cada pessoa vinculada aos pontos, repetindo os pontos que tiverem mais de uma pessoa vinculada. Estas pessoas serão os solicitantes dos atendimentos. Os pontos sem pessoas vinculadas também devem ser listados porém com o solicitante em branco. Devem ser exibidas também na lista a quantidade solicitada e a quantidade atendida.
O usuário poderá marcar os pontos para os quais quer cadastrar atendimentos, alterar os solicitantes, a quantidade solicitada e a quantidade atendida para cada ponto/pessoa.
Os campos em comum para todos os atendimentos são:
* Data do cadastro (do atendimento);
* Serviço;
* Objetivo do atendimento;
* Técnico responsável;
* Estado do serviço;
* Data prevista;
* Data de execução.
As quantidades solicitada e atendida também podem ser preenchidas de uma só vez junto com os dados do serviço, replicando automaticamente as quantidades para cada ponto listado.
Será inserido um atendimento para cada par ponto/pessoa selecionado pelo usuário, com os mesmos dados do serviço.
O sistema deve replicar todos os campos do serviço em todos os atendimentos gerados, incluindo os títulos, anexos, fotos e campos personalizados.
==== Estado ====
Os estados podem ser definidos pelo usuário no cadastro de [[softwares:geoservicos:requisitos:modulos:servicos|serviços]].
Os serviços devem ser diferenciados por cores na visão de atendimentos x serviços, de acordo com tipo do seu estado:
* //Inicial//: preto;
* //Intermediário//: laranja;
* //Cancelado//: cinza;
* //Final//: verde.
Não há restrição quando às mudanças de estado de um serviço.
O histórico de alterações no estado do serviço deve ser mantido automaticamente pelo sistema, não podendo ser alterado pelo usuário.
==== Duplicar atendimentos ====
O usuário deve poder duplicar um atendimento, criando outro com os mesmos dados e os mesmos serviços do atendimento original.
O sistema vai perguntar ao usuário se ele quer manter os valores dos campos personalizados. Se ele decidir não mantê-los, todos os valores personalizados deve ser apagados no novo atendimento.
Quando um atendimento for duplicado a tela de cadastro deve ser mostrada para que o usuário possa alterar os dados antes de salvar. Se o usuário cancelar o cadastro, não haverá duplicação.
==== Visualização dos dados ====
Ao abrir a lista de atendimentos, na visão detalhada por serviço, o usuário deve poder identificar o prazo de vencimento dos serviços. Este será dado por duas colunas: "Dias do vencimento" e "Situação". O valor das duas colunas é definido em função das datas do serviço, da seguinte maneira:
|<100%>|
^ Data prevista ^ Data de execução ^ Dias do vencimento ^ Situação ^
| vazia | vazia | vazio | vazio |
| anterior à data corrente | vazia | DATA PREVISTA - DATA CORRENTE (negativo) | "VENCIDO" |
| igual ou posterior à data corrente | vazia | DATA PREVISTA - DATA CORRENTE (maior ou igual a 0) | "A VENCER" |
| vazia | qualquer | vazio | "EXECUTADO" |
| qualquer | qualquer | DATA PREVISTA - DATA DE EXECUÇÃO | "EXECUTADO" |
==== Campos personalizados ====
Caso o serviço selecionado tenha campos personalizados do tipo fórmula e estas fórmulas tenham sido definidas no cadastro de [[softwares:geoservicos:requisitos:modulos:servicos|serviços]] para preencher automaticamente certos campos do atendimento, estes campos devem ser atualizados automaticamente com o valor da fórmula sempre que esta for alterada.
==== Impressão de ordem de serviço ====
A ferramenta de impressão de OS foi criada devido a necessidade de gerar um documento contendo os dados de um serviço diretamente relacionado a um atendimento para que seja executado por um técnico responsável.
A impressão da OS deve permitir a definição de um modelo personalizado, criado de acordo com as necessidades do usuário. Cada [[softwares:geoservicos:requisitos:modulos:servicos|serviço]] pode ter um modelo próprio. Caso um determinado serviço não tenha um modelo personalizado, a OS deve ser impressa segundo o modelo padrão do sistema. No modelo padrão, todos os campos listados abaixo devem estar presentes. Nos modelos personalizados, estes campos podem ser inseridos no texto com os códigos indicados nas tabelas abaixo.
==== Impressão dos dados do atendimento ====
Também é possível imprimir de uma vez os dados de um atendimento. A principal utilidade desta funcionalidade é listar todos os serviços atendidos ou previstos num dado atendimento, junto com os campos do próprio atendimento.
A impressão do atendimento deve permitir a definição de um modelo personalizado. Cada [[softwares:geoservicos:requisitos:configuracoes:secretarias|secretaria]] pode ter um modelo próprio. Caso a secretaria do usuário logado no sistema não tenha um modelo personalizado, o atendimento deve ser impresso segundo o modelo padrão do sistema.
As tabelas abaixo mostram quais campos são usados na impressão das ordens de serviço e dos atendimentos. Nos modelos personalizados, estes campos podem ser inseridos no texto com os códigos indicados nas tabelas abaixo.
==== Impressão de várias ordens de serviço ====
Ao consultar os serviços cadastrados, o usuário pode filtrar os serviços exibidos para imprimir automaticamente as ordens de serviço de cada um deles. A impressão deve respeitar os modelos personalizados de cada serviço, quando existirem. Todos os serviços com o mesmo modelo devem ser agrupados num só documento de modo que cada modelo seja impresso separadamente.
=== Dados do atendimento ===
|< 100% >|
^ Campo ^ Descrição ^ Código do campo personalizado ^ Ordem de serviço ^ Atendimento ^
|Nome do solicitante | Nome do solicitante do atendimento | {SOLICITANTE} | x | x |
|CPF/CNPJ | Documento do solicitante | {CPF SOLICITANTE} | x | x |
|RG/CTPS | Número e UF do RG do solicitante | {RG SOLICITANTE} | x | x |
|Endereço do solicitante | Endereço contendo logradouro, bairro, número e CEP | {ENDERECO SOLICITANTE} | x | x |
|Telefone | Telefone do solicitante | {TELEFONE SOLICITANTE} | x | x |
|Ponto de atendimento | Nome do ponto de atendimento | {PONTO DE ATENDIMENTO} | x | x |
|Código do ponto de atendimento | Código do ponto de atendimento | {CODIGO PONTO} | x | x |
|Documento | Tipo e número do documento do ponto de atendimento | {DOCUMENTO PONTO} | x | x |
|Endereço do ponto de atendimento | Endereço contendo logradouro, bairro, número e CEP | {ENDERECO PONTO} | x | x |
|Categoria | Categoria do ponto de atendimento | {CATEGORIA PONTO} | x | |
|Código | Código do atendimento | {CODIGO ATENDIMENTO} | x | x |
|Número | Número do atendimento | {NUMERO ATENDIMENTO} | x | x |
|Data do atendimento | Data de cadastro do atendimento | {DATA ATENDIMENTO} | x | x |
|Responsável pelo ponto de atendimento | Nome do responsável pelo ponto de atendimento | {RESPONSAVEL PONTO} | x | x |
|CPF/CNPJ | Documento do responsável pelo ponto | {CPF RESPONSAVEL} | x | x |
|Telefone | Telefone do responsável pelo ponto | {TELEFONE RESPONSAVEL} | x | x |
|Observações | Valor do campo observações do atendimento | {OBSERVACOES ATENDIMENTO} | x | x |
=== Dados do serviço ===
|< 100% >|
^ Campo ^ Descrição ^ Código do campo personalizado ^ Ordem de serviço ^ Atendimento ^
|Serviço | Nome do serviço a ser executado através da OS | {SERVICO} | x | |
|Lista de serviços | Todos os serviços do atendimento com seus dados | {SERVICOS} | | x |
|Código do serviço | Identificação única de cada serviço solicitado/atendido | {CODIGO SERVICO} | x | |
|Objetivo do atendimento | Indica o objetivo esperado com a prestação do serviço | {OBJETIVO ATENDIMENTO} | x | |
|Técnico responsável | Nome da pessoa responsável pela execução do serviço | {TECNICO} | x | |
|Descrição detalhada do serviço | Descrição detalhada do que será feito no serviço | {DESCRICAO SERVICO} | x | |
|Data prevista | Data prevista para execução do serviço | {DATA PREVISTA} | x | |
|Data de execução | Data em que foi ou será executado o serviço | {DATA EXECUCAO} | x | |
|Início | Campo aberto para inclusão de qualquer dado | - | x | |
|Término | Campo aberto para inclusão de qualquer dado | - | x | |
|Quantidade solicitada* | Quantidade do serviço solicitada | {QUANTIDADE SOLICITADA} | x | |
|Quantidade atendida | Quantidade que foi atendida pelo técnico | {QUANTIDADE ATENDIDA} | | |
|Valor unitário | Valor unitário do serviço | {VALOR UNITARIO} | x | |
|Valor do serviço | Valor a ser pago pelo serviço | {VALOR TOTAL} | x | |
|Foto do serviço (1) | Primeira foto do serviço | {FOTO 1} | x | |
|Foto do serviço (2) | Segunda foto do serviço | {FOTO 2} | x | |
|Informações adicionais do serviço | Valor do campo informações adicionais | {INFORMACOES SERVICO} | x | |
|Unidade de medida* * | Unidade do serviço selecionado | {UNIDADE MEDIDA} | x | |
|Cargo do responsável* * | Cargo do responsável pela autorização do serviço | {CARGO RESPONSAVEL} | x | |
|Campos personalizados* * | Lista com os nomes e valores dos campos personalizados, separados por grupos | {CAMPOS PERSONALIZADOS} | x | |
|Quantidade solicitada total | Soma das quantidades solicitadas dos serviços no atendimento | {QUANTIDADE SOLICITADA TOTAL} | | x |
|Quantidade atendida total | Soma das quantidades atendidas dos serviços no atendimento | {QUANTIDADE ATENDIDA TOTAL} | | x |
|Valor total do atendimento | Soma dos valores totais dos serviços no atendimento | {VALOR TOTAL ATENDIMENTO} | | x |
Obs.: As fotos do serviço serão inseridas no documento sem restrição de tamanho ou alinhamento. Cabe ao modelo determinar como as fotos serão exibidas.
* No modelo padrão a quantidade sempre vem acompanhada da unidade de medida.
* * Apenas nos modelos personalizados.
Também é possível inserir o valor de um único campo personalizado usando o nome do campo como código precedido por ":".
Exemplo: se tivermos um campo com o nome "DATA DE COMPRA" e o valor "23/02/2016", o seguinte texto num modelo personalizado
DATA DE COMPRA: {:DATA DE COMPRA}
deve gerar a saída:
DATA DE COMPRA: 23/02/2016
Os campos quantidade atendida, data de início e data de término devem ser impressos em branco no modelo padrão a fim de serem preenchidos pelo técnico.
=== Dados das configurações ===
Os seguintes campos das configurações do sistema também podem ser usados:
|< 100% >|
^ Campo ^ Descrição ^ Código do campo personalizado ^ Ordem de serviço ^ Atendimento ^
|Razão social | Razão social do emitente | {RAZAO SOCIAL} | x | x |
|Logomarca | Logomarca do emitente | {LOGO} | | x |
|Endereço | Endereço do emitente (endereço, bairro, município e CEP) | {ENDERECO PREFEITURA} | | x |
|Telefone | Telefone do emitente | {TELEFONE PREFEITURA} | | x |
|CNPJ | CNPJ do emitente | {CNPJ PREFEITURA} | | x |
Uma OS deve conter ainda local para assinatura do solicitante, do técnico responsável pelo serviço e do cargo do responsável pela autorização do serviço.
==== Mapas ====
O usuário deve ter a opção de visualizar no mapa os dados dos pontos para os quais foram registrados atendimentos. Para isso, o sistema deve utilizar os atendimentos filtrados na lista de atendimentos e exibir no mapa os pontos correspondentes que contém feições.
==== Exportação dos serviços ====
O usuário deve ter a opção de exportar um arquivo com os dados dos serviços prestados.
Os serviços serão selecionados a partir dos dados filtrados na tela de consulta de atendimentos, na visão Atendimentos x serviços.
A exportação deve ser feita num arquivo escolhido pelo usuário, no formato CSV, com os campos separados por ponto e vírgula (;).
Os seguintes campos devem constar no arquivo:
|< 100% >|
^ Nome do campo ^ Descrição ^
|**Serviço (do cadastro de serviços)** ||
|Código do serviço | |
|Serviço | descrição do serviço |
|Grupo | |
|Subgrupo | |
|Un. medida | |
|**Solicitante (pessoa)** ||
|Código do solicitante | |
|Solicitante | (nome) |
|Apelido/nome fantasia | |
|Telefone do solicitante | |
|CPF/CNPJ do solicitante | |
|RG do solicitante | |
|E-mail do solicitante | |
|**Atendimento** ||
|Data cadastro | |
|Número | |
|Observações | |
|**Serviço (vinculado ao atendimento)** ||
|Responsável pelo atendimento | |
|Técnico responsável | |
|Objetivo do atendimento | |
|Descrição detalhada do serviço | |
|Quantidade solicitada | |
|Quantidade atendida | |
|Valor unitário | |
|Valor total | |
|Data prevista | |
|Data da execução | |
|Dias do vencimento | Dias antes ou depois do vencimento (que pode ser a data prevista ou de execução) |
|Situação | EXECUTADO / VENCIDO / A VENCER (calculado em função das datas prevista e de execução) |
|Informações adicionais do serviço | |
|Status do serviço | |
|UFIR | UFIR selecionada no atendimento |
|Valor da UFIR | Valor da UFIR selecionada no atendimento |
|Ponto de atendimento ||
|Código do ponto de atendimento | |
|Ponto de atendimento | |
|Categoria | |
|N° documento | |
|Código do logradouro | |
|Logradouro | |
|Bairro / localidade | |
|Distrito | |
Devem ser acrescentados ainda os valores dos campos personalizados do serviço (nos atendimentos) e da categoria (nos pontos de atendimento).
===== Configurações do usuário =====
==== Teclas de atalho ====
O usuário poderá utilizar as configurações de teclas de atalho nesse módulo. As teclas de atalho ficarão habilitadas:
* Na tela de cadastro de atendimentos (um serviço por vez), nas observações do atendimento;
* Na tela de edição dos serviços (em serviço por vez), na descrição detalhada e nas informações adicionais;
* Na tela de edição dos serviços (vários serviços de uma vez), na descrição detalhada e nas informações adicionais;
* Na tela de cadastro de atendimentos para vários pontos de atendimento, na descrição detalhada.
==== Secretarias ====
Os campos personalizáveis no cadastro de secretarias devem ser exibidos com os nomes definidos pelo usuário, quando aplicável.
===== Pontos de verificação =====
==== Cadastro ====
=== Geral ===
* A data do cadastro de um novo atendimento deve ser a data corrente, podendo ser alterada pelo usuário;
* O campo Número de um novo atendimento deve ser gerado automaticamente, podendo ser alterado pelo usuário. O número do próximo atendimento deve ser o maior número existente no banco de dados + 1, considerando os registros que contém apenas caracteres numéricos no campo Número;
* O campo Número só estará acessível no cadastro de atendimentos individuais;
* O valor total do serviço deve ser calculado automaticamente mas pode ser alterado pelo usuário. Caso seja informado um valor diferente de zero para a quantidade atendida, o valor total do serviço deve ser calculado como: quantidade atendida x valor unitário; caso contrário o valor total deve ser calculado como: quantidade solicitada x valor unitário;
* A data de execução não deve ser posterior à data corrente.
* Na visualização dos dados, na visão ATENDIMENTOS X SERVIÇOS, as colunas referentes ao prazo de vencimento dos serviços devem conter os dados calculados em função das datas prevista e de execução, conforme a tabela acima.
* O serviço deve armazenar um histórico de modificações de estados (data, usuário que realizou a modificação e descrição do estado quando o serviço foi incluído ou alterado);
* Os valores unitário e total dos serviços devem ser exibidos com quatro casas decimais na tela de cadastro, no grid e ao exportar os dados do grid para o formato do Excel.
* Ao incluir ou alterar um atendimento, o usuário poderá incluir novos serviços, alterar, excluir e visualizar um serviço incluído e imprimir a ordem de serviço para o serviço selecionado.
* Um atendimento não pode ser excluído se estiver vinculado a um ou mais planejamentos.
* Um atendimento não pode ser excluído se possuir um ou mais serviços com títulos do Monnae cadastrados.
* Quando a visão ATENDIMENTOS X SERVIÇOS estiver selecionada, a ação de excluir deve agir somente sobre o serviço selecionado. O sistema deve alertar o usuário caso o serviço selecionado seja o único no atendimento e excluir também o atendimento.
* Ao tentar imprimir uma OS para um atendimento ainda não salvo, o sistema deverá alertar o usuário de que o sistema irá salvar o atendimento caso ele confirme a impressão da OS.
* No cadastro de atendimentos individuais e de vários serviços de uma vez, deve ser mostrado o total das quantidades solicitadas, atendidas e dos valores totais de todos os serviços, recalculando automaticamente a cada alteração na lista de serviços ou nos valores.
* A lista de fotos de um serviço deve suportar, no máximo, 2 arquivos.
* Na listagem de fotos, o usuário deve poder incluir e excluir imagens, visualizar as miniaturas a as fotos em tamanho grande, além de salvar as imagens numa pasta de sua escolha.
=== Atendimentos individuais ===
* Um atendimento deve ter uma data de cadastro válida, um solicitante(pessoa), um ponto de atendimento e ao menos um [[softwares:geoservicos:requisitos:modulos:servicos|serviço]] prestado .
* Cada serviço incluído num atendimento deve ter o estado preenchido;
* Ao incluir ou alterar um serviço, deve ser listados os estados do serviço selecionado;
* A quantidade solicitada do serviço é opcional, mas o sistema deve alertar caso não tenha sido preenchida ou tenha valor 0 (zero);
* Os campos quantidade atendida, quantidade solicitada e valor unitário devem ser preenchidos automaticamente quando o serviço selecionado tiver algum campo personalizado do tipo fórmula e este estiver definido para gerar o valor de alguns destes campos.
* Quando um atendimento for duplicado, os dados do atendimento original devem ser exibidos para o usuário, exceto: títulos, histórico e anexos dos serviços.
=== Inclusão e alteração de vários serviços de uma vez ===
* Na inclusão um único atendimento será gerado com todos os serviços vinculados a ele;
* Na alteração cada serviço será alterado em seu respectivo atendimento e o log de ações deve registrar as alterações em cada atendimento;
* Na inclusão os campos Objetivo do atendimento, Descrição detalhada e Técnico responsável devem sempre ser replicados para todos os serviços;
* Na alteração estes campos devem ser exibidos em branco e só serão replicados quando preenchidos. Quando deixados em branco, os serviços devem manter os valores anteriores para estes campos;
* Quando o usuário alterar os valores em comum para a quantidade solicitada, a quantidade atendida, a data prevista, a data de execução, o valor unitário ou o estado do serviço, estes dados devem ser preenchidos automaticamente para todos os serviços que tiverem sido incluídos no atendimento até o momento;
* Na inclusão, novos serviços adicionados ao atendimento também devem ter os valores replicados para os campos em comum, mas somente nos campos que tiverem valores válidos;
* Os valores dos serviços que devem ser validados são aqueles exibidos na lista de serviços atendidos. Os campos citados acima servem somente para preenchimento automático;
* Somente datas válidas podem serão replicadas para os serviços listados. Se uma data inválida for informada, o valor será ignorado;
* A lista de estados disponíveis para serem replicados deve incluir todos os estados de todos os serviços incluídos na lista;
* Quando um estado for selecionado para ser replicado para todos os serviços, somente os serviços que tem um estado com a mesma descrição devem ser alterados;
* O valor total deve ser recalculado automaticamente quando a quantidade solicitada, a quantidade atendida ou o valor unitário forem alterados, tanto na alteração de num único serviço quanto no preenchimento automático para todos os serviços;
* Os serviços salvos com esta funcionalidade devem ser listados, alterados e visualizados da mesma forma que aqueles incluídos individualmente;
* Os serviços salvos com esta funcionalidade não terão registrados os campos personalizados, mesmo que sejam obrigatórios, os títulos do Monnae e os anexos. Somente o histórico deve ser registrado, indicando a inclusão ou alteração.
=== Atendimentos para vários pontos de atendimento ===
* Todos os campos obrigatórios no cadastro de atendimentos individuais são também obrigatórios no cadastro para vários pontos. Além disto, a quantidade solicitada também é obrigatória e deve ser positiva;
* As quantidades solicitada e atendida, quando preenchidas junto com os dados do serviço, devem replicar seu valor automaticamente para todos os ponto na lista, mas é o valor individual em cada ponto que deve ser validado.
* Um ponto sem pessoas vinculadas só deve constar uma vez na lista; um ponto com ao menos uma pessoa vinculada deve ser repetido tantas vezes quantas forem as pessoas vinculadas a ele. Em cada item, o solicitante deve ser preenchido automaticamente com a identificação da pessoa, quando houver;
* Após a conclusão, devem ser inseridos os atendimentos para os pontos selecionados pelo usuário, com os solicitantes, quantidades e demais dados do serviço idênticos aos informados na tela de inclusão;
* As permissões de acesso para a inclusão de vários atendimentos devem ser as mesmas da inclusão de atendimentos individuais.
=== Personalizações ===
Os campos "Objetivo do atendimento", "Técnico responsável", "Quantidade solicitada", "Quantidade atendida" e "Data prevista" devem exibir o texto definido para eles na secretaria do usuário logado, quando houver esta personalização. Isto inclui:
* A tela de atendimentos individuais, onde se inclui um serviço de cada vez
* A tela de atendimentos para vários pontos de uma vez
* A tela de atendimentos com vários serviços de uma vez
* Os títulos das colunas na visão atendimentos x serviços
* O relatório Resumo do atendimento
* O relatório do atendimento
==== Mapas ====
* Os exportar os dados para o mapa, só devem ser exibidos os pontos de atendimento que possuírem ao menos uma feição;
* Cada ponto de atendimento deve ser exibido apenas uma vez, independente da quantidade de atendimentos prestados para ele;
* O sistema deve alertar que todos os registros podem ser exibidos no mapa quando não houver filtros ativos ao acionar a ferramenta de mapa;
* A ferramenta deve ser habilitada ou desabilitada de acordo com as permissões do perfil do usuário logado.
* Os pontos de atendimento devem ser listados no mapa com a lista de características das suas feições (quando houver) e com todos os seus dados vinculados: pessoas, atividades e outros pontos de atendimento;
* Os pontos vinculados aos atendimentos listados na tela de consulta devem ser exibidos no mapa com um marcador para cada feição, sendo:
* O marcador da primeira feição deverá conter as características da feição e os detalhes do ponto (pessoas, atividades, pontos vinculados e atendimentos);
* Os marcadores das demais feições, quando existirem, deverão conter apenas as características de cada feição;
* Os pontos de atendimentos vinculados devem ser exibidos no mapa com um marcador para cada feição, contendo:
* a lista de características das suas feições (quando houver);
* as pessoas vinculadas, quando houver e quando o usuário tiver selecionado esta opção;
* Na lista de pessoas devem ser exibidos os campos Nome, CPF/CNPJ e condição no ponto de atendimento.
==== Ordem de serviço ====
* Quando houver modelo personalizado de OS para o serviço em questão, este deve ser usado na impressão da OS. Caso contrário, deve ser usado o modelo padrão;
* No modelo padrão, todos os campos descritos, salvo exceções documentadas, devem ser impressos corretamente na OS;
* Nos modelos personalizados, os campos que tem códigos correspondentes devem ser impressos corretamente na OS;
* Toda impressão de OS deve ficar registrada no histórico do serviço;
* Ao imprimir várias ordens de serviço de uma só vez todos os registros filtrados na tela de consulta devem impressos;
* Ao imprimir várias ordens de serviço deve ser gerado um documento para cada modelo presente na lista de serviços selecionados;
* Só é possível imprimir várias ordens de serviço se a visão ATENDIMENTOS x SERVIÇOS estiver selecionada;
* As fotos do serviço só serão exibidas se existirem para o serviço em questão. Se a primeira ou segunda fotos não existirem, a código correspondente não terá nenhum efeito.
==== Exportação dos serviços ====
* Somente um serviço e uma categoria podem ser exportados de uma vez, para que os campos personalizados sejam os mesmos para cada registro.
* O arquivo gerado deve estar no formato CSV, com campos separados por ponto e vírgula (;), com um registro por linha.
* Os campos de data devem estar no formato DD/MM/AAAA, quando houver data para exibir;
* Os campos decimais devem ter sempre 6 casas decimais.
===== Observações =====
Ao fazer a alteração de vários serviços de uma vez, a visualização dos dados na tela de consulta pode não ser atualizada. Não foi criado um mecanismo eficiente para atualizar os dados, tendo em vista que numa única operação podem ser alterados serviços de vários atendimentos. O sistema atualiza as telas de consulta quando cada atendimento é alterado no banco de dados mas esta funcionalidade não altera os atendimentos e sim os serviços.