job.go 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. package dto
  2. import (
  3. "IotAdmin/app/schedule/models"
  4. "IotAdmin/common/dto"
  5. comModels "IotAdmin/common/models"
  6. "time"
  7. )
  8. type SysJobGetPageReq struct {
  9. dto.Pagination `search:"-"`
  10. JobName string `form:"jobName" search:"type:icontains;column:job_name;table:sys_job" comment:"名称"`
  11. JobGroup string `form:"jobGroup" search:"type:exact;column:job_group;table:sys_job" comment:"任务分组"`
  12. JobType int `form:"jobType" search:"type:exact;column:job_type;table:sys_job" comment:"调用类型"`
  13. InvokeTarget string `form:"invokeTarget" search:"type:icontains;column:invoke_target;table:sys_job" comment:"调用目标"`
  14. Status int `form:"status" search:"type:exact;column:status;table:sys_job" comment:"状态"`
  15. SysJobOrder
  16. }
  17. type SysJobOrder struct {
  18. JobGroup string `form:"jobGroupOrder" search:"type:order;column:job_group;table:sys_job"`
  19. JobType string `form:"jobTypeOrder" search:"type:order;column:job_type;table:sys_job"`
  20. CreatedAt string `form:"createdAtOrder" search:"type:order;column:created_at;table:sys_job"`
  21. Status string `form:"statusOrder" search:"type:order;column:status;table:sys_job"`
  22. }
  23. func (m *SysJobGetPageReq) GetNeedSearch() interface{} {
  24. return *m
  25. }
  26. // SysJobInsertReq 添加定时任务请求参数
  27. type SysJobInsertReq struct {
  28. JobId int `json:"-" comment:"编码"` // 编码
  29. JobName string `json:"jobName" comment:"名称"`
  30. JobGroup string `json:"jobGroup" comment:"任务分组"`
  31. JobType int `json:"jobType" comment:"调用类型"`
  32. CronExpression string `json:"cronExpression" comment:"Cron表达式"`
  33. InvokeTarget string `json:"invokeTarget" comment:"调用目标"`
  34. Args string `json:"args" comment:"目标参数"`
  35. MisfirePolicy int `json:"misfirePolicy" comment:"执行策略"`
  36. Concurrent int `json:"concurrent" comment:"是否并发"`
  37. Status int `json:"status" comment:"状态"`
  38. comModels.ControlBy
  39. }
  40. func (s *SysJobInsertReq) Generate(model *models.SysJob) {
  41. if s.JobId == 0 {
  42. model.JobId = s.JobId
  43. }
  44. model.JobName = s.JobName
  45. model.JobGroup = s.JobGroup
  46. model.JobType = s.JobType
  47. model.CronExpression = s.CronExpression
  48. model.InvokeTarget = s.InvokeTarget
  49. model.Args = s.Args
  50. model.MisfirePolicy = s.MisfirePolicy
  51. model.Concurrent = s.Concurrent
  52. model.Status = 1
  53. model.CreateBy = s.CreateBy // 添加这而,需要记录是被谁创建的
  54. }
  55. func (s *SysJobInsertReq) GetId() interface{} {
  56. return s.JobId
  57. }
  58. // SysJobUpdateReq 修改定时任务请求参数
  59. type SysJobUpdateReq struct {
  60. JobId int `uri:"jobId" comment:"编码"` // 编码
  61. JobName string `json:"jobName" comment:"名称"`
  62. JobGroup string `json:"jobGroup" comment:"任务分组"`
  63. JobType int `json:"jobType" comment:"调用类型"`
  64. CronExpression string `json:"cronExpression" comment:"Cron表达式"`
  65. InvokeTarget string `json:"invokeTarget" comment:"调用目标"`
  66. Args string `json:"args" comment:"目标参数"`
  67. MisfirePolicy int `json:"misfirePolicy" comment:"执行策略"`
  68. Concurrent int `json:"concurrent" comment:"是否并发"`
  69. Status int `json:"status" comment:"状态"`
  70. comModels.ControlBy
  71. }
  72. func (s *SysJobUpdateReq) Generate(model *models.SysJob) {
  73. if s.JobId == 0 {
  74. model.JobId = s.JobId
  75. }
  76. model.JobName = s.JobName
  77. model.JobGroup = s.JobGroup
  78. model.JobType = s.JobType
  79. model.CronExpression = s.CronExpression
  80. model.InvokeTarget = s.InvokeTarget
  81. model.Args = s.Args
  82. model.MisfirePolicy = s.MisfirePolicy
  83. model.Concurrent = s.Concurrent
  84. model.Status = s.Status
  85. model.UpdateBy = s.UpdateBy // 添加这而,需要记录是被谁更新的
  86. }
  87. func (s *SysJobUpdateReq) GetId() interface{} {
  88. return s.JobId
  89. }
  90. // SysJobGetReq 获取定时任务请求参数
  91. type SysJobGetReq struct {
  92. Id int `uri:"id"`
  93. }
  94. func (s *SysJobGetReq) GetId() interface{} {
  95. return s.Id
  96. }
  97. // SysJobDeleteReq 删除定时任务请求参数
  98. type SysJobDeleteReq struct {
  99. Ids []int `json:"ids"`
  100. }
  101. func (s *SysJobDeleteReq) GetId() interface{} {
  102. return s.Ids
  103. }
  104. // SysJobResp 获取定时任务响应参数
  105. type SysJobResp struct {
  106. JobId int `uri:"jobId" comment:"编码"` // 编码
  107. JobName string `json:"jobName" comment:"名称"`
  108. JobGroup string `json:"jobGroup" comment:"任务分组"`
  109. JobType int `json:"jobType" comment:"调用类型"`
  110. CronExpression string `json:"cronExpression" comment:"Cron表达式"`
  111. InvokeTarget string `json:"invokeTarget" comment:"调用目标"`
  112. Args string `json:"args" comment:"目标参数"`
  113. MisfirePolicy int `json:"misfirePolicy" comment:"执行策略"`
  114. Concurrent int `json:"concurrent" comment:"是否并发"`
  115. Status int `json:"status" comment:"状态"`
  116. CreateBy int `json:"createBy" comment:"创建者"`
  117. CreatedAt time.Time `json:"createdAt" comment:"创建时间"`
  118. }
  119. func (s *SysJobResp) Generate(model *models.SysJob) {
  120. s.JobName = model.JobName
  121. s.JobGroup = model.JobGroup
  122. s.JobType = model.JobType
  123. s.CronExpression = model.CronExpression
  124. s.InvokeTarget = model.InvokeTarget
  125. s.Args = model.Args
  126. s.MisfirePolicy = model.MisfirePolicy
  127. s.Concurrent = model.Concurrent
  128. s.Status = model.Status
  129. s.CreateBy = model.CreateBy
  130. s.CreatedAt = model.CreatedAt
  131. }