• Geral
  • Lançada versão v2.1

tiagoalves A questão é: se a API permite a emissão de senhas sem os dados do cliente, por qual motivo ao adicionar o cliente é exigido a inserção de dados do endereço? (que aliás eu não vi em lugar algum do sistema em si)

Permite informação apenas do nome+documento para buscar ou inserir um cliente. Esse é o mesmo payload desde versões antigas quando nem existia a entidade cliente.

Na versão gratuita não tem muita utilidade os demais campos, mas por exemplo existe um módulo comercial para visualizar e cadastrar clientes.

    tonyferreira "Lotação" é apenas a junção de "Unidade" + "Perfil", o usuário precisa ter ao menos um perfil em pelo menos uma unidade.

    tiagoalves

    Me da uma mão no painel também não consigo vocalizar, chamando só com sinal é super rápido, mas vocalizar não chama.

      rogeriolino Já tentei de diversas formas, inclusive já encontrei o código que provoca o erro:

      You must define a type for Novosga\Entity\Cliente::$endereco.

      É no arquivo Entity.Cliente.yml do Serializer, onde está:

      Novosga\Entity\Cliente:
          properties:
              id:
                  read_only: true
              nome:
                  type: string
              documento:
                  type: string

      Deveria Estar:

      Novosga\Entity\Cliente:
          properties:
              id:
                  read_only: true
              nome:
                  type: string
              documento:
                  type: string
              endereco:
                  type: array

      O problema é que isso gera o seguinte erro:

      ReflectionProperty::getValue() expects parameter 1 to be object, array given

      E no serializer não tem o tipo "object" e eu não entendo muito de symfony nem de doctrine pra saber onde que ocorre essa conversão de array pra objeto. Além disso não há nenhum log sobre isso pra me ajudar a seguir o stack trace.

      israel7souza Sobre o Painel eu fiz apenas o MVP, preciso mudar algumas coisas na página de configuração do fork que eu fiz. Foi relativamente simples, em algumas horas já estava funcionando. Como sou de um órgão da segurança publica vou ter que mudar algumas coisas antes de publicar no github.

      Quando estiver validado, se possível posso fazer um PR no projeto original e lançar uma release nova.
      É claro que tá tudo bem desatualizado mas pelo menos algumas funções como a vocalização e o chamado pelo nome já estariam disponíveis.

      Update:
      Resolvi o problema (aparentemente)

      Ao invés de declarar o tipo específico (string, array, etc) no serializer, o mesmo deve ser a entidade (que é um objeto):

      Novosga\Entity\Cliente:
          properties:
              id:
                  read_only: true
              nome:
                  type: string
              documento:
                  type: string
              endereco:
                  type: Novosga\Entity\Endereco

      Nesse caso é só mandar um objeto vazio no lugar do endereço no JSON que ele vai retornar com a senha:

      {
      	"unidade": $unidade,
      	"servico": $servico,
      	"prioridade": $prioridade,
      	"cliente": {
      		"nome": "$nome",
      		"documento": "$documento",
      		"endereco": {}
      	}
      }

      Estou fazendo testes aqui mas aparentemente deu certo.

        israel7souza
        Qual ambiente tu subiu esse novoSGA? Docker? Windows?
        Já viu a questão da configuração do Mercure (no painel v2.1 não funciona se o mercure não estiver configurado direito).

        Testa na última release v2.0.1 (eu testei web e desktop e funcionou nas duas), o chamado vai demorar pra cair no painel, se chamar é problema no mercure mesmo pois essa versão usa o socket.io.

          tiagoalves

          Eu uso wamp server no Windows, para o novosga e para o mercure rodo um docker somente com docker.

          tiagoalves
          A release panel-app v2.0.1 não tem conexão com mercure.
          Somente a panel-app v2.1 foi realizado o Removing socketio, adding support for mercure.
          Demora muito a comunicação com a a versão 2.0.1 do painel
          Quando coloco somente para chamar pelo sons do painel de atenção, fica rápido demais a resposta é imediata, mas se eu coloco a vocalização não chama panel-app v2.1.

            israel7souza

            israel7souza Quando coloco somente para chamar pelo sons do painel de atenção, fica rápido demais a resposta é imediata, mas se eu coloco a vocalização não chama panel-app v2.1.

            Chama a senha no painel mas não vocaliza? Isso que você quer dizer?

            Eu implementei a vocalização de forma manual (não usei o checkbox).

              5 dias depois

              israel7souza Então, quando eu terminar a customização pro meu órgão vou fazer uma PR pra disponibilizar a versão com as funcionalidades.