package xmlres import "github.com/ECUST-XX/xml" // Tasks 根节点:包含所有任务 type Tasks struct { XMLName xml.Name `xml:"tasks"` Tasks []Task `xml:"task"` // 任务列表 } // Task 任务节点:对应 type Task struct { // 任务属性(XML属性) ID int `xml:"ID,attr"` // 任务标识 Name string `xml:"name,attr"` // 任务名 Parent string `xml:"parent,attr"` // 父级任务(格式:ID|ID) IsMat int `xml:"isMat,attr"` // 父级匹配类型(0单配/1全配) Type int `xml:"type,attr"` // 任务类型(0常规/1日常) IsDir int `xml:"isDir,attr"` // 是否直接完成(0否/1是) Doc string `xml:"doc,attr"` // 文档说明 Alert string `xml:"alert,attr"` // 提示说明 IsEnd int `xml:"isEnd,attr"` // 是否结束任务(0否/1是) Especial *int `xml:"especial,attr"` // 可选:是否需要特殊提示框(1是,nil表示无) Condition *string `xml:"condition,attr"` // 可选:接任务限制条件 // 任务子节点 Des *string `xml:"des"` // 可选:节点(CDATA) TaskDes *string `xml:"taskDes"` // 可选:节点(多段CDATA用$$分隔) ProDes *string `xml:"proDes"` // 可选:节点(CDATA) Pros []Pro `xml:"pro"` // 步骤列表:节点集合 } // Pro 步骤节点:对应 type Pro struct { Name string `xml:"name,attr"` // 步骤名 Parent string `xml:"parent,attr"` // 父级步骤(格式:步骤|步骤) IsMat string `xml:"isMat,attr"` // 父级步骤匹配类型(0单配/1全配,可能为空) Doc string `xml:"doc,attr"` // 文档说明 Alert string `xml:"alert,attr"` // 提示说明 IsEnd int `xml:"isEnd,attr"` // 是否最后一步(0否/1是,可选) }