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

This commit is contained in:
苏尹岚
2020-07-13 13:41:32 +08:00
5 changed files with 120 additions and 40 deletions

View File

@@ -727,7 +727,7 @@ func CheckHasSensitiveWord(word string) (bool, error) {
}
func IsSensitiveWordInList(str string) (bool, string) {
wordList, err := dao.GetSensitiveWordList()
wordList, err := dao.GetSensitiveWordList(-1)
if err == nil {
for _, value := range wordList {
keyWord := value.Word

View File

@@ -455,16 +455,18 @@ func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool
sql += ")"
}
}
/*前台传入的最大值和最小值设置*/
if params["highestPrice"] != "" && params["highestPrice"] != nil {
//highestPrice := utils.Interface2Float64WithDefault(params["highestPrice"], 0) * 100
sql += " AND t4.unit_price <= ? "
sqlParams = append(sqlParams, params["highestPrice"])
}
if params["minimumPrice"] != "" && params["minimumPrice"] != nil {
//minimumPrice := utils.Interface2Float64WithDefault(params["minimumPrice"], 0) * 100
sql += " AND t4.unit_price >= ? "
sqlParams = append(sqlParams, params["minimumPrice"])
if isFocus {
/*前台传入的最大值和最小值设置*/
if params["highestPrice"] != "" && params["highestPrice"] != nil {
//highestPrice := utils.Interface2Float64WithDefault(params["highestPrice"], 0) * 100
sql += " AND t4.unit_price <= ? "
sqlParams = append(sqlParams, params["highestPrice"])
}
if params["minimumPrice"] != "" && params["minimumPrice"] != nil {
//minimumPrice := utils.Interface2Float64WithDefault(params["minimumPrice"], 0) * 100
sql += " AND t4.unit_price >= ? "
sqlParams = append(sqlParams, params["minimumPrice"])
}
}
return sql, sqlParams, err
}

View File

@@ -4,6 +4,7 @@ import (
"errors"
"fmt"
"strconv"
"strings"
"sync"
"time"
@@ -1284,26 +1285,85 @@ func SetMTPSStatus(ctx *jxcontext.Context, storeId, courierStatus int) {
/*获取美团门店信息*/
//&& CourierStatus != 0
if storeId != 0 {
var ShopName string
StoreLists, _ := dao.GetStoreList(nil, []int{storeId}, nil, nil, nil, "")
StoreInfoList, _ := api.MtpsAPI.GetStoreStatus(StoreLists[0].Name)
globals.SugarLogger.Debug("美团查询结果", StoreInfoList)
if StoreInfoList == nil || StoreInfoList.DataList == nil {
ShopName = StoreLists[0].Name
StoreInfoList := new(mtpsapi.GetStoreStatusResultAll)
StoreInfoList, _ = api.MtpsAPI.GetStoreStatus(ShopName)
/*通过名字找到了,正常情况*/
if StoreInfoList != nil && StoreInfoList.DataList != nil {
goto ifExist
} else {
/*如果通过名字找不到那就先通过ID去找名字*/
ShopInfo, _ := api.MtpsAPI.ShopQuery(strconv.Itoa(storeId))
if ShopInfo != nil {
ShopName = ShopInfo.ShopName
StoreInfoList, _ = api.MtpsAPI.GetStoreStatus(ShopName)
if StoreInfoList != nil && StoreInfoList.DataList != nil {
goto ifExist
} else {
/*如果通过API返回的名字也找不到*/
goto ifNotExist
}
} else {
/*如果通过ID找不到那就直接去判断名字*/
goto NameProblem
}
NameProblem:
{
var NotOpen int
if strings.Contains(StoreLists[0].Name, "不做") || strings.Contains(StoreLists[0].Name, "不想做") {
NotOpen = strings.Index(StoreLists[0].Name, "-")
if strings.Index(StoreLists[0].Name, "-") > 0 {
StoreLists[0].Name = StoreLists[0].Name[:NotOpen-1]
}
NotOpen = strings.Index(StoreLists[0].Name, "不")
if strings.Index(StoreLists[0].Name, "不") > 0 {
StoreLists[0].Name = StoreLists[0].Name[:NotOpen-1]
}
NotOpen = strings.Index(StoreLists[0].Name, "")
if strings.Index(StoreLists[0].Name, "") > 0 {
StoreLists[0].Name = StoreLists[0].Name[:NotOpen-1]
}
NotOpen = strings.Index(StoreLists[0].Name, "(")
if strings.Index(StoreLists[0].Name, "(") > 0 {
StoreLists[0].Name = StoreLists[0].Name[:NotOpen-1]
}
NotOpen = strings.Index(StoreLists[0].Name, " ")
if NotOpen > 0 {
StoreLists[0].Name = StoreLists[0].Name[:NotOpen-1]
}
ShopName = StoreLists[0].Name
StoreInfoList, _ = api.MtpsAPI.GetStoreStatus(ShopName)
if StoreInfoList != nil && StoreInfoList.DataList != nil {
goto ifExist
} else {
goto ifNotExist
}
}
}
}
ifNotExist:
{
sl := make(map[string]interface{})
sl["vendorStatus"] = 0
globals.SugarLogger.Debug("因为没找到被修改配送状态的VendorStoreID是", StoreLists[0].Name, storeId)
UpdateStoreCourierMap(ctx, nil, storeId, model.VendorIDMTPS, sl, ctx.GetUserName())
return
}
if StoreInfoList.DataList[0].OuterPoiID != "" {
//若存在且名字不为空,就是找到了
if StoreInfoList.DataList[0].OpenType != courierStatus {
sl := make(map[string]interface{})
sl["vendorStoreID"] = StoreInfoList.DataList[0].OuterPoiID
sl["status"] = StoreInfoList.DataList[0].OpenType
sl["vendorStatus"] = StoreInfoList.DataList[0].OpenType
globals.SugarLogger.Debugf("被修改配送状态的VendorStoreID是:%s,名称是:%s,美团状态是:%s,本地状态是:%s",
StoreInfoList.DataList[0].OuterPoiID, StoreInfoList.DataList[0].PoiName, strconv.Itoa(StoreInfoList.DataList[0].OpenType), strconv.Itoa(StoreLists[0].Status))
UpdateStoreCourierMap(ctx, nil, storeId, model.VendorIDMTPS, sl, ctx.GetUserName())
ifExist:
{
if StoreInfoList.DataList[0].OuterPoiID != "" {
//若存在且名字不为空,就是找到了
if StoreInfoList.DataList[0].OpenType != courierStatus {
sl := make(map[string]interface{})
sl["vendorStoreID"] = StoreInfoList.DataList[0].OuterPoiID
sl["status"] = StoreInfoList.DataList[0].OpenType
sl["vendorStatus"] = StoreInfoList.DataList[0].OpenType
globals.SugarLogger.Debugf("被修改配送状态的VendorStoreID是:%s,名称是:%s,美团状态是:%s,本地状态是:%s",
StoreInfoList.DataList[0].OuterPoiID, StoreInfoList.DataList[0].PoiName, strconv.Itoa(StoreInfoList.DataList[0].OpenType), strconv.Itoa(StoreLists[0].Status))
UpdateStoreCourierMap(ctx, nil, storeId, model.VendorIDMTPS, sl, ctx.GetUserName())
}
}
}
} else {

View File

@@ -1,29 +1,43 @@
package dao
import (
"errors"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/model"
"time"
)
func GetSensitiveWordList() (wordList []*model.SensitiveWord, err error) {
sql := `SELECT * FROM sensitive_word WHERE deleted_at = ?`
err = GetRows(nil, &wordList, sql, utils.DefaultTimeValue)
/*VendorID = -2 的时候是通用,-1 查询所有保留之前的1看后面会不会有扩展*/
func GetSensitiveWordList(vendorID int) (wordList []*model.SensitiveWord, err error) {
if vendorID == 0 {
vendorID = -2
}
if vendorID == -1 {
sql := `SELECT * FROM sensitive_word WHERE deleted_at = ?`
err = GetRows(nil, &wordList, sql, utils.DefaultTimeValue)
} else {
sql := `SELECT * FROM sensitive_word WHERE deleted_at = ? AND vendor_id = ?`
err = GetRows(nil, &wordList, sql, utils.DefaultTimeValue, vendorID)
}
return wordList, err
}
func InsertSensitiveWord(word string, vendorID int, userName string) error {
if vendorID == 0 {
vendorID = -2
}
sensitiveWord := &model.SensitiveWord{Word: word, VendorID: vendorID}
WrapAddIDCULDEntity(sensitiveWord, userName)
return CreateEntity(nil, sensitiveWord)
}
func DeleteSensitiveWord(wordList *model.SensitiveWord, id int, userName string) (word *model.SensitiveWord, err error) {
if id == 0 {
return nil, errors.New("入参错误找不到相应ID")
func DeleteSensitiveWord(wordList *model.SensitiveWord, id int, userName string, vendorID int) (word *model.SensitiveWord, err error) {
if vendorID == 0 {
vendorID = -2
}
wordList.ID = id
if id != 0 {
wordList.ID = id
}
wordList.VendorID = id
wordList.DeletedAt = time.Now()
wordList.LastOperator = userName
if _, err := UpdateEntity(nil, wordList, "deleted_at", "id", "last_operator", "vendor_id"); err != nil {
@@ -32,11 +46,14 @@ func DeleteSensitiveWord(wordList *model.SensitiveWord, id int, userName string)
return wordList, nil
}
func UpdateSensitiveWord(wordList *model.SensitiveWord, id int, userName string, params ...string) (word *model.SensitiveWord, err error) {
if id == 0 {
return nil, errors.New("入参错误找不到相应ID")
func UpdateSensitiveWord(wordList *model.SensitiveWord, vendorID int, id int, userName string, params ...string) (word *model.SensitiveWord, err error) {
if vendorID == 0 {
vendorID = -2
}
wordList.ID = id
if id != 0 {
wordList.ID = id
}
wordList.VendorID = vendorID
wordList.UpdatedAt = time.Now()
wordList.LastOperator = userName
if _, err := UpdateEntity(nil, wordList, params...); err != nil {

View File

@@ -338,12 +338,13 @@ func (c *SkuController) SyncSku() {
// @Title 获取敏感词列表
// @Description 获取敏感词列表
// @Param token header string true "认证token"
// @Param vendorID query int false "VendorID"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetSensitiveWordList [get]
func (c *SkuController) GetSensitiveWordList() {
c.callGetSensitiveWordList(func(params *tSkuGetSensitiveWordListParams) (retVal interface{}, errCode string, err error) {
sensitiveWordList, err := dao.GetSensitiveWordList()
sensitiveWordList, err := dao.GetSensitiveWordList(params.VendorID)
var wordList []string
for _, value := range sensitiveWordList {
wordList = append(wordList, value.Word)
@@ -373,7 +374,7 @@ func (c *SkuController) InsertSensitiveWord() {
// @Param token header string true "认证token"
// @Param word query string true "关键词名字"
// @Param vendorID query int false "VendorID"
// @Param ID query int true "关键词ID"
// @Param ID query int false "关键词ID"
// @Param Status query int false "状态0为修改默认1为删除"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
@@ -388,9 +389,9 @@ func (c *SkuController) UpdateSensitiveWord() {
},
}
if params.Status == 1 {
retVal, err = dao.DeleteSensitiveWord(word, params.ID, params.Ctx.GetUserName())
retVal, err = dao.DeleteSensitiveWord(word, params.ID, params.Ctx.GetUserName(), params.VendorID)
} else {
retVal, err = dao.UpdateSensitiveWord(word, params.ID, params.Ctx.GetUserName(), "id", "word", "vendor_id", "last_operator")
retVal, err = dao.UpdateSensitiveWord(word, params.VendorID, params.ID, params.Ctx.GetUserName(), "id", "word", "vendor_id", "last_operator")
}
return retVal, "", err
})