models.py 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. from django.db import models
  2. from apps.project.models import RetrievalProject
  3. # Create your models here.
  4. class RetrievalTask(models.Model):
  5. id = models.AutoField(auto_created=True, primary_key=True, verbose_name='任务编号')
  6. title = models.CharField(max_length=128, verbose_name='检索任务名称')
  7. description = models.TextField(verbose_name='检索任务描述')
  8. project = models.ForeignKey(RetrievalProject, on_delete=models.CASCADE, verbose_name='检索项目', default=1)
  9. state = models.IntegerField(verbose_name='任务状态')
  10. type = models.CharField(max_length=64, verbose_name='检索任务类型')
  11. create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
  12. update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
  13. delete = models.BooleanField(default=False)
  14. def __str__(self):
  15. return self.title
  16. class Meta:
  17. verbose_name = '检索任务'
  18. verbose_name_plural = verbose_name
  19. db_table = 'task'
  20. class DataType(models.Model):
  21. id = models.AutoField(auto_created=True, primary_key=True, verbose_name='隐私类型编号')
  22. data_type = models.CharField(max_length=64, verbose_name='隐私类型')
  23. variable = models.CharField(max_length=64, verbose_name='隐私变量')
  24. line_no = models.IntegerField(verbose_name='行号')
  25. func_name = models.CharField(max_length=64, verbose_name='所在方法名')
  26. file_path = models.TextField(verbose_name='所在文件路径')
  27. task = models.ForeignKey(RetrievalTask, on_delete=models.CASCADE, verbose_name='检索任务', default=1)
  28. create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
  29. update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
  30. delete = models.BooleanField(default=False)
  31. def __str__(self):
  32. return self.file_path + '/' + self.func_name + "L" + str(
  33. self.line_no) + " #" + self.data_type + "-" + self.variable
  34. class Meta:
  35. verbose_name = '检索任务'
  36. verbose_name_plural = verbose_name
  37. db_table = 'data_type'
  38. class Purpose(models.Model):
  39. id = models.AutoField(auto_created=True, primary_key=True, verbose_name='操作意图编号')
  40. purpose = models.CharField(max_length=64, verbose_name='操作意图')
  41. func_name = models.CharField(max_length=64, verbose_name='所在方法名')
  42. file_path = models.TextField(verbose_name='所在文件路径')
  43. task = models.ForeignKey(RetrievalTask, on_delete=models.CASCADE, verbose_name='检索任务', default=1)
  44. create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
  45. update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
  46. delete = models.BooleanField(default=False)
  47. def __str__(self):
  48. return self.file_path + '/' + self.func_name + "-" + self.purpose
  49. class Meta:
  50. verbose_name = '操作意图'
  51. verbose_name_plural = verbose_name
  52. db_table = 'purpose'