4
0

triggerinfos.go 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. package trigger
  2. import (
  3. "dashoo.cn/backend/api/business/triggerhistory"
  4. . "dashoo.cn/backend/api/controllers"
  5. "dashoo.cn/utils"
  6. )
  7. // 报警历史接口说明
  8. type TriggerinfosController struct {
  9. BaseController
  10. }
  11. type triggerhistoryData struct {
  12. CurrentItemCount int64 `json:"currentItemCount,omitempty"` //结果集中的条目数目
  13. ItemsPerPage int64 `json:"itemsPerPage,omitempty"` //每页记录数目
  14. PageIndex int64 `json:"pageIndex,omitempty"` //条目的当前页索引
  15. Items []triggerhistory.Trigger_History `json:"items"` //数据列表
  16. }
  17. type TriggerinfoModel struct {
  18. Remark string `json:"remark"`
  19. }
  20. type TriggerFormModel struct {
  21. Type string `form:"type"`
  22. TimeStart int64 `form:"timestart"`
  23. TimeEnd int64 `form:"timeend"`
  24. Sendto string `form:"sendto"`
  25. Remark string `form:"remark"`
  26. Ids string `form:"ids"`
  27. Command string `form:"command"`
  28. }
  29. // @Title 报警历史列表
  30. // @Description 报警历史列表
  31. // @Success 200 {object} business.device.DeviceChannels
  32. // @router /list [get]
  33. func (this *TriggerinfosController) List() {
  34. page := this.GetPageInfoForm()
  35. var list []triggerhistory.Trigger_History
  36. svc := triggerhistory.GetTriggerhistoryService(utils.DBE)
  37. gender := this.GetString("gender")
  38. this.Data["gender"] = gender
  39. where := " AccCode='" + this.User.AccCode + "'"
  40. if gender != "" {
  41. where = where + "and ActionType='" + gender + "'"
  42. }
  43. total := svc.GetPagingEntitiesWithSortCode(page.CurrentPage, page.Size, "CreateOn desc", &list, where)
  44. var datainfo DataInfo
  45. datainfo.Items = list
  46. datainfo.CurrentItemCount = total
  47. this.Data["json"] = &datainfo
  48. this.ServeJSON()
  49. }
  50. // @Title 删除报警历史
  51. // @Description 删除报警历史
  52. // @Param id path string true "需要删除的报警历史编号"
  53. // @Success 200 {object} ErrorInfo
  54. // @Failure 403 :id 为空
  55. // @router /:id [delete]
  56. func (this *TriggerinfosController) Delete() {
  57. id := this.Ctx.Input.Param(":id")
  58. var errinfo ErrorInfo
  59. if id == "" {
  60. errinfo.Message = "操作失败!请求信息不完整"
  61. errinfo.Code = -2
  62. this.Data["json"] = &errinfo
  63. this.ServeJSON()
  64. return
  65. }
  66. var entity triggerhistory.Trigger_History
  67. var empty triggerhistory.Trigger_History
  68. svc := triggerhistory.GetTriggerhistoryService(utils.DBE)
  69. opdesc := "删除报警历史信息-" + this.GetString("sendto")
  70. err := svc.DeleteEntityAndWriteLog(id, &entity, &empty, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "报警历史信息")
  71. if err == nil {
  72. errinfo.Message = "删除成功!"
  73. errinfo.Code = 0
  74. this.Data["json"] = &errinfo
  75. this.ServeJSON()
  76. } else {
  77. errinfo.Message = utils.AlertProcess("删除失败!" + err.Error())
  78. errinfo.Code = -1
  79. this.Data["json"] = &errinfo
  80. this.ServeJSON()
  81. }
  82. }
  83. // @Title 删除报警历史
  84. // @Description 删除报警历史
  85. // @Param id path string true "需要删除的报警历史编号"
  86. // @Success 200 {object} ErrorInfo
  87. // @Failure 403 :id 为空
  88. // @router /batchdelete [delete]
  89. func (this *TriggerinfosController) BatchDelete() {
  90. ids := this.GetStrings("ids[]")
  91. sendtos := this.GetStrings("sendtos[]")
  92. var errinfo ErrorInfo
  93. if len(ids) == 0 {
  94. errinfo.Message = "操作失败!请求信息不完整"
  95. errinfo.Code = -2
  96. this.Data["json"] = &errinfo
  97. this.ServeJSON()
  98. return
  99. }
  100. var err error
  101. for k, v := range ids {
  102. var entity triggerhistory.Trigger_History
  103. var empty triggerhistory.Trigger_History
  104. svc := triggerhistory.GetTriggerhistoryService(utils.DBE)
  105. opdesc := "删除报警历史信息-" + sendtos[k]
  106. err = svc.DeleteEntityAndWriteLog(v, &entity, &empty, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "报警历史信息")
  107. }
  108. if err == nil {
  109. errinfo.Message = "删除成功!"
  110. errinfo.Code = 0
  111. this.Data["json"] = &errinfo
  112. this.ServeJSON()
  113. } else {
  114. errinfo.Message = utils.AlertProcess("删除失败!" + err.Error())
  115. errinfo.Code = -1
  116. this.Data["json"] = &errinfo
  117. this.ServeJSON()
  118. }
  119. }