门店评分

This commit is contained in:
Rosy-zhudan
2019-09-06 17:29:09 +08:00
parent 40d9312acb
commit 52bdbdb4ff
6 changed files with 212 additions and 47 deletions

View File

@@ -296,7 +296,7 @@ func GetDailyFinishOrderList(db *DaoDB, storeID int) (orderList []*model.OrderPi
select t2.status_time, t1.pick_deadline
from goods_order t1
left join order_status t2 on t1.vendor_order_id = t2.vendor_order_id
where t1.jx_store_id = ? and t2.order_type = ? and t2.status = ? and DATE_FORMAT(t1.order_finished_at, '%Y-%m-%d') = DATE_FORMAT(NOW(), '%Y-%m-%d')
where t1.jx_store_id = ? and t2.order_type = ? and t2.status = ? and DATE(t1.order_finished_at) = CURDATE()
`
sqlParams := []interface{}{
storeID,
@@ -307,7 +307,7 @@ func GetDailyFinishOrderList(db *DaoDB, storeID int) (orderList []*model.OrderPi
}
func GetDailyBadCommentOrderCount(db *DaoDB, storeID int) (num int64, err error) {
sql := `select count(*) from jx_bad_comments where DATE_FORMAT(createtime, '%Y-%m-%d') = DATE_FORMAT(NOW(), '%Y-%m-%d') and jxstoreid = ?`
sql := `select count(*) from jx_bad_comments where DATE(createtime) = CURDATE() and jxstoreid = ?`
sqlParams := []interface{}{
storeID,
}
@@ -324,7 +324,7 @@ func GetDailyFinishOrderCount(db *DaoDB, storeID int) (num int64, err error) {
func GetDailyEndOrderCount(db *DaoDB, storeID int, statusList []int) (num int64, err error) {
sql := `select count(*) from goods_order
where DATE_FORMAT(order_finished_at, '%Y-%m-%d') = DATE_FORMAT(NOW(), '%Y-%m-%d')
where DATE(order_finished_at) = CURDATE()
and jx_store_id = ?
and status in (` + GenQuestionMarks(len(statusList)) + `)`
sqlParams := []interface{}{

View File

@@ -11,3 +11,48 @@ func InsertStoreScore(storeScore *model.StoreScore) error {
storeScore.CreatedAt = time.Now()
return CreateEntity(nil, storeScore)
}
func GetLatestWeeklyStoreScoreList(db *DaoDB, storeID, weekNum int) (storeScoreList []*model.StoreScore, err error) {
// sql := `
// SET @dayInWeek = IF(DAYOFWEEK(CURDATE()) - 1 = 0, 7, DAYOFWEEK(CURDATE()) - 1);
// SET @endDate = DATE_SUB(CURDATE(), INTERVAL @dayInWeek DAY);
// SET @beginData = DATE_SUB(@endDate, INTERVAL ? DAY);
// SELECT * FROM store_score
// WHERE store_id = ? AND DATE(created_at) >= @beginData AND DATE(created_at) <= @endDate ORDER BY created_at DESC
// `
sql := `
SELECT * FROM store_score WHERE store_id = ?
AND DATE(created_at) >= DATE_SUB(
DATE_SUB(
CURDATE(),
INTERVAL
IF (
DAYOFWEEK(CURDATE()) - 1 = 0,
7,
DAYOFWEEK(CURDATE()) - 1
) DAY
),
INTERVAL ? DAY
)
AND DATE(created_at) <= DATE_SUB(
CURDATE(),
INTERVAL
IF (
DAYOFWEEK(CURDATE()) - 1 = 0,
7,
DAYOFWEEK(CURDATE()) - 1
) DAY
)
ORDER BY created_at DESC
`
if weekNum <= 0 {
weekNum = 1
}
diffDays := weekNum*7 - 1
sqlParams := []interface{}{
storeID,
diffDays,
}
err = GetRows(db, &storeScoreList, sql, sqlParams)
return storeScoreList, err
}