workflow.go 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. package workflow
  2. import (
  3. "dashoo.cn/backend/api/business/oilsupplier/suppliercert"
  4. "dashoo.cn/backend/api/business/paymentinfo"
  5. "dashoo.cn/backend/api/business/workflow"
  6. . "dashoo.cn/backend/api/controllers"
  7. "dashoo.cn/business2/permission"
  8. "dashoo.cn/business2/userRole"
  9. "dashoo.cn/utils"
  10. "fmt"
  11. "sort"
  12. )
  13. // 动作接口说明
  14. type WorkflowController struct {
  15. BaseController
  16. }
  17. // @Title get
  18. // @Description get workflow by token
  19. // @Success 200 {object} historicTasks
  20. // @router /historytask [get]
  21. func (this *WorkflowController) GetHistoricTask() {
  22. businessKey := this.GetString("business")
  23. processKey := this.GetString("process")
  24. processInstanceId := this.GetString("instance")
  25. var historicTasks []workflow.ActiHistoricTask
  26. svcActiviti := workflow.GetActivitiService(utils.DBE)
  27. historicTasks = svcActiviti.GetHistoricTasks(processKey, businessKey, processInstanceId)
  28. sort.Slice(historicTasks, func(i, j int) bool {
  29. return historicTasks[i].StartTime < historicTasks[j].StartTime
  30. })
  31. var datainfo DataInfo
  32. datainfo.Items = historicTasks
  33. this.Data["json"] = &datainfo
  34. this.ServeJSON()
  35. }
  36. // @Title get
  37. // @Description get workflow by token
  38. // @Success 200 {object} historicTasks
  39. // @router /historymultitask [get]
  40. func (this *WorkflowController) GetHistoricMultiTask() {
  41. businessKey := this.GetString("business")
  42. processKey := this.GetString("process")
  43. processInstanceId := this.GetString("instance")
  44. var historicTasks []workflow.ActiHistoricTask
  45. svcActiviti := workflow.GetActivitiService(utils.DBE)
  46. historicTasks = svcActiviti.GetHistoricMultiTasks(processKey, businessKey, processInstanceId)
  47. sort.Slice(historicTasks, func(i, j int) bool {
  48. return historicTasks[i].StartTime < historicTasks[j].StartTime
  49. })
  50. var datainfo DataInfo
  51. datainfo.Items = historicTasks
  52. this.Data["json"] = &datainfo
  53. this.ServeJSON()
  54. }
  55. // @Title 获取所有用户
  56. // @Description get user by token
  57. // @Success 200 {object} models.User
  58. // @router /userlist [get]
  59. func (this *WorkflowController) UserList() {
  60. keyword := this.GetString("keyword")
  61. svc := permission.GetPermissionService(utils.DBE)
  62. var users []userRole.Base_User
  63. where := "IsVisible=1"
  64. if keyword != "" {
  65. where = where + " and Realname like '%" + keyword + "%'"
  66. }
  67. total := svc.GetPagingEntitiesWithOrder(1, 1000, "Id", false, &users, where)
  68. var datainfo DataInfo
  69. datainfo.Items = users
  70. datainfo.CurrentItemCount = total
  71. this.Data["json"] = &datainfo
  72. this.ServeJSON()
  73. }
  74. // @Title 获取所有用户Post
  75. // @Description get user by token
  76. // @Success 200 {object} models.User
  77. // @router /userlist_post [post]
  78. func (this *WorkflowController) UserListByPost() {
  79. userIds := this.GetString("userids")//this.Ctx.Input.Param(":userIds")
  80. svc := permission.GetPermissionService(utils.DBE)
  81. var users []userRole.Base_User
  82. where := "IsVisible=1"
  83. if userIds != "" {
  84. where = where + " and Id in (" + userIds + ")"
  85. }
  86. total := svc.GetPagingEntitiesWithOrder(1, 1000, "Id", false, &users, where)
  87. var datainfo DataInfo
  88. datainfo.Items = users
  89. datainfo.CurrentItemCount = total
  90. this.Data["json"] = &datainfo
  91. this.ServeJSON()
  92. }
  93. // @Title get
  94. // @Description get SampleType by token
  95. // @Success 200 {object} samplesubpackage.SampleSubpackage
  96. // @router /historyimg/:id [get]
  97. func (this *WorkflowController) GetHistoricImg() {
  98. processInstanceId := this.Ctx.Input.Param(":id")
  99. svcActiviti := workflow.GetActivitiService(utils.DBE)
  100. entity := svcActiviti.GetActivitiProccessImage(processInstanceId)
  101. this.Ctx.Output.Body(entity)
  102. }
  103. // @Title 获取实体by SrcId
  104. // @Description 获取实体by SrcId
  105. // @Success 200 {object} paymentinfo.PaymentinfoList
  106. // @router /getWorkflowNodeBySrcId [get]
  107. func (this *WorkflowController) GetWorkflowNodeBySrcId() {
  108. srcid := this.GetString("srcid")
  109. var model paymentinfo.OilPaymentInfo
  110. svc := paymentinfo.GetPaymentService(utils.DBE)
  111. where := "SrcId=" + srcid
  112. has := svc.GetEntity(&model, where)
  113. fmt.Println(has)
  114. var historicTasks []workflow.ActiHistoricTask
  115. if has {
  116. var historicTask workflow.ActiHistoricTask
  117. historicTask.TaskName = "缴费"
  118. historicTask.StartTime = model.CreateOn.Unix() * 1000
  119. historicTask.EndTime = model.ModifiedOn.Unix() * 1000
  120. historicTask.Assignee = "--"
  121. if model.IsPay == "0" {
  122. historicTask.Remarks = "未确认"
  123. } else if model.IsPay == "1" {
  124. historicTask.Remarks = "已确认"
  125. } else if model.IsPay == "2" {
  126. historicTask.Remarks = "已缴费"
  127. }
  128. historicTasks = append(historicTasks, historicTask)
  129. }
  130. if model.IsPay == "2" {
  131. var cert suppliercert.OilSupplierCert
  132. has := svc.GetEntity(&cert, "Id=" + srcid)
  133. if has {
  134. var historicTask workflow.ActiHistoricTask
  135. historicTask.StartTime = 0
  136. historicTask.EndTime = 0
  137. historicTask.TaskName = "入库"
  138. historicTask.Assignee = "--"
  139. if cert.Status == "7" {
  140. historicTask.Remarks = "待入库"
  141. } else {
  142. historicTask.Remarks = "已入库"
  143. }
  144. historicTasks = append(historicTasks, historicTask)
  145. }
  146. }
  147. this.Data["json"] = &historicTasks
  148. this.ServeJSON()
  149. }