models charfield

This commit is contained in:
caoqianming 2020-09-26 09:34:50 +08:00
parent 82ed58a50b
commit 2102190fd0
2 changed files with 305 additions and 49 deletions

View File

@ -0,0 +1,257 @@
# Generated by Django 2.2.8 on 2020-09-26 09:33
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('safesite', '0358_auto_20200909_1315'),
]
operations = [
# migrations.RemoveField(
# model_name='companyinfo',
# name='liaison_fax',
# ),
migrations.AlterField(
model_name='area',
name='link',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='dickey',
name='nousecomps',
field=models.TextField(default=''),
),
migrations.AlterField(
model_name='dickey',
name='usecomps',
field=models.TextField(default=',1,'),
),
migrations.AlterField(
model_name='drill',
name='detailcontent',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='drill',
name='plan',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='equipment',
name='fnum',
field=models.CharField(blank=True, max_length=100, null=True),
),
migrations.AlterField(
model_name='equipment',
name='oem',
field=models.CharField(blank=True, max_length=100, null=True),
),
migrations.AlterField(
model_name='equipment',
name='place',
field=models.CharField(blank=True, max_length=100, null=True),
),
migrations.AlterField(
model_name='equipmentcheckform',
name='desc',
field=models.TextField(verbose_name='描述'),
),
migrations.AlterField(
model_name='equipmentcheckitem',
name='content',
field=models.TextField(verbose_name='检查内容'),
),
migrations.AlterField(
model_name='exampaper',
name='nousecomps',
field=models.TextField(default=''),
),
migrations.AlterField(
model_name='exampaper',
name='usecomps',
field=models.TextField(default=',1,'),
),
migrations.AlterField(
model_name='examtest',
name='nousecomps',
field=models.TextField(default=''),
),
migrations.AlterField(
model_name='examtest',
name='usecomps',
field=models.TextField(default=',1,'),
),
migrations.AlterField(
model_name='fxcs',
name='cslx',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='fxcs',
name='nousecomps',
field=models.TextField(default=''),
),
migrations.AlterField(
model_name='fxcs',
name='usecomps',
field=models.TextField(default=',1,'),
),
migrations.AlterField(
model_name='group',
name='menulink',
field=models.TextField(default='11'),
),
migrations.AlterField(
model_name='map',
name='link',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='miss',
name='description',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='miss',
name='lesson',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='miss',
name='prevent',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='notice',
name='usecomps',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='observe',
name='makeresult',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='observe',
name='otherunsafe',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='observe',
name='safecontent',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='operation',
name='fxcs',
field=models.TextField(),
),
migrations.AlterField(
model_name='partment',
name='aqy',
field=models.TextField(default=','),
),
migrations.AlterField(
model_name='partment',
name='bmzg',
field=models.TextField(default=','),
),
migrations.AlterField(
model_name='partment',
name='bsq',
field=models.TextField(default=','),
),
migrations.AlterField(
model_name='partment',
name='partlink',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='partment',
name='partname',
field=models.CharField(default='生产部', max_length=200),
),
migrations.AlterField(
model_name='question',
name='nousecomps',
field=models.TextField(default=''),
),
migrations.AlterField(
model_name='question',
name='usecomps',
field=models.TextField(default=',1,'),
),
migrations.AlterField(
model_name='questioncat',
name='link',
field=models.TextField(blank=True, default=',', null=True),
),
migrations.AlterField(
model_name='risk',
name='gkcj',
field=models.CharField(blank=True, max_length=100, null=True),
),
migrations.AlterField(
model_name='role',
name='desc',
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='描述'),
),
migrations.AlterField(
model_name='role',
name='name',
field=models.CharField(max_length=200, unique=True, verbose_name='角色'),
),
migrations.AlterField(
model_name='suggest',
name='clcs',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='suggest',
name='clms',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='suggest',
name='dqxz',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='suggest',
name='jyfk',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='suggest',
name='jynr',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='suggest',
name='qwxg',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='train',
name='detailcontent',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='train',
name='otherparticipant',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='train',
name='pxxg',
field=models.TextField(blank=True, null=True),
),
migrations.AlterField(
model_name='trouble',
name='yhdd',
field=models.CharField(default='test', max_length=400),
),
]

View File

@ -33,24 +33,24 @@ class Role(models.Model): #公司权限设置
"""
角色用于权限绑定
"""
name = models.CharField(max_length=32, unique=True, verbose_name="角色")
name = models.CharField(max_length=200, unique=True, verbose_name="角色")
permissions = models.ManyToManyField(Menu, blank=True, verbose_name="URL授权")
desc = models.CharField(max_length=50, blank=True, null=True, verbose_name="描述")
desc = models.CharField(max_length=200, blank=True, null=True, verbose_name="描述")
def __str__(self):
return self.name
class Partment(models.Model):
partid = models.AutoField(primary_key=True)
partname = models.CharField(max_length=30, default='生产部')
partname = models.CharField(max_length=200, default='生产部')
parentid = models.ForeignKey(
'self', blank=True, null=True, on_delete=models.CASCADE)
partlink = models.CharField(max_length=200, blank=True) # 关系
partlink = models.TextField(null=True, blank=True) # 关系
deletemark = models.IntegerField(default='1')
creattime = models.DateTimeField(default=timezone.now)
iscompany = models.IntegerField(default=0) # 是否是公司
aqy = models.CharField(max_length=1000, default=',') # 安全员
bmzg = models.CharField(max_length=1000, default=',') # 主管
bsq = models.CharField(max_length=1000, default=',') # 授权者
aqy = models.TextField(default=',') # 安全员
bmzg = models.TextField(default=',') # 主管
bsq = models.TextField(default=',') # 授权者
position = JSONField('坐标', null=True, blank=True)
role = models.ForeignKey(Role, blank=True, null=True, on_delete=models.SET_NULL)
def __str__(self):
@ -67,7 +67,7 @@ class Map(models.Model):
pic = models.CharField(max_length=1000, blank=True)
parent = models.ForeignKey(
'self', blank=True, null=True, on_delete=models.CASCADE)
link = models.CharField(max_length=200, blank=True)
link = models.TextField(null=True, blank=True)
usecomp = models.ForeignKey(Partment, on_delete=models.CASCADE)
# type = models.IntegerField('地图类型', default=1, choices=type_choices)
default = models.IntegerField(default=0)
@ -81,7 +81,7 @@ class Area(models.Model):
order = models.IntegerField(default=0) # 排序
parent = models.ForeignKey(
'self', blank=True, null=True, on_delete=models.CASCADE)
link = models.CharField(max_length=200, blank=True)
link = models.TextField(null=True, blank=True)
belongmap = models.ForeignKey(
Map, on_delete=models.CASCADE, related_name='belongmap', null=True, blank=True)
containmap = models.ForeignKey(
@ -156,8 +156,8 @@ class Dickey(models.Model): # 字典
dicparent = models.ForeignKey(Dicclass, on_delete=models.CASCADE)
parent = models.ForeignKey(
'self', blank=True, null=True, on_delete=models.CASCADE)
usecomps = models.CharField(max_length=200, default=',1,') # 所用公司
nousecomps = models.CharField(max_length=200, default='') # 不用公司
usecomps = models.TextField(default=',1,') # 所用公司
nousecomps = models.TextField(default='') # 不用公司
detail = models.CharField(max_length=1000, default='')
deletemark = models.IntegerField(default='1')
creattime = models.DateTimeField(default=timezone.now)
@ -196,7 +196,7 @@ class Trouble(models.Model): # 隐患排查
on_delete=models.CASCADE, null=True, blank=True)
jclx = models.ForeignKey(Dickey, related_name='jclx',
on_delete=models.CASCADE, null=True, blank=True)
yhdd = models.CharField(max_length=200, default='test')
yhdd = models.CharField(max_length=400, default='test')
yhdj = models.ForeignKey(Dickey, related_name='yhdj',
on_delete=models.CASCADE, null=True, blank=True)
yhlxo = models.ForeignKey(Dickey, related_name='yhlxo',
@ -283,7 +283,7 @@ class Drill(models.Model): # 应急演练
Partment, related_name='ylbm', default='1')
drillcontent = models.ForeignKey(
Dickey, related_name='ylnr', default='1', on_delete=models.CASCADE)
detailcontent = models.CharField(max_length=1000, null=True, blank=True)
detailcontent = models.TextField(null=True, blank=True)
commander = models.CharField(max_length=200, null=True, blank=True)
chief = models.ForeignKey(
User, on_delete=models.CASCADE, null=True, blank=True)
@ -292,7 +292,7 @@ class Drill(models.Model): # 应急演练
state = models.IntegerField(default='0') # 默认未评估
participantnum = models.IntegerField(default='1', null=True, blank=True)
knownum = models.IntegerField(default='1', null=True, blank=True)
plan = models.CharField(max_length=1000, null=True, blank=True)
plan = models.TextField(null=True, blank=True)
material = models.CharField(max_length=1000, null=True, blank=True)
@ -319,10 +319,9 @@ class Observe(models.Model): # 行为观察
modifytime = models.DateTimeField(auto_now=True)
usecomp = models.ForeignKey(
Partment, default='1', on_delete=models.CASCADE)
otherunsafe = models.CharField(max_length=1000, null=True, blank=True)
makeresult = models.CharField(
max_length=1000, null=True, blank=True) # 整改情况
safecontent = models.CharField(max_length=1000, null=True, blank=True)
otherunsafe = models.TextField(null=True, blank=True)
makeresult = models.TextField(null=True, blank=True) # 整改情况
safecontent = models.TextField(null=True, blank=True)
deletemark = models.IntegerField(default='1')
lookimg = models.CharField(max_length=1000, null=True, blank=True)
unsafe = models.ManyToManyField(
@ -360,15 +359,15 @@ class Miss(models.Model): # 未遂事件
Partment, related_name='fsbm', on_delete=models.CASCADE) # 发生部门
misser = models.ForeignKey(
User, related_name='fsr', default='1', on_delete=models.CASCADE) # 当事人
description = models.CharField(max_length=1000, null=True, blank=True)
description = models.TextField(null=True, blank=True)
submittime = models.DateTimeField(default=timezone.now)
modifytime = models.DateTimeField(auto_now=True)
usecomp = models.ForeignKey(
Partment, default='1', on_delete=models.CASCADE)
deletemark = models.IntegerField(default='1')
missimg = models.CharField(max_length=1000, null=True, blank=True)
prevent = models.CharField(max_length=1000, null=True, blank=True) # 防范措施
lesson = models.CharField(max_length=1000, null=True, blank=True) # 经验教训
prevent = models.TextField(null=True, blank=True) # 防范措施
lesson = models.TextField(null=True, blank=True) # 经验教训
reads = models.ManyToManyField(
User, related_name='misstouser', through='Missto')
@ -397,7 +396,7 @@ class Group(models.Model): # 用户组,岗位
User, related_name='userg2', through='Groupuser2')
usecomp = models.ForeignKey(
Partment, on_delete=models.CASCADE, related_name='usecompg', default=1)
menulink = models.CharField(max_length=200, default='11')
menulink = models.TextField(default='11')
menulist = ArrayField(models.IntegerField(), blank=True, null=True)
@ -521,12 +520,12 @@ class Suggest(models.Model): # 合理化建议
modifytime = models.DateTimeField(auto_now=True)
usecomp = models.ForeignKey(
Partment, default='1', on_delete=models.CASCADE)
dqxz = models.CharField(max_length=1000, null=True, blank=True) # 当前现状
jynr = models.CharField(max_length=1000, null=True, blank=True) # 建议内容
qwxg = models.CharField(max_length=1000, null=True, blank=True) # 期望效果
jyfk = models.CharField(max_length=1000, null=True, blank=True) # 建议反馈
clcs = models.CharField(max_length=1000, null=True, blank=True) # 处理措施
clms = models.CharField(max_length=1000, null=True, blank=True) # 处理描述
dqxz = models.TextField(null=True, blank=True) # 当前现状
jynr = models.TextField(null=True, blank=True) # 建议内容
qwxg = models.TextField(null=True, blank=True) # 期望效果
jyfk = models.TextField(null=True, blank=True) # 建议反馈
clcs = models.TextField(null=True, blank=True) # 处理措施
clms = models.TextField(null=True, blank=True) # 处理描述
jyimg2 = JSONField()
jyzt = models.IntegerField(choices=ZT_CHOICES, null=True, blank=True)
todouser = models.ForeignKey(User, related_name='stodouser',
@ -572,7 +571,7 @@ class Notice(models.Model): # 资料/公告/通知
deletemark = models.IntegerField(default='1')
reads = models.IntegerField(default=0)
isgg = models.IntegerField(default='1') #1是公告,0是通知,2是资料文件
usecomps = models.CharField(max_length=1000, null=True, blank=True) # 使用公司
usecomps = models.TextField(null=True, blank=True) # 使用公司
like = models.IntegerField(default=0)
poster = models.CharField(max_length=200, null=True, blank=True, verbose_name='封面图')
supply_part = models.ForeignKey(
@ -616,7 +615,7 @@ class Operation(models.Model): # 作业表
zyimg2 = models.CharField(max_length=1000, default='')
deletemark = models.IntegerField(default='1')
zyzt = JSONField()
fxcs = models.CharField(max_length=200)
fxcs = models.TextField()
todouser = models.ForeignKey(
User, related_name='zyclr', on_delete=models.CASCADE, null=True, blank=True)
todousers = ArrayField(models.IntegerField(), blank=True, null=True)
@ -630,12 +629,12 @@ class Fxcs(models.Model): # 作业分析措施
Dickey, on_delete=models.CASCADE, null=True, blank=True)
fxfx = models.TextField()
aqcs = models.TextField()
cslx = models.CharField(max_length=100, null=True, blank=True)
cslx = models.TextField(null=True, blank=True)
submittime = models.DateTimeField(default=timezone.now)
modifytime = models.DateTimeField(auto_now=True)
deletemark = models.IntegerField(default='1')
usecomps = models.CharField(max_length=200, default=',1,')
nousecomps = models.CharField(max_length=200, default='')
usecomps = models.TextField(default=',1,')
nousecomps = models.TextField(default='')
# class Opersplc(models.Model):
# id = models.AutoField(primary_key=True)
@ -691,7 +690,7 @@ class Questioncat(models.Model): # 题目分类
parent = models.ForeignKey(
'self', blank=True, null=True, on_delete=models.CASCADE)
deletemark = models.IntegerField(default='1')
link = models.CharField(max_length=200, blank=True, default=',')
link = models.TextField(null=True, blank=True, default=',')
creattime = models.DateTimeField(default=timezone.now)
modifytime = models.DateTimeField(auto_now=True)
usecomp = models.ForeignKey(
@ -717,8 +716,8 @@ class Question(models.Model): # 题库
User, blank=True, null=True, on_delete=models.CASCADE)
creattime = models.DateTimeField(default=timezone.now)
modifytime = models.DateTimeField(auto_now=True)
usecomps = models.CharField(max_length=200, default=',1,')
nousecomps = models.CharField(max_length=200, default='')
usecomps = models.TextField(default=',1,')
nousecomps = models.TextField(default='')
class ExamPaper(models.Model): # 试卷表
@ -730,8 +729,8 @@ class ExamPaper(models.Model): # 试卷表
createtime = models.DateTimeField(default=timezone.now)
modifytime = models.DateTimeField(auto_now=True)
question = models.ManyToManyField(Question, through='ExamPaperDetail')
usecomps = models.CharField(max_length=200, default=',1,')
nousecomps = models.CharField(max_length=200, default='')
usecomps = models.TextField(default=',1,')
nousecomps = models.TextField(default='')
total = JSONField(null=True, blank=True) # 题量
@ -758,8 +757,8 @@ class ExamTest(models.Model): # 考试表
totalscore = models.IntegerField(default=100)
passscore = models.IntegerField(default=60)
duration = models.IntegerField(default=60) # 考试时长
usecomps = models.CharField(max_length=200, default=',1,')
nousecomps = models.CharField(max_length=200, default='')
usecomps = models.TextField(default=',1,')
nousecomps = models.TextField(default='')
createuser = models.ForeignKey(
User, blank=True, null=True, on_delete=models.CASCADE, related_name='kscjr')
qrcode = models.CharField(max_length=200, blank=True, null=True)
@ -808,17 +807,17 @@ class Train(models.Model): # 培训表
Partment, related_name='pxbm', default='1')
traincontent = models.ForeignKey(
Dickey, related_name='pxnr', default='1', on_delete=models.CASCADE)
detailcontent = models.CharField(max_length=1000, null=True, blank=True)
detailcontent = models.TextField(null=True, blank=True)
teacher = models.CharField(max_length=200, null=True, blank=True)
lecturer = models.ForeignKey(
User, on_delete=models.CASCADE, null=True, blank=True)
otherparticipant = models.CharField(max_length=1000, null=True, blank=True)
otherparticipant = models.TextField(null=True, blank=True)
deletemark = models.IntegerField(default='1')
state = models.IntegerField(default='0') #是否关闭
jsqd = models.IntegerField(verbose_name='结束签到',default=0)#默认关闭
participantnum = models.IntegerField(default='1', null=True, blank=True)
knownum = models.IntegerField(default='1', null=True, blank=True)
pxxg = models.CharField(max_length=1000, null=True, blank=True)
pxxg = models.TextField(null=True, blank=True)
material = models.CharField(max_length=1000, null=True, blank=True)
checkqr = models.CharField(max_length=200, blank=True, null=True)
examtest = models.ForeignKey(
@ -883,12 +882,12 @@ class RiskAct(models.Model): # 风险点表
class EquipmentCheckItem(models.Model):# 检查项目
name = models.CharField(max_length=200,verbose_name='检查项目')
content = models.CharField(max_length=400,verbose_name='检查内容')
content = models.TextField(verbose_name='检查内容')
type = models.ForeignKey(Dickey, on_delete=models.CASCADE, null=True, blank=True)
class EquipmentCheckForm(models.Model):# 检查表
name = models.CharField(max_length=200,verbose_name='名称')
desc = models.CharField(max_length=400,verbose_name='描述')
desc = models.TextField(verbose_name='描述')
items = models.ManyToManyField(EquipmentCheckItem,related_name='checkitems', through='EFormItems')
deletemark = models.IntegerField(default=1,verbose_name="删除标记")
createby = models.ForeignKey(User,on_delete=models.CASCADE, verbose_name="创建人",null=True,blank=True)
@ -910,11 +909,11 @@ class Equipment(models.Model): # 设备表
type = models.CharField(max_length=30, null=True, blank=True) # 规格
catename = models.CharField(max_length=30, null=True, blank=True) # 分类
parameter = models.TextField(null=True, blank=True)
oem = models.CharField(max_length=50, null=True, blank=True)
fnum = models.CharField(max_length=30, null=True, blank=True)
oem = models.CharField(max_length=100, null=True, blank=True)
fnum = models.CharField(max_length=100, null=True, blank=True)
fdate = models.DateField(null=True, blank=True)
udate = models.DateField(null=True, blank=True)
place = models.CharField(max_length=50, null=True, blank=True)
place = models.CharField(max_length=100, null=True, blank=True)
note = models.TextField(null=True, blank=True) # 备注
state = models.IntegerField(default=1) # 正常/异常/停用
deletemark = models.IntegerField(default=1)
@ -993,7 +992,7 @@ class Risk(models.Model): # 风险表
measure5 = models.TextField(null=True, blank=True)
riskact = models.ForeignKey(
RiskAct, on_delete=models.CASCADE, null=True, blank=True)
gkcj = models.CharField(max_length=50, null=True, blank=True)
gkcj = models.CharField(max_length=100, null=True, blank=True)
zrbm = models.ForeignKey(Partment, related_name='riskzrbm',
on_delete=models.CASCADE, null=True, blank=True)
zrr = models.ForeignKey(User, related_name='riskzrr',