model.go 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. package managesdk
  2. type ServiceType string
  3. const (
  4. ServiceTypePerson ServiceType = "person"
  5. ServiceTypeResource ServiceType = "resource"
  6. ServiceTypeActivity ServiceType = "activity"
  7. ServiceTypePlan ServiceType = "plan"
  8. )
  9. const (
  10. DefaultPersonBaseURL = "http://10.0.0.210:30684/mbpms/api"
  11. DefaultResourceBaseURL = "http://10.0.0.210:30684/mbrms/api"
  12. DefaultActivityBaseURL = "http://10.0.0.210:30604/mbact/api"
  13. DefaultPlanBaseURL = "http://10.0.0.210:30604/mbact/api"
  14. )
  15. type Config struct {
  16. Type ServiceType
  17. BaseURL string
  18. Timeout int
  19. }
  20. type Response struct {
  21. Success bool `json:"success"`
  22. ErrCode int `json:"errCode"`
  23. Msg string `json:"msg"`
  24. }
  25. type IDResponse struct {
  26. Success bool `json:"success"`
  27. ErrCode int `json:"errCode"`
  28. Msg string `json:"msg"`
  29. Data string `json:"data"`
  30. }
  31. type MsgResponse struct {
  32. Success bool `json:"success"`
  33. ErrCode int `json:"errCode"`
  34. Msg string `json:"msg"`
  35. }
  36. type InfosData[T any] struct {
  37. Infos []T `json:"infos"`
  38. TotalCount int64 `json:"totalCount"`
  39. }
  40. type InfosResponse[T any] struct {
  41. Success bool `json:"success"`
  42. ErrCode int `json:"errCode"`
  43. Msg string `json:"msg"`
  44. Data InfosData[T] `json:"data"`
  45. }
  46. type InfoResponse[T any] struct {
  47. Success bool `json:"success"`
  48. ErrCode int `json:"errCode"`
  49. Msg string `json:"msg"`
  50. Data T `json:"data"`
  51. }
  52. type MapResponse struct {
  53. Success bool `json:"success"`
  54. ErrCode int `json:"errCode"`
  55. Msg string `json:"msg"`
  56. Data map[string]any `json:"data"`
  57. }
  58. type VersionResponse struct {
  59. Success bool `json:"success"`
  60. ErrCode int `json:"errCode"`
  61. Msg string `json:"msg"`
  62. Data map[string]any `json:"data"`
  63. }
  64. type BaseQueryParams struct {
  65. PageNo int `form:"pageNo"`
  66. PageSize int `form:"pageSize"`
  67. }
  68. type PersonInfo struct {
  69. ID string `json:"id"`
  70. Name string `json:"name"`
  71. UserID string `json:"userId"`
  72. ExtendPropertyValues map[string]any `json:"extendProperties"`
  73. TenantID string `json:"tenantId"`
  74. CreatedTime string `json:"createdTime"`
  75. LastUpdatedTime string `json:"lastUpdatedTime"`
  76. }
  77. type SavePersonParams struct {
  78. ID string `json:"id"`
  79. Name string `json:"name"`
  80. UserID string `json:"userId"`
  81. ExtendProperties map[string]any `json:"extendProperties"`
  82. TenantID string `json:"tenantId"`
  83. OperatorUserName string `json:"operatorUserName"`
  84. }
  85. type DeletePersonParams struct {
  86. ID string `form:"id"`
  87. OperatorUserName string `form:"operatorUserName"`
  88. }
  89. type QueryPersonsParams struct {
  90. Name string `form:"name"`
  91. UserID string `form:"userId"`
  92. ExtendPropertyValues map[string]any `form:"extendPropertyValues"`
  93. TenantID string `form:"tenantId"`
  94. BaseQueryParams
  95. }
  96. type GetPersonParams struct {
  97. ID string `form:"id"`
  98. }
  99. type GenderInfo struct {
  100. Gender string `json:"gender"`
  101. Label string `json:"label"`
  102. }
  103. type PersonStateInfo struct {
  104. State string `json:"state"`
  105. Label string `json:"label"`
  106. }
  107. type ResourceInfo struct {
  108. ID string `json:"id"`
  109. Name string `json:"name"`
  110. Code string `json:"code"`
  111. BusinessType string `json:"businessType"`
  112. ExtendPropertyValues map[string]any `json:"extendProperties"`
  113. TenantID string `json:"tenantId"`
  114. CreateUserID string `json:"createUserId"`
  115. LastUpdateUserID string `json:"lastUpdateUserId"`
  116. CreatedTime string `json:"createdTime"`
  117. LastUpdatedTime string `json:"lastUpdatedTime"`
  118. }
  119. type SaveResourceParams struct {
  120. ID string `json:"id"`
  121. Name string `json:"name"`
  122. Code string `json:"code"`
  123. BusinessType string `json:"businessType"`
  124. ExtendProperties map[string]any `json:"extendProperties"`
  125. TenantID string `json:"tenantId"`
  126. CreateUserID string `json:"createUserId"`
  127. UpdateUserID string `json:"updateUserId"`
  128. OperatorUserName string `json:"operatorUserName"`
  129. }
  130. type DeleteResourceParams struct {
  131. ID string `form:"id"`
  132. DeleteUserID string `form:"deleteUserId"`
  133. OperatorUserName string `form:"operatorUserName"`
  134. }
  135. type QueryResourcesParams struct {
  136. Name string `form:"name"`
  137. BusinessType string `form:"businessType"`
  138. ExtendPropertyValues map[string]any `form:"extendPropertyValues"`
  139. UserID string `form:"userId"`
  140. QueryMode string `form:"queryMode"`
  141. CreateUserID string `form:"createUserId"`
  142. TenantID string `form:"tenantId"`
  143. AdvancedQuery *AdvancedQueryParams `form:"advancedQuery"`
  144. BaseQueryParams
  145. }
  146. type GetResourceParams struct {
  147. ID string `form:"id"`
  148. }
  149. type CategoryInfo struct {
  150. Category string `json:"category"`
  151. ExcludeField []string `json:"excludeField"`
  152. }
  153. type ResourceStateInfo struct {
  154. State string `json:"state"`
  155. Label string `json:"label"`
  156. }
  157. type OperateLogQueryParams struct {
  158. Resource string `form:"resource"`
  159. Action string `form:"action"`
  160. OperatorName string `form:"operatorName"`
  161. StartTime string `form:"startTime"`
  162. EndTime string `form:"endTime"`
  163. TenantID string `form:"tenantId"`
  164. BaseQueryParams
  165. }
  166. type OperateLogInfo struct {
  167. ID string `json:"id"`
  168. Resource string `json:"resource"`
  169. Action string `json:"action"`
  170. OperatorName string `json:"operatorName"`
  171. Content string `json:"content"`
  172. TenantID string `json:"tenantId"`
  173. CreatedTime string `json:"createdTime"`
  174. }
  175. // Activity 相关模型
  176. type ActivityInfo struct {
  177. ID string `json:"id"`
  178. Name string `json:"name"`
  179. Description string `json:"description"`
  180. ActorID string `json:"actorId"`
  181. BusinessType []string `json:"businessType"`
  182. ExtendPropertyValues map[string]any `json:"extendProperties"`
  183. TenantID string `json:"tenantId"`
  184. CreateUserID string `json:"createUserId"`
  185. LastUpdateUserID string `json:"lastUpdateUserId"`
  186. CreatedTime string `json:"createdTime"`
  187. LastUpdatedTime string `json:"lastUpdatedTime"`
  188. }
  189. type SaveActivityParams struct {
  190. ID string `json:"id,omitempty"`
  191. Name string `json:"name"`
  192. Description string `json:"description,omitempty"`
  193. ActorID string `json:"actorId"`
  194. BusinessType []string `json:"businessType"`
  195. ExtendProperties map[string]any `json:"extendProperties,omitempty"`
  196. TenantID string `json:"tenantId"`
  197. CreateUserID string `json:"createUserId,omitempty"`
  198. UpdateUserID string `json:"updateUserId"`
  199. OperatorUserName string `json:"operatorUserName"`
  200. }
  201. type QueryActivitiesParams struct {
  202. Name string `json:"name,omitempty"`
  203. ActorID string `json:"actorId,omitempty"`
  204. BusinessType []string `json:"businessType,omitempty"`
  205. ExtendPropertyValues map[string][]any `json:"extendPropertyValues,omitempty"`
  206. CreateUserID string `json:"createUserId,omitempty"`
  207. TenantID string `json:"tenantId"`
  208. PageNo int `json:"pageNo"`
  209. PageSize int `json:"pageSize"`
  210. }
  211. type DeleteActivityParams struct {
  212. ID string `json:"id"`
  213. BusinessType []string `json:"businessType"`
  214. DeleteWhole bool `json:"deleteWhole"`
  215. DeleteUserID string `json:"deleteUserId"`
  216. OperatorUserName string `json:"operatorUserName"`
  217. }
  218. type GetActivityParams struct {
  219. ID string `json:"id"`
  220. }
  221. // Plan 相关模型
  222. type PlanInfo struct {
  223. ID string `json:"id"`
  224. PlanType string `json:"planType"`
  225. Name string `json:"name"`
  226. Description string `json:"description"`
  227. ActorID string `json:"actorId"`
  228. State string `json:"state"`
  229. BusinessType []string `json:"businessType"`
  230. TaskIDs []string `json:"taskIds"`
  231. Attachments []string `json:"attachments"`
  232. ExtendPropertyValues map[string]any `json:"extendProperties"`
  233. StartTime string `json:"startTime"`
  234. EndTime string `json:"endTime"`
  235. CloseTime string `json:"closeTime"`
  236. RemindAdvanceDays int `json:"remindAdvanceDays"`
  237. RemindTimes []string `json:"remindTimes"`
  238. PeriodType string `json:"periodType"`
  239. TenantID string `json:"tenantId"`
  240. CreateUserID string `json:"createUserId"`
  241. LastUpdateUserID string `json:"lastUpdateUserId"`
  242. CreatedTime string `json:"createdTime"`
  243. LastUpdatedTime string `json:"lastUpdatedTime"`
  244. }
  245. type SavePlanParams struct {
  246. ID string `json:"id,omitempty"`
  247. PlanType string `json:"planType"`
  248. Name string `json:"name"`
  249. Description string `json:"description,omitempty"`
  250. ActorID string `json:"actorId"`
  251. State string `json:"state,omitempty"`
  252. BusinessType []string `json:"businessType"`
  253. TaskIDs []string `json:"taskIds,omitempty"`
  254. Attachments []string `json:"attachments,omitempty"`
  255. ExtendProperties map[string]any `json:"extendProperties,omitempty"`
  256. StartTime string `json:"startTime,omitempty"`
  257. EndTime string `json:"endTime,omitempty"`
  258. CloseTime string `json:"closeTime,omitempty"`
  259. RemindAdvanceDays int `json:"remindAdvanceDays,omitempty"`
  260. RemindTimes []string `json:"remindTimes,omitempty"`
  261. PeriodType string `json:"periodType,omitempty"`
  262. TenantID string `json:"tenantId"`
  263. CreateUserID string `json:"createUserId,omitempty"`
  264. UpdateUserID string `json:"updateUserId"`
  265. OperatorUserName string `json:"operatorUserName"`
  266. }
  267. type QueryPlansParams struct {
  268. PlanType string `json:"planType,omitempty"`
  269. Name string `json:"name,omitempty"`
  270. ActorID string `json:"actorId,omitempty"`
  271. State string `json:"state,omitempty"`
  272. BusinessType []string `json:"businessType,omitempty"`
  273. ExtendPropertyValues map[string][]any `json:"extendPropertyValues,omitempty"`
  274. CreateUserID string `json:"createUserId,omitempty"`
  275. TenantID string `json:"tenantId"`
  276. PageNo int `json:"pageNo"`
  277. PageSize int `json:"pageSize"`
  278. }
  279. type DeletePlanParams struct {
  280. ID string `json:"id"`
  281. BusinessType []string `json:"businessType"`
  282. DeleteWhole bool `json:"deleteWhole"`
  283. DeleteUserID string `json:"deleteUserId"`
  284. OperatorUserName string `json:"operatorUserName"`
  285. }
  286. type GetPlanParams struct {
  287. ID string `json:"id"`
  288. }