models.py 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276
  1. # coding=utf-8
  2. '''
  3. '''
  4. import utils.constant as uconst
  5. from django.db import models
  6. # ---------------- 用户部分 ------------------
  7. class Department(models.Model):
  8. name = models.CharField(u"组织名称",max_length=256,blank=True)
  9. pid = models.CharField(u"父节点ID",max_length=16,blank=True)
  10. permissions = models.TextField(u"权限",blank=True,null=True)
  11. status = models.SmallIntegerField(u"状态(0删除)",default=1)
  12. cid = models.IntegerField(u"创建人ID",blank=True)
  13. cperson = models.CharField(u"创建人",max_length=255,blank=True)
  14. ctime = models.DateTimeField(u"创建时间",auto_now_add=True)
  15. class Meta:
  16. db_table = "department"
  17. verbose_name = u"部门"
  18. app_label = "common"
  19. class UserInfo(models.Model):
  20. # 基础属性
  21. name = models.CharField(u"名字", max_length=255, blank=True)
  22. password = models.CharField(u"密码", max_length=255, blank=True)
  23. realname = models.CharField(u"真实名称", max_length=255, blank=True, null=True)
  24. email = models.CharField(u"邮箱", max_length=255, blank=True)
  25. phone = models.CharField(u"手机号", max_length=64, blank=True)
  26. remark = models.TextField(u"备注", blank=True,null=True)
  27. avatar = models.CharField(u"手机号", max_length=64, blank=True,null=True)
  28. vcard = models.TextField(u"电子名片", blank=True,null=True)
  29. utype = models.SmallIntegerField(u"用户类型", blank=True,null=True,default=1)
  30. status = models.SmallIntegerField(u"状态(0删除)",default=1)
  31. last_login = models.CharField(u"上次登录时间", max_length=128, blank=True,null=True,db_column='last_login_time')
  32. last_login_ip = models.CharField(u"上次登录IP", max_length=128, blank=True,null=True)
  33. is_active = models.CharField(u"是否激活可用", max_length=4, default="1")
  34. # 功能权限及数据权限
  35. department = models.ForeignKey("Department", verbose_name=u"所属部门", blank=True, null=True)
  36. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  37. cperson = models.CharField(u"创建人", max_length=255, blank=True,null=True)
  38. ctime = models.DateTimeField(u"创建时间", auto_now_add=True)
  39. class Meta:
  40. db_table = "users"
  41. verbose_name = u"用户信息"
  42. app_label = "common"
  43. def __str__(self):
  44. return u"{}){}".format(self.id, self.email)
  45. def is_authenticated(self):
  46. return True
  47. def is_anonymous(self):
  48. return False
  49. class Permission(models.Model):
  50. """权限
  51. """
  52. name = models.CharField(u"权限名称", max_length=50, blank=True)
  53. codename = models.CharField(u"权限代码", max_length=255, blank=True)
  54. remark = models.CharField(u"备注", max_length=255, blank=True, null=True, default="")
  55. order = models.IntegerField(u"排序字段", default=1, blank=True, null=True)
  56. pid = models.CharField(u"父节点ID",max_length=16,blank=True,null=True)
  57. class Meta:
  58. db_table = "permission"
  59. app_label = "common"
  60. class OperationLogConfig(models.Model):
  61. """操作日志模板配置
  62. """
  63. op_view = models.CharField(u"操作模块", max_length=100,blank=True,null=True)
  64. op_action_flag = models.CharField(u"操作类型", max_length=50)
  65. op_module = models.CharField(u"操作模块",max_length=255,blank=True,null=True)
  66. op_template = models.TextField(u"操作日志模板")
  67. op_url = models.CharField(u"URL", max_length=255)
  68. op_response = models.TextField(u"URL", max_length=255, blank=True, null=True)
  69. order = models.IntegerField(u"排序字段",blank=True,null=True)
  70. ctime = models.DateTimeField(u"创建时间", auto_now_add=True)
  71. class Meta:
  72. db_table = "oplog_config"
  73. verbose_name = u"操作日志配置"
  74. class OperationLog(models.Model):
  75. """操作日志
  76. """
  77. op_user_name = models.CharField(u"操作员名称",max_length=255)
  78. op_user_realname = models.CharField(u"操作员姓名",max_length=255)
  79. op_user_id = models.IntegerField(u"操作员id")
  80. op_user_ip = models.CharField(u"操作员ip",max_length=100)
  81. op_config = models.ForeignKey(OperationLogConfig)
  82. op_request = models.TextField(u"request body", default="")
  83. is_suc = models.BooleanField(u"是否成功", default=True)
  84. error_msg = models.TextField(u"错误信息", max_length=255, blank=True, null=True)
  85. ctime = models.DateTimeField(u"创建时间", auto_now_add=True)
  86. class Meta:
  87. db_table = "oplog"
  88. verbose_name = u"操作日志"
  89. class EmailNotice(models.Model):
  90. """邮件通知
  91. """
  92. receiver = models.TextField(u"接收人集合", blank=True)
  93. receiver_name = models.CharField(u'接收人id', max_length=256, blank=True)
  94. subject = models.CharField(u'邮件主题', blank=True, max_length=128)
  95. content = models.TextField(u"邮件内容", max_length=32, blank=True)
  96. is_suc = models.BooleanField(u"是否成功", default=False)
  97. error_msg = models.TextField(u'报错信息', blank=True,null=True)
  98. send_type = models.CharField(u"发送方式(手动、自动)", max_length=12, blank=True)
  99. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  100. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  101. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  102. class Meta:
  103. db_table = "email_notice"
  104. verbose_name = u"邮件发送记录"
  105. class MsgNotice(models.Model):
  106. """短信通知
  107. """
  108. receiver = models.TextField(u"接收人集合", blank=True)
  109. receiver_name = models.CharField(u'接收人id', max_length=256, blank=True)
  110. template = models.CharField(u'模板id', blank=True, max_length=128)
  111. content = models.TextField(u"邮件内容", max_length=32, blank=True)
  112. is_suc = models.BooleanField(u"是否成功", default=False)
  113. error_msg = models.TextField(u'报错信息', blank=True,null=True)
  114. send_type = models.CharField(u"发送方式(手动、自动)", max_length=12, blank=True)
  115. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  116. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  117. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  118. class Meta:
  119. db_table = "msg_notice"
  120. verbose_name = u"短信通知"
  121. class SysNotice(models.Model):
  122. """系统通知
  123. """
  124. title = models.CharField(u'标题', max_length=256, blank=True)
  125. content = models.TextField(u"内容", max_length=32, blank=True)
  126. viewer = models.TextField(u"查看人", max_length=32, blank=True,null=True)
  127. to = models.TextField(u"接收人", max_length=32, blank=True,null=True)
  128. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  129. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  130. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  131. class Meta:
  132. db_table = "sys_notice"
  133. verbose_name = u"系统通知"
  134. class EnterPrise(models.Model):
  135. """企业信息
  136. """
  137. mark = models.IntegerField(u'评分',null=True,blank=True)
  138. entno = models.CharField(u'企业编号', max_length=50)
  139. name = models.CharField(u'企业名称', max_length=256)
  140. regno = models.CharField(u'注册号', max_length=50)
  141. licenceorg = models.CharField(u"发证机关",max_length=255)
  142. enttype = models.CharField(u"企业类型",max_length=50)
  143. address = models.CharField(u"实际办公地址",max_length=255)
  144. legalperson = models.CharField(u"法人",max_length=50)
  145. entcontact = models.CharField(u"公司电话,法人电话",max_length=50)
  146. industry = models.CharField(u"所属行业",max_length=50)
  147. taxtype = models.CharField(u"税务类型",max_length=50)
  148. subindustry = models.CharField(u"细分行业",max_length=50,blank=True,null=True)
  149. profit = models.IntegerField(u"利润",blank=True,null=True)
  150. turnover = models.IntegerField(u"营业额",blank=True,null=True)
  151. entscale = models.CharField(u"公司规模",max_length=50,blank=True,null=True)
  152. regdate = models.CharField(u"注册时间",max_length=50,blank=True,null=True)
  153. busscope = models.TextField(u"公司经营范围",blank=True,null=True)
  154. principals = models.TextField(u"主要负责人",blank=True,null=True)
  155. finacial = models.CharField(u"财务情况",max_length=50,blank=True,null=True)
  156. funding = models.CharField(u"融资情况",max_length=50,blank=True,null=True)
  157. legalstate = models.CharField(u"法务情况",max_length=50,blank=True,null=True)
  158. remark = models.TextField(u"备注",blank=True,null=True)
  159. status = models.SmallIntegerField(u"状态(0删除)",default=1)
  160. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  161. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  162. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  163. class Meta:
  164. db_table = "enterprise"
  165. verbose_name = u"企业信息"
  166. class Product(models.Model):
  167. """产品
  168. """
  169. name = models.CharField(u'产品名称',max_length=128)
  170. ptype = models.CharField(u'产品类型',max_length=128)
  171. intro = models.TextField(u'产品简介',max_length=128)
  172. content = models.TextField(u'产品详情')
  173. status = models.SmallIntegerField(u"状态(0删除)",default=1)
  174. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  175. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  176. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  177. class Meta:
  178. db_table = "product"
  179. verbose_name = u"产品信息"
  180. class Transaction(models.Model):
  181. """交易
  182. """
  183. enterprise = models.ForeignKey("EnterPrise",verbose_name="企业",related_name="enttrans")
  184. product = models.ForeignKey("Product",verbose_name="成交产品",related_name="enttrans_pro")
  185. price = models.FloatField(u"价格")
  186. service_period = models.CharField(u"服务周期",max_length=100)
  187. remark = models.TextField(u"备注",blank=True,null=True)
  188. status = models.SmallIntegerField(u"状态(0删除)",default=1)
  189. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  190. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  191. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  192. class Meta:
  193. db_table = "transaction"
  194. verbose_name = u"企业交易"
  195. class BankCard(models.Model):
  196. """
  197. """
  198. user_id = models.IntegerField(u"用户id")
  199. name = models.CharField(u'名称',max_length=128)
  200. cardno = models.CharField(u'银行账户',max_length=128)
  201. status = models.SmallIntegerField(u"状态(0删除)",default=1)
  202. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  203. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  204. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  205. class Meta:
  206. db_table = "bankcard"
  207. verbose_name = u"银行卡"
  208. class CashRecord(models.Model):
  209. """
  210. """
  211. bankcard_id = models.IntegerField(u'银行卡')
  212. cardname = models.CharField(u'名称',max_length=128,blank=True,null=True)
  213. cardno = models.CharField(u'银行账户',max_length=128,blank=True,null=True)
  214. cashtype = models.CharField(u'提现方式',max_length=128)
  215. cashamount = models.FloatField(u'提现金额')
  216. cash_status = models.SmallIntegerField(u"提现状态(0待处理)",default=0)
  217. cid = models.IntegerField(u"创建人ID",blank=True,null=True)
  218. cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
  219. ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
  220. class Meta:
  221. db_table = "cashrecord"
  222. verbose_name = u"提现记录"