diff --git a/apps/opm/migrations/0014_auto_20240804_1846.py b/apps/opm/migrations/0014_auto_20240804_1846.py new file mode 100644 index 00000000..4e7847da --- /dev/null +++ b/apps/opm/migrations/0014_auto_20240804_1846.py @@ -0,0 +1,24 @@ +# Generated by Django 3.2.12 on 2024-08-04 10:46 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('system', '0005_alter_permission_type'), + ('opm', '0013_auto_20230605_1429'), + ] + + operations = [ + migrations.AddField( + model_name='opl', + name='audit_imgs', + field=models.ManyToManyField(blank=True, related_name='opl_audit_imgs', to='system.File', verbose_name='作业审批照片'), + ), + migrations.AddField( + model_name='opl', + name='work_imgs', + field=models.ManyToManyField(blank=True, related_name='opl_work_imgs', to='system.File', verbose_name='作业工作照片'), + ), + ] diff --git a/apps/opm/models.py b/apps/opm/models.py index ef85bf2e..c5fac745 100644 --- a/apps/opm/models.py +++ b/apps/opm/models.py @@ -105,6 +105,10 @@ class Opl(CommonBDModel): workers = models.ManyToManyField('system.user', verbose_name='作业人员', through='opm.oplworker') create_imgs = models.ManyToManyField('system.file', verbose_name='作业审批照片', related_name='opl_create_imgs', blank=True) + audit_imgs = models.ManyToManyField('system.file', verbose_name='作业审批照片', + related_name='opl_audit_imgs', blank=True) + work_imgs = models.ManyToManyField('system.file', verbose_name='作业工作照片', + related_name='opl_work_imgs', blank=True) close_imgs = models.ManyToManyField('system.file', verbose_name='作业关闭照片', related_name='opl_close_imgs', blank=True) close_note = models.PositiveSmallIntegerField('作业关闭情况', diff --git a/apps/opm/services.py b/apps/opm/services.py index a74e49df..c22df23f 100644 --- a/apps/opm/services.py +++ b/apps/opm/services.py @@ -179,4 +179,13 @@ def opl_monitor(opl: Opl, tv: str): for i in vchannels: Thread(target=snap_and_analyse, args=(i, algo_codes, opl), daemon=True).start() time.sleep(10) - cache.delete(tkey) \ No newline at end of file + cache.delete(tkey) + +def check_opl_audit_imgs(ticket: Ticket, transition: Transition, new_ticket_data: dict): + audit_imgs = new_ticket_data.get('audit_imgs', []) + if audit_imgs: + opl = Opl.objects.get(ticket=ticket) + opl.audit_imgs = audit_imgs + opl.save() + else: + raise Exception('需提交审核照片') \ No newline at end of file