Files
jx-callback/business/partner/purchase/tao_vegetable/order_comment.go
邹宗楠 10036ef262 1
2023-06-28 11:24:09 +08:00

108 lines
4.2 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package tao_vegetable
import (
"strings"
"time"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
"git.rosy.net.cn/jx-callback/business/model"
)
const (
RefreshCommentTime = 7 * 24 * time.Hour // 此值必须大于24小时
RefreshCommentTimeInterval = 60 * time.Minute
BAD_COMMENTS_MAX_MODIFY_TIME = 24 * 6 // 小时
)
func (c *PurchaseHandler) StartRefreshComment() {
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 formalizeTagList(mtwmTagList string) (outTagList string) {
if mtwmTagList != "" {
outTagList = string(utils.Format4Output(strings.Split(mtwmTagList, ","), true))
}
return outTagList
}
// 获取评价信息
func (c *PurchaseHandler) RefreshComment(fromTime, toTime time.Time) (err error) {
////storeMapList, err2 := dao.GetStoresMapList(dao.GetDB(), []int{model.VendorIDMTWM}, nil, nil, model.StoreStatusAll, model.StoreIsSyncYes, "", "", "")
////if err = err2; err != nil {
//// return err
////}
//endDateStr := time.Now().Add(-24 * time.Hour).Format("20060102")
//startDateStr := time.Now().Add(-RefreshCommentTime).Format("20060102")
//storeIDs, _ := dao.GetOrderStoreIDs(dao.GetDB(), fromTime, toTime, model.VendorIDMTWM)
//task := tasksch.NewParallelTask("mtwm RefreshComment", nil, jxcontext.AdminCtx,
// func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// storeID := batchItemList[0].(int)
// storeDetail, _ := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM, "")
// commentList, err2 := getAPI(storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID).CommentQuery(storeDetail.VendorStoreID, startDateStr, endDateStr, 0, 0, mtwmapi.CommentReplyStatusNotReplied)
// var orderCommentList []*model.OrderComment
// if err = err2; err != nil {
// return nil, err
// }
// for _, mtwmComment := range commentList {
// createdTime, err := utils.TryStr2Time(mtwmComment.CommentTime)
// if err == nil {
// orderComment := &model.OrderComment{
// VendorOrderID: utils.Int64ToStr(mtwmComment.CommentID), // 美团评价不能得到订单号以评价ID代替
// VendorID: model.VendorIDMTWM,
// UserCommentID: utils.Int64ToStr(mtwmComment.CommentID),
// VendorStoreID: storeDetail.VendorStoreID,
// TagList: formalizeTagList(mtwmComment.CommentLables),
// Score: int8(mtwmComment.FoodCommentScore),
// ModifyDuration: BAD_COMMENTS_MAX_MODIFY_TIME,
// OriginalMsg: string(utils.MustMarshal(mtwmComment)),
// IsReplied: int8(mtwmComment.ReplyStatus),
// StoreID: storeDetail.ID,
// }
// if orderComment.IsReplied == 0 {
// orderComment.Content = mtwmComment.CommentContent
// orderComment.CommentCreatedAt = createdTime
// } else {
// orderComment.Content = mtwmComment.AddComment
// if updatedTime, err := utils.TryStr2Time(mtwmComment.CommentTime); err == nil {
// orderComment.CommentCreatedAt = updatedTime
// }
// }
// orderCommentList = append(orderCommentList, orderComment)
// }
// }
// return orderCommentList, nil
// }, storeIDs)
//task.Run()
//resultList, err2 := task.GetResult(0)
//if err = err2; err != nil {
// return err
//}
//var orderCommentList []*model.OrderComment
//for _, result := range resultList {
// orderComment := result.(*model.OrderComment)
// orderCommentList = append(orderCommentList, orderComment)
//}
//if len(orderCommentList) > 0 {
// err = partner.CurOrderManager.OnOrderComments(orderCommentList)
//}
return err
}
// ReplyOrderComment 评价回复
func (c *PurchaseHandler) ReplyOrderComment(ctx *jxcontext.Context, vendorOrgCode string, orderComment *model.OrderComment, replyComment string) (err error) {
//if globals.EnableMtwmStoreWrite {
// err = getAPI(vendorOrgCode, orderComment.StoreID, orderComment.VendorStoreID).CommentAddReply(orderComment.VendorStoreID, utils.Str2Int64(orderComment.UserCommentID), replyComment)
//}
return err
}