package model import ( "cu-helper/cus-eng-con-sys/config" "reflect" "github.com/mizuki1412/go-core-kit/class/exception" ) /* /zjgd/frm/docInfoController/goUpload.action */ /* 用途 完工确认、验收确认等一系列文件上传 */ type DocUpload struct { DocTypeId string `map:"docTypeId"` BusiId string `map:"busiId"` ModuleCode string `map:"moduleCode"` LinkCode string `map:"linkCode"` StageCode string `map:"stageCode"` TaskID string `map:"taskID"` PdmChangeId string `map:"pdmChangeId"` PdmOrAbandonStageCode string `map:"pdmOrAbandonStageCode"` } func NewDocUpload(businessKey, linkCode, stageCode, taskId string) *DocUpload { docUpload := new(DocUpload) if linkCode == "WGQR" { docUpload.DocTypeId = config.DocUploadWGQRDocTypeId } else if linkCode == "YSQR" { docUpload.DocTypeId = config.DocUploadYSQRDocTypeId } else { panic(exception.New("linkCode Err")) } docUpload.BusiId = businessKey docUpload.ModuleCode = "XQMODE" docUpload.LinkCode = linkCode //WGQR YSQR docUpload.StageCode = stageCode //ACT ACC docUpload.TaskID = taskId docUpload.PdmChangeId = "" docUpload.PdmOrAbandonStageCode = "" return docUpload } // GenReqParam 返回加密后的请求参数 func (th *DocUpload) GenReqParam() map[string]string { return th.structToMap() } func (th *DocUpload) structToMap() map[string]string { result := make(map[string]string) t := reflect.TypeOf(*th) v := reflect.ValueOf(*th) for i := 0; i < t.NumField(); i++ { field := t.Field(i) value := v.Field(i) // Use the tag value as the key in the map, if it exists; otherwise, use the field name. tag := field.Tag.Get("map") if tag == "" { tag = field.Name } result[tag] = value.String() } return result }