| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411 |
- # coding=utf-8
- '''
- '''
- from django.db import models
- # ---------------- 用户部分 ------------------
- class Subject(models.Model):
- name = models.CharField(u"组织名称",max_length=256,blank=True)
- intro = models.TextField(u"科目介绍",max_length=256,blank=True,null=True)
- device_cats = models.TextField(u"设备种类",max_length=256,blank=True,null=True)
- price_new = models.FloatField(u"新考费用",max_length=256,blank=True,null=True)
- price_re = models.FloatField(u"复审费用",max_length=256,blank=True,null=True)
- price_change = models.FloatField(u"换证费用",max_length=256,blank=True,null=True)
- pid = models.CharField(u"父节点ID",max_length=16,blank=True,null=True)
- status = models.SmallIntegerField(u"状态(0删除)",default=1)
- order = models.IntegerField(u"培训科目",blank=True,null=True)
- class_hour = models.IntegerField(u"学时",blank=True,null=True)
- update_class_hour = models.IntegerField(u"复审学时",blank=True,null=True)
- change_class_hour = models.IntegerField(u"换证学时",blank=True,null=True)
- cid = models.IntegerField(u"创建人ID",blank=True)
- cperson = models.CharField(u"创建人",max_length=255,blank=True)
- ctime = models.DateTimeField(u"创建时间",auto_now_add=True)
- class Meta:
- db_table = "subject"
- verbose_name = u"培训科目"
- app_label = "common"
- class Class(models.Model):
- subject_id = models.TextField(u"培训科目",blank=True,null=True)
- subject_name = models.CharField(u"培训科目",blank=True,null=True,max_length=100)
- subject_item = models.CharField(u"培训科目",blank=True,null=True,max_length=255)
- name = models.CharField(u"名称",max_length=256,blank=True)
- signup_time = models.CharField(u"报名时间",max_length=100,blank=True,null=True)
- signup_limit = models.IntegerField(u"招生人数",blank=True,null=True)
- signuped_count = models.IntegerField(u"已报名人数",blank=True,null=True,default=0)
- class_hour = models.IntegerField(u"学时",blank=True,null=True,default=0)
- class_status = models.SmallIntegerField(u"班级状态",default=1)
- price = models.FloatField(u"价格信息",blank=True,null=True)
- status = models.SmallIntegerField(u"状态(0删除)",default=1)
- remark = models.CharField(u"备注",max_length=256,blank=True,null=True)
- remind = models.TextField(u"备注",max_length=256,blank=True,null=True)
- cid = models.IntegerField(u"创建人ID",blank=True)
- cperson = models.CharField(u"创建人",max_length=255,blank=True)
- ctime = models.DateTimeField(u"创建时间",auto_now_add=True)
- class Meta:
- db_table = "class"
- verbose_name = u"培训班"
- app_label = "common"
- class SignupOrders(models.Model):
- user_id = models.IntegerField(u"用户id",blank=True,null=True)
- name = models.CharField(u"名称",max_length=256,blank=True)
- sex = models.CharField(u"性别",max_length=256,blank=True)
- idno = models.CharField(u"身份证号",max_length=256,blank=True)
- education = models.CharField(u"文化程度",max_length=256,blank=True)
- phone = models.CharField(u"手机号",max_length=13,blank=True)
- company = models.CharField(u"公司/单位",max_length=255,blank=True,null=True)
- class_id = models.IntegerField(u"班级id",blank=True,null=True)
- subject_id = models.IntegerField(u"培训科目id",blank=True,null=True)
- subject_item = models.CharField(u"培训科目id",max_length=256,blank=True,null=True)
- train_type = models.CharField(u"培训类型",max_length=50,blank=True,null=True)
- receive_card = models.CharField(u"领取方式",max_length=255,blank=True,null=True)
- area = models.CharField(u"所在地区",max_length=255,blank=True,null=True)
- address = models.CharField(u"地址",max_length=255,blank=True,null=True)
- idnoimg_face = models.CharField(u"身份证正面照",max_length=256,blank=True,null=True)
- idnoimg_back = models.CharField(u"身份证正面照",max_length=256,blank=True,null=True)
- halfbody_img = models.CharField(u"上半身照",max_length=256,blank=True,null=True)
- education_img = models.CharField(u"学历证书",max_length=256,blank=True,null=True)
- oldcard_img = models.CharField(u"学历证书",max_length=256,blank=True,null=True)
- health_img = models.CharField(u"体检报告",max_length=256,blank=True,null=True)
- remark = models.CharField(u"备注",max_length=256,blank=True,null=True)
- admin_remark = models.CharField(u"后台备注",max_length=256,blank=True,null=True)
- price = models.FloatField(u"价格信息",blank=True,null=True)
- out_trade_no = models.CharField(u"订单号",max_length=256,blank=True,null=True)
- order_status = models.SmallIntegerField(u"订单状态",default=-1)
- pay_status = models.SmallIntegerField(u"支付状态",default=0)
- pay_time = models.CharField(u"支付时间",max_length=256,blank=True,null=True)
- transaction_id = models.CharField(u"交易单号",max_length=256,blank=True,null=True)
- bill_type = models.SmallIntegerField(u"发票类型",default=0,blank=True,null=True)
- bill_mat = models.SmallIntegerField(u"发票材料",default=1,blank=True,null=True)
- bill_no = models.CharField(u"发票税号",max_length=256,blank=True,null=True)
- bill_name = models.CharField(u"发票公司名",max_length=256,blank=True,null=True)
- signup_status = models.SmallIntegerField(u"报名状态",default=1)
- classhour_cert_status = models.SmallIntegerField(u"生成学时证明状态",default=0)
- classhour_cert_url = models.CharField(u"发票税号",max_length=256,blank=True,null=True)
- classhour_total = models.IntegerField(u"总学时",blank=True,null=True,default=0)
- classhour_finish = models.IntegerField(u"已完成学时",blank=True,null=True,default=0)
- status = models.SmallIntegerField(u"状态(0删除)",default=1)
- exam_time = models.DateTimeField(u"考试时间",blank=True,null=True)
- train_time_start = models.DateTimeField(u"培训开始时间",blank=True,null=True)
- train_time_end = models.DateTimeField(u"培训结束时间",blank=True,null=True)
- update_time = models.DateTimeField(u"复审时间",null=True,blank=True,auto_now_add=True)
- change_time = models.DateField(u"换证时间",blank=True,null=True)
- send_update_notice = models.IntegerField(u"已完成学时",blank=True,null=True,default=0)
- send_change_notice = models.IntegerField(u"已完成学时",blank=True,null=True,default=0)
- device_cats = models.TextField(u"设备种类",max_length=256,blank=True,null=True)
- cid = models.IntegerField(u"创建人ID",blank=True)
- cperson = models.CharField(u"创建人",max_length=255,blank=True)
- ctime = models.DateTimeField(u"创建时间",auto_now_add=True)
- class Meta:
- db_table = "signup_orders"
- verbose_name = u"报名信息"
- app_label = "common"
- class Category(models.Model):
- # 基础属性
- name = models.CharField(u"名字", max_length=255, blank=True,null=True)
- icon = models.CharField(u"图标", max_length=255, blank=True,null=True)
- path = models.CharField(u"路径", max_length=255, blank=True,null=True)
- order = models.IntegerField(u"排序",default=1)
- is_show = models.SmallIntegerField(u"是否展示",default=1)
- status = models.SmallIntegerField(u"状态(0删除)",default=1)
- cid = models.IntegerField(u"创建人ID",blank=True)
- cperson = models.CharField(u"创建人",max_length=255,blank=True)
- ctime = models.DateTimeField(u"创建时间",auto_now_add=True)
- class Meta:
- db_table = "category"
- verbose_name = u"栏目信息"
- app_label = "common"
- class Article(models.Model):
- # 基础属性
- category = models.ForeignKey(Category)
- title = models.CharField(u"标题", max_length=255, blank=True,null=True)
- intro = models.TextField(u"简介",blank=True,null=True)
- content = models.TextField(u"内容",blank=True,null=True)
- order = models.IntegerField(u"排序",default=1)
- status = models.SmallIntegerField(u"状态(0删除)",default=1)
- imgs = models.TextField(u"多图",blank=True,null=True)
- address = models.CharField(u"地址信息",blank=True,null=True,max_length=255)
- point = models.CharField(u"经纬度",blank=True,null=True,max_length=255)
- phone = models.CharField(u"联系方式",blank=True,null=True,max_length=255)
- cid = models.IntegerField(u"创建人ID",blank=True)
- cperson = models.CharField(u"创建人",max_length=255,blank=True)
- ctime = models.DateTimeField(u"创建时间",auto_now_add=True)
- class Meta:
- db_table = "article"
- verbose_name = u"文章信息"
- app_label = "common"
- class UserInfo(models.Model):
- # 基础属性
- name = models.CharField(u"名字", max_length=255, blank=True,null=True)
- password = models.CharField(u"密码", max_length=255, blank=True,null=True)
- realname = models.CharField(u"真实名称", max_length=255, blank=True, null=True)
- email = models.CharField(u"邮箱", max_length=255, blank=True,null=True)
- phone = models.CharField(u"手机号", max_length=64, blank=True,null=True)
- remark = models.TextField(u"备注", blank=True,null=True)
- openid = models.CharField(u"微信openid", max_length=64, blank=True,null=True)
- avatar = models.CharField(u"手机号", max_length=64, blank=True,null=True)
- nickname = models.CharField(u"手机号", max_length=64, blank=True,null=True)
- vcard = models.TextField(u"电子名片", blank=True,null=True)
- utype = models.SmallIntegerField(u"用户类型", blank=True,null=True,default=2)
- status = models.SmallIntegerField(u"状态(0删除)",default=1)
- verify = models.SmallIntegerField(u"是否实名认证(0/1)",default=0,blank=True,null=True)
- permissions = models.TextField(u"权限", blank=True,null=True)
- userinfo = models.TextField(u"权限", blank=True,null=True)
- last_login = models.CharField(u"上次登录时间", max_length=128, blank=True,null=True,db_column='last_login_time')
- last_login_ip = models.CharField(u"上次登录IP", max_length=128, blank=True,null=True)
- is_active = models.CharField(u"是否激活可用", max_length=4, default="1")
- # 功能权限及数据权限
- #department = models.ForeignKey("Department", verbose_name=u"所属部门", blank=True, null=True)
- user_wx_id = models.IntegerField(u"老系统用户id",blank=True,null=True)
- cid = models.IntegerField(u"创建人ID",blank=True,null=True)
- cperson = models.CharField(u"创建人", max_length=255, blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间", auto_now_add=True)
- class Meta:
- db_table = "users"
- verbose_name = u"用户信息"
- app_label = "common"
- def __str__(self):
- return u"{}){}".format(self.id, self.email)
- def is_authenticated(self):
- return True
- def is_anonymous(self):
- return False
- class OperationLogConfig(models.Model):
- """操作日志模板配置
- """
- op_view = models.CharField(u"操作模块", max_length=100,blank=True,null=True)
- op_action_flag = models.CharField(u"操作类型", max_length=50)
- op_module = models.CharField(u"操作模块",max_length=255,blank=True,null=True)
- op_template = models.TextField(u"操作日志模板")
- op_url = models.CharField(u"URL", max_length=255)
- op_request = models.TextField(u"请求参数", max_length=255, blank=True, null=True)
- op_response = models.TextField(u"URL", max_length=255, blank=True, null=True)
- order = models.IntegerField(u"排序字段",blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间", auto_now_add=True)
- class Meta:
- db_table = "oplog_config"
- verbose_name = u"操作日志配置"
- class OperationLog(models.Model):
- """操作日志
- """
- op_user_name = models.CharField(u"操作员名称",max_length=255)
- op_user_realname = models.CharField(u"操作员姓名",max_length=255)
- op_user_id = models.IntegerField(u"操作员id")
- op_user_ip = models.CharField(u"操作员ip",max_length=100)
- op_config = models.ForeignKey(OperationLogConfig)
- op_request = models.TextField(u"request body", default="")
- is_suc = models.BooleanField(u"是否成功", default=True)
- error_msg = models.TextField(u"错误信息", max_length=255, blank=True, null=True)
- ctime = models.DateTimeField(u"创建时间", auto_now_add=True)
- class Meta:
- db_table = "oplog"
- verbose_name = u"操作日志"
- class MsgNotice(models.Model):
- """短信通知
- """
- receiver = models.TextField(u"接收人集合", blank=True)
- receiver_name = models.CharField(u'接收人id', max_length=256, blank=True)
- template = models.CharField(u'模板id', blank=True, max_length=128)
- content = models.TextField(u"邮件内容", max_length=32, blank=True)
- is_suc = models.BooleanField(u"是否成功", default=False)
- error_msg = models.TextField(u'报错信息', blank=True,null=True)
- send_type = models.CharField(u"发送方式(手动、自动)", max_length=12, blank=True)
- cid = models.IntegerField(u"创建人ID",blank=True,null=True)
- cperson = models.CharField(u'邮件主题', blank=True, max_length=128,null=True)
- ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
- class Meta:
- db_table = "msg_notice"
- verbose_name = u"短信通知"
- class SysNotice(models.Model):
- """系统通知
- """
- title = models.CharField(u'标题', max_length=256, blank=True)
- content = models.TextField(u"内容", max_length=32, blank=True)
- viewer = models.TextField(u"查看人", max_length=32, blank=True,null=True)
- to = models.TextField(u"接收人", max_length=32, blank=True,null=True)
- cid = models.IntegerField(u"创建人ID",blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间(发送时间)", auto_now_add=True)
- class Meta:
- db_table = "sys_notice"
- verbose_name = u"系统通知"
- class ClassRoom(models.Model):
- """课程
- """
- CAT_CHO = (
- (1,u"python教程"),
- (2,u"爬虫教程"),
- (3,u"Sanic教程")
- )
- title = models.CharField(u"标题",max_length=100)
- cat = models.SmallIntegerField(u"分类",choices=CAT_CHO,default=1)
- img = models.ImageField(u"封面图",max_length=100,default="")
- intro = models.CharField(u"课程简介",max_length=255,default="")
- content = models.TextField(u"课程详情",default="")
- create_date = models.DateTimeField(u"创建时间",auto_now=True)
- update_date = models.DateTimeField(u"修改时间",auto_now=True)
- def __unicode__(self):
- return self.title
- class Meta:
- db_table = 'classroom'
- verbose_name = u'课程管理'
- verbose_name_plural = u'课程管理'
- class Lessons(models.Model):
- """视频
- """
- classroom = models.ForeignKey(ClassRoom,related_name="lessons")
- title = models.CharField(u"标题",max_length=100,default="")
- img = models.ImageField(u"封面图",default="")
- turl = models.CharField(u"试看地址",default="",max_length=255)
- url = models.FileField(u"视频地址",default="")
- enc_url = models.TextField(u"视频地址",default="",blank=True,null=True)
- charge = models.BooleanField(u"是否收费",default=False)
- iv = models.CharField(u"iv",default="",max_length=255,blank=True,null=True)
- create_date = models.DateTimeField(u"创建时间",auto_now=True)
- update_date = models.DateTimeField(u"修改时间",auto_now=True)
- def __unicode__(self):
- return self.title
- class Meta:
- db_table = 'lessons'
- verbose_name = u'视频管理'
- verbose_name_plural = u'视频管理'
- class Questions(models.Model):
- """试题
- """
- qtype = models.IntegerField(u"题型")
- title = models.TextField(u"试题标题",default="")
- options = models.TextField(u"选项",blank=True,null=True)
- answer = models.TextField(u"选项",blank=True,null=True)
- analysis = models.TextField(u"题目解析",blank=True,null=True)
- score = models.IntegerField(u"分数",blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间",auto_now=True)
-
- def __unicode__(self):
- return self.title
- class Meta:
- db_table = 'questions'
- verbose_name = u'试题'
- verbose_name_plural = u'试题'
- class Papers(models.Model):
- """试卷
- """
- title = models.CharField(u"标题",max_length=100,default="")
- subject_id = models.IntegerField(u"科目id",blank=True,null=True)
- subject_item = models.CharField(u"培训科目",max_length=255,default="")
- train_type = models.CharField(u"培训类型",max_length=255,default="")
- total_score = models.IntegerField(u"总分",blank=True,null=True)
- total_time = models.IntegerField(u"总时间",blank=True,null=True)
- questions = models.ManyToManyField(Questions,blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间",auto_now=True)
- def __unicode__(self):
- return self.title
- class Meta:
- db_table = 'paper'
- verbose_name = u'试卷管理'
- verbose_name_plural = u'试卷管理'
- class PostPapers(models.Model):
- """试卷
- """
- title = models.CharField(u"标题",max_length=100,default="")
- paper_id = models.IntegerField(u"试卷id",blank=True,null=True)
- user_id = models.IntegerField(u"用户id",blank=True,null=True)
- questions = models.TextField(u"答案",blank=True,null=True)
- score = models.FloatField(u"得分",blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间",auto_now=True)
- def __unicode__(self):
- return self.title
- class Meta:
- db_table = 'post_paper'
- verbose_name = u'答题记录'
- verbose_name_plural = u'答题记录'
- class Videos(models.Model):
- """视频
- """
- subject_id = models.IntegerField(u"科目id",blank=True,null=True)
- subject_item = models.CharField(u"培训科目",max_length=255,default="")
- train_type = models.CharField(u"培训类型",max_length=255,default="")
- title = models.CharField(u"标题",max_length=100,default="")
- img = models.ImageField(u"封面图",default="")
- url = models.FileField(u"视频地址",default="")
- enc_url = models.TextField(u"视频地址",default="",blank=True,null=True)
- ctime = models.DateTimeField(u"创建时间",auto_now=True)
- def __unicode__(self):
- return self.title
- class Meta:
- db_table = 'videos'
- verbose_name = u'视频管理'
- verbose_name_plural = u'视频管理'
- class Docs(models.Model):
- """视频
- """
- name = models.CharField(u"资料名称",max_length=100,default="")
- url = models.FileField(u"视频地址",default="")
- ctime = models.DateTimeField(u"创建时间",auto_now=True)
- def __unicode__(self):
- return self.name
- class Meta:
- db_table = 'docs'
- verbose_name = u'资料管理'
- verbose_name_plural = u'资料管理'
|