Merge branch 'mark' of e.coding.net:rosydev/jx-callback into mark

This commit is contained in:
gazebo
2019-09-18 10:53:50 +08:00

View File

@@ -43,6 +43,8 @@ const (
StoreRangeBadRadius = 1.0 //千米 StoreRangeBadRadius = 1.0 //千米
SaleSkuPriceRatio = 90 //千米 SaleSkuPriceRatio = 90 //千米
SaleSkuCheckRange = 5.0 //千米 SaleSkuCheckRange = 5.0 //千米
WeekNum = 5 //得到门店近期周的数量
) )
var ( var (
@@ -710,23 +712,23 @@ func Time2Week(t time.Time) int {
} }
func SplitToSingleWeekDataList(storeScoreList []*model.StoreScoreEx) (weekDataList [][]*model.StoreScoreEx) { func SplitToSingleWeekDataList(storeScoreList []*model.StoreScoreEx) (weekDataList [][]*model.StoreScoreEx) {
singelWeekData := []*model.StoreScoreEx{} singleWeekData := []*model.StoreScoreEx{}
weekIndex := 0 weekIndex := 0
for _, value := range storeScoreList { for _, value := range storeScoreList {
if weekIndex == 0 { if weekIndex == 0 {
weekIndex = Time2Week(value.CreatedAt) weekIndex = Time2Week(value.ScoreDate)
} }
if weekIndex == Time2Week(value.CreatedAt) { if weekIndex == Time2Week(value.ScoreDate) {
singelWeekData = append(singelWeekData, value) singleWeekData = append(singleWeekData, value)
} else { } else {
weekDataList = append(weekDataList, singelWeekData) weekDataList = append(weekDataList, singleWeekData)
singelWeekData = []*model.StoreScoreEx{} singleWeekData = []*model.StoreScoreEx{}
weekIndex = 0 weekIndex = 0
singelWeekData = append(singelWeekData, value) singleWeekData = append(singleWeekData, value)
} }
} }
if len(singelWeekData) > 0 { if len(singleWeekData) > 0 {
weekDataList = append(weekDataList, singelWeekData) weekDataList = append(weekDataList, singleWeekData)
} }
return weekDataList return weekDataList
@@ -745,9 +747,9 @@ func GetStoreScoreLevel(score int) int {
return level return level
} }
func GetWeeklyStoreScore(storeID, weekIndex int) (outWeeklyStoreScoreDataList []*model.WeeklyStoreScore, err error) { func GetWeeklyStoreScore(storeID, weekIndexParam int) (outWeeklyStoreScoreDataList []*model.WeeklyStoreScore, err error) {
db := dao.GetDB() db := dao.GetDB()
storeScoreList, err := dao.GetLatestWeeklyStoreScoreList(db, storeID, 5) storeScoreList, err := dao.GetLatestWeeklyStoreScoreList(db, storeID, WeekNum)
if err == nil && len(storeScoreList) > 0 { if err == nil && len(storeScoreList) > 0 {
weeklyStoreScoreDataList := []*model.WeeklyStoreScore{} weeklyStoreScoreDataList := []*model.WeeklyStoreScore{}
weekDataList := SplitToSingleWeekDataList(storeScoreList) weekDataList := SplitToSingleWeekDataList(storeScoreList)
@@ -765,13 +767,13 @@ func GetWeeklyStoreScore(storeID, weekIndex int) (outWeeklyStoreScoreDataList []
refutil.SetObjFieldByName(weeklyData, fieldName, destFieldValue+srcFieldValue) refutil.SetObjFieldByName(weeklyData, fieldName, destFieldValue+srcFieldValue)
} }
if weekDataCount == 1 { if weekDataCount == 1 {
weeklyData.BeginTime = dayData.CreatedAt weeklyData.BeginTime = dayData.ScoreDate
weeklyData.EndTime = dayData.CreatedAt weeklyData.EndTime = dayData.ScoreDate
} else { } else {
if dayIndex == 0 { if dayIndex == 0 {
weeklyData.EndTime = dayData.CreatedAt weeklyData.EndTime = dayData.ScoreDate
} else if dayIndex == weekDataCount-1 { } else if dayIndex == weekDataCount-1 {
weeklyData.BeginTime = dayData.CreatedAt weeklyData.BeginTime = dayData.ScoreDate
} }
} }
weeklyData.StoreName = dayData.StoreName weeklyData.StoreName = dayData.StoreName
@@ -787,10 +789,10 @@ func GetWeeklyStoreScore(storeID, weekIndex int) (outWeeklyStoreScoreDataList []
} }
weeklyData.Level = GetStoreScoreLevel(weeklyData.TotalScore) weeklyData.Level = GetStoreScoreLevel(weeklyData.TotalScore)
} }
if weekIndex == -1 { if weekIndexParam == -1 {
outWeeklyStoreScoreDataList = weeklyStoreScoreDataList outWeeklyStoreScoreDataList = weeklyStoreScoreDataList
} else { } else {
outWeeklyStoreScoreDataList = []*model.WeeklyStoreScore{weeklyStoreScoreDataList[weekIndex]} outWeeklyStoreScoreDataList = []*model.WeeklyStoreScore{weeklyStoreScoreDataList[weekIndexParam]}
} }
} }