package model type MilkOriginal struct { Id int64 `json:"id"` PastureId int64 `json:"pastureId"` CowId int64 `json:"cowId"` EarNumber string `json:"earNumber"` EleEarNumber string `json:"eleEarNumber"` PenId int32 `json:"penId"` PenName string `json:"penName"` MilkHallBrand string `json:"milkHallBrand"` MilkDate string `json:"milkDate"` MilkWeight int64 `json:"milkWeight"` StartTime string `json:"startTime"` InitialTime string `json:"initialTime"` AttachTime string `json:"attachTime"` AttachAdjustTime string `json:"attachAdjustTime"` DetacherTime string `json:"detacherTime"` EndTime string `json:"endTime"` DetacherAddress int64 `json:"detacherAddress"` Conductivity int32 `json:"conductivity"` CowActivity int32 `json:"cowActivity"` Source int8 `json:"source"` MilkHallNumber string `json:"milkHallNumber"` Shifts int32 `json:"shifts"` Load int32 `json:"load"` Nattach int32 `json:"nattach"` RecognitionTime string `json:"recognitionTime"` IsYieldLow int8 `json:"isYieldLow"` PeakFlow float64 `json:"peakFlow"` AvgFlow float64 `json:"avgFlow"` Duration float64 `json:"duration"` PearFlowTime int32 `json:"pearFlowTime"` LowFlowTime int32 `json:"lowFlowTime"` YieldPercentage int32 `json:"yieldPercentage"` ActualMilkTime string `json:"actualMilkTime"` KickOffs bool `json:"kickOffs"` Blocks int8 `json:"blocks"` Slips int8 `json:"slips"` ManualDetach int8 `json:"manualDetach"` TakeOffFlow float64 `json:"takeOffFlow"` LowMilkFlowPc int64 `json:"lowMilkFlowPc"` Flow0To15 int64 `json:"flow0To15"` Flow15To30 int64 `json:"flow15To30"` Flow30To60 int64 `json:"flow30To60"` Flow60To120 int64 `json:"flow60To120"` CreatedAt int64 `json:"createdAt"` UpdatedAt int64 `json:"updatedAt"` } func (m *MilkOriginal) tableName() string { return "milk_original" } func NewAFIMilkOriginal(pastureId int64, milkHallNumber string, req *AFIMilkHallOriginal) *MilkOriginal { return &MilkOriginal{ PastureId: pastureId, MilkHallBrand: AFI, CowId: 0, EarNumber: req.AnimalID, EleEarNumber: req.AnimalID, PenId: 0, PenName: "", MilkDate: req.SessionDate, MilkWeight: req.Yield, StartTime: "", InitialTime: "", AttachTime: "", AttachAdjustTime: "", DetacherTime: "", EndTime: "", DetacherAddress: req.StallNumber, Conductivity: req.Amt1, CowActivity: 0, Source: 0, MilkHallNumber: milkHallNumber, Shifts: req.SessionNumber, Load: 0, Nattach: req.TotalAttachments, RecognitionTime: "", IsYieldLow: 0, PeakFlow: float64(req.PeakFlowRate) / 1000, PearFlowTime: req.PeakFlowRate, AvgFlow: 0, Duration: float64(req.MilkingTime) / 60, LowFlowTime: req.LowFlowRateTime, YieldPercentage: 0, ActualMilkTime: "", KickOffs: req.HasKickoffs, Blocks: 0, Slips: 0, ManualDetach: 0, TakeOffFlow: float64(req.RemovalFlowRate) / 1000, LowMilkFlowPc: 0, Flow0To15: req.FlowRate0To15, Flow15To30: req.FlowRate15To30, Flow30To60: req.FlowRate30To60, Flow60To120: req.FlowRate60To120, } } func NewGEAMilkOriginal( pastureId int64, milkHallNumber string, detachTime, earNumber, milkDate, attachTime string, milkWeight, detacherAddress int64, duration, peakFlow float64, conductivity int32, eId string, f0t15, f15t30, f30t60, f60t120 int64, manualDetach int8, ) *MilkOriginal { return &MilkOriginal{ PastureId: pastureId, CowId: 0, EarNumber: earNumber, EleEarNumber: eId, PenId: 0, PenName: "", MilkHallBrand: "", MilkDate: milkDate, MilkWeight: milkWeight, StartTime: "", InitialTime: "", AttachTime: attachTime, AttachAdjustTime: "", DetacherTime: detachTime, EndTime: "", DetacherAddress: detacherAddress, Conductivity: conductivity, CowActivity: 0, Source: 0, MilkHallNumber: milkHallNumber, Shifts: 0, Load: 0, Nattach: 0, RecognitionTime: "", IsYieldLow: 0, PeakFlow: peakFlow, AvgFlow: 0, Duration: duration, PearFlowTime: 0, LowFlowTime: 0, YieldPercentage: 0, ActualMilkTime: "", KickOffs: false, Blocks: 0, Slips: 0, ManualDetach: manualDetach, TakeOffFlow: 0, LowMilkFlowPc: 0, Flow0To15: f0t15, Flow15To30: f15t30, Flow30To60: f30t60, Flow60To120: f60t120, } }