package model import ( "cu-helper/cus-eng-con-sys/cryptokit" "reflect" ) type AcceptanceConfirm struct { ProcessInstanceId string Id string } /* /zjgd/frm/acceptanceComfirmController/saveProAndStart */ /* 用途 1、验收确认最后一步请求入参 */ // SaveProAndStart 验收确认请求 type SaveProAndStart struct { ProcessDefinitionKey string `map:"processDefinitionKey"` Assignee string `map:"assignee"` TaskDefinitionKey string `map:"taskDefinitionKey"` ParentProcInsId string `map:"parentProcInsId"` List string `map:"list"` Ranstr string `map:"ranstr"` Timestamp string `map:"timestamp"` } func NewSaveProAndStart(parentProcInsId string) *SaveProAndStart { accConfirm := new(SaveProAndStart) accConfirm.ProcessDefinitionKey = "YSJFProcess" accConfirm.Assignee = "3083195,3098707,3083335,3083564,3084326,3096322,3083147" //TODO 暂时写死 accConfirm.TaskDefinitionKey = "JFSQ" accConfirm.ParentProcInsId = parentProcInsId accConfirm.List = `[{"companyCode":"JS","siteAcc":"0","companyName":"建设单位","companySiteAcc":"4","LAY_TABLE_INDEX":0,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"周一彬","splitBy":"3083195"},{"companyCode":"JL","siteAcc":"0","companyName":"监理单位","companySiteAcc":"4","LAY_TABLE_INDEX":1,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"王志华","splitBy":"3098707"},{"companyCode":"SG","siteAcc":"0","companyName":"施工单位","companySiteAcc":"4","LAY_TABLE_INDEX":2,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"张瑶","splitBy":"3083335"},{"companyCode":"SJ","siteAcc":"0","companyName":"设计单位","companySiteAcc":"4","LAY_TABLE_INDEX":3,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"张超群","splitBy":"3083564"},{"companyCode":"ZY","siteAcc":"0","companyName":"资源管理部门","companySiteAcc":"4","LAY_TABLE_INDEX":4,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"楼峥嵘","splitBy":"3084326"},{"companyCode":"WH","siteAcc":"0","companyName":"接收单位(维护部门)","companySiteAcc":"4","LAY_TABLE_INDEX":5,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"王一鸣","splitBy":"3096322"},{"companyCode":"YW","siteAcc":"0","companyName":"接收单位(业务部门)","companySiteAcc":"4","LAY_TABLE_INDEX":6,"deliveryStatusName":"待交付","deliveryCommentsName":"","splitName":"蔡佳青","splitBy":"3083147"}]` //TODO 暂时写死 accConfirm.Ranstr = cryptokit.RandomStr(true, 10, 32) accConfirm.Timestamp = cryptokit.GetTimeStamp() return accConfirm } // GenReqParam 返回加密后的请求参数 func (th *SaveProAndStart) GenReqParam() map[string]string { th.encrypt() return th.structToMap() } func (th *SaveProAndStart) 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 } func (th *SaveProAndStart) encrypt() { v := reflect.ValueOf(th).Elem() for i := 0; i < v.NumField(); i++ { field := v.Field(i) if field.CanSet() { field.SetString(cryptokit.Encrypt(field.String())) } } }