analysis.go 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package statistic
  2. import (
  3. "kpt-tmr-group/http/middleware"
  4. "kpt-tmr-group/pkg/apierr"
  5. "kpt-tmr-group/pkg/ginutil"
  6. "kpt-tmr-group/pkg/valid"
  7. operationPb "kpt-tmr-group/proto/go/backend/operation"
  8. "net/http"
  9. "github.com/gin-gonic/gin"
  10. )
  11. // SearchFormulaEstimateList 配方评估
  12. func SearchFormulaEstimateList(c *gin.Context) {
  13. var req operationPb.SearchFormulaEstimateRequest
  14. if err := ginutil.BindProto(c, &req); err != nil {
  15. apierr.AbortBadRequest(c, http.StatusBadRequest, err)
  16. return
  17. }
  18. if err := valid.ValidateStruct(&req,
  19. valid.Field(&req.Name, valid.Required),
  20. valid.Field(&req.StartTime, valid.Required),
  21. valid.Field(&req.EndTime, valid.Required),
  22. valid.Field(&req.SearchType, valid.Required, valid.Min(0), valid.Max(2)),
  23. ); err != nil {
  24. apierr.AbortBadRequest(c, http.StatusBadRequest, err)
  25. return
  26. }
  27. req.Pagination = &operationPb.PaginationModel{
  28. Page: int32(c.GetInt(middleware.Page)),
  29. PageSize: int32(c.GetInt(middleware.PageSize)),
  30. PageOffset: int32(c.GetInt(middleware.PageOffset)),
  31. }
  32. res, err := middleware.BackendOperation(c).OpsService.SearchFormulaEstimateList(c, &req)
  33. if err != nil {
  34. apierr.ClassifiedAbort(c, err)
  35. return
  36. }
  37. // ginutil.JSONResp(c, res)
  38. c.JSON(http.StatusOK, res)
  39. }
  40. // AnalysisAccuracy 准备性分析
  41. func AnalysisAccuracy(c *gin.Context) {
  42. var req operationPb.SearchAnalysisAccuracyRequest
  43. if err := c.BindJSON(&req); err != nil {
  44. apierr.AbortBadRequest(c, http.StatusBadRequest, err)
  45. return
  46. }
  47. if err := valid.ValidateStruct(&req,
  48. valid.Field(&req.PastureIds, valid.Required),
  49. valid.Field(&req.CattleParentCategoryId, valid.Required),
  50. ); err != nil {
  51. apierr.AbortBadRequest(c, http.StatusBadRequest, err)
  52. return
  53. }
  54. res, err := middleware.BackendOperation(c).OpsService.SearchAnalysisAccuracy(c, &req)
  55. if err != nil {
  56. apierr.ClassifiedAbort(c, err)
  57. return
  58. }
  59. c.JSON(http.StatusOK, res)
  60. //ginutil.JSONResp(c, res)
  61. }