scene_his.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. package controllers
  2. import (
  3. "github.com/kataras/iris/v12"
  4. "sparrow/pkg/models"
  5. "sparrow/services/knowoapi/services"
  6. )
  7. // SceneHisController api
  8. type SceneHisController struct {
  9. Ctx iris.Context
  10. Service services.SceneHisService
  11. Token Token
  12. }
  13. // Post post
  14. // POST /SceneHis
  15. func (a *SceneHisController) Post() {
  16. ptl := new(models.SceneHis)
  17. if err := parseBody(a.Ctx, ptl); err != nil {
  18. badRequest(a.Ctx, err)
  19. return
  20. }
  21. err := a.Service.Create(ptl)
  22. if err != nil {
  23. responseError(a.Ctx, ErrDatabase, err.Error())
  24. return
  25. }
  26. done(a.Ctx, ptl)
  27. }
  28. // Delete delete
  29. // DELETE /user/SceneHis
  30. func (a *SceneHisController) Delete() {
  31. SceneHis := new(models.SceneHis)
  32. if err := parseBody(a.Ctx, SceneHis); err != nil {
  33. badRequest(a.Ctx, err)
  34. return
  35. }
  36. if err := a.Service.Delete(SceneHis); err != nil {
  37. responseError(a.Ctx, ErrDatabase, err.Error())
  38. return
  39. }
  40. done(a.Ctx, "删除成功")
  41. }
  42. // Put 更新
  43. // PUT /user/SceneHis
  44. func (a *SceneHisController) Put() {
  45. params := new(models.SceneHis)
  46. if err := parseBody(a.Ctx, params); err != nil {
  47. badRequest(a.Ctx, err)
  48. return
  49. }
  50. if err := a.Service.Update(params); err != nil {
  51. responseError(a.Ctx, ErrDatabase, err.Error())
  52. return
  53. }
  54. done(a.Ctx, "已保存")
  55. }
  56. // Get SceneHis
  57. // GET /user/SceneHis?pi=&ps=&name=&version
  58. func (a *SceneHisController) Get() {
  59. pi, err := a.Ctx.URLParamInt("pi")
  60. if err != nil {
  61. badRequest(a.Ctx, err)
  62. return
  63. }
  64. ps, err := a.Ctx.URLParamInt("ps")
  65. if err != nil {
  66. badRequest(a.Ctx, err)
  67. return
  68. }
  69. deviceId := a.Ctx.URLParam("device_id")
  70. datas, tSceneHisl, err := a.Service.Query(pi, ps, deviceId)
  71. if err != nil {
  72. responseError(a.Ctx, ErrDatabase, err.Error())
  73. return
  74. }
  75. done(a.Ctx, map[string]interface{}{
  76. "list": datas,
  77. "tSceneHisl": tSceneHisl,
  78. })
  79. }