A documentação foi atualizada: https://novosga.org/docs/#/v2.1/install-docker
Lançada versão v2.1
- Editado
Pessoal gostaria de avisar que o Sistema novosga-2.1.1 esta funcionou perfeitamente após apoio do Rogerio Lino que indicou o link da documentação do programa "https://novosga.org/docs/#/v2.1/install-docker?id=docker-compose" ficou muito bom o sistema, roda redondo. Mas tenho que lembrar a todos que a versão novosga-2.1.1 só combina com panel-app 2.1 no link "https://github.com/novosga/panel-app/tree/v2.1"
Mais uma vez obrigado
Rogério Alencar Lino Filho
como eu consigo instalar esse panel-app @israel7souza ?estou pelo docker tambem
poiattileo
Ola, veja bem o que eu fiz foi gambiara, não posso postar aqui no publico, mas se quiser marcar hora ainda hoje, te explico e te mostro o que fiz para funcionar tudo painel. Me enviar mensagem pela facebook Israel Souza ou @israel.souza.900
pesquisa Israel Souza
Engraçado, aqui eu consegui funcionar com o painel na release v2.0.1 web. Usei a versão 2.1 em docker também. A dificuldade aqui está em fazer funcionar o app de triagem, só consegui na versão anterior (v2.0.1) que só tem release na versão windows (tô vendo aqui como customizar e compilar pra web).
Mas te falar o Painel 2.0.1 não tem comunicação mercure. Pode funcionar mas demora muito chamar a senha.
Painel 2.1
package.json Removing socketio, adding support for mercure
yarn.lock Removing socketio, adding support for mercure
@israel7souza Como conseguiu resolver esse erro?
Could not resolve host: mercure for "http://mercure/.well-known/mercure"
rodrigours
Amanha vou mostrar o passo a passo
@israel7souza Obrigado
- Editado
rodrigours Mesmo problema aqui, na v2.0.1 web funciona, na v2.1 com comunicação mercure ele fica tentando fazer a request pro localhost.
Request URL: http://127.0.0.1:3000/.well-known/mercure?topic=%2Funidades%2F1%2Fpainel
Referrer Policy: no-referrer-when-downgrade
Estou tentando fazer funcionar a vocalização, habilitei o código da página settings, que estava comentado, mas não funcionou.
Procurando o resto do código aqui.
- Editado
Endereço Mercure para publicar mensagem (onde "mercure" é o nome do host)
esse endereço será chamado internamente via o PHP
MERCURE_PUBLIC_URL=http://mercure:3000/.well-known/mercure
Endereço Mercure para consumir mensagem
esse endereço será chamado via o navegador web
MERCURE_CONSUMER_URL=http://127.0.0.1:3000/.well-known/mercure
http://(aqui vai o nome do seu computador):3000/.well-known/mercure
mas no caso se for Windows eu fiz um container só do mercure, faça um maquina no docker e roda abaixo o servidor mercure
mercure:
image: novosga/mercure:v0.11
restart: always
ports:
- "3000:3000"
environment:
same value from ports
SERVER_NAME: ":3000"
default publish key, must be changed
MERCURE_PUBLISHER_JWT_KEY: "!ChangeMe!"
MERCURE_EXTRA_DIRECTIVES: "anonymous 1; cors_origins *"
aqui tem tudo, se precisar de mais ajuda, teria que entrar remoto no meu pc para eu explicar
entre em contato te mostro remoto como fazer
- Editado
Só vi a resposta agora, já tinha feito funcionar aqui, quando abri o docker-compose eu vi que tinha errado nisso.
Já customizei o app do painel e estou terminando de customizar o app de triagem, mas empaquei na modificação do payload da triagem. Aproveitei que já haviam os campos para envio do nome e documento e consegui fazer o post, mas a resposta vem com erro:
Return value of Novosga\Entity\Cliente::getEndereco() must be an instance of Novosga\Entity\Endereco, null returned
Adicionei um campo de endereço na request (mas não dá pra ficar colocando endereço no autoatendimento), e já tentei enviar de tudo: array vazio, string vazia, objeto vazio, null, mas neste caso ele retorna:
You must define a type for Novosga\Entity\Cliente::$endereco.
Verifiquei no código do novoSGA e em Cliente.orm.yml a entidade Endereço está integrada à Entidade Cliente sem definição de tipo e também não diz se pode ser null:
embedded:
endereco:
class: Novosga\Entity\Endereco
columnPrefix: end_
No arquivo Endereco.orm.yml o tipo é definível como "integrável" e os campos podem ser nulos.
Novosga\Entity\Endereco:
type: embeddable
fields:
pais:
type: string
length: 2
nullable: true
cep:
type: string
length: 25
nullable: true
estado:
type: string
length: 3
nullable: true
cidade:
type: string
length: 30
nullable: true
logradouro:
type: string
length: 60
nullable: true
numero:
type: string
length: 10
nullable: true
complemento:
type: string
length: 15
nullable: true
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)
Enfim, já que estou com esta demanda aqui no meu órgão, estou disposto a colaborar com o desenvolvimento do sistema na medida do possível, porém não tenho tanto conhecimento das regras de negócio como você, por isso busquei ajuda aqui.
Não consigo cadastrar novo usuario: [Lotação] Lotação é utilizada para definir o perfil de acesso do usuário nas unidades.
Onde configuro este item de LOTAÇÃO na configuração de usuario?
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.
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.
- Editado
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.