Files
2026-01-19 17:46:06 +01:00

229 lines
6.6 KiB
JSON

{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Not Started",
"Started",
"Completed",
"Canceled",
"Deferred"
],
"style": {
"Completed": "success",
"Started": "primary",
"Canceled": "info"
},
"default": "Not Started",
"displayAsLabel": true,
"labelType": "state",
"audited": true,
"fieldManagerAdditionalParamList": [
{
"name": "notActualOptions",
"view": "views/admin/field-manager/fields/not-actual-options"
}
],
"notActualOptions": ["Completed", "Canceled", "Deferred"],
"customizationOptionsReferenceDisabled": true
},
"priority": {
"type": "enum",
"options": [
"Low",
"Normal",
"High",
"Urgent"
],
"default": "Normal",
"displayAsLabel": true,
"style": {
"High": "warning",
"Urgent": "danger"
},
"audited": true,
"customizationOptionsReferenceDisabled": true
},
"dateStart": {
"type": "datetimeOptional",
"before": "dateEnd"
},
"dateEnd": {
"type": "datetimeOptional",
"after": "dateStart",
"view": "crm:views/task/fields/date-end",
"audited": true
},
"dateStartDate": {
"type": "date",
"utility": true
},
"dateEndDate": {
"type": "date",
"utility": true
},
"dateCompleted": {
"type": "datetime",
"readOnly": true
},
"isOverdue": {
"type": "bool",
"readOnly": true,
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/task/fields/is-overdue",
"utility": true
},
"reminders": {
"type": "jsonArray",
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/meeting/fields/reminders",
"dateField": "dateEnd",
"validatorClassNameList": [
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Event\\Reminders\\Valid",
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Event\\Reminders\\MaxCount"
],
"duplicateIgnore": true,
"dynamicLogicDisabled": true
},
"description": {
"type": "text",
"preview": true,
"attachmentField": "attachments",
"cutHeight": 500
},
"parent": {
"type": "linkParent",
"entityList": ["Account", "Contact", "Lead", "Opportunity", "Case"]
},
"account": {
"type": "link",
"readOnly": true,
"customizationReadOnlyDisabled": true
},
"contact": {
"type": "link",
"readOnly": true,
"customizationReadOnlyDisabled": true
},
"originalEmail": {
"type": "link",
"notStorable": true,
"entity": "Email",
"utility": true,
"orderDisabled": true,
"directAccessDisabled": true
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"required": true,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"attachments": {
"type": "attachmentMultiple",
"sourceList": ["Document"]
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User",
"foreign": "tasks"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"parent": {
"type": "belongsToParent",
"foreign": "tasks"
},
"account": {
"type": "belongsTo",
"entity": "Account"
},
"contact": {
"type": "belongsTo",
"entity": "Contact"
},
"email": {
"type": "belongsTo",
"entity": "Email",
"foreign": "tasks",
"noForeignName": true
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"dateStartStatus": {
"columns": ["dateStart", "status"]
},
"dateEndStatus": {
"columns": ["dateEnd", "status"]
},
"dateStart": {
"columns": ["dateStart", "deleted"]
},
"status": {
"columns": ["status", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"assignedUserStatus": {
"columns": ["assignedUserId", "status"]
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\Event",
"optimisticConcurrencyControl": true
}