Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

50 linhas
1.1KB

  1. package main
  2. import (
  3. "biukop.com/sfm/loan"
  4. "encoding/json"
  5. log "github.com/sirupsen/logrus"
  6. "net/http"
  7. )
  8. func decodePayInFilter(r *http.Request) (ret loan.PayInListFilterOld, e error) {
  9. decoder := json.NewDecoder(r.Body)
  10. //decoder.DisallowUnknownFields()
  11. e = decoder.Decode(&ret)
  12. if e != nil {
  13. log.Error("failed decoding PayIn list filter", e.Error())
  14. return
  15. }
  16. return
  17. }
  18. func apiV1PayInList(w http.ResponseWriter, r *http.Request, ss *loan.Session) {
  19. filter, e := decodePayInFilter(r)
  20. if e != nil {
  21. log.Error("invalid pay in list filter", filter, e)
  22. apiV1Client404Error(w, r, ss)
  23. return
  24. }
  25. ret, e := filter.RetrieveData()
  26. if e != nil {
  27. log.Error("failed to retrieve PayIn list", filter, e)
  28. apiV1Server500Error(w, r)
  29. return
  30. }
  31. apiV1SendJson(ret, w, r, ss)
  32. }
  33. func apiV1FilteredPayInList(w http.ResponseWriter, r *http.Request, ss *loan.Session) {
  34. input := loan.KdQueryInput{}
  35. e := input.ReadFromHttpRequest(r)
  36. if e != nil {
  37. apiV1Client404Error(w, r, ss)
  38. return
  39. }
  40. payInListFilter := loan.PayInListFilter{KdQueryInput: input}
  41. ret := payInListFilter.Retrieve()
  42. apiV1SendJson(ret, w, r, ss)
  43. }