// package manage import ( "fmt" "time" "vamicro/iotData-service/model" "vamicro/iotData-service/serializer" ) type SevenDayCountService struct { } func (service *SevenDayCountService) Show() serializer.Response { // returnArr := []int{} code := 200 todayStr := time.Now().Format("2006-01-02") day1Str := time.Now().AddDate(0, 0, -1).Format("2006-01-02") day2Str := time.Now().AddDate(0, 0, -2).Format("2006-01-02") day3Str := time.Now().AddDate(0, 0, -3).Format("2006-01-02") day4Str := time.Now().AddDate(0, 0, -4).Format("2006-01-02") day5Str := time.Now().AddDate(0, 0, -5).Format("2006-01-02") day6Str := time.Now().AddDate(0, 0, -6).Format("2006-01-02") dayArr := [7]string{todayStr, day1Str, day2Str, day3Str, day4Str, day5Str, day6Str} sumArr := [7]int64{} fmt.Println("七天字符串", dayArr) for i := 0; i < len(dayArr)-1; i++ { day := dayArr[i] var dayObj model.DayData dayObj.DateStr = day if num, _ := dayObj.GetByDate(); num == 0 { fmt.Println("执行这里") var warnObj model.Warning var count int64 if i == 0 { count, _ = warnObj.GetSumByDate(dayArr[i], GetNowStr()) } else { count, _ = warnObj.GetSumByDate(dayArr[i+1], dayArr[i]) } sumArr[i] = count dayObj.WarnCount = count dayObj.CreateOrSave() } else { sumArr[i] = num } } returnArr:= [7]map[string]interface{}{} for i, v := range dayArr { returnArr[i] = map[string]interface{}{ "time" : v+" 00:00:00", "amount":sumArr[i], } } return serializer.Response{ Status: code, Data: returnArr, } }