corrad-bp/docs/json/process-builder/travel-workflow-variables.json
Md Afiq Iskandar 597a443453 Refactor Travel Workflow Components and Update Form Logic
- Updated VariableManager.vue to change variable type labels for clarity, replacing 'Int' and 'Decimal' with 'Number'.
- Modified manager-approval-customScript.js to correct field references and enhance conditional logic for displaying the custom approved amount.
- Enhanced manager-approval-form.json by adding 'readonly' attributes to several fields, ensuring they are non-editable during the approval process.
- Revised travel-workflow-process.json to improve node connections and labels for better workflow clarity.
- Updated travel-workflow-variables.json to refine variable descriptions and ensure consistency across the workflow.
- Adjusted [id].vue to improve form data handling and loading states, enhancing user experience during workflow execution.
2025-07-25 14:29:04 +08:00

283 lines
7.1 KiB
JSON

{
"claimId": {
"name": "claimId",
"type": "string",
"scope": "global",
"value": "",
"description": "Unique identifier generated for the claim"
},
"mealsCost": {
"name": "mealsCost",
"type": "number",
"scope": "global",
"value": 0,
"description": "Meals and food expenses claimed"
},
"otherCost": {
"name": "otherCost",
"type": "number",
"scope": "global",
"value": 0,
"description": "Other miscellaneous expenses claimed"
},
"totalCost": {
"name": "totalCost",
"type": "number",
"scope": "global",
"value": 0,
"description": "Total amount claimed (calculated)"
},
"approvedBy": {
"name": "approvedBy",
"type": "string",
"scope": "global",
"value": "",
"description": "Who approved the claim (System/Manager name)"
},
"department": {
"name": "department",
"type": "string",
"scope": "global",
"value": "",
"description": "Employee's department name"
},
"returnDate": {
"name": "returnDate",
"type": "string",
"scope": "global",
"value": "",
"description": "Trip return date in ISO format"
},
"travelType": {
"name": "travelType",
"type": "string",
"scope": "global",
"value": "",
"description": "Primary mode of transportation (flight, train, car, bus)"
},
"destination": {
"name": "destination",
"type": "string",
"scope": "global",
"value": "",
"description": "Travel destination city and country"
},
"hasReceipts": {
"name": "hasReceipts",
"type": "boolean",
"scope": "global",
"value": false,
"description": "Whether employee has all supporting receipts"
},
"tripPurpose": {
"name": "tripPurpose",
"type": "string",
"scope": "global",
"value": "",
"description": "Purpose or reason for the business trip"
},
"allowedMeals": {
"name": "allowedMeals",
"type": "number",
"scope": "global",
"value": 0,
"description": "Maximum allowed meals reimbursement per policy"
},
"allowedOther": {
"name": "allowedOther",
"type": "number",
"scope": "global",
"value": 0,
"description": "Maximum allowed other expenses reimbursement per policy"
},
"claimSummary": {
"name": "claimSummary",
"type": "string",
"scope": "global",
"value": "",
"description": "Formatted summary string of the travel claim"
},
"employeeName": {
"name": "employeeName",
"type": "string",
"scope": "global",
"value": "",
"description": "Full name of the employee submitting the claim"
},
"isOverBudget": {
"name": "isOverBudget",
"type": "boolean",
"scope": "global",
"value": false,
"description": "Whether claimed amount exceeds policy limits"
},
"totalAllowed": {
"name": "totalAllowed",
"type": "number",
"scope": "global",
"value": 0,
"description": "Total allowed reimbursement according to company policy"
},
"tripDuration": {
"name": "tripDuration",
"type": "number",
"scope": "global",
"value": 0,
"description": "Trip duration in days (calculated)"
},
"departureDate": {
"name": "departureDate",
"type": "string",
"scope": "global",
"value": "",
"description": "Trip departure date in ISO format"
},
"employeeEmail": {
"name": "employeeEmail",
"type": "string",
"scope": "global",
"value": "",
"description": "Email address of the employee for notifications"
},
"storageResult": {
"name": "storageResult",
"type": "string",
"scope": "global",
"value": "",
"description": "Result of storing claim in database (success/error)"
},
"transportCost": {
"name": "transportCost",
"type": "number",
"scope": "global",
"value": 0,
"description": "Transportation expenses claimed"
},
"approvalStatus": {
"name": "approvalStatus",
"type": "string",
"scope": "global",
"value": "pending",
"description": "Current approval status (pending_approval, auto_approved, etc.)"
},
"approvedAmount": {
"name": "approvedAmount",
"type": "number",
"scope": "global",
"value": 0,
"description": "Final approved reimbursement amount"
},
"policyApiError": {
"name": "policyApiError",
"type": "object",
"scope": "global",
"value": null,
"description": "Error from policy API if request fails"
},
"managerComments": {
"name": "managerComments",
"type": "string",
"scope": "global",
"value": "",
"description": "Manager's comments on the approval decision"
},
"managerDecision": {
"name": "managerDecision",
"type": "string",
"scope": "global",
"value": "",
"description": "Manager's approval decision (approve/reject)"
},
"validationError": {
"name": "validationError",
"type": "string",
"scope": "global",
"value": "",
"description": "Validation error message if submission is invalid"
},
"allowedTransport": {
"name": "allowedTransport",
"type": "number",
"scope": "global",
"value": 0,
"description": "Maximum allowed transportation reimbursement per policy"
},
"approvalComments": {
"name": "approvalComments",
"type": "string",
"scope": "global",
"value": "",
"description": "Final approval comments"
},
"finalClaimRecord": {
"name": "finalClaimRecord",
"type": "object",
"scope": "global",
"value": null,
"description": "Complete claim record object for storage/archival"
},
"overBudgetAmount": {
"name": "overBudgetAmount",
"type": "number",
"scope": "global",
"value": 0,
"description": "Amount by which claim exceeds policy limits"
},
"accommodationCost": {
"name": "accommodationCost",
"type": "number",
"scope": "global",
"value": 0,
"description": "Accommodation expenses claimed"
},
"approvalTimestamp": {
"name": "approvalTimestamp",
"type": "string",
"scope": "global",
"value": "",
"description": "ISO timestamp when claim was approved/rejected"
},
"isValidSubmission": {
"name": "isValidSubmission",
"type": "boolean",
"scope": "global",
"value": false,
"description": "Whether the form submission passed validation"
},
"policyApiResponse": {
"name": "policyApiResponse",
"type": "object",
"scope": "global",
"value": null,
"description": "Response from company policy rates API"
},
"finalApprovalStatus": {
"name": "finalApprovalStatus",
"type": "string",
"scope": "global",
"value": "",
"description": "Final approval status after all reviews (approved/rejected)"
},
"reimbursementAmount": {
"name": "reimbursementAmount",
"type": "number",
"scope": "global",
"value": 0,
"description": "Final calculated reimbursement amount"
},
"submissionTimestamp": {
"name": "submissionTimestamp",
"type": "string",
"scope": "global",
"value": "",
"description": "ISO timestamp when claim was submitted"
},
"allowedAccommodation": {
"name": "allowedAccommodation",
"type": "number",
"scope": "global",
"value": 0,
"description": "Maximum allowed accommodation reimbursement per policy"
}
}