mirror of https://github.com/interlegis/sapl.git
Browse Source
- Adicionar validador combinado (documentos + imagens) para DocumentoAcessorio - Criar modelo AnexoProposicao para anexos durante edição de proposição - Adicionar upload drag-and-drop na lista de Documentos Acessórios da matéria - Adicionar seção de anexos na tela do editor OnlyOffice de proposição - Transferir anexos automaticamente para DocumentoAcessorio ao incorporar proposiçãopull/3858/head
10 changed files with 703 additions and 5 deletions
@ -0,0 +1,20 @@ |
|||
# Generated by Django 2.2.28 on 2026-03-23 19:49 |
|||
|
|||
from django.db import migrations, models |
|||
import sapl.materia.models |
|||
import sapl.utils |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('materia', '0092_auto_20260223_1102'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterField( |
|||
model_name='documentoacessorio', |
|||
name='arquivo', |
|||
field=models.FileField(blank=True, max_length=300, null=True, storage=sapl.utils.OverwriteStorage(), upload_to=sapl.materia.models.anexo_upload_path, validators=[sapl.utils.restringe_tipos_de_arquivo_doc_img], verbose_name='Texto Integral'), |
|||
), |
|||
] |
|||
@ -0,0 +1,33 @@ |
|||
# Generated by Django 2.2.28 on 2026-03-23 20:14 |
|||
|
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
import sapl.materia.models |
|||
import sapl.utils |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('materia', '0093_allow_image_uploads_documentoacessorio'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.CreateModel( |
|||
name='AnexoProposicao', |
|||
fields=[ |
|||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
|||
('arquivo', models.FileField(max_length=300, storage=sapl.utils.OverwriteStorage(), upload_to=sapl.materia.models.anexo_proposicao_upload_path, validators=[sapl.utils.restringe_tipos_de_arquivo_doc_img], verbose_name='Arquivo')), |
|||
('nome', models.CharField(max_length=50, verbose_name='Nome')), |
|||
('data', models.DateField(verbose_name='Data')), |
|||
('data_ultima_atualizacao', models.DateTimeField(auto_now=True, null=True)), |
|||
('proposicao', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='anexos', to='materia.Proposicao', verbose_name='Proposição')), |
|||
('tipo', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='materia.TipoDocumento', verbose_name='Tipo')), |
|||
], |
|||
options={ |
|||
'verbose_name': 'Anexo de Proposição', |
|||
'verbose_name_plural': 'Anexos de Proposição', |
|||
'ordering': ('data', 'id'), |
|||
}, |
|||
), |
|||
] |
|||
Loading…
Reference in new issue