labstep 3.25.2__tar.gz → 3.26.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {labstep-3.25.2 → labstep-3.26.0}/PKG-INFO +1 -1
- labstep-3.26.0/labstep/constants/version.py +1 -0
- labstep-3.26.0/labstep/entities/collaboratorRole/model.py +48 -0
- labstep-3.26.0/labstep/entities/collaboratorRole/repository.py +44 -0
- labstep-3.26.0/labstep/entities/collaboratorRoleRequirement/model.py +114 -0
- labstep-3.26.0/labstep/entities/collaboratorRoleRequirement/repository.py +79 -0
- labstep-3.26.0/labstep/entities/entityState/model.py +108 -0
- labstep-3.26.0/labstep/entities/entityState/repository.py +56 -0
- labstep-3.26.0/labstep/entities/entityStateWorkflow/model.py +130 -0
- labstep-3.26.0/labstep/entities/entityStateWorkflow/repository.py +44 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experiment/model.py +33 -4
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experiment/repository.py +4 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentTemplate/model.py +81 -116
- labstep-3.26.0/labstep/entities/experimentTemplate/repository.py +61 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/notificationAlert/repository.py +4 -4
- labstep-3.26.0/labstep/entities/signatureRequirement/model.py +73 -0
- labstep-3.26.0/labstep/entities/signatureRequirement/repository.py +48 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/user/model.py +195 -12
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspace/model.py +177 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entity/repository.py +8 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/helpers.py +6 -1
- {labstep-3.25.2 → labstep-3.26.0}/labstep.egg-info/PKG-INFO +1 -1
- {labstep-3.25.2 → labstep-3.26.0}/labstep.egg-info/SOURCES.txt +11 -0
- labstep-3.25.2/labstep/constants/version.py +0 -1
- {labstep-3.25.2 → labstep-3.26.0}/README.rst +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/__init__.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/config/export.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/constants/__init__.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/constants/unspecified.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/converter/__init__.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/converter/htmlToProseMirror.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/apiKey/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/apiKey/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/autoshare/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/autoshare/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/chemical/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/chemical/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/chemicalReaction/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/chemicalReaction/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/collaborator/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/collaborator/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/collection/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/collection/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/comment/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/comment/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/device/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/device/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceBooking/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceBooking/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceCategory/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceCategory/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceData/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceData/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceTemplate/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/deviceTemplate/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/entityImport/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/entityImport/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentCondition/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentCondition/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentDataField/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentDataField/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentInventoryField/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentInventoryField/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentLink/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentLink/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentProtocol/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentProtocol/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentSignature/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentSignature/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentSignatureRequest/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentSignatureRequest/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentStep/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentStep/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentTable/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentTable/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentTimer/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/experimentTimer/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/export/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/export/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/file/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/file/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/invitation/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/invitation/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/jupyterInstance/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/jupyterInstance/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/jupyterNotebook/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/jupyterNotebook/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/jupyterSchedule/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/jupyterSchedule/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/metadata/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/metadata/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/molecule/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/molecule/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/notification/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/notification/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/notificationAlert/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/orderRequest/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/orderRequest/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/organization/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/organization/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/organizationUser/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/organizationUser/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/permission/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/permission/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocol/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocol/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolCondition/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolCondition/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolDataField/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolDataField/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolInventoryField/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolInventoryField/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolStep/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolStep/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolTable/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolTable/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolTimer/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolTimer/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolVersion/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/protocolVersion/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/purchaseOrder/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/purchaseOrder/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resource/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resource/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceCategory/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceCategory/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceItem/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceItem/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceLocation/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceLocation/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceTemplate/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/resourceTemplate/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/sequence/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/sequence/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/sharelink/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/sharelink/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/tag/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/tag/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/user/facade.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/user/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspace/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspaceMember/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspaceMember/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspaceRole/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspaceRole/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspaceRolePermission/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/entities/workspaceRolePermission/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entity/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityList/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityPrimary/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithAssign/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithComments/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithMetadata/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithMetadata/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithSharing/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithTags/model.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/generic/entityWithTags/repository.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/__init__.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/config.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/htmlExport.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/htmlToPDF.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/htmlToProseMirror.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/jupyter.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/ping.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep/service/request.py +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep.egg-info/dependency_links.txt +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep.egg-info/not-zip-safe +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep.egg-info/requires.txt +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/labstep.egg-info/top_level.txt +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/setup.cfg +0 -0
- {labstep-3.25.2 → labstep-3.26.0}/setup.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
VERSION = "3.26.0"
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
from deprecated import deprecated
|
|
5
|
+
from labstep.generic.entityWithSharing.model import EntityWithSharing
|
|
6
|
+
from labstep.service.helpers import getTime, handleDate
|
|
7
|
+
from labstep.constants import UNSPECIFIED
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class CollaboratorRole(EntityWithSharing):
|
|
11
|
+
"""
|
|
12
|
+
Represents a role a user can have with respect to a particular entity on Labstep i.e. Author, Reviewer, Approver, Assignee, etc.
|
|
13
|
+
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
__entityName__ = "entity-user-role"
|
|
17
|
+
__unSearchable__ = True
|
|
18
|
+
|
|
19
|
+
def edit(self, name=UNSPECIFIED, description=UNSPECIFIED, extraParams={}):
|
|
20
|
+
"""
|
|
21
|
+
Edit an existing CollaboratorRole.
|
|
22
|
+
|
|
23
|
+
Parameters
|
|
24
|
+
----------
|
|
25
|
+
name (str)
|
|
26
|
+
The new name of the CollaboratorRole.
|
|
27
|
+
|
|
28
|
+
description(str)
|
|
29
|
+
The new description of the CollaboratorRole.
|
|
30
|
+
|
|
31
|
+
Returns
|
|
32
|
+
-------
|
|
33
|
+
:class:`~labstep.entities.collaboratorRole.model.CollaboratorRole`
|
|
34
|
+
An object representing the edited CollaboratorRole.
|
|
35
|
+
|
|
36
|
+
Example
|
|
37
|
+
-------
|
|
38
|
+
::
|
|
39
|
+
|
|
40
|
+
workspace = user.getWorkspace(17000)
|
|
41
|
+
my_collaborator_role = workspace.getCollaboratorRole(17000)
|
|
42
|
+
my_collaborator_role.edit(name='A New CollaboratorRole Name')
|
|
43
|
+
"""
|
|
44
|
+
import labstep.entities.collaboratorRole.repository as collaboratorRoleRepository
|
|
45
|
+
|
|
46
|
+
return collaboratorRoleRepository.editCollaboratorRole(self, name=name, description=description, extraParams=extraParams)
|
|
47
|
+
|
|
48
|
+
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
|
|
5
|
+
from labstep.entities.collaboratorRole.model import CollaboratorRole
|
|
6
|
+
import labstep.generic.entity.repository as entityRepository
|
|
7
|
+
from labstep.constants import UNSPECIFIED
|
|
8
|
+
|
|
9
|
+
def addCollaboratorRole(user, group_id, name=UNSPECIFIED, description=UNSPECIFIED, extraParams={}):
|
|
10
|
+
params = {
|
|
11
|
+
"group_id": group_id,
|
|
12
|
+
"name": name,
|
|
13
|
+
"description": description,
|
|
14
|
+
**extraParams,
|
|
15
|
+
}
|
|
16
|
+
return entityRepository.newEntity(user, CollaboratorRole, params)
|
|
17
|
+
|
|
18
|
+
def editCollaboratorRole(collaboratorRole, name=UNSPECIFIED,
|
|
19
|
+
description=UNSPECIFIED,
|
|
20
|
+
deleted_at=UNSPECIFIED,
|
|
21
|
+
extraParams={}):
|
|
22
|
+
params = {
|
|
23
|
+
"name": name,
|
|
24
|
+
"description": description,
|
|
25
|
+
"deleted_at": deleted_at,
|
|
26
|
+
**extraParams,
|
|
27
|
+
}
|
|
28
|
+
return entityRepository.editEntity(collaboratorRole, params)
|
|
29
|
+
|
|
30
|
+
def getCollaboratorRole(user, collaboratorRole_id):
|
|
31
|
+
return entityRepository.getEntity(user, CollaboratorRole, id=collaboratorRole_id)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def getCollaboratorRoles(user, entity_state_workflow_id=UNSPECIFIED,
|
|
35
|
+
group_id=UNSPECIFIED,
|
|
36
|
+
count=UNSPECIFIED,
|
|
37
|
+
search_query=UNSPECIFIED,
|
|
38
|
+
extraParams={}):
|
|
39
|
+
params = {
|
|
40
|
+
#'entity_state_workflow_id':entity_state_workflow_id,
|
|
41
|
+
'group_id':group_id,
|
|
42
|
+
#"search_query": search_query,
|
|
43
|
+
**extraParams}
|
|
44
|
+
return entityRepository.getEntities(user, CollaboratorRole, count, params)
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
from deprecated import deprecated
|
|
5
|
+
from labstep.generic.entity.model import Entity
|
|
6
|
+
from labstep.service.helpers import getTime, handleDate
|
|
7
|
+
from labstep.constants import UNSPECIFIED
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class CollaboratorRoleRequirement(Entity):
|
|
11
|
+
"""
|
|
12
|
+
Represents a requirement for a particular Collaborator role to be assigned at a particular state an the EntityStateWorkflow.
|
|
13
|
+
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
__entityName__ = "entity-user-role-requirement"
|
|
17
|
+
|
|
18
|
+
# @property
|
|
19
|
+
# def signature_requirement(self):
|
|
20
|
+
# from labstep.generic.entity.repository import getEntityProperty
|
|
21
|
+
# from labstep.entities.signatureRequirement.model import SignatureRequirement
|
|
22
|
+
|
|
23
|
+
# return SignatureRequirement(self.__data__['signature_requirement'], self.__user__)
|
|
24
|
+
# #return getEntityProperty(self,'signature_requirement',SignatureRequirement)
|
|
25
|
+
|
|
26
|
+
def edit(self, number_required=UNSPECIFIED, collaborator_role_id=UNSPECIFIED, auto_assign=UNSPECIFIED, extraParams={}):
|
|
27
|
+
"""
|
|
28
|
+
Edit an existing CollaboratorRoleRequirement.
|
|
29
|
+
|
|
30
|
+
Parameters
|
|
31
|
+
----------
|
|
32
|
+
number_required (int)
|
|
33
|
+
The new number of CollaboratorRoleRequirement.
|
|
34
|
+
|
|
35
|
+
Returns
|
|
36
|
+
-------
|
|
37
|
+
:class:`~labstep.entities.collaboratorRoleRequirement.model.CollaboratorRoleRequirement`
|
|
38
|
+
An object representing the edited CollaboratorRoleRequirement.
|
|
39
|
+
|
|
40
|
+
Example
|
|
41
|
+
-------
|
|
42
|
+
::
|
|
43
|
+
|
|
44
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
45
|
+
my_entity_state = my_entity_state_workflow.newEntityState(name='A New EntityState Name')
|
|
46
|
+
collaborator_requirements=my_entity_state.addRoleRequirement(collaborator_role_id=17000, number_required=4)
|
|
47
|
+
collaborator_requirements.edit(number_required=2)
|
|
48
|
+
"""
|
|
49
|
+
import labstep.entities.collaboratorRoleRequirement.repository as collaboratorRoleRequirementRepository
|
|
50
|
+
|
|
51
|
+
return collaboratorRoleRequirementRepository.editCollaboratorRoleRequirement(self, number_required=number_required, collaborator_role_id=collaborator_role_id, auto_assign=auto_assign, extraParams=extraParams)
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
def getSignatureRequirement(self):
|
|
56
|
+
"""
|
|
57
|
+
Get a SignatureRequirement of a Collaborator Role Requirement.
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
Returns
|
|
61
|
+
-------
|
|
62
|
+
:class:`~labstep.entities.signatureRequirement.model.SignatureRequirement`
|
|
63
|
+
An object representing the SignatureRequirement.
|
|
64
|
+
|
|
65
|
+
Example
|
|
66
|
+
-------
|
|
67
|
+
::
|
|
68
|
+
|
|
69
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
70
|
+
my_entity_state = my_entity_state_workflow.newEntityState(name='A New EntityState Name')
|
|
71
|
+
collaborator_req=my_entity_state.addRoleRequirement(collaborator_role_id=17000,
|
|
72
|
+
number_required=2
|
|
73
|
+
)
|
|
74
|
+
signature_requirement = collaborator_req.getSignatureRequirement()
|
|
75
|
+
"""
|
|
76
|
+
import labstep.entities.signatureRequirement.repository as signatureRequirementRepository
|
|
77
|
+
|
|
78
|
+
return signatureRequirementRepository.getSignatureRequirement(self.__user__, self)
|
|
79
|
+
|
|
80
|
+
def setSignatureRequirement(self, statement=UNSPECIFIED, days_to_sign=UNSPECIFIED, reject_entity_state_id=UNSPECIFIED, extraParams={}):
|
|
81
|
+
"""
|
|
82
|
+
Set SignatureRequirement of a Collaborator Role Requirement.
|
|
83
|
+
|
|
84
|
+
Parameters
|
|
85
|
+
----------
|
|
86
|
+
required (bool)
|
|
87
|
+
If the SignatureRequirement is required.
|
|
88
|
+
|
|
89
|
+
default_statement (str)
|
|
90
|
+
The default statement of the SignatureRequirement.
|
|
91
|
+
|
|
92
|
+
days_to_sign(int)
|
|
93
|
+
The days to sign of the SignatureRequirement.
|
|
94
|
+
|
|
95
|
+
reject_entity_state_id(int)
|
|
96
|
+
The ID of the entity state on reject of the SignatureRequirement.
|
|
97
|
+
|
|
98
|
+
Returns
|
|
99
|
+
-------
|
|
100
|
+
:class:`~labstep.entities.signatureRequirement.model.SignatureRequirement`
|
|
101
|
+
An object representing the edited SignatureRequirement.
|
|
102
|
+
|
|
103
|
+
Example
|
|
104
|
+
-------
|
|
105
|
+
::
|
|
106
|
+
|
|
107
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
108
|
+
my_entity_state = my_entity_state_workflow.newEntityState(name='A New EntityState Name')
|
|
109
|
+
collaborator_requirements=my_entity_state.addRoleRequirement(collaborator_role_id=17000, number_required=2)
|
|
110
|
+
my_signature_requirement = collaborator_requirements.setSignatureRequirement(default_statement='A New SignatureRequirement Default Statement')
|
|
111
|
+
"""
|
|
112
|
+
import labstep.entities.signatureRequirement.repository as signatureRequirementRepository
|
|
113
|
+
|
|
114
|
+
return signatureRequirementRepository.setSignatureRequirement(self.__user__, self, statement=statement, days_to_sign=days_to_sign, reject_entity_state_id=reject_entity_state_id, extraParams=extraParams)
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
|
|
5
|
+
from labstep.entities.collaboratorRoleRequirement.model import CollaboratorRoleRequirement
|
|
6
|
+
import labstep.generic.entity.repository as entityRepository
|
|
7
|
+
from labstep.generic.entityList.model import EntityList
|
|
8
|
+
from labstep.constants import UNSPECIFIED
|
|
9
|
+
|
|
10
|
+
def getCollaboratorRoleRequirements(user, entityState):
|
|
11
|
+
if entityState['entity_user_role_requirements'] is None or entityState['entity_user_role_requirements'] == []:
|
|
12
|
+
return None
|
|
13
|
+
else:
|
|
14
|
+
return CollaboratorRoleRequirement(entityState['entity_user_role_requirements'], user)
|
|
15
|
+
|
|
16
|
+
def addCollaboratorRoleRequirement(user,
|
|
17
|
+
entity_state,
|
|
18
|
+
entity_user_role_id,
|
|
19
|
+
number_required=1,
|
|
20
|
+
extraParams={}):
|
|
21
|
+
params = {
|
|
22
|
+
"entity_state_id": entity_state.id,
|
|
23
|
+
'entity_user_role_id': entity_user_role_id,
|
|
24
|
+
'number_required': number_required,
|
|
25
|
+
**extraParams,
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
collab_requirements = entityRepository.newEntity(user, CollaboratorRoleRequirement, params)
|
|
29
|
+
|
|
30
|
+
setattr(entity_state,'entity_user_role_requirements', collab_requirements.__dict__)
|
|
31
|
+
setattr(collab_requirements, 'entity_state_id', entity_state.id)
|
|
32
|
+
|
|
33
|
+
return collab_requirements
|
|
34
|
+
|
|
35
|
+
def editCollaboratorRoleRequirement(collaboratorRoleRequirement,
|
|
36
|
+
number_required=UNSPECIFIED,
|
|
37
|
+
collaborator_role_id=UNSPECIFIED,
|
|
38
|
+
auto_assign=UNSPECIFIED,
|
|
39
|
+
extraParams={}):
|
|
40
|
+
|
|
41
|
+
params = {
|
|
42
|
+
"number_required": number_required,
|
|
43
|
+
'collaborator_role_id': collaborator_role_id,
|
|
44
|
+
**extraParams,
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if auto_assign == 'creator:':
|
|
48
|
+
params['automation'] = {
|
|
49
|
+
'type': 'experiment_workflow_create',
|
|
50
|
+
'trigger_log_type': 'experiment_workflow_created',
|
|
51
|
+
'filter': [],
|
|
52
|
+
'action': 'set_entity_user_role',
|
|
53
|
+
'payload': { 'entity_user_role_id': collaborator_role_id if collaborator_role_id is not UNSPECIFIED else collaboratorRoleRequirement['entity_user_role']['id']} },
|
|
54
|
+
if auto_assign == 'contributor':
|
|
55
|
+
params['automation'] ={
|
|
56
|
+
"type":"experiment_workflow_edit",
|
|
57
|
+
"trigger_log_type":"experiment_workflow_updated",
|
|
58
|
+
"filter":[
|
|
59
|
+
{"type":"and",
|
|
60
|
+
"path":"entityStateWorkflow",
|
|
61
|
+
"predicates":[
|
|
62
|
+
{"attribute":"id",
|
|
63
|
+
"comparison":"eq",
|
|
64
|
+
"value":collaboratorRoleRequirement['permission_entity_info']['id']}]},
|
|
65
|
+
{"type":"and","path":"entityState","predicates":[
|
|
66
|
+
{"attribute":"id",
|
|
67
|
+
"comparison":"eq",
|
|
68
|
+
"value":collaboratorRoleRequirement['entity_state_id']}]}],
|
|
69
|
+
"action":"set_entity_user_role",
|
|
70
|
+
"payload":{
|
|
71
|
+
"entity_user_role_id":collaborator_role_id if collaborator_role_id is not UNSPECIFIED else collaboratorRoleRequirement['entity_user_role']['id']
|
|
72
|
+
}}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
return entityRepository.editEntity(collaboratorRoleRequirement, params)
|
|
79
|
+
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
from labstep.generic.entity.model import Entity
|
|
5
|
+
from labstep.constants import UNSPECIFIED
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class EntityState(Entity):
|
|
9
|
+
"""
|
|
10
|
+
Represents an Entity State Workflow on Labstep.
|
|
11
|
+
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
__entityName__ = "entity-state"
|
|
15
|
+
__unSearchable__ = True
|
|
16
|
+
__noDelete__ = True
|
|
17
|
+
|
|
18
|
+
def edit(self, name=UNSPECIFIED, color=UNSPECIFIED, state_type=UNSPECIFIED, extraParams={}):
|
|
19
|
+
"""
|
|
20
|
+
Edit an existing EntityState.
|
|
21
|
+
|
|
22
|
+
Parameters
|
|
23
|
+
----------
|
|
24
|
+
name (str)
|
|
25
|
+
The new name of the EntityState.
|
|
26
|
+
|
|
27
|
+
color in HEX vaue(str)
|
|
28
|
+
The new color of the EntityState.
|
|
29
|
+
|
|
30
|
+
type(str)
|
|
31
|
+
The new type of the EntityState. It can be one of the following: 'unstarted',
|
|
32
|
+
'started', and 'complete'.
|
|
33
|
+
|
|
34
|
+
Returns
|
|
35
|
+
-------
|
|
36
|
+
:class:`~labstep.entities.entityState.model.EntityState`
|
|
37
|
+
An object representing the edited EntityState.
|
|
38
|
+
|
|
39
|
+
Example
|
|
40
|
+
-------
|
|
41
|
+
::
|
|
42
|
+
|
|
43
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
44
|
+
my_entity_state = my_entity_state_workflow.getEntityState(17000)
|
|
45
|
+
my_entity_state.edit(name='A New EntityState Name')
|
|
46
|
+
"""
|
|
47
|
+
import labstep.entities.entityState.repository as entityStateRepository
|
|
48
|
+
|
|
49
|
+
return entityStateRepository.editEntityState(self, name=name, color=color, state_type=state_type, extraParams=extraParams)
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
def addRoleRequirement(self, collaborator_role_id, number_required=1, extraParams={}):
|
|
54
|
+
"""
|
|
55
|
+
Create a new RoleRequirement.
|
|
56
|
+
|
|
57
|
+
Parameters
|
|
58
|
+
----------
|
|
59
|
+
collaborator_rol_id (int)
|
|
60
|
+
ID of the collaborator role.
|
|
61
|
+
|
|
62
|
+
number_required(int)
|
|
63
|
+
Number of collaborators required.
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
Returns
|
|
67
|
+
-------
|
|
68
|
+
:class:`~labstep.entities.collaboratorRoleRequirement.model.CollaboratorRoleRequirement`
|
|
69
|
+
An object representing the edited CollaboratorRoleRequirement.
|
|
70
|
+
|
|
71
|
+
Example
|
|
72
|
+
-------
|
|
73
|
+
::
|
|
74
|
+
|
|
75
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
76
|
+
collaborator_role = workspace.getCollaboratorRole(17000)
|
|
77
|
+
my_entity_state = my_entity_state_workflow.getEntityStates()
|
|
78
|
+
my_entity_state[0].addRoleRequirement(entity_user_role_id=collaborator_role.id,
|
|
79
|
+
number_required=2
|
|
80
|
+
)
|
|
81
|
+
"""
|
|
82
|
+
import labstep.entities.collaboratorRoleRequirement.repository as collaboratorRoleRequirementRepository
|
|
83
|
+
|
|
84
|
+
return collaboratorRoleRequirementRepository.addCollaboratorRoleRequirement(self.__user__,
|
|
85
|
+
entity_state= self,
|
|
86
|
+
entity_user_role_id=collaborator_role_id,
|
|
87
|
+
number_required=number_required,
|
|
88
|
+
extraParams=extraParams)
|
|
89
|
+
|
|
90
|
+
def getCollaboratorRoleRequirements(self):
|
|
91
|
+
"""
|
|
92
|
+
Get all RoleRequirements of an EntityState.
|
|
93
|
+
|
|
94
|
+
Returns
|
|
95
|
+
-------
|
|
96
|
+
List[:class:`~labstep.entities.collaboratorRoleRequirement.model.CollaboratorRoleRequirement`]
|
|
97
|
+
A list of objects representing CollaboratorRoleRequirements.
|
|
98
|
+
|
|
99
|
+
Example
|
|
100
|
+
-------
|
|
101
|
+
::
|
|
102
|
+
|
|
103
|
+
my_entity_state = entityWorkflow.getEntityState(17000)
|
|
104
|
+
role_requirements = my_entity_state.getCollaboratorRoleRequirements()
|
|
105
|
+
"""
|
|
106
|
+
import labstep.entities.collaboratorRoleRequirement.repository as collaboratorRoleRequirementRepository
|
|
107
|
+
|
|
108
|
+
return collaboratorRoleRequirementRepository.getCollaboratorRoleRequirements(self.__user__, self)
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
|
|
5
|
+
from labstep.entities.entityState.model import EntityState
|
|
6
|
+
import labstep.generic.entity.repository as entityRepository
|
|
7
|
+
from labstep.constants import UNSPECIFIED
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def addEntityState(user, name,
|
|
11
|
+
color='#b5e550',
|
|
12
|
+
type='unstarted',
|
|
13
|
+
entity_state_workflow_id=UNSPECIFIED,
|
|
14
|
+
extraParams={}):
|
|
15
|
+
params = {
|
|
16
|
+
"name": name,
|
|
17
|
+
'color': color,
|
|
18
|
+
'type': type,
|
|
19
|
+
'entity_state_workflow_id': entity_state_workflow_id,
|
|
20
|
+
**extraParams,
|
|
21
|
+
}
|
|
22
|
+
return entityRepository.newEntity(user, EntityState, params)
|
|
23
|
+
|
|
24
|
+
def editEntityState(entityState, name=UNSPECIFIED,
|
|
25
|
+
color=UNSPECIFIED,
|
|
26
|
+
state_type=UNSPECIFIED,
|
|
27
|
+
extraParams={}):
|
|
28
|
+
params = {
|
|
29
|
+
"name": name,
|
|
30
|
+
'color': color,
|
|
31
|
+
'type': state_type,
|
|
32
|
+
**extraParams,
|
|
33
|
+
}
|
|
34
|
+
return entityRepository.editEntity(entityState, params)
|
|
35
|
+
|
|
36
|
+
def getEntityState(user, entity_state_id, entity_state_workflow_id=UNSPECIFIED, group_id=UNSPECIFIED):
|
|
37
|
+
|
|
38
|
+
extraParams = {
|
|
39
|
+
"get_single": 1,
|
|
40
|
+
'entity_state_workflow_id': entity_state_workflow_id,
|
|
41
|
+
'group_id': group_id
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return entityRepository.getEntity(user,EntityState,entity_state_id,extraParams=extraParams)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def getEntityStates(user, entity_state_workflow_id=UNSPECIFIED,
|
|
48
|
+
count=UNSPECIFIED,
|
|
49
|
+
search_query=UNSPECIFIED,
|
|
50
|
+
extraParams={}):
|
|
51
|
+
params = {
|
|
52
|
+
'entity_state_workflow_id':entity_state_workflow_id,
|
|
53
|
+
"search_query": search_query,
|
|
54
|
+
**extraParams}
|
|
55
|
+
return entityRepository.getEntities(user, EntityState, count, params)
|
|
56
|
+
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
from deprecated import deprecated
|
|
5
|
+
|
|
6
|
+
from labstep.generic.entityWithSharing.model import EntityWithSharing
|
|
7
|
+
from labstep.generic.entityWithAssign.model import EntityWithAssign
|
|
8
|
+
from labstep.service.helpers import getTime, handleDate
|
|
9
|
+
from labstep.constants import UNSPECIFIED
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class EntityStateWorkflow(EntityWithSharing,EntityWithAssign):
|
|
13
|
+
"""
|
|
14
|
+
Represents a series of states an entity must go through, including who needs to sign / be assigned at each stage.
|
|
15
|
+
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
__entityName__='entity-state-workflow'
|
|
19
|
+
__hasParentGroup__ = True
|
|
20
|
+
|
|
21
|
+
def edit(self, name=UNSPECIFIED, extraParams={}):
|
|
22
|
+
"""
|
|
23
|
+
Edit an existing EntityStateWorkflow.
|
|
24
|
+
|
|
25
|
+
Parameters
|
|
26
|
+
----------
|
|
27
|
+
name (str)
|
|
28
|
+
The new name of the EntityStateWorkflow.
|
|
29
|
+
|
|
30
|
+
Returns
|
|
31
|
+
-------
|
|
32
|
+
:class:`~labstep.entities.EntityStateWorkflow.model.EntityStateWorkflow`
|
|
33
|
+
An object representing the edited EntityStateWorkflow.
|
|
34
|
+
|
|
35
|
+
Example
|
|
36
|
+
-------
|
|
37
|
+
::
|
|
38
|
+
|
|
39
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
40
|
+
my_entity_state_workflow.edit(name='A New EntityStateWorkflow Name')
|
|
41
|
+
"""
|
|
42
|
+
import labstep.entities.entityStateWorkflow.repository as entityStateWorkflowRepository
|
|
43
|
+
|
|
44
|
+
return entityStateWorkflowRepository.editEntityStateWorkflow(self, name=name, extraParams=extraParams)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def newEntityState(self, name, color='#0057dd', type='unstarted', extraParams={}):
|
|
48
|
+
"""
|
|
49
|
+
Add an EntityState to an EntityStateWorkflow.
|
|
50
|
+
|
|
51
|
+
Parameters
|
|
52
|
+
----------
|
|
53
|
+
name (str)
|
|
54
|
+
The name of the EntityState.
|
|
55
|
+
|
|
56
|
+
color in HEX value(str)
|
|
57
|
+
The color of the EntityState.
|
|
58
|
+
|
|
59
|
+
type(str)
|
|
60
|
+
The type of the EntityState. It can be one of the following: 'unstarted',
|
|
61
|
+
'started', and 'complete'.
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
Returns
|
|
65
|
+
-------
|
|
66
|
+
:class:`~labstep.entities.entityState.model.EntityState`
|
|
67
|
+
An object representing the EntityState.
|
|
68
|
+
|
|
69
|
+
Example
|
|
70
|
+
-------
|
|
71
|
+
::
|
|
72
|
+
|
|
73
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
74
|
+
my_entity_state_workflow.newEntityState(name='A New EntityState Name')
|
|
75
|
+
"""
|
|
76
|
+
import labstep.entities.entityState.repository as entityStateRepository
|
|
77
|
+
return entityStateRepository.addEntityState(self.__user__, name, color, type, self.id, extraParams=extraParams)
|
|
78
|
+
|
|
79
|
+
def getEntityState(self, entity_state_id):
|
|
80
|
+
"""
|
|
81
|
+
Get an EntityState in an EntityStateWorkflow.
|
|
82
|
+
|
|
83
|
+
Parameters
|
|
84
|
+
----------
|
|
85
|
+
entity_state_id(int)
|
|
86
|
+
The ID of the EntityState.
|
|
87
|
+
|
|
88
|
+
Returns
|
|
89
|
+
-------
|
|
90
|
+
:class:`~labstep.entities.entityState.model.EntityState`
|
|
91
|
+
An object representing the EntityState.
|
|
92
|
+
|
|
93
|
+
Example
|
|
94
|
+
-------
|
|
95
|
+
::
|
|
96
|
+
|
|
97
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
98
|
+
my_entity_state_workflow.getEntityState(17000)
|
|
99
|
+
"""
|
|
100
|
+
import labstep.entities.entityState.repository as entityStateRepository
|
|
101
|
+
return entityStateRepository.getEntityState(self.__user__, entity_state_id, entity_state_workflow_id=self.id)
|
|
102
|
+
|
|
103
|
+
def getEntityStates(self, count=UNSPECIFIED, search_query=UNSPECIFIED, extraParams={}):
|
|
104
|
+
"""
|
|
105
|
+
Get all EntityStates in an EntityStateWorkflow.
|
|
106
|
+
|
|
107
|
+
Parameters
|
|
108
|
+
----------
|
|
109
|
+
|
|
110
|
+
count(int)
|
|
111
|
+
The number of EntityStates to return.
|
|
112
|
+
|
|
113
|
+
search_query(str)
|
|
114
|
+
The search query to filter EntityStates.
|
|
115
|
+
|
|
116
|
+
Returns
|
|
117
|
+
-------
|
|
118
|
+
:class:`~labstep.entities.entityState.model.EntityState`
|
|
119
|
+
An object representing the EntityState.
|
|
120
|
+
|
|
121
|
+
Example
|
|
122
|
+
-------
|
|
123
|
+
::
|
|
124
|
+
|
|
125
|
+
my_entity_state_workflow = user.getEntityStateWorkflow(17000)
|
|
126
|
+
my_entity_state_workflow.getEntityStates()
|
|
127
|
+
"""
|
|
128
|
+
import labstep.entities.entityState.repository as entityStateRepository
|
|
129
|
+
|
|
130
|
+
return entityStateRepository.getEntityStates(self.__user__, self.id, count=count, search_query=search_query, extraParams=extraParams)
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Author: Labstep <dev@labstep.com>
|
|
4
|
+
|
|
5
|
+
from labstep.entities.entityStateWorkflow.model import EntityStateWorkflow
|
|
6
|
+
import labstep.generic.entity.repository as entityRepository
|
|
7
|
+
from labstep.constants import UNSPECIFIED
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def newEntityStateWorkflow(user,
|
|
11
|
+
name,
|
|
12
|
+
target_entity='ExperimentWorkflow',
|
|
13
|
+
group_id=UNSPECIFIED,
|
|
14
|
+
extraParams={}):
|
|
15
|
+
params = {
|
|
16
|
+
'name': name,
|
|
17
|
+
#'target_entity_class': target_entity.__entityName__,
|
|
18
|
+
'target_entity_class': target_entity,
|
|
19
|
+
'group_id': group_id,
|
|
20
|
+
**extraParams,
|
|
21
|
+
}
|
|
22
|
+
return entityRepository.newEntity(user, EntityStateWorkflow, fields = params)
|
|
23
|
+
|
|
24
|
+
def editEntityStateWorkflow(entityStateWorkflow,
|
|
25
|
+
name=UNSPECIFIED,
|
|
26
|
+
extraParams={}):
|
|
27
|
+
params = {
|
|
28
|
+
'name': name,
|
|
29
|
+
**extraParams,
|
|
30
|
+
}
|
|
31
|
+
return entityRepository.editEntity(entityStateWorkflow, params)
|
|
32
|
+
|
|
33
|
+
def getEntityStateWorkflow(user, entity_state_workflow_id):
|
|
34
|
+
return entityRepository.getEntity(user, EntityStateWorkflow, id=entity_state_workflow_id)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def getEntityStateWorkflows(user,
|
|
38
|
+
search_query=UNSPECIFIED,
|
|
39
|
+
count=UNSPECIFIED,
|
|
40
|
+
extraParams={}):
|
|
41
|
+
params = {'search_query': search_query,
|
|
42
|
+
**extraParams}
|
|
43
|
+
return entityRepository.getEntities(user, EntityStateWorkflow, count, params)
|
|
44
|
+
|