1
This commit is contained in:
@@ -14,11 +14,19 @@ import (
|
||||
"time"
|
||||
)
|
||||
|
||||
func GetMTInfo() {
|
||||
// GetStatisticsList 京西数据查询
|
||||
func GetStatisticsList(start, end time.Time, storeIds []int, offset, pageSize int) (*model.PagedInfo, error) {
|
||||
return dao.GetStatistics(dao.GetDB(), start, end, storeIds, offset, pageSize)
|
||||
}
|
||||
|
||||
// GetMTInfo 更新美团门店信息
|
||||
func GetMTInfo() []error {
|
||||
var db = dao.GetDB()
|
||||
var errList = make([]error, 0, 0)
|
||||
// 获取当前一月有效订单的门店信息
|
||||
effectiveStores, err := dao.StoreInformationStatistics()
|
||||
effectiveStores, err := dao.StoreInformationStatistics(db)
|
||||
if err != nil {
|
||||
return
|
||||
return append(errList, err)
|
||||
}
|
||||
|
||||
var mtApi *mtwmapi.API
|
||||
@@ -40,9 +48,9 @@ func GetMTInfo() {
|
||||
//Activity: 0,
|
||||
//StoreSkuNum: 0,
|
||||
//StoreRating: 0,
|
||||
DeliveryFee: "",
|
||||
//DeliveryFee: "",
|
||||
//DeliveryFee2: "",
|
||||
PromotionFee: "",
|
||||
PromotionFee: "暂无法获取",
|
||||
//BusinessHours: "",
|
||||
}
|
||||
dao.WrapAddIDCULEntity(statistics, "system")
|
||||
@@ -52,7 +60,7 @@ func GetMTInfo() {
|
||||
statistics.Activity = int64(down + up)
|
||||
score, err := mtApi.CommentScore(v.VendorStoreID)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("门店评分获取错误:%v", err)
|
||||
errList = append(errList, fmt.Errorf("%s获取评分错误:%s", v.VendorStoreID, err.Error()))
|
||||
}
|
||||
if score != nil {
|
||||
statistics.StoreRating = score.AvgPoiScore
|
||||
@@ -60,17 +68,36 @@ func GetMTInfo() {
|
||||
statistics.StoreRating = 0
|
||||
}
|
||||
|
||||
// 获取门店营业时长
|
||||
detail, _ := mtApi.PoiMGet([]string{v.VendorStoreID})
|
||||
if detail != nil {
|
||||
statistics.BusinessHours, err = getStoreShippingTime(detail[0].ShippingTime)
|
||||
if err != nil {
|
||||
errList = append(errList, fmt.Errorf("%s获取营业时长错误:%s", v.VendorStoreID, err.Error()))
|
||||
statistics.BusinessHours = err.Error()
|
||||
}
|
||||
statistics.DeliveryFee2 = utils.Float64ToStr(detail[0].ShippingFee)
|
||||
}
|
||||
// 获取门店起送价
|
||||
result, err := mtApi.ShippingList(v.VendorStoreID)
|
||||
if err != nil {
|
||||
errList = append(errList, fmt.Errorf("%s获取起送价错误:%s", v.VendorStoreID, err.Error()))
|
||||
statistics.DeliveryFee = err.Error()
|
||||
}
|
||||
shippingList := make([]ShippingList, 0, 0)
|
||||
for _, v2 := range result {
|
||||
shippingList = append(shippingList, ShippingList{
|
||||
TimeRange: utils.Interface2String(v2["time_range"]),
|
||||
MinPrice: utils.MustInterface2Float64(v2["min_price"]),
|
||||
ShippingFee: utils.MustInterface2Float64(v2["shipping_fee"]),
|
||||
})
|
||||
}
|
||||
statistics.DeliveryFee = utils.Format4Output(shippingList, false)
|
||||
|
||||
dao.CreateEntity(db, statistics)
|
||||
}
|
||||
|
||||
return errList
|
||||
}
|
||||
|
||||
// 获取门店折扣活动商品数量
|
||||
@@ -192,3 +219,9 @@ func mergeIntervals(ints []interval) []interval {
|
||||
merged = append(merged, curr)
|
||||
return merged
|
||||
}
|
||||
|
||||
type ShippingList struct {
|
||||
TimeRange string `json:"time_range"` // 配送生效时间范围
|
||||
MinPrice float64 `json:"min_price"` // 最小起送价
|
||||
ShippingFee float64 `json:"shipping_fee"` // 配送费
|
||||
}
|
||||
|
||||
@@ -208,6 +208,11 @@ func Init() {
|
||||
"05:00:00",
|
||||
})
|
||||
|
||||
ScheduleTimerFunc("UpdateMtActivityInfo", func() {
|
||||
bidding.GetMTInfo()
|
||||
}, []string{
|
||||
"13:00:00",
|
||||
})
|
||||
/// 更新淘鲜达结算信息
|
||||
//ScheduleTimerFunc("UpdateTaoTotalMoney", func() {
|
||||
// orderman.UpdateTaoSettleInfo()
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
package dao
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-print/dao"
|
||||
"time"
|
||||
)
|
||||
|
||||
// StoreInformationStatistics 门店信息统计
|
||||
func StoreInformationStatistics() (result []*model.EffectiveStores, err error) {
|
||||
func StoreInformationStatistics(db *DaoDB) (result []*model.EffectiveStores, err error) {
|
||||
sql := `
|
||||
SELECT
|
||||
gs.jx_store_id,
|
||||
@@ -21,9 +24,41 @@ func StoreInformationStatistics() (result []*model.EffectiveStores, err error) {
|
||||
`
|
||||
parma := []interface{}{time.Now().AddDate(0, -1, 0), model.VendorIDMTWM}
|
||||
|
||||
if err = GetRows(GetDB(), &result, sql, parma...); err != nil {
|
||||
if err = GetRows(db, &result, sql, parma...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func GetStatistics(db *DaoDB, startTime, endTime time.Time, storeId []int, offset, pageSize int) (pageInfo *model.PagedInfo, err error) {
|
||||
sql := ` SELECT SQL_CALC_FOUND_ROWS * FROM activity_station WHERE 1=1 `
|
||||
param := []interface{}{}
|
||||
if !utils.IsTimeZero(startTime) {
|
||||
sql += ` AND created_at >= ?`
|
||||
param = append(param, startTime)
|
||||
}
|
||||
if !utils.IsTimeZero(endTime) {
|
||||
sql += ` AND created_at <= ?`
|
||||
param = append(param, endTime)
|
||||
}
|
||||
if len(storeId) > 0 {
|
||||
sql += " AND store_id (" + dao.GenQuestionMarks(len(storeId)) + ")"
|
||||
param = append(param, storeId)
|
||||
}
|
||||
sql += ` ORDER BY created_at desc LIMIT ? OFFSET ?`
|
||||
param = append(param, jxutils.FormalizePageSize(pageSize), offset)
|
||||
|
||||
txDB, _ := Begin(db)
|
||||
defer Commit(db, txDB)
|
||||
|
||||
var data []*model.ActivityStation
|
||||
if err := GetRowsTx(txDB, &data, sql, param...); err == nil {
|
||||
pageInfo = &model.PagedInfo{
|
||||
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||
Data: data,
|
||||
}
|
||||
}
|
||||
|
||||
return pageInfo, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user