| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 | 
							- package petsLy
 
- import (
 
- 	"duoduo/models/mysqlLy"
 
- 	"duoduo/models/petsLy"
 
- 	"duoduo/tools"
 
- 	"duoduo/tools/app"
 
- 	"fmt"
 
- 	"github.com/gin-gonic/gin"
 
- 	"strconv"
 
- 	"time"
 
- )
 
- func PetsList(c *gin.Context) {
 
- 	var inData petsLy.PetsListRequest
 
- 	var pets mysqlLy.Pets
 
- 	var outData petsLy.PetsListResponse
 
- 	var pageSize = 10
 
- 	var pageIndex = 1
 
- 	err := c.ShouldBindJSON(&inData)
 
- 	if err != nil {
 
- 		app.Error(c, 400, err, err.Error())
 
- 		return
 
- 	}
 
- 	fmt.Println("indata = %+v", inData)
 
- 	if inData.PageSize != 0 {
 
- 		pageSize = inData.PageSize
 
- 	}
 
- 	if inData.PageIndex != 0 {
 
- 		pageIndex = inData.PageIndex
 
- 	}
 
- 	pets.OpenId = inData.OpenId
 
- 	pets.IsFee = inData.IsFee
 
- 	pets.Status = inData.Status
 
- 	pets.City = inData.City
 
- 	pets.Pet = inData.Pet
 
- 	petsList, petsCount, err := pets.GetPetsList(pageSize, pageIndex)
 
- 	if err != nil {
 
- 		app.Error(c, 500, err, "")
 
- 		return
 
- 	}
 
- 	for i := 0; i < len(petsList); i++ {
 
- 		var pet petsLy.Pets
 
- 		pet.Pets = petsList[i]
 
- 		err := tools.JsonUnmarshal(petsList[i].Pictures, &pet.Pictures)
 
- 		if err != nil {
 
- 			app.Error(c, 500, err, "")
 
- 			return
 
- 		}
 
- 		timeDiff := time.Now().Unix() - petsList[i].CreateTime.Unix()
 
- 		if timeDiff >= 0 && timeDiff < 60 { //秒前
 
- 			pet.TimeDiff = strconv.FormatInt(timeDiff, 10)
 
- 			pet.TimeDiff = pet.TimeDiff + "秒前"
 
- 		} else if timeDiff >= 60 && timeDiff < 60*60 { //分钟前
 
- 			number := timeDiff / 60
 
- 			pet.TimeDiff = strconv.FormatInt(number, 10)
 
- 			pet.TimeDiff = pet.TimeDiff + "分钟前"
 
- 		} else if timeDiff >= 60*60 && timeDiff < 60*60*24 { //小时前
 
- 			number := timeDiff / (60 * 60)
 
- 			pet.TimeDiff = strconv.FormatInt(number, 10)
 
- 			pet.TimeDiff = pet.TimeDiff + "小时前"
 
- 		} else if timeDiff >= 60*60*24 && timeDiff < 60*60*24*30 { //天前
 
- 			number := timeDiff / (60 * 60 * 24)
 
- 			pet.TimeDiff = strconv.FormatInt(number, 10)
 
- 			pet.TimeDiff = pet.TimeDiff + "天前"
 
- 		} else if timeDiff >= 60*60*24*30 && timeDiff < 60*60*24*365 { //月前
 
- 			number := timeDiff / (60 * 60 * 24 * 30)
 
- 			pet.TimeDiff = strconv.FormatInt(number, 10)
 
- 			pet.TimeDiff = pet.TimeDiff + "月前"
 
- 		} else if timeDiff >= 60*60*24*365 { //年前
 
- 			number := timeDiff / (60 * 60 * 24 * 365)
 
- 			pet.TimeDiff = strconv.FormatInt(number, 10)
 
- 			pet.TimeDiff = pet.TimeDiff + "年前"
 
- 		}
 
- 		outData.Pets = append(outData.Pets, pet)
 
- 	}
 
- 	app.PageOK(c, outData, petsCount, pageIndex, pageSize, "成功")
 
- }
 
 
  |