|
@@ -31,43 +31,45 @@ func (e *Entry) GenerateCalendarBySameTimePlan(cowList []*model.Cow, sameTime *m
|
|
|
newCowList = append(newCowList, cow)
|
|
|
}
|
|
|
|
|
|
+ if len(newCowList) <= 0 || len(sameTime.CollateNodes) <= 0 {
|
|
|
+ return 0, nil
|
|
|
+ }
|
|
|
+
|
|
|
calendarList := make([]*model.Calendar, 0)
|
|
|
newSameTimeCowDetailList := make([]*model.SameTimeCowDetail, 0)
|
|
|
- if len(sameTime.CollateNodes) > 0 {
|
|
|
- collateNodes := make([]*pasturePb.CollateNode, 0)
|
|
|
- var _ = json.Unmarshal([]byte(sameTime.CollateNodes), &collateNodes)
|
|
|
- nowTime := time.Now()
|
|
|
- for i, collateNode := range collateNodes {
|
|
|
- showDay := nowTime.Format(model.LayoutDate2)
|
|
|
- if i > 0 {
|
|
|
- showDay = nowTime.Add(time.Hour * 24 * time.Duration(collateNode.NextNodeDay)).Format(model.LayoutDate2)
|
|
|
- }
|
|
|
-
|
|
|
- calendarName := backend.CalendarTypeMap()[pasturePb.CalendarType_PG]
|
|
|
- calendarType := pasturePb.CalendarType_PG
|
|
|
- if collateNode.SameTimeType == pasturePb.SameTimeType_RnGH {
|
|
|
- calendarName = backend.CalendarTypeMap()[pasturePb.CalendarType_RnGH]
|
|
|
- calendarType = pasturePb.CalendarType_RnGH
|
|
|
- }
|
|
|
-
|
|
|
- if collateNode.SameTimeType == pasturePb.SameTimeType_TAI {
|
|
|
- calendarName = backend.CalendarTypeMap()[pasturePb.CalendarType_Mating]
|
|
|
- calendarType = pasturePb.CalendarType_Mating
|
|
|
- }
|
|
|
-
|
|
|
- histCount := e.GetTowardSameTimeCowSum(sameTime.Id, collateNode.SameTimeType)
|
|
|
- calendarList = append(calendarList, &model.Calendar{
|
|
|
- Name: calendarName,
|
|
|
- CalendarType: calendarType,
|
|
|
- Count: int32(len(newCowList)) + int32(histCount),
|
|
|
- ShowDay: showDay,
|
|
|
- IsShow: pasturePb.IsShow_Ok,
|
|
|
- })
|
|
|
- newSameTimeCowDetailList = append(
|
|
|
- newSameTimeCowDetailList,
|
|
|
- model.NewSameTimeCowDetailList(newCowList, sameTime.Id, showDay, collateNode.SameTimeType)...,
|
|
|
- )
|
|
|
+ collateNodes := make([]*pasturePb.CollateNode, 0)
|
|
|
+ var _ = json.Unmarshal([]byte(sameTime.CollateNodes), &collateNodes)
|
|
|
+ nowTime := time.Now()
|
|
|
+ for i, collateNode := range collateNodes {
|
|
|
+ showDay := nowTime.Format(model.LayoutDate2)
|
|
|
+ if i > 0 {
|
|
|
+ showDay = nowTime.Add(time.Hour * 24 * time.Duration(collateNode.NextNodeDay)).Format(model.LayoutDate2)
|
|
|
+ }
|
|
|
+
|
|
|
+ calendarName := backend.CalendarTypeMap()[pasturePb.CalendarType_PG]
|
|
|
+ calendarType := pasturePb.CalendarType_PG
|
|
|
+ if collateNode.SameTimeType == pasturePb.SameTimeType_RnGH {
|
|
|
+ calendarName = backend.CalendarTypeMap()[pasturePb.CalendarType_RnGH]
|
|
|
+ calendarType = pasturePb.CalendarType_RnGH
|
|
|
+ }
|
|
|
+
|
|
|
+ if collateNode.SameTimeType == pasturePb.SameTimeType_TAI {
|
|
|
+ calendarName = backend.CalendarTypeMap()[pasturePb.CalendarType_Mating]
|
|
|
+ calendarType = pasturePb.CalendarType_Mating
|
|
|
}
|
|
|
+
|
|
|
+ histCount := e.GetTowardSameTimeCowSum(sameTime.Id, collateNode.SameTimeType)
|
|
|
+ calendarList = append(calendarList, &model.Calendar{
|
|
|
+ Name: calendarName,
|
|
|
+ CalendarType: calendarType,
|
|
|
+ Count: int32(len(newCowList)) + int32(histCount),
|
|
|
+ ShowDay: showDay,
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
+ })
|
|
|
+ newSameTimeCowDetailList = append(
|
|
|
+ newSameTimeCowDetailList,
|
|
|
+ model.NewSameTimeCowDetailList(newCowList, sameTime.Id, showDay, collateNode.SameTimeType)...,
|
|
|
+ )
|
|
|
}
|
|
|
|
|
|
newSameTimeCowList := model.NewSameTimeCowList(newCowList, sameTime)
|