callback.go 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package callback
  2. import (
  3. "fmt"
  4. "net/http"
  5. "surveyService/service/survey_import"
  6. "surveyService/service/survey_result"
  7. "github.com/gin-gonic/gin"
  8. )
  9. func CallbackSurveyResult(c *gin.Context) {
  10. // 获取请求的JSON内容
  11. type Validator struct {
  12. SN string `json:"sn" form:"sn" binding:"required"`
  13. Extra string `json:"extra" form:"extra" binding:"omitempty"`
  14. Data map[string]any `json:"data" form:"data" binding:"required"`
  15. Type int `json:"type" form:"type" binding:"required"`
  16. }
  17. var validator Validator
  18. if err := c.ShouldBind(&validator); err != nil {
  19. c.String(http.StatusOK, "数据格式校验失败")
  20. return
  21. }
  22. receiveErr := survey_result.ReceiveResult(validator.SN, validator.Extra, validator.Type, validator.Data)
  23. if receiveErr != nil {
  24. c.String(http.StatusOK, fmt.Sprintf("数据录入失败: %s", receiveErr.Msg))
  25. return
  26. }
  27. c.String(http.StatusOK, "success")
  28. }
  29. func CallbackSurveySync(c *gin.Context) {
  30. // 获取请求的JSON内容
  31. var validator survey_import.SyncData
  32. if err := c.ShouldBind(&validator); err != nil {
  33. c.String(http.StatusOK, "数据格式校验失败")
  34. return
  35. }
  36. survey_import.StartSync(validator)
  37. c.String(http.StatusOK, "success")
  38. }