from django.db import models from apps.utils.models import CommonBDModel, BaseModel # Create your models here. class Work(CommonBDModel): name = models.CharField('名称', max_length=100) type = models.CharField('类型', max_length=50, help_text="项目类型: 项目/企业") description = models.TextField('描述', blank=True, null=True) score_dq = models.FloatField('贷前评分', null=True, blank=True) fingerprint_dq = models.TextField('贷前指纹', null=True, blank=True) score_dh = models.FloatField('贷后评分', null=True, blank=True) fingerprint_dh = models.TextField('贷后指纹', null=True, blank=True) # 企业低碳转型战略与总体规划 dq_file1 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dq_file1') # 碳排放数据监测、核查与信息披露报告 dq_file2 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dq_file2') # 环境、社会与治理(ESG)尽职调查报告 dq_file3 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dq_file3') # 项目融资与可行性研究方案 dq_file4 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dq_file4') # 数字化与智能控制系统技术方案 dq_file5 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dq_file5') # 企业技术说明及改造方案 dq_file6 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dq_file6') dh_file1 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dh_file1') dh_file2 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dh_file2') dh_file3 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dh_file3') dh_file4 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dh_file4') dh_file5 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dh_file5') dh_file6 = models.ForeignKey("system.file", on_delete=models.SET_NULL, null=True, blank=True, related_name='work_dh_file6') class Fingerprint(BaseModel): fp_hex = models.CharField( max_length=16, unique=True, verbose_name="simhash(hex)" ) fp_int = models.BigIntegerField( db_index=True, verbose_name="simhash(int)" ) seg1 = models.IntegerField(db_index=True) seg2 = models.IntegerField(db_index=True) seg3 = models.IntegerField(db_index=True) seg4 = models.IntegerField(db_index=True) score = models.FloatField(verbose_name="得分") class Meta: indexes = [ models.Index(fields=["seg1"]), models.Index(fields=["seg2"]), models.Index(fields=["seg3"]), models.Index(fields=["seg4"]), ] class Enterprise(CommonBDModel): """企业信息表""" name = models.CharField("企业名称", max_length=200) credit_code = models.CharField("统一社会信用代码", max_length=18, unique=True) legal_representative = models.CharField("法定代表人", max_length=50, blank=True, null=True) registered_capital = models.DecimalField("注册资本", max_digits=20, decimal_places=2, blank=True, null=True) establishment_date = models.DateField("成立日期", blank=True, null=True) business_scope = models.TextField("经营范围", blank=True, null=True) address = models.CharField("注册地址", max_length=500, blank=True, null=True) contact_phone = models.CharField("联系电话", max_length=20, blank=True, null=True) email = models.EmailField("电子邮箱", blank=True, null=True) industry = models.CharField("所属行业", max_length=100, blank=True, null=True) business_status = models.CharField("经营状态", max_length=50, blank=True, null=True) registration_authority = models.CharField("登记机关", max_length=200, blank=True, null=True) is_qualified = models.BooleanField("资格审核通过", default=False) belong_dept = models.OneToOneField( 'system.dept', null=True, blank=True, on_delete=models.SET_NULL, verbose_name='所属部门', related_name='enterprise_belong_dept') class Meta: verbose_name = "企业信息" verbose_name_plural = verbose_name