Merge remote-tracking branch 'origin/mark' into don
This commit is contained in:
@@ -2,10 +2,10 @@ package act
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"strings"
|
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
|
"git.rosy.net.cn/baseapi/utils/errlist"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner"
|
"git.rosy.net.cn/jx-callback/business/partner"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
@@ -279,9 +279,11 @@ func checkDiscountValidation(actType int, pricePercentage int) (err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func checkActValidation(act *model.Act, vendorIDs []int) (err error) {
|
func checkActValidation(act *model.Act, vendorIDs []int) (err error) {
|
||||||
var errList []error
|
errList := errlist.New()
|
||||||
if utils.IsTimeZero(act.BeginAt) || utils.IsTimeZero(act.EndAt) {
|
if utils.IsTimeZero(act.BeginAt) || utils.IsTimeZero(act.EndAt) {
|
||||||
errList = append(errList, fmt.Errorf("活动开始与结束时间必须指定"))
|
errList.AddErr(fmt.Errorf("活动开始与结束时间必须指定"))
|
||||||
|
} else if act.EndAt.Sub(act.BeginAt) < 0 {
|
||||||
|
errList.AddErr(fmt.Errorf("活动开始时间必须小于活动结束时间"))
|
||||||
}
|
}
|
||||||
vendorIDMap := make(map[int]int)
|
vendorIDMap := make(map[int]int)
|
||||||
for _, vendorID := range vendorIDs {
|
for _, vendorID := range vendorIDs {
|
||||||
@@ -290,25 +292,19 @@ func checkActValidation(act *model.Act, vendorIDs []int) (err error) {
|
|||||||
|
|
||||||
if act.Type == model.ActSkuDirectDown || act.Type == model.ActSkuSecKill {
|
if act.Type == model.ActSkuDirectDown || act.Type == model.ActSkuSecKill {
|
||||||
if act.PricePercentage == 0 {
|
if act.PricePercentage == 0 {
|
||||||
errList = append(errList, fmt.Errorf("活动必须指定价格折扣"))
|
errList.AddErr(fmt.Errorf("必须指定缺省活动折扣"))
|
||||||
} else if err = checkDiscountValidation(act.Type, act.PricePercentage); err != nil {
|
} else if err = checkDiscountValidation(act.Type, act.PricePercentage); err != nil {
|
||||||
errList = append(errList, err)
|
errList.AddErr(err)
|
||||||
} else if act.Type == model.ActSkuSecKill && vendorIDMap[model.VendorIDMTWM] == 1 {
|
} else if act.Type == model.ActSkuSecKill && vendorIDMap[model.VendorIDMTWM] == 1 {
|
||||||
errList = append(errList, err)
|
errList.AddErr(fmt.Errorf("%s平台不支持%s活动", model.VendorChineseNames[model.VendorIDMTWM], model.ActTypeName[model.ActSkuSecKill]))
|
||||||
}
|
}
|
||||||
} else if act.Type == model.ActSkuFake {
|
} else if act.Type == model.ActSkuFake {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
errList = append(errList, fmt.Errorf("当前只支持直降与秒杀活动"))
|
errList.AddErr(fmt.Errorf("当前只支持%s与%s活动", model.ActTypeName[model.ActSkuDirectDown], model.ActTypeName[model.ActSkuSecKill]))
|
||||||
}
|
}
|
||||||
if errList == nil {
|
err = errList.GetErrListAsOne()
|
||||||
return nil
|
return err
|
||||||
}
|
|
||||||
strList := make([]string, len(errList))
|
|
||||||
for k, v := range errList {
|
|
||||||
strList[k] = v.Error()
|
|
||||||
}
|
|
||||||
return fmt.Errorf("%s", strings.Join(strList, ",\n"))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func setActDefault(act *model.Act) {
|
func setActDefault(act *model.Act) {
|
||||||
|
|||||||
@@ -1015,7 +1015,9 @@ func AddStoreCourierMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID
|
|||||||
}
|
}
|
||||||
|
|
||||||
func addStoreCourierMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID int, storeCourierMap *model.StoreCourierMap, isNeedUpdateRemote bool) (outStoreCourierMap *model.StoreCourierMap, err error) {
|
func addStoreCourierMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID int, storeCourierMap *model.StoreCourierMap, isNeedUpdateRemote bool) (outStoreCourierMap *model.StoreCourierMap, err error) {
|
||||||
globals.SugarLogger.Debugf("addStoreCourierMap %s, storeID:%d, isNeedUpdateRemote:%t", model.VendorChineseNames[vendorID], storeCourierMap, isNeedUpdateRemote)
|
storeCourierMap.StoreID = storeID
|
||||||
|
storeCourierMap.VendorID = vendorID
|
||||||
|
globals.SugarLogger.Debugf("addStoreCourierMap %s, storeCourierMap:%s, isNeedUpdateRemote:%t", model.VendorChineseNames[vendorID], utils.Format4Output(storeCourierMap, true), isNeedUpdateRemote)
|
||||||
|
|
||||||
if handler := partner.GetDeliveryPlatformFromVendorID(vendorID); handler != nil {
|
if handler := partner.GetDeliveryPlatformFromVendorID(vendorID); handler != nil {
|
||||||
if db == nil {
|
if db == nil {
|
||||||
@@ -1029,14 +1031,13 @@ func addStoreCourierMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID
|
|||||||
if storeDetail.VendorStoreID != "" {
|
if storeDetail.VendorStoreID != "" {
|
||||||
return nil, fmt.Errorf("门店已经绑定了%s, ID:%s, 如需重新绑定, 请先解绑", model.VendorChineseNames[vendorID], storeDetail.VendorStoreID)
|
return nil, fmt.Errorf("门店已经绑定了%s, ID:%s, 如需重新绑定, 请先解绑", model.VendorChineseNames[vendorID], storeDetail.VendorStoreID)
|
||||||
}
|
}
|
||||||
|
storeDetail.VendorID = vendorID
|
||||||
storeDetail.VendorStoreID = storeCourierMap.VendorStoreID
|
storeDetail.VendorStoreID = storeCourierMap.VendorStoreID
|
||||||
if err = updateCourierStore(ctx, storeDetail); err != nil {
|
if err = updateCourierStore(ctx, storeDetail); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dao.WrapAddIDCULDEntity(storeCourierMap, ctx.GetUserName())
|
dao.WrapAddIDCULDEntity(storeCourierMap, ctx.GetUserName())
|
||||||
storeCourierMap.StoreID = storeID
|
|
||||||
storeCourierMap.VendorID = vendorID
|
|
||||||
if err = dao.CreateEntity(db, storeCourierMap); err != nil {
|
if err = dao.CreateEntity(db, storeCourierMap); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/auth2"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/auth"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/auth"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/auth/mobile"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/auth/mobile"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/auth/weixin"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/auth/weixin"
|
||||||
@@ -65,6 +66,33 @@ func GetSelfInfo(ctx *jxcontext.Context) (storeUserInfo *dao.StoreUserInfo, err
|
|||||||
return storeUserInfo, err
|
return storeUserInfo, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getMobileFromCtx(ctx *jxcontext.Context) (mobile string) {
|
||||||
|
token := ctx.GetToken()
|
||||||
|
if auth2.IsV2Token(token) {
|
||||||
|
authInfo, err2 := auth2.GetTokenInfo(token)
|
||||||
|
if err2 == nil {
|
||||||
|
if authInfo.TokenType == auth2.TokenTypeNormal {
|
||||||
|
mobile = authInfo.GetMobile()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
userInfo, err2 := auth.GetUserInfo(token)
|
||||||
|
if err2 == nil {
|
||||||
|
mobile = userInfo.GetAuthID()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return mobile
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetMyStoreList(ctx *jxcontext.Context) (storeList []*model.Store, err error) {
|
||||||
|
mobileNum := getMobileFromCtx(ctx)
|
||||||
|
if mobileNum == "" {
|
||||||
|
return nil, fmt.Errorf("不能得到用户手机号")
|
||||||
|
}
|
||||||
|
storeList, err = dao.GetStoreListByMobile(dao.GetDB(), mobileNum)
|
||||||
|
return storeList, err
|
||||||
|
}
|
||||||
|
|
||||||
func UnbindMobile(ctx *jxcontext.Context, mobile string) (num int64, err error) {
|
func UnbindMobile(ctx *jxcontext.Context, mobile string) (num int64, err error) {
|
||||||
db := dao.GetDB()
|
db := dao.GetDB()
|
||||||
num, err = dao.UpdateEntityByKV(db, &legacymodel.WeiXins{}, map[string]interface{}{
|
num, err = dao.UpdateEntityByKV(db, &legacymodel.WeiXins{}, map[string]interface{}{
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
|
||||||
"git.rosy.net.cn/jx-callback/business/auth2"
|
"git.rosy.net.cn/jx-callback/business/auth2"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/auth"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/auth"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
@@ -57,7 +56,7 @@ func New(notUsed interface{}, token string, w http.ResponseWriter, r *http.Reque
|
|||||||
authInfo, err2 := auth2.GetTokenInfo(token)
|
authInfo, err2 := auth2.GetTokenInfo(token)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
ctx.userInfo = authInfo
|
ctx.userInfo = authInfo
|
||||||
// globals.SugarLogger.Debugf("jxcontext New, V2 authInfo:%s", utils.Format4Output(authInfo, false))
|
// globals.SugarLogger.Debugf("jxcontext New, V2 authInfo:%s", utils.Format4Output(authInfo, true))
|
||||||
if authInfo.TokenType != auth2.TokenTypeNormal {
|
if authInfo.TokenType != auth2.TokenTypeNormal {
|
||||||
err = errors.New("需要正式TOKEN")
|
err = errors.New("需要正式TOKEN")
|
||||||
}
|
}
|
||||||
@@ -65,7 +64,7 @@ func New(notUsed interface{}, token string, w http.ResponseWriter, r *http.Reque
|
|||||||
} else {
|
} else {
|
||||||
userInfo, err2 := auth.GetUserInfo(token)
|
userInfo, err2 := auth.GetUserInfo(token)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
globals.SugarLogger.Debugf("jxcontext New, V1 authInfo:%s", utils.Format4Output(userInfo, false))
|
// globals.SugarLogger.Debugf("jxcontext New, V1 authInfo:%s", utils.Format4Output(userInfo, true))
|
||||||
ctx.userInfo = userInfo
|
ctx.userInfo = userInfo
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
"git.rosy.net.cn/jx-callback/business/model/legacymodel"
|
"git.rosy.net.cn/jx-callback/business/model/legacymodel"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -116,3 +117,30 @@ func GetUserStoreInfo(db *DaoDB, fieldName, fieldValue string) (storeUserInfo *S
|
|||||||
}
|
}
|
||||||
return storeUserInfo, err
|
return storeUserInfo, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetStoreListByMobile(db *DaoDB, mobile string) (storeList []*model.Store, err error) {
|
||||||
|
if mobile != "" {
|
||||||
|
sql := `
|
||||||
|
SELECT DISTINCT *
|
||||||
|
FROM (
|
||||||
|
SELECT *
|
||||||
|
FROM store t1
|
||||||
|
WHERE (t1.market_man_phone = ? OR t1.operator_phone = ?)
|
||||||
|
UNION DISTINCT
|
||||||
|
SELECT t1.*
|
||||||
|
FROM store t1
|
||||||
|
JOIN weixins t2 ON t2.jxstoreid = t1.id AND t2.parentid = -1
|
||||||
|
LEFT JOIN weixins t3 ON t3.parentid = t2.id
|
||||||
|
WHERE (t2.tel = ? OR t3.tel = ?)
|
||||||
|
) t1
|
||||||
|
ORDER BY t1.name`
|
||||||
|
sqlParams := []interface{}{
|
||||||
|
mobile,
|
||||||
|
mobile,
|
||||||
|
mobile,
|
||||||
|
mobile,
|
||||||
|
}
|
||||||
|
err = GetRows(db, &storeList, sql, sqlParams...)
|
||||||
|
}
|
||||||
|
return storeList, err
|
||||||
|
}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"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/business/partner"
|
"git.rosy.net.cn/jx-callback/business/partner"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
@@ -48,10 +49,23 @@ func (c *PurchaseHandler) OnAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwma
|
|||||||
return retVal
|
return retVal
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// todo 对于退款与部分退款,order.go与这个文件中对于状态的处理不一致
|
||||||
func (c *PurchaseHandler) onAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwmapi.CallbackResponse) {
|
func (c *PurchaseHandler) onAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwmapi.CallbackResponse) {
|
||||||
var err error
|
var err error
|
||||||
orderStatus := c.callbackAfsMsg2Status(msg)
|
orderStatus := c.callbackAfsMsg2Status(msg)
|
||||||
if orderStatus.Status == model.AfsOrderStatusWait4Approve || orderStatus.Status == model.AfsOrderStatusNew {
|
needCallNew := orderStatus.Status == model.AfsOrderStatusWait4Approve || orderStatus.Status == model.AfsOrderStatusNew
|
||||||
|
if !needCallNew {
|
||||||
|
_, err := partner.CurOrderManager.LoadAfsOrder(orderStatus.VendorOrderID, orderStatus.VendorID)
|
||||||
|
if err != nil {
|
||||||
|
if dao.IsNoRowsError(err) {
|
||||||
|
needCallNew = true
|
||||||
|
} else {
|
||||||
|
return mtwmapi.Err2CallbackResponse(err, "")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if needCallNew {
|
||||||
var afsOrder *model.AfsOrder
|
var afsOrder *model.AfsOrder
|
||||||
refundData := msg.Data.(*mtwmapi.CallbackRefundInfo)
|
refundData := msg.Data.(*mtwmapi.CallbackRefundInfo)
|
||||||
if msg.Cmd == mtwmapi.MsgTypeOrderPartialRefund {
|
if msg.Cmd == mtwmapi.MsgTypeOrderPartialRefund {
|
||||||
|
|||||||
@@ -90,16 +90,27 @@ func (p *DefSingleStorePlatform) GetStoreSkusBareInfo(ctx *jxcontext.Context, pa
|
|||||||
}
|
}
|
||||||
for _, v := range resultList {
|
for _, v := range resultList {
|
||||||
skuName := v.(*partner.SkuNameInfo)
|
skuName := v.(*partner.SkuNameInfo)
|
||||||
storeSkuBareInfo := &skuName.SkuList[0].StoreSkuInfo
|
for _, v2 := range skuName.SkuList {
|
||||||
if storeSkuBareInfo.SkuID == 0 && inStoreSkuMap[storeSkuBareInfo.VendorSkuID] != nil {
|
storeSkuBareInfo := &v2.StoreSkuInfo
|
||||||
storeSkuBareInfo.SkuID = inStoreSkuMap[storeSkuBareInfo.VendorSkuID].SkuID
|
if storeSkuBareInfo.SkuID == 0 && inStoreSkuMap[storeSkuBareInfo.VendorSkuID] != nil {
|
||||||
storeSkuBareInfo.NameID = inStoreSkuMap[storeSkuBareInfo.VendorSkuID].NameID
|
storeSkuBareInfo.SkuID = inStoreSkuMap[storeSkuBareInfo.VendorSkuID].SkuID
|
||||||
|
storeSkuBareInfo.NameID = inStoreSkuMap[storeSkuBareInfo.VendorSkuID].NameID
|
||||||
|
}
|
||||||
|
outStoreSkuList = append(outStoreSkuList, storeSkuBareInfo)
|
||||||
}
|
}
|
||||||
outStoreSkuList = append(outStoreSkuList, storeSkuBareInfo)
|
|
||||||
}
|
}
|
||||||
return outStoreSkuList, err
|
return outStoreSkuList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func StoreSkuFullList2Bare(storeSkuFull []*partner.SkuNameInfo) (bareStoreSkuList []*partner.StoreSkuInfo) {
|
||||||
|
for _, v := range storeSkuFull {
|
||||||
|
for _, v2 := range v.SkuList {
|
||||||
|
bareStoreSkuList = append(bareStoreSkuList, &v2.StoreSkuInfo)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return bareStoreSkuList
|
||||||
|
}
|
||||||
|
|
||||||
func findCategoryByName(catList []*partner.BareCategoryInfo, catName string) (cat *partner.BareCategoryInfo) {
|
func findCategoryByName(catList []*partner.BareCategoryInfo, catName string) (cat *partner.BareCategoryInfo) {
|
||||||
for _, v := range catList {
|
for _, v := range catList {
|
||||||
if v.Name == catName {
|
if v.Name == catName {
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ wxBackstageHost = "http://wx.jxc4.com"
|
|||||||
jdStorePageCookie = "YYJV3NHVBPHLD36FWP6F3EM5PTXJ2XZQS7U4HWRIDPP4IWGUKUIB4XG5N26CZRDLDF7PKOXBPD6BNTUAJLETLZOIWMCVFI3K6MYZIY4QBIXIMXYDJNUKFGJVQTN5356SAD6WPCIHWNQAG7DDMF7L7S3SHDYZP7PPVMRGO4VWG2JRBMKFTOGIWZ5L2XHXC3SXQ4OLX7EL4RKUPZQT6GOH63KE3EVK37L5LG7TGSDGXFQP4377YK72UB5YZG6IJH6PY25YLLCJYPMDSHKPGYBUFJ4MMMKGN6MWB37CP7XVDBBZJ3U462ENTEXH744AWCQCIG2AAE2PKYVHC"
|
jdStorePageCookie = "YYJV3NHVBPHLD36FWP6F3EM5PTXJ2XZQS7U4HWRIDPP4IWGUKUIB4XG5N26CZRDLDF7PKOXBPD6BNTUAJLETLZOIWMCVFI3K6MYZIY4QBIXIMXYDJNUKFGJVQTN5356SAD6WPCIHWNQAG7DDMF7L7S3SHDYZP7PPVMRGO4VWG2JRBMKFTOGIWZ5L2XHXC3SXQ4OLX7EL4RKUPZQT6GOH63KE3EVK37L5LG7TGSDGXFQP4377YK72UB5YZG6IJH6PY25YLLCJYPMDSHKPGYBUFJ4MMMKGN6MWB37CP7XVDBBZJ3U462ENTEXH744AWCQCIG2AAE2PKYVHC"
|
||||||
ebaiStorePageCookieWMUSS = "4AAPQCAAB5PF0aUGcBVzoRTCEkOFhFIhx-Yk9vN2EfPHYoLlROKBEsQmAUQjhNUgRt0ADAP5x-RFklwAAdjxGO11iOj8xKXYSSDIJb2BcPghsaklNfQwGS10JOVRFfhAiYElhEXFXIzoJKyloCGdwdFE6Qk9FRxojUFN3FVEHNjJPZJu4Bt9nxQ13cwoMbjA"
|
ebaiStorePageCookieWMUSS = "4AAPQCAAB5PF0aUGcBVzoRTCEkOFhFIhx-Yk9vN2EfPHYoLlROKBEsQmAUQjhNUgRt0ADAP5x-RFklwAAdjxGO11iOj8xKXYSSDIJb2BcPghsaklNfQwGS10JOVRFfhAiYElhEXFXIzoJKyloCGdwdFE6Qk9FRxojUFN3FVEHNjJPZJu4Bt9nxQ13cwoMbjA"
|
||||||
ebaiStorePageCookieWMSTOKEN = "AcAANQZAABbC04rUBZFc2UYanlocDAaP0dcfzZCeS1SHQ1qJ15ExgAA13A2dGLjdbcitBZJu4Bn6B_g6cZAAA0tyyFm8cdBaNAQAAwug8HTG0xRjwt1UZzbcAAN7ofRO"
|
ebaiStorePageCookieWMSTOKEN = "AcAANQZAABbC04rUBZFc2UYanlocDAaP0dcfzZCeS1SHQ1qJ15ExgAA13A2dGLjdbcitBZJu4Bn6B_g6cZAAA0tyyFm8cdBaNAQAAwug8HTG0xRjwt1UZzbcAAN7ofRO"
|
||||||
mtpsStoreToken = "0seqGSJnhbr4XJ0EaIQL6CoOpnaV1ErgS42uOlzNXYIX7PeuLuyCFQQZKKWGExJ7IMTQQQDe5H6YMmVFnxjCkw"
|
mtpsStoreToken = "jWQx6ao1-BFeuFg1iOHX207ocrPXlJPY-f41EaF1769C13Gw-irr5QnfQzmZOvOqt99cdN4XdQW0n8wvy-Hl_A"
|
||||||
|
|
||||||
weimobAppID = "319F5E7FB6784DFCA3684C9333EB7744"
|
weimobAppID = "319F5E7FB6784DFCA3684C9333EB7744"
|
||||||
weimobAppSecret = "7267AA7F58261F6965599218F5A1D592"
|
weimobAppSecret = "7267AA7F58261F6965599218F5A1D592"
|
||||||
@@ -119,7 +119,7 @@ getWeixinTokenURL = "http://beta.jxc4.com/v2/sys/GetWXToken"
|
|||||||
[prod]
|
[prod]
|
||||||
EnableDocs = false
|
EnableDocs = false
|
||||||
|
|
||||||
jdToken = "ccb10daf-e6f5-4a58-ada5-b97f9073a137"
|
jdToken = "77e703b7-7997-441b-a12a-2e522efb117a"
|
||||||
jdAppKey = "1dba76d40cac446ca500c0391a0b6c9d"
|
jdAppKey = "1dba76d40cac446ca500c0391a0b6c9d"
|
||||||
jdSecret = "a88d031a1e7b462cb1579f12e97fe7f4"
|
jdSecret = "a88d031a1e7b462cb1579f12e97fe7f4"
|
||||||
|
|
||||||
|
|||||||
@@ -50,6 +50,19 @@ func (c *UserController) TmpGetSelfInfo() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title 得到用户自己的门店列表
|
||||||
|
// @Description 得到用户自己的门店列表
|
||||||
|
// @Param token header string true "认证token"
|
||||||
|
// @Success 200 {object} controllers.CallResult
|
||||||
|
// @Failure 200 {object} controllers.CallResult
|
||||||
|
// @router /TmpGetMyStoreList [get]
|
||||||
|
func (c *UserController) TmpGetMyStoreList() {
|
||||||
|
c.callTmpGetSelfInfo(func(params *tUserTmpGetSelfInfoParams) (retVal interface{}, errCode string, err error) {
|
||||||
|
retVal, err = cms.GetMyStoreList(params.Ctx)
|
||||||
|
return retVal, "", err
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// @Title 取消手机门店绑定
|
// @Title 取消手机门店绑定
|
||||||
// @Description 此操作会将此手机关联的所有门店信息清除(取消组长,取消自己为他组组员),如果此人为组长,取消后组员也相应会取消门店绑定(但组员的成员关系还在)
|
// @Description 此操作会将此手机关联的所有门店信息清除(取消组长,取消自己为他组组员),如果此人为组长,取消后组员也相应会取消门店绑定(但组员的成员关系还在)
|
||||||
// @Param token header string true "认证token"
|
// @Param token header string true "认证token"
|
||||||
|
|||||||
@@ -1753,6 +1753,15 @@ func init() {
|
|||||||
Filters: nil,
|
Filters: nil,
|
||||||
Params: nil})
|
Params: nil})
|
||||||
|
|
||||||
|
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserController"],
|
||||||
|
beego.ControllerComments{
|
||||||
|
Method: "TmpGetMyStoreList",
|
||||||
|
Router: `/TmpGetMyStoreList`,
|
||||||
|
AllowHTTPMethods: []string{"get"},
|
||||||
|
MethodParams: param.Make(),
|
||||||
|
Filters: nil,
|
||||||
|
Params: nil})
|
||||||
|
|
||||||
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserController"],
|
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserController"],
|
||||||
beego.ControllerComments{
|
beego.ControllerComments{
|
||||||
Method: "TmpGetSelfInfo",
|
Method: "TmpGetSelfInfo",
|
||||||
|
|||||||
Reference in New Issue
Block a user