From 51dcf1191b2ddc2662a9f1074216637693d62c36 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Fri, 3 Mar 2023 11:02:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9B=E5=BB=BA=E6=96=B0=E6=97=A5=E5=B8=B8?= =?UTF-8?q?=E7=9B=91=E7=9D=A3tr=E5=92=8Cta=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migrations/0031_taction_testreport.py | 55 +++++++++++++++++++ server/apps/supervision/models.py | 26 ++++++++- 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 server/apps/supervision/migrations/0031_taction_testreport.py diff --git a/server/apps/supervision/migrations/0031_taction_testreport.py b/server/apps/supervision/migrations/0031_taction_testreport.py new file mode 100644 index 0000000..310655a --- /dev/null +++ b/server/apps/supervision/migrations/0031_taction_testreport.py @@ -0,0 +1,55 @@ +# Generated by Django 3.0.5 on 2023-03-03 02:59 + +from django.conf import settings +import django.contrib.postgres.fields.jsonb +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone + + +class Migration(migrations.Migration): + + dependencies = [ + ('system', '0022_delete_historicaldict'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('supervision', '0030_auto_20220302_1103'), + ] + + operations = [ + migrations.CreateModel( + name='TestReport', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('create_time', models.DateTimeField(default=django.utils.timezone.now, help_text='创建时间', verbose_name='创建时间')), + ('update_time', models.DateTimeField(auto_now=True, help_text='修改时间', verbose_name='修改时间')), + ('is_deleted', models.BooleanField(default=False, help_text='删除标记', verbose_name='删除标记')), + ('accept_number', models.CharField(max_length=20, verbose_name='受理编号')), + ('report_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='报告编号')), + ('description', models.TextField(blank=True, null=True, verbose_name='业务描述')), + ('expect_date', models.DateField(verbose_name='预计发放时间')), + ('issue_date', models.DateField(blank=True, null=True, verbose_name='实际发放时间')), + ('belong_dept', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='testreport_belong_dept', to='system.Organization', verbose_name='所属部门')), + ('create_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='testreport_create_by', to=settings.AUTH_USER_MODEL, verbose_name='创建人')), + ('update_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='testreport_update_by', to=settings.AUTH_USER_MODEL, verbose_name='最后编辑人')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='TAction', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('create_time', models.DateTimeField(default=django.utils.timezone.now, help_text='创建时间', verbose_name='创建时间')), + ('update_time', models.DateTimeField(auto_now=True, help_text='修改时间', verbose_name='修改时间')), + ('is_deleted', models.BooleanField(default=False, help_text='删除标记', verbose_name='删除标记')), + ('value_old', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict, null=True, verbose_name='原值')), + ('value_new', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict, null=True, verbose_name='新值')), + ('reason_1', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='taction_r1', to='system.Dict', verbose_name='变更主要原因')), + ('reason_2', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='taction_r2', to='system.Dict', verbose_name='变更次要原因')), + ], + options={ + 'abstract': False, + }, + ), + ] diff --git a/server/apps/supervision/models.py b/server/apps/supervision/models.py index cc9f007..e12897e 100644 --- a/server/apps/supervision/models.py +++ b/server/apps/supervision/models.py @@ -1,6 +1,7 @@ from django.db import models from utils.model import BaseModel from apps.system.models import CommonAModel, CommonBModel, Organization, User, Dict, File +from django.contrib.postgres.fields import JSONField # Create your models here. class Content(CommonAModel): @@ -86,4 +87,27 @@ class Record(CommonBModel): class Meta: verbose_name = '报送记录' verbose_name_plural = verbose_name - \ No newline at end of file + + +class TestReport(CommonBModel): + """检测报告 + """ + accept_number = models.CharField('受理编号', max_length=20) + report_number = models.CharField('报告编号', max_length=20, null=True, blank=True) + description = models.TextField('业务描述', null=True, blank=True) + expect_date = models.DateField('预计发放时间') + issue_date = models.DateField('实际发放时间', null=True, blank=True) + + +class TAction(BaseModel): + """检测报告变更记录 + """ + TACTION_TYPE = ( + (10, '正常发放'), + (20, '报告出错'), + (30, '报告迟单') + ) + reason_1 = models.ForeignKey(Dict, verbose_name='变更主要原因', related_name='taction_r1', on_delete= models.SET_NULL, null=True, blank=True) + reason_2 = models.ForeignKey(Dict, verbose_name='变更次要原因', related_name='taction_r2', on_delete= models.SET_NULL, null=True, blank=True) + value_old = JSONField('原值', null=True, blank=True, default=dict) + value_new = JSONField('新值', null=True, blank=True, default=dict) \ No newline at end of file