1
0
forked from erp-dev/erp
Files
erpnew/settlement/models.py

51 lines
1.5 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""日结模块数据模型"""
from django.db import models
from flower.common import ModelBase
class NotificationChannelEnum(models.TextChoices):
"""通知渠道枚举"""
WECOM = 'wecom', '企业微信'
NONE = 'none', '不通知'
class SettlementModuleEnum(models.TextChoices):
"""日结模块枚举"""
PLATE_ORDER = 'plate_order', '开版订单'
PRINTING_ORDER = 'printing_order', '生产订单'
class DailySettlementConfig(ModelBase):
"""日结配置 - 每个商户一条记录(可选)"""
id = models.BigAutoField(primary_key=True)
merchant = models.OneToOneField(
'basic_info.Merchant',
on_delete=models.CASCADE,
related_name='settlement_config',
verbose_name='所属商户'
)
# 统计模块配置JSON数组存储枚举值
settlement_modules = models.JSONField(
default=list,
verbose_name='统计模块',
help_text='例如: ["plate_order", "printing_order"]'
)
# 通知配置
notification_enabled = models.BooleanField(default=False, verbose_name='启用通知')
notification_channel = models.CharField(
max_length=20,
choices=NotificationChannelEnum.choices,
default=NotificationChannelEnum.NONE,
verbose_name='通知渠道'
)
# 其他配置
description = models.TextField(blank=True, null=True, verbose_name='备注')
class Meta:
verbose_name = '日结配置'
verbose_name_plural = '日结配置'
db_table = 'daily_settlement_config'