forked from erp-dev/erp
feat: external_order refetch api
This commit is contained in:
@@ -657,3 +657,71 @@ class PrintingJobBatchAdvanceRecord(ModelBase):
|
||||
class Meta:
|
||||
verbose_name = '印染任务批量操作记录'
|
||||
verbose_name_plural = '印染任务批量操作记录'
|
||||
|
||||
|
||||
class PrintingOrderExternalSnapshotSyncAudit(ModelBase):
|
||||
"""
|
||||
外部订单快照同步审计记录。
|
||||
|
||||
记录一次“按 external_order_id 触发外部快照覆盖同步”的执行结果:
|
||||
- before_snapshot: 同步前本地 PrintingOrder / PrintingJob 快照
|
||||
- operator_user / operator_employee: 触发人
|
||||
- is_success / failure_reason: 成功或失败及失败原因
|
||||
- allow_reset_stateflow: 本次是否允许撤销已有工序
|
||||
"""
|
||||
|
||||
printing_order = models.ForeignKey(
|
||||
PrintingOrder,
|
||||
on_delete=models.SET_NULL,
|
||||
null=True,
|
||||
blank=True,
|
||||
related_name='external_snapshot_sync_audits',
|
||||
verbose_name='印染订单',
|
||||
)
|
||||
external_order_id = models.CharField(
|
||||
max_length=100,
|
||||
db_index=True,
|
||||
verbose_name='外部订单编号',
|
||||
)
|
||||
operator_user = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL,
|
||||
on_delete=models.SET_NULL,
|
||||
null=True,
|
||||
blank=True,
|
||||
related_name='printing_order_external_snapshot_sync_audits',
|
||||
verbose_name='操作者',
|
||||
)
|
||||
operator_employee = models.ForeignKey(
|
||||
basic_models.Employee,
|
||||
on_delete=models.SET_NULL,
|
||||
null=True,
|
||||
blank=True,
|
||||
related_name='printing_order_external_snapshot_sync_audits',
|
||||
verbose_name='操作员工',
|
||||
)
|
||||
before_snapshot = models.JSONField(
|
||||
default=dict,
|
||||
blank=True,
|
||||
verbose_name='同步前快照',
|
||||
)
|
||||
allow_reset_stateflow = models.BooleanField(
|
||||
default=False,
|
||||
verbose_name='允许撤销工序',
|
||||
)
|
||||
is_success = models.BooleanField(
|
||||
default=False,
|
||||
verbose_name='是否成功',
|
||||
)
|
||||
failure_reason = models.TextField(
|
||||
blank=True,
|
||||
default='',
|
||||
verbose_name='失败原因',
|
||||
)
|
||||
|
||||
class Meta:
|
||||
verbose_name = '外部订单快照同步审计记录'
|
||||
verbose_name_plural = '外部订单快照同步审计记录'
|
||||
ordering = ['-created_at', '-id']
|
||||
|
||||
def __str__(self) -> str:
|
||||
return f'{self.external_order_id} #{self.id}'
|
||||
|
||||
Reference in New Issue
Block a user