api_policy.go 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package admin
  2. import (
  3. "encoding/json"
  4. "io"
  5. "net/http"
  6. "strconv"
  7. "github.com/bjdgyc/anylink/dbdata"
  8. )
  9. func PolicyList(w http.ResponseWriter, r *http.Request) {
  10. _ = r.ParseForm()
  11. pageS := r.FormValue("page")
  12. page, _ := strconv.Atoi(pageS)
  13. if page < 1 {
  14. page = 1
  15. }
  16. var pageSize = dbdata.PageSize
  17. count := dbdata.CountAll(&dbdata.Policy{})
  18. var datas []dbdata.Policy
  19. err := dbdata.Find(&datas, pageSize, page)
  20. if err != nil {
  21. RespError(w, RespInternalErr, err)
  22. return
  23. }
  24. data := map[string]interface{}{
  25. "count": count,
  26. "page_size": pageSize,
  27. "datas": datas,
  28. }
  29. RespSucess(w, data)
  30. }
  31. func PolicyDetail(w http.ResponseWriter, r *http.Request) {
  32. _ = r.ParseForm()
  33. idS := r.FormValue("id")
  34. id, _ := strconv.Atoi(idS)
  35. if id < 1 {
  36. RespError(w, RespParamErr, "Id错误")
  37. return
  38. }
  39. var data dbdata.Policy
  40. err := dbdata.One("Id", id, &data)
  41. if err != nil {
  42. RespError(w, RespInternalErr, err)
  43. return
  44. }
  45. RespSucess(w, data)
  46. }
  47. func PolicySet(w http.ResponseWriter, r *http.Request) {
  48. body, err := io.ReadAll(r.Body)
  49. if err != nil {
  50. RespError(w, RespInternalErr, err)
  51. return
  52. }
  53. defer r.Body.Close()
  54. v := &dbdata.Policy{}
  55. err = json.Unmarshal(body, v)
  56. if err != nil {
  57. RespError(w, RespInternalErr, err)
  58. return
  59. }
  60. err = dbdata.SetPolicy(v)
  61. if err != nil {
  62. RespError(w, RespInternalErr, err)
  63. return
  64. }
  65. RespSucess(w, nil)
  66. }
  67. func PolicyDel(w http.ResponseWriter, r *http.Request) {
  68. _ = r.ParseForm()
  69. idS := r.FormValue("id")
  70. id, _ := strconv.Atoi(idS)
  71. if id < 1 {
  72. RespError(w, RespParamErr, "Id错误")
  73. return
  74. }
  75. data := dbdata.Policy{Id: id}
  76. err := dbdata.Del(&data)
  77. if err != nil {
  78. RespError(w, RespInternalErr, err)
  79. return
  80. }
  81. RespSucess(w, nil)
  82. }