70 lines
3.0 KiB
Python
70 lines
3.0 KiB
Python
from django.db import models
|
|
from apps.system.models import Dept, Dictionary, User
|
|
from apps.utils.models import BaseModel, CommonAModel, CommonBModel
|
|
from apps.am.models import Area
|
|
from apps.wf.models import Ticket, Workflow
|
|
|
|
|
|
# Create your models here.
|
|
class OptCate(CommonAModel):
|
|
"""
|
|
作业票种类
|
|
"""
|
|
code = models.CharField('标识', max_length=10, unique=True)
|
|
name = models.CharField('名称', max_length=20, unique=True)
|
|
template_export = models.TextField('导出word模板', null=True, blank=True)
|
|
workflow = models.ForeignKey(Workflow, verbose_name='所用工作流',
|
|
on_delete=models.CASCADE, null=True, blank=True)
|
|
|
|
|
|
class Operation(CommonBModel):
|
|
OP_STATE_CHOICES = (
|
|
(10, '创建中'),
|
|
(20, '审批中'),
|
|
(30, '待作业'),
|
|
(40, '待关闭'),
|
|
(50, '已关闭')
|
|
)
|
|
OP_WORK_CHOICES = (
|
|
('work', '运行'),
|
|
('stop', '停机'),
|
|
('repair', '检修')
|
|
)
|
|
number = models.CharField('作业编号', max_length=20, null=True, blank=True)
|
|
name = models.CharField('作业简述', max_length=200)
|
|
area = models.ForeignKey(Area, verbose_name='作业区域',
|
|
on_delete=models.CASCADE)
|
|
place = models.TextField('具体地点', null=True, blank=True)
|
|
start_time = models.DateTimeField('作业开始时间')
|
|
end_time = models.DateTimeField('作业结束时间')
|
|
dept_sd = models.ForeignKey(Dept, verbose_name='属地部门',
|
|
on_delete=models.CASCADE)
|
|
dept_yw = models.ForeignKey(Dept, verbose_name='业务部门',
|
|
on_delete=models.CASCADE)
|
|
user_xt = models.ForeignKey(User, verbose_name='业务部门协调员',
|
|
on_delete=models.CASCADE)
|
|
user_fz = models.ForeignKey(User, verbose_name='作业负责人',
|
|
on_delete=models.CASCADE)
|
|
user_jh = models.ForeignKey(User, verbose_name='作业监护人',
|
|
)
|
|
state_work = models.CharField('生产状态', choices=OP_WORK_CHOICES)
|
|
|
|
|
|
class Opt(CommonBModel):
|
|
"""
|
|
作业票
|
|
"""
|
|
operation = models.ForeignKey(Operation, verbose_name='关联作业',
|
|
on_delete=models.CASCADE)
|
|
number = models.CharField('作业票编号', max_length=20, null=True, blank=True)
|
|
cate = models.ForeignKey(OptCate, verbose_name='作业票种类',
|
|
on_delete=models.CASCADE)
|
|
dept_zy = models.ForeignKey(Dept, verbose_name='作业部门',
|
|
on_delete=models.CASCADE)
|
|
user_fz = models.ForeignKey(User, verbose_name='作业负责人',
|
|
on_delete=models.CASCADE)
|
|
user_jh = models.ForeignKey(User, verbose_name='作业监护人',
|
|
)
|
|
ticket = models.ForeignKey(Ticket, verbose_name='关联工单',
|
|
on_delete=models.CASCADE, null=True, blank=True)
|