57 lines
1.7 KiB
Python
Executable File
57 lines
1.7 KiB
Python
Executable File
|
|
import datetime
|
|
|
|
from mongoengine import *
|
|
|
|
from .machines import MachineBase
|
|
from .material import Material
|
|
from .project import Project
|
|
from .usermanagement import Organisation, User
|
|
from .workpackage import Workpackage
|
|
from .enumeration import ProcessStatusEnum
|
|
from .client import Client
|
|
|
|
|
|
class TaskManagerBase(Document):
|
|
|
|
org_id = LazyReferenceField(Organisation, required=True)
|
|
user_id = LazyReferenceField(User, required=True)
|
|
client_id = LazyReferenceField(Client, required=True)
|
|
project_id = LazyReferenceField(Project, required=True)
|
|
wp_id = LazyReferenceField(Workpackage, required=False)
|
|
|
|
status = EnumField(ProcessStatusEnum, default=ProcessStatusEnum.ONGOING)
|
|
|
|
task_added = DateTimeField(default=datetime.datetime.now,
|
|
wtf_options={"r ender_kw": {
|
|
"step": "60"
|
|
}})
|
|
|
|
task_finished = DateTimeField(required=False)
|
|
|
|
assign_users = ListField(LazyReferenceField(User), required=False)
|
|
assign_machine = LazyReferenceField(MachineBase, required=False)
|
|
|
|
series = StringField(default='Serie 01')
|
|
|
|
meta = {
|
|
'allow_inheritance': True,
|
|
'index_opts': {},
|
|
'index_background': True,
|
|
'index_cls': False,
|
|
'auto_create_index': True,
|
|
'collection': 'taskmanager',
|
|
"db_alias": 'dblabtests',
|
|
}
|
|
|
|
|
|
class TaskCITTStiffness(TaskManagerBase):
|
|
|
|
material = LazyReferenceField(Material, required=True)
|
|
|
|
|
|
class TaskDynShearStiffness(TaskManagerBase):
|
|
|
|
material = LazyReferenceField(Material, required=True)
|
|
material2 = LazyReferenceField(Material, required=True)
|
|
bounding = LazyReferenceField(Material, required=True) |