- 美团外卖订单评价,未完成,因为取不到关联的订单信息
This commit is contained in:
@@ -1,10 +1,80 @@
|
|||||||
package mtwm
|
package mtwm
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (c *PurchaseHandler) ReplyOrderComment(ctx *jxcontext.Context, orderComment *model.OrderComment, replyComment string) (err error) {
|
const (
|
||||||
|
RefreshCommentTime = 36 * time.Hour
|
||||||
|
RefreshCommentTimeInterval = 60 * time.Minute
|
||||||
|
BAD_COMMENTS_MAX_MODIFY_TIME = 24 // 小时
|
||||||
|
)
|
||||||
|
|
||||||
|
func (c *PurchaseHandler) StartRefreshComment() {
|
||||||
|
if globals.ReallyCallPlatformAPI {
|
||||||
|
utils.AfterFuncWithRecover(5*time.Second, func() {
|
||||||
|
c.refreshCommentOnce()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *PurchaseHandler) refreshCommentOnce() {
|
||||||
|
c.RefreshComment(time.Now().Add(-RefreshCommentTime), time.Now())
|
||||||
|
utils.AfterFuncWithRecover(RefreshCommentTimeInterval, func() {
|
||||||
|
c.refreshCommentOnce()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *PurchaseHandler) RefreshComment(fromTime, toTime time.Time) (err error) {
|
||||||
|
if globals.EnableMtwmStoreWrite {
|
||||||
|
storeMapList, err2 := dao.GetStoresMapList(dao.GetDB(), []int{model.VendorIDMTWM}, nil, model.StoreStatusAll)
|
||||||
|
if err = err2; err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
task := tasksch.NewParallelTask("mtwm RefreshComment", nil, jxcontext.AdminCtx,
|
||||||
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
|
storeMap := batchItemList[0].(*model.StoreMap)
|
||||||
|
startDateStr := time.Now().Format("20060102")
|
||||||
|
endDateStr := time.Now().Add(-RefreshCommentTime).Format("20060102")
|
||||||
|
commentList, err2 := api.MtwmAPI.CommentQuery(storeMap.VendorStoreID, startDateStr, endDateStr, 0, 0, mtwmapi.CommentReplyStatusAll)
|
||||||
|
if err = err2; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return commentList, nil
|
||||||
|
}, storeMapList)
|
||||||
|
task.Run()
|
||||||
|
resultList, err2 := task.GetResult(0)
|
||||||
|
if err = err2; err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
var orderCommentList []*model.OrderComment
|
||||||
|
for _, result := range resultList {
|
||||||
|
mtwmComment := result.(*mtwmapi.OrderComment)
|
||||||
|
orderComment := &model.OrderComment{
|
||||||
|
VendorID: model.VendorIDMTWM,
|
||||||
|
TagList: mtwmComment.CommentLables,
|
||||||
|
Score: int8(mtwmComment.FoodCommentScore),
|
||||||
|
}
|
||||||
|
orderCommentList = append(orderCommentList, orderComment)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *PurchaseHandler) ReplyOrderComment(ctx *jxcontext.Context, orderComment *model.OrderComment, replyComment string) (err error) {
|
||||||
|
if globals.EnableMtwmStoreWrite {
|
||||||
|
err = api.MtwmAPI.CommentAddReply(orderComment.VendorStoreID, utils.Str2Int64(orderComment.UserCommentID), replyComment)
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user