This commit is contained in:
javad committed 2026-10-09 20:02:36 +03:30
1 parent 6f36db63a1
commit 250cdbab7f
42 files changed
+96363 -11699

No files matched your search

+71
View File
@@ -0,0 +1,71 @@
from django.db import models
from django.contrib.auth import get_user_model
from django.core.validators import RegexValidator
userModel = get_user_model()
class ArticleType(models.Model):
name = models.CharField(max_length=50)
class Article(models.Model):
class Meta:
permissions = [
("ViewReportMali", "ViewReportMali")
]
debit = models.IntegerField(null=True, blank=True)
credit = models.IntegerField(null=True, blank=True)
customer = models.ForeignKey('Customer', on_delete=models.CASCADE, null=True, blank=True)
factor = models.ForeignKey('Factor', on_delete=models.CASCADE, null=True, blank=True)
type = models.CharField(max_length=50, null=True, blank=True)
typePy = models.CharField(max_length=50, null=True, blank=True)
checkNum = models.IntegerField(null=True, blank=True)
nahvePardakht = models.CharField(max_length=50, null=True, blank=True)
sarresid = models.DateTimeField(null=True, blank=True)
payStatus = models.CharField(max_length=50, null=True, blank=True)
createdDT = models.DateTimeField(auto_now_add=True)
changeDT = models.DateTimeField(auto_now=True)
desc = models.CharField(max_length=200)
user = models.ForeignKey(userModel, on_delete=models.SET_NULL, null=True, blank=True)
class Sarresid(models.Model):
customer = models.ForeignKey('Customer', on_delete=models.CASCADE, null=True, blank=True)
createdDT = models.DateTimeField(auto_now_add=True)
changeDT = models.DateTimeField(auto_now=True)
price = models.IntegerField(null=False, blank=False)
payStatus = models.CharField(max_length=50, null=True, blank=True)
type = models.CharField(max_length=50, null=True, blank=True)
factor = models.ForeignKey('Factor', on_delete=models.CASCADE, null=True, blank=True)
sarresidDT = models.DateTimeField(null=True, blank=True)
user = models.ForeignKey(userModel, on_delete=models.SET_NULL, null=True, blank=True)
desc = models.TextField(null=True, blank=True)
# ---------------- فیلدهای استاندارد و ایمن‌شده چک ----------------
check_row_number = models.CharField(
max_length=50,
null=True, blank=True,
verbose_name="شماره ردیف چک"
)
check_sayyad_id = models.CharField(
max_length=16,
validators=[
RegexValidator(regex=r'^\d{16}$', message='شناسه صیادی باید دقیقاً ۱۶ رقم عدد باشد.')
],
null=True, blank=True,
verbose_name="شناسه صیادی"
)
check_owner_name = models.CharField(
max_length=100,
null=True, blank=True,
verbose_name="نام مالک چک"
)
check_owner_phone = models.CharField(
max_length=11,
validators=[
RegexValidator(regex=r'^\d{11}$', message='شماره تلفن باید ۱۱ رقم و فقط شامل اعداد باشد.')
],
null=True, blank=True,
verbose_name="تلفن مالک چک"
)