forked from erp-dev/erp
feat: tasks for sync products and customers
This commit is contained in:
@@ -82,3 +82,29 @@ class UploadedFile(ModelBase):
|
||||
if self.path:
|
||||
return self.path.url
|
||||
return None
|
||||
|
||||
|
||||
class DataSync(ModelBase):
|
||||
"""记录外部数据同步的执行情况"""
|
||||
|
||||
class TableName(models.TextChoices):
|
||||
PRODUCT = 'product', '产品'
|
||||
CUSTOMER = 'customer', '客户'
|
||||
|
||||
table_name = models.CharField(max_length=50, choices=TableName.choices, verbose_name='同步目标')
|
||||
page_index = models.PositiveIntegerField(default=1, verbose_name='页码')
|
||||
page_size = models.PositiveIntegerField(default=100, verbose_name='每页数量')
|
||||
total_count = models.PositiveIntegerField(default=0, verbose_name='远端总数')
|
||||
synced_rows = models.PositiveIntegerField(default=0, verbose_name='本次同步数量')
|
||||
last_ctime = models.DateTimeField(null=True, blank=True, verbose_name='最新数据时间')
|
||||
last_rowid = models.CharField(max_length=64, blank=True, verbose_name='最新 RowID')
|
||||
note = models.CharField(max_length=255, blank=True, verbose_name='备注')
|
||||
|
||||
class Meta:
|
||||
db_table = 'api_data_sync'
|
||||
verbose_name = '数据同步记录'
|
||||
verbose_name_plural = '数据同步记录'
|
||||
ordering = ['-created_at']
|
||||
|
||||
def __str__(self):
|
||||
return f'{self.table_name} @ {self.created_at:%Y-%m-%d %H:%M:%S}'
|
||||
|
||||
Reference in New Issue
Block a user