mirror of https://github.com/interlegis/sigi.git
9 changed files with 140 additions and 73 deletions
@ -1,6 +1,60 @@ |
|||||
from rest_framework import serializers |
from rest_framework import serializers |
||||
|
from yaml import serialize |
||||
|
|
||||
|
from sigi.apps.casas.models import Orgao, TipoOrgao |
||||
|
from sigi.apps.servicos.models import Servico, TipoServico |
||||
|
|
||||
|
|
||||
class ProdutosSerializer(serializers.Serializer): |
class ProdutosSerializer(serializers.Serializer): |
||||
produto = serializers.CharField(max_length=40) |
produto = serializers.CharField(max_length=40) |
||||
quantidade = serializers.IntegerField() |
quantidade = serializers.IntegerField() |
||||
|
|
||||
|
|
||||
|
class OrgaoSerializer(serializers.ModelSerializer): |
||||
|
sigla = serializers.ReadOnlyField(source="get_sigla") |
||||
|
tipo_orgao_nome = serializers.CharField(source="tipo.nome", read_only=True) |
||||
|
tipo_orgao_sigla = serializers.CharField( |
||||
|
source="tipo.sigla", read_only=True |
||||
|
) |
||||
|
municipio = serializers.CharField(source="municipio.nome", read_only=True) |
||||
|
uf = serializers.CharField(source="municipio.uf.sigla", read_only=True) |
||||
|
telefone = serializers.ReadOnlyField() |
||||
|
|
||||
|
class Meta: |
||||
|
model = Orgao |
||||
|
fields = [ |
||||
|
"nome", |
||||
|
"sigla", |
||||
|
"tipo_orgao_nome", |
||||
|
"tipo_orgao_sigla", |
||||
|
"cnpj", |
||||
|
"logradouro", |
||||
|
"bairro", |
||||
|
"municipio", |
||||
|
"cep", |
||||
|
"uf", |
||||
|
"email", |
||||
|
"ult_alt_endereco", |
||||
|
"telefone", |
||||
|
] |
||||
|
|
||||
|
|
||||
|
class ServicoSerializer(serializers.ModelSerializer): |
||||
|
casa_legislativa = OrgaoSerializer(read_only=True) |
||||
|
tipo_servico_nome = serializers.CharField( |
||||
|
source="tipo_servico.nome", read_only=True |
||||
|
) |
||||
|
tipo_servico_sigla = serializers.CharField( |
||||
|
source="tipo_servico.sigla", read_only=True |
||||
|
) |
||||
|
|
||||
|
class Meta: |
||||
|
model = Servico |
||||
|
fields = [ |
||||
|
"casa_legislativa", |
||||
|
"tipo_servico_nome", |
||||
|
"tipo_servico_sigla", |
||||
|
"url", |
||||
|
"hospedagem_interlegis", |
||||
|
"data_ativacao", |
||||
|
] |
||||
|
|||||
@ -1,21 +0,0 @@ |
|||||
<!DOCTYPE html> |
|
||||
<html> |
|
||||
<head> |
|
||||
<title>SIGI ReDoc documentation</title> |
|
||||
<!-- needed for adaptive design --> |
|
||||
<meta charset="utf-8"/> |
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"> |
|
||||
<link href="https://fonts.googleapis.com/css?family=Montserrat:300,400,700|Roboto:300,400,700" rel="stylesheet"> |
|
||||
<!-- ReDoc doesn't change outer page styles --> |
|
||||
<style> |
|
||||
body { |
|
||||
margin: 0; |
|
||||
padding: 0; |
|
||||
} |
|
||||
</style> |
|
||||
</head> |
|
||||
<body> |
|
||||
<redoc spec-url='{% url schema_url %}'></redoc> |
|
||||
<script src="https://cdn.jsdelivr.net/npm/redoc@next/bundles/redoc.standalone.js"> </script> |
|
||||
</body> |
|
||||
</html> |
|
||||
@ -1,28 +0,0 @@ |
|||||
<!DOCTYPE html> |
|
||||
<html> |
|
||||
<head> |
|
||||
<title>SIGI Swagger documentation</title> |
|
||||
<meta charset="utf-8"/> |
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"> |
|
||||
<link rel="stylesheet" type="text/css" href="//unpkg.com/swagger-ui-dist@3/swagger-ui.css" /> |
|
||||
</head> |
|
||||
<body> |
|
||||
<div id="swagger-ui"></div> |
|
||||
<script src="//unpkg.com/swagger-ui-dist@3/swagger-ui-bundle.js"></script> |
|
||||
<script> |
|
||||
const ui = SwaggerUIBundle({ |
|
||||
url: "{% url schema_url %}", |
|
||||
dom_id: '#swagger-ui', |
|
||||
presets: [ |
|
||||
SwaggerUIBundle.presets.apis, |
|
||||
SwaggerUIBundle.SwaggerUIStandalonePreset |
|
||||
], |
|
||||
layout: "BaseLayout", |
|
||||
requestInterceptor: (request) => { |
|
||||
request.headers['X-CSRFToken'] = "{{ csrf_token }}" |
|
||||
return request; |
|
||||
} |
|
||||
}) |
|
||||
</script> |
|
||||
</body> |
|
||||
</html> |
|
||||
Loading…
Reference in new issue