|
- package svc
-
- import (
- offical "applet/app/db/official"
- "applet/app/utils"
- "fmt"
- "strings"
- "time"
- )
-
- func MeituanStoreOrder() {
- pvdTimeKey := "meituan_store_time"
-
- // 获得最后时间
- latest := offical.SysCfgByKey(pvdTimeKey)
- if latest == nil {
- offical.DbsSysCfgInserts(pvdTimeKey, time.Now().String())
- latest = offical.SysCfgByKey(pvdTimeKey)
- }
- // 所有时间都是在操作秒数
- now := time.Now().Unix()
- strs := strings.Split(latest.V, ":")
- timeStr := latest.V
- if len(strs) == 3 {
- timeStr = strs[0] + ":" + strs[1] + ":00"
- }
- fmt.Println(timeStr)
- past := utils.TimeParseStd(timeStr).Unix()
- // 如果上次记录超过30天或者 过去时间大于当前时间戳, 把时间设置为此前20分钟
- if past < now-180*86400 || past > now {
- past = now
- }
- var (
- beginTime int64 = 0
- endTime int64 = 0
- pageNo int = 1
- pageSize int = 50
- nextPositionIndex string = ""
- )
-
- //怕时间不是走最新的
- leave := now - past
- if leave > 500 {
- leave = 0
- }
- past = past + leave
- beginTime = past - 300
- endTime = past
-
- if endTime > now {
- endTime = now
- }
-
- for {
- count := 0
- var positionIndex = ""
- if pageNo == 1 {
- nextPositionIndex = ""
- }
- count, positionIndex = OrdersMeituanGet(nextPositionIndex, pageSize, beginTime, endTime, "update", 2)
- if count == 0 {
- nextPositionIndex = ""
- goto ChkArg
- }
- // 判断是否分页已经全部取完了
- if count <= pageSize {
- nextPositionIndex = positionIndex
- pageNo++
- fmt.Println("========下一页========" + utils.IntToStr(pageNo))
- count = 0
- continue
- }
- ChkArg:
- nextPositionIndex = ""
-
- // 查询完后重置时间, 最后查询时间
- if endTime < now {
- pageNo = 1
- offical.DbsSysCfgUpdate(pvdTimeKey, utils.TimeToStr(endTime))
- beginTime = endTime
- endTime = endTime + 300
- if endTime > now {
- endTime = now
- }
- count = 0
- continue
- }
- count = 0
- break
- }
- }
|