What this category's data looks like
Foreign teacher appointment and course scheduling involves three types of materials: appointment contracts, work permit materials, and course scheduling tables. Appointment contracts contain the position, appointment period, compensation, and signatures of both parties; work permit materials contain the name, ID number, position, and issue date; course scheduling tables contain the course name, class, week number, class hours, and instructor. The materials come from HR, academic affairs, and foreign affairs offices, and are updated by semester and approval document cycle. When entering the workflow, the appointment contract serves as the anchor for the main record, work permit materials are used for identity and qualification comparison, and course scheduling tables are used for class hour and scheduling verification. Field characteristics are concentrated in names, quantities, dates, and signature receipts. Any change to any material must trigger synchronized maintenance of the version ledger and change records.
Configuration and implementation checks
This step is executed by workflow nodes (user selection and branching), outputting branch directions and interaction state records. The "version ledger and change records" are completed by subsequent nodes continuing execution according to the branch. When the user selection node is triggered, the conversation enters an interactive state and records the workflow state. After the user completes the selection, execution continues along the branch corresponding to the selected option.
| Object | Check | Verification action |
|---|---|---|
| Appointment contract | Whether the fields, dates, and signatures are consistent with the work permit materials | Check the name, position, appointment start and end dates, and signatures of both parties, and write the contract number into variables for reference by subsequent nodes |
| Work permit materials | Whether the name, ID number, position, and issue date match the contract | Compare the ID number and issue date, check the options and branch connections one by one in the node, and record nodeId and the selection result variable |
| Course scheduling table | Whether the course name, class, week number, class hours, and instructor match the contract appointment period | Check the number of class hours and week dates, and run a trial once to confirm that the selection result variable has been passed to subsequent nodes |
| Version ledger and change records | Whether the current version is unique, old versions are traceable, and references are synchronized | After changing one piece of content, check whether the version number and references are updated synchronously, and separately mark entries missing signatures or receipts |
Three common errors
- Symptom: The name or number of class hours for the same teacher does not match between the contract and the course scheduling table. Cause: The two materials are maintained separately, and fields and dates were not compared item by item in the node.
- Symptom: After changing one piece of content, the version number and references are not updated synchronously. Cause: The change did not go through branch recording, and the old version and current version coexist, causing unclear reference targets.
- Symptom: The appointment contract or work permit materials are missing signatures or receipts. Cause: The signature fields and receipt fields were not checked when the materials entered the workflow, and execution continued directly after the interaction was completed.
How to verify the setup
Feature acceptance: run trials for each option one by one, and check the branch directions and interaction states in the run records.
Business test: change one piece of content, and see whether the version number and references are updated synchronously.
- Check the options and branch connections one by one in the node, and confirm that each option corresponds to one branch.
- Reference the selection result variable in subsequent nodes and run a trial once to confirm that the variable has been passed and the process is not interrupted.