worker.go 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. package history
  2. import (
  3. "Wine-Server/utils"
  4. "Wine-Server/utils/tables"
  5. "github.com/gorilla/websocket"
  6. )
  7. func QueryWorker(conn *websocket.Conn, manager *tables.ManagerTable, data any) {
  8. var param queryWorkerParam
  9. err := utils.AnyTrans(data, &param)
  10. if err != nil {
  11. utils.Logger.Println(err)
  12. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryQueryWorkerRes", utils.Fail("参数错误")))
  13. return
  14. }
  15. total, workers, err := tables.WorkerQueryForHistory(manager.Id, param.Cond, param.Limit, param.Page)
  16. if err != nil {
  17. utils.Logger.Println(err)
  18. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryQueryWorkerRes", utils.Fail("查询信息失败")))
  19. return
  20. }
  21. _ = conn.WriteJSON(utils.WsEvent(
  22. "adminWineHistoryQueryWorkerRes",
  23. utils.Success(utils.JsonType{"total": total, "list": workers}),
  24. ))
  25. }
  26. func QueryOrder(conn *websocket.Conn, manager *tables.ManagerTable, data any) {
  27. var param queryOrderParam
  28. err := utils.AnyTrans(data, &param)
  29. if err != nil {
  30. utils.Logger.Println(err)
  31. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryQueryOrderRes", utils.Fail("参数错误")))
  32. return
  33. }
  34. total, orders, err := tables.ChangesQuery(manager.Id, param.Worker, param.Cond, param.Deal, param.Limit, param.Page)
  35. if err != nil {
  36. utils.Logger.Println(err)
  37. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryQueryOrderRes", utils.Fail("查询信息失败")))
  38. return
  39. }
  40. _ = conn.WriteJSON(utils.WsEvent(
  41. "adminWineHistoryQueryOrderRes",
  42. utils.Success(utils.JsonType{"total": total, "list": orders}),
  43. ))
  44. }
  45. func OrderUpdate(conn *websocket.Conn, data any) {
  46. var param updateParam
  47. err := utils.AnyTrans(data, &param)
  48. if err != nil {
  49. utils.Logger.Println(err)
  50. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderUpdateRes", utils.Fail("参数错误")))
  51. return
  52. }
  53. change := tables.ChangeTable{Id: param.Id}
  54. err = change.Get()
  55. if err != nil {
  56. utils.Logger.Println(err)
  57. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderUpdateRes", utils.Fail("订单不存在")))
  58. return
  59. }
  60. if change.Deal {
  61. utils.Logger.Println(err)
  62. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderUpdateRes", utils.Fail("不可修改已完成的订单")))
  63. return
  64. }
  65. change.New, change.Publish = param.New, utils.TimeNow()
  66. err = change.UpdateSelf()
  67. if err != nil {
  68. utils.Logger.Println(err)
  69. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderUpdateRes", utils.Fail("更新失败")))
  70. return
  71. }
  72. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderUpdateRes", utils.Success(nil)))
  73. }
  74. func OrderDelete(conn *websocket.Conn, data any) {
  75. id, ok := data.(uint32)
  76. if !ok {
  77. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("参数错误")))
  78. return
  79. }
  80. change := tables.ChangeTable{Id: id}
  81. err := change.Get()
  82. if err != nil {
  83. utils.Logger.Println(err)
  84. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("订单不存在")))
  85. return
  86. }
  87. if change.Deal {
  88. utils.Logger.Println(err)
  89. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("不可删除已完成的订单")))
  90. return
  91. }
  92. warn := tables.WarnTable{Id: change.Wid}
  93. err = warn.Get()
  94. if err != nil {
  95. utils.Logger.Println(err)
  96. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("报警信息错误")))
  97. return
  98. }
  99. warn.Deal = false
  100. err = warn.UpdateSelf()
  101. if err != nil {
  102. utils.Logger.Println(err)
  103. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("重置报警信息失败")))
  104. return
  105. }
  106. err = change.Delete()
  107. if err != nil {
  108. utils.Logger.Println(err)
  109. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("删除失败")))
  110. return
  111. }
  112. _ = conn.WriteJSON(utils.WsEvent("adminWineHistoryOrderDeleteRes", utils.Fail("删除成功")))
  113. }