formula_estimate.go 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. package model
  2. import (
  3. operationPb "kpt-tmr-group/proto/go/backend/operation"
  4. "time"
  5. )
  6. type FormulaEstimate struct {
  7. Id int32 `json:"id"`
  8. PastureId int32 `json:"pasture_id"`
  9. PastureName string `json:"pasture_name"`
  10. BarnId int32 `json:"barn_id"`
  11. FeedFormulaId int32 `json:"feed_formula_id"`
  12. FeedFormulaName string `json:"feed_formula_name"`
  13. CowNumber int32 `json:"cow_number"`
  14. DryFormulaNumber int32 `json:"dry_formula_number"`
  15. DryTmrFeed int32 `json:"dry_tmr_feed"`
  16. DryFoodIntake int32 `json:"dry_food_intake"`
  17. MjFormulaNumber int32 `json:"mj_formula_number"`
  18. MjTmrFeed int32 `json:"mj_tmr_feed"`
  19. MjFoodIntake int32 `json:"mj_food_intake"`
  20. NndFormulaNumber int32 `json:"nnd_formula_number"`
  21. NndTmrFeed int32 `json:"nnd_tmr_feed"`
  22. NndFoodIntake int32 `json:"nnd_food_intake"`
  23. CpgFormulaNumber int32 `json:"cpg_formula_number"`
  24. CpgTmrFeed int32 `json:"cpg_tmr_feed"`
  25. CpgFoodIntake int32 `json:"cpg_food_intake"`
  26. PgFormulaNumber int32 `json:"pg_formula_number"`
  27. PgTmrFeed int32 `json:"pg_tmr_feed"`
  28. PgFoodIntake int32 `json:"pg_food_intake"`
  29. DmFormulaNumber int32 `json:"dm_formula_number"`
  30. DmTmrFeed int32 `json:"dm_tmr_feed"`
  31. DmFoodIntake int32 `json:"dm_food_intake"`
  32. CpdmFormulaNumber int32 `json:"cpdm_formula_number"`
  33. CpdmTmrFeed int32 `json:"cpdm_tmr_feed"`
  34. CpdmFoodIntake int32 `json:"cpdm_food_intake"`
  35. FatFormulaNumber int32 `json:"fat_formula_number"`
  36. FatTmrFeed int32 `json:"fat_tmr_feed"`
  37. FatFoodIntake int32 `json:"fat_food_intake"`
  38. StarchFormulaNumber int32 `json:"starch_formula_number"`
  39. StarchTmrFeed int32 `json:"starch_tmr_feed"`
  40. StarchFoodIntake int32 `json:"starch_food_intake"`
  41. NdfFormulaNumber int32 `json:"ndf_formula_number"`
  42. NdfTmrFeed int32 `json:"ndf_tmr_feed"`
  43. NdfFoodIntake int32 `json:"ndf_food_intake"`
  44. CpNdfFormulaNumber int32 `json:"cp_ndf_formula_number"`
  45. CpNdfTmrFeed int32 `json:"cp_ndf_tmr_feed"`
  46. CpNdfFoodIntake int32 `json:"cp_ndf_food_intake"`
  47. AdfFormulaNumber int32 `json:"adf_formula_number"`
  48. AdfTmrFeed int32 `json:"adf_tmr_feed"`
  49. AdfFoodIntake int32 `json:"adf_food_intake"`
  50. CalciumFormulaNumber int32 `json:"calcium_formula_number"`
  51. CalciumTmrFeed int32 `json:"calcium_tmr_feed"`
  52. CalciumFoodIntake int32 `json:"calcium_food_intake"`
  53. PdmFormulaNumber int32 `json:"pdm_formula_number"`
  54. PdmTmrFeed int32 `json:"pdm_tmr_feed"`
  55. PdmFoodIntake int32 `json:"pdm_food_intake"`
  56. CfRatioFormulaNumber int32 `json:"cf_ratio_formula_number"`
  57. CfRatioTmrFeed int32 `json:"cf_ratio_tmr_feed"`
  58. CfRatioFoodIntake int32 `json:"cf_ratio_food_intake"`
  59. CreatedAt int32 `json:"created_at"`
  60. UpdatedAt int32 `json:"updated_at"`
  61. }
  62. func (f *FormulaEstimate) TableName() string {
  63. return "formula_estimate"
  64. }
  65. type FormulaEstimateSlice []*FormulaEstimate
  66. func (f FormulaEstimateSlice) ToPB() []*operationPb.AddFormulaEstimateRequest {
  67. res := make([]*operationPb.AddFormulaEstimateRequest, len(f))
  68. for i, v := range f {
  69. res[i] = &operationPb.AddFormulaEstimateRequest{
  70. Id: v.Id,
  71. PastureId: v.PastureId,
  72. PastureName: v.PastureName,
  73. BarnId: v.BarnId,
  74. FeedFormulaId: v.FeedFormulaId,
  75. FeedFormulaName: v.FeedFormulaName,
  76. CowNumber: v.CowNumber,
  77. DryFoodIntake: v.DryFoodIntake,
  78. DryFormulaNumber: v.DryFormulaNumber,
  79. DryTmrFeed: v.DryTmrFeed,
  80. MjFoodIntake: v.MjFoodIntake,
  81. MjFormulaNumber: v.MjFormulaNumber,
  82. MjTmrFeed: v.MjTmrFeed,
  83. NndFoodIntake: v.NndFoodIntake,
  84. NndFormulaNumber: v.NndFormulaNumber,
  85. NndTmrFeed: v.NndTmrFeed,
  86. CpgFoodIntake: v.CpgFoodIntake,
  87. CpgFormulaNumber: v.CpgFormulaNumber,
  88. CpgTmrFeed: v.CpgTmrFeed,
  89. PgFoodIntake: v.PgFoodIntake,
  90. PgFormulaNumber: v.PgFormulaNumber,
  91. PgTmrFeed: v.PgTmrFeed,
  92. DmFoodIntake: v.DmFoodIntake,
  93. DmFormulaNumber: v.DmFormulaNumber,
  94. DmTmrFeed: v.DmTmrFeed,
  95. CpdmFoodIntake: v.CpdmFoodIntake,
  96. CpdmFormulaNumber: v.CpdmFormulaNumber,
  97. CpdmTmrFeed: v.CpdmTmrFeed,
  98. FatFoodIntake: v.FatFoodIntake,
  99. FatFormulaNumber: v.FatFormulaNumber,
  100. FatTmrFeed: v.FatTmrFeed,
  101. StarchFoodIntake: v.StarchFoodIntake,
  102. StarchFormulaNumber: v.StarchFormulaNumber,
  103. StarchTmrFeed: v.StarchTmrFeed,
  104. NdfFoodIntake: v.NdfFoodIntake,
  105. NdfFormulaNumber: v.NdfFormulaNumber,
  106. NdfTmrFeed: v.NdfTmrFeed,
  107. CpNdfFoodIntake: v.CpNdfFoodIntake,
  108. CpNdfFormulaNumber: v.CpNdfFormulaNumber,
  109. CpNdfTmrFeed: v.CpNdfTmrFeed,
  110. AdfFoodIntake: v.AdfFoodIntake,
  111. AdfFormulaNumber: v.AdfFormulaNumber,
  112. AdfTmrFeed: v.AdfTmrFeed,
  113. CalciumFoodIntake: v.CalciumFoodIntake,
  114. CalciumFormulaNumber: v.CalciumFormulaNumber,
  115. CalciumTmrFeed: v.CalciumTmrFeed,
  116. PdmFoodIntake: v.PdmFoodIntake,
  117. PdmFormulaNumber: v.PdmFormulaNumber,
  118. PdmTmrFeed: v.PdmTmrFeed,
  119. CfRatioFoodIntake: v.CfRatioFoodIntake,
  120. CfRatioFormulaNumber: v.CfRatioFormulaNumber,
  121. CfRatioTmrFeed: v.CfRatioTmrFeed,
  122. CreatedAt: v.CreatedAt,
  123. CreatedAtFormat: time.Unix(int64(v.CreatedAt), 0).Format(LayoutTime),
  124. }
  125. }
  126. return res
  127. }