license_api.go 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package api
  2. import "database/sql"
  3. type AllLicenseInfoResponse struct {
  4. UniqueID string `json:"UniqueID"` // 每行数据的唯一值ID,理论上有oa的REQUESTID就可以了
  5. OAId int64 `json:"oa_id"`
  6. OARequestID int64 `json:"oa_request_id"` // oa里的申请单请求ID,假设唯一标识
  7. OARequestName string `json:"Creator"` // 请求名称
  8. OARequestNameNew string `json:"oa_request_name_new"` // 新请求名称
  9. OARequestNameHTMLNew string `json:"oa_request_name_html_new"` // 新请求名称(HTML格式)
  10. OAGLXMId int64 `json:"GlxmId"` // 项目ID
  11. OAGLXMName string `json:"GlxmName"` // 项目名称
  12. OASQSJ string `json:"oa_sqsj"` // 申请时间
  13. OASalespersonName string `json:"SalesPerson"` // 销售人员名称
  14. OAXSJSYX string `json:"SalesEmail"` // 销售邮箱
  15. OAOperationsPersonName string `json:"SupportPerson"` // 运维人员名称
  16. OAJFJSYX string `json:"SupportEmail"` // 运维邮箱
  17. OASYDW string `json:"Company"` // 使用单位
  18. OAXMXXMS string `json:"Project"` // 项目详细描述
  19. OAJDS int64 `json:"TotalNodes"` // 总节点数
  20. OANodeCount int64 `json:"NodeCount"` // 节点数
  21. OAProductCode string `json:"oa_product_code"` // 产品编号
  22. OAProductName string `json:"ProductName"` // 产品名称
  23. OAProductVersion string `json:"ProductVersion"` // 产品版本
  24. OACPU string `json:"oa_cpu"` // CPU 信息
  25. OAOperatingSystem string `json:"oa_operating_system"` // 操作系统信息
  26. OAMainMAC string `json:"oa_main_mac"` // 主 MAC 地址
  27. OASecondMAC string `json:"oa_second_mac"` // 副 MAC 地址
  28. OACreationDate string `json:"ApplicationDate"` // 创建日期
  29. OACreationTime string `json:"ApplicationTime"` // 创建时间
  30. OALastOperateDate string `json:"oa_last_operate_date"` // 最后操作日期
  31. OALastOperateTime string `json:"oa_last_operate_time"` // 最后操作时间
  32. CaptureTime string `json:"capture_time"` // 抓取时间,用于记录数据抓取的时间
  33. DelTime string `json:"del_Time"` // 该行的删除时间
  34. LastOperateTime string `json:"LAST_OPERATE_TIME"` // 该表的行最后操作时间,非oa表中的最后操作时间
  35. // 生成信息
  36. LicenseUniqueID string `json:"license_unique_id"` // LicenseApplication表的唯一值ID
  37. LicenseFlage string `json:"LicenseFlage"` // License分发状态
  38. Lic1 string `json:"lic1"` // 主License
  39. Lic2 string `json:"lic2"` // 副License
  40. CreatorGenerate string `json:"creator_generate"` // 生成时间
  41. }
  42. // 生成license串请求
  43. type GenerateLicenseStrRequest struct {
  44. OARequestId int64 `json:"oa_request_id"`
  45. UniqueID string `json:"UniqueID"`
  46. }
  47. // 分发license给用户
  48. type DistributeLicenseRequest struct {
  49. LicenseUniqueID string `json:"LicenseUniqueID"`
  50. OaRequestId int64 `json:"Oa_request_id"`
  51. OperatorUniqueID string `json:"OperatorUniqueID"`
  52. UserUniqueIDs []string `json:"UserUniqueIDs"`
  53. UserAccounts []string `json:"UserAccounts"`
  54. UserNames []string `json:"UserNames"`
  55. Emails string `json:"emails"`
  56. }
  57. type GetDistributeHistoryRequest struct {
  58. OaRequestId int `json:"oa_request_id"`
  59. UniqueID string `json:"uniqueID"`
  60. }
  61. type UpdateLicenseInfoRequest struct {
  62. UniqueID string `json:"UniqueID"`
  63. Creator string `json:"Creator" `
  64. ApplicationDate string `json:"ApplicationDate" `
  65. AssociatedProject string `json:"AssociatedProject" `
  66. SalesPerson string `json:"SalesPerson" `
  67. SalesEmail string `json:"SalesEmail"`
  68. SupportPerson string `json:"SupportPerson" `
  69. SupportEmail string `json:"SupportEmail" `
  70. TotalNodes int64 `json:"TotalNodes" `
  71. Company string `json:"Company" `
  72. ProductName string `json:"ProductName" `
  73. Version string `json:"Version" `
  74. NodeCount int64 `json:"NodeCount"`
  75. }
  76. type ConditionalSearchRequest struct {
  77. LicenseFlag string `json:"license_flag,omitempty"`
  78. StartingDate string `json:"starting_date,omitempty"`
  79. EndDate string `json:"end_date,omitempty"`
  80. AnySearch string `json:"any_search,omitempty"`
  81. }
  82. type UserInfoRequest struct {
  83. Id int `json:"id,omitempty"`
  84. UniqueID string `json:"unique_id,omitempty"`
  85. Username string `json:"username,omitempty"`
  86. Account string `json:"account,omitempty"`
  87. Password string `json:"password,omitempty"`
  88. Telephone string `json:"telephone,omitempty"`
  89. Email string `json:"email,omitempty"`
  90. Role string `json:"role,omitempty"`
  91. GroupId sql.NullInt32 `json:"group_id,omitempty"`
  92. }