pdd.ddk.goods.search.go 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package pdd
  2. import (
  3. "duoduo/conf"
  4. "duoduo/models/pdd"
  5. "duoduo/tools"
  6. "duoduo/tools/app"
  7. "fmt"
  8. "github.com/gin-gonic/gin"
  9. "time"
  10. )
  11. //商品列表
  12. func PddDdkGoodsSearch(c *gin.Context) {
  13. var inData pdd.PddDdkGoodsSearchRequest
  14. var outData pdd.PddDdkGoodsSearchResponse
  15. var pddErr pdd.ErrorPddResponse
  16. confIni, err := conf.ConnIni()
  17. if err != nil {
  18. app.Error(c, 400, err, err.Error())
  19. return
  20. }
  21. inData.ClientId = confIni.MustValue("pdd", "client_id")
  22. inData.Type = "pdd.ddk.goods.search"
  23. inData.Timestamp = fmt.Sprintf("%d", time.Now().Unix())
  24. inData.DataType = "JSON"
  25. inData.Sign = ""
  26. sign, err := DDKSign(inData)
  27. if err != nil {
  28. app.Error(c, 400, err, err.Error())
  29. return
  30. }
  31. inData.Sign = sign
  32. val, err := PostDDk(inData, nil)
  33. if err != nil {
  34. app.Error(c, 400, err, err.Error())
  35. return
  36. }
  37. err = tools.JsonUnmarshal(val, &outData)
  38. if err != nil {
  39. err = tools.JsonUnmarshal(val, &pddErr)
  40. if err != nil {
  41. app.Error(c, 500, err, err.Error())
  42. return
  43. }
  44. app.Error(c, 500, nil, pddErr.ErrorResponse.ErrorMsg)
  45. return
  46. }
  47. app.OK(c, outData, app.Success)
  48. }