1
This commit is contained in:
@@ -298,7 +298,7 @@ func OnWaybillMsg(req *uuptapi.WaybillCallbackParam) (resp *uuptapi.CallbackResp
|
||||
globals.SugarLogger.Debugf("uuGetPrice err====%v", err)
|
||||
reallyPrice = 0
|
||||
} else {
|
||||
reallyPrice = utils.Str2Int64(uuPrice.OrderPrice) - utils.Str2Int64(uuPrice.PriceOff)
|
||||
reallyPrice = int64((utils.Str2Float64(uuPrice.OrderPrice) - utils.Str2Float64(uuPrice.PriceOff)) * 100)
|
||||
}
|
||||
switch req.State {
|
||||
case uuptapi.StateConfirmSuccess:
|
||||
|
||||
@@ -1,213 +0,0 @@
|
||||
package doudian
|
||||
|
||||
//
|
||||
//import (
|
||||
// "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||
// "git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||
// "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/putils"
|
||||
// "git.rosy.net.cn/jx-callback/globals/api"
|
||||
//)
|
||||
//
|
||||
//var (
|
||||
// CurPurchaseHandler *PurchaseHandler
|
||||
//)
|
||||
//
|
||||
//type PurchaseHandler struct {
|
||||
// partner.BasePurchasePlatform
|
||||
// putils.DefSingleStorePlatform
|
||||
//}
|
||||
//
|
||||
//func init() {
|
||||
// if api.DouDianApi != nil {
|
||||
// CurPurchaseHandler = New()
|
||||
// partner.RegisterPurchasePlatform(CurPurchaseHandler)
|
||||
// }
|
||||
//}
|
||||
//func New() (obj *PurchaseHandler) {
|
||||
// obj = new(PurchaseHandler)
|
||||
// obj.ISingleStoreStoreSkuHandler = obj
|
||||
// return obj
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) SyncAct(ctx *jxcontext.Context, parentTask tasksch.ITask, act *model.Act2, actOrderRules []*model.ActOrderRule, actStoreSkuList []*model.ActStoreSku2) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetActAmple(ctx *jxcontext.Context, vendorStoreID, vendorOrgCode string) (ample int, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptIt bool, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) AcceptOrRefuseFailedGetOrder(ctx *jxcontext.Context, order *model.GoodsOrder, isAcceptIt bool) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) CallCourier(ctx *jxcontext.Context, order *model.GoodsOrder) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) ConfirmReceiveGoods(ctx *jxcontext.Context, order *model.GoodsOrder) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) Swtich2SelfDelivered(order *model.GoodsOrder, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetCancelDeliveryReason(order *model.GoodsOrder) (string, error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) CancelLogisticsByWmOrderId(order *model.GoodsOrder, reasonCode, detailContent, appPoiCode, orderId string) error {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) OrderLogisticsStatus(orderId int64) (int64, error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetOrderRealMobile(ctx *jxcontext.Context, order *model.GoodsOrder) (mobile string, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) ReplyOrderComment(ctx *jxcontext.Context, vendorOrgCode string, orderComment *model.OrderComment, replyComment string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model.GoodsOrder, isAgree bool, reason string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.GoodsOrder, removedSkuList []*model.OrderSku, reason string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) RefundOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) PartRefundOrder(ctx *jxcontext.Context, order *model.GoodsOrder, refundSkuList []*model.OrderSku, reason string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) AgreeOrRefuseRefund(ctx *jxcontext.Context, order *model.AfsOrder, approveType int, reason string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) ConfirmReceivedReturnGoods(ctx *jxcontext.Context, order *model.AfsOrder) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetSelfTakeCode(ctx *jxcontext.Context, order *model.GoodsOrder) (code string, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) ConfirmSelfTake(ctx *jxcontext.Context, order *model.GoodsOrder, selfTakeCode string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetOrderAfsInfo(ctx *jxcontext.Context, vendorOrderID, afsOrderID string) (orderAfsInfo *partner.OrderAfsInfo, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) ComplaintRider(vendorOrderId string, resonID int, resonContent string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, param map[string]interface{}) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetVendorID() int {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetVendorCategories(ctx *jxcontext.Context) (vendorCats []*model.SkuVendorCategory, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) DeleteStore(db *dao.DaoDB, storeID int, userName string) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) UpdateStoreCustomID(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID string, storeID int64) (err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) UploadImg(ctx *jxcontext.Context, vendorOrgCode, imgURL string, imgData []byte, imgName string, imgType int) (imgHint string, err error) {
|
||||
// //TODO implement me
|
||||
// panic("implement me")
|
||||
//}
|
||||
@@ -1,427 +0,0 @@
|
||||
package doudian
|
||||
|
||||
//
|
||||
//import (
|
||||
// "errors"
|
||||
// "fmt"
|
||||
// address_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_create/request"
|
||||
// address_list_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_list/request"
|
||||
// address_list_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_list/response"
|
||||
// freightTemplate_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request"
|
||||
// shop_batchCreateStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_batchCreateStore/request"
|
||||
// shop_bindStoreFreight_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_bindStoreFreight/request"
|
||||
// shop_bindStoreSaleLimit_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_bindStoreSaleLimit/request"
|
||||
// shop_editStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_editStore/request"
|
||||
// shop_getStoreDetail_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_getStoreDetail/request"
|
||||
// shop_getStoreList_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_getStoreList/request"
|
||||
// shop_storeSuspend_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_storeSuspend/request"
|
||||
// shop_unsuspendStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_unsuspendStore/request"
|
||||
// trade_createTradeLimitTemplate_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/request"
|
||||
// "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
||||
// "git.rosy.net.cn/baseapi/utils"
|
||||
// "git.rosy.net.cn/baseapi/utils/errlist"
|
||||
// "git.rosy.net.cn/jx-callback/business/jxstore/event"
|
||||
// "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/tasksch"
|
||||
// "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 splicingTimeToDoudian(openTime1, closeTime1, openTime2, closeTime2 int16) (timeList string) {
|
||||
// //700 1200 -> 7:00-12:00
|
||||
// timeStr := ""
|
||||
// if openTime1 != 0 && closeTime1 != 0 {
|
||||
// tOpenTime1 := utils.Int64ToStr(int64(openTime1))
|
||||
// len1 := len(tOpenTime1) - 2
|
||||
// s1 := tOpenTime1[:len1] + ":" + tOpenTime1[len1+1:]
|
||||
// tCloseTime1 := utils.Int64ToStr(int64(closeTime1))
|
||||
// len2 := len(tCloseTime1) - 2
|
||||
// s2 := tCloseTime1[:len2] + ":" + tCloseTime1[len2+1:]
|
||||
// timeStr += s1 + "-" + s2
|
||||
// if openTime2 != 0 && closeTime2 != 0 {
|
||||
// tOpenTime2 := utils.Int64ToStr(int64(openTime2))
|
||||
// len3 := len(tOpenTime2) - 2
|
||||
// s3 := tOpenTime2[:len3] + ":" + tOpenTime2[len3+1:]
|
||||
// tCloseTime2 := utils.Int64ToStr(int64(closeTime2))
|
||||
// len4 := len(tCloseTime2) - 2
|
||||
// s4 := tCloseTime2[:len4] + ":" + tCloseTime2[len4+1:]
|
||||
// timeStr += " " + s3 + "-" + s4
|
||||
// }
|
||||
// }
|
||||
// return timeStr
|
||||
//}
|
||||
//
|
||||
//// shop/batchCreateStore 批量创建门店
|
||||
//func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName string, params map[string]interface{}, storeDetail *dao.StoreDetail) (vendorStoreID string, err error) {
|
||||
// var (
|
||||
// storeIDs string
|
||||
// lists []shop_batchCreateStore_request.StoreListItem
|
||||
// ShopBatchCreateStoreParam *shop_batchCreateStore_request.ShopBatchCreateStoreParam
|
||||
// )
|
||||
// timeStr := ""
|
||||
// if storeDetail.OpenTime1 == 0 || storeDetail.CloseTime1 == 0 {
|
||||
// return "", fmt.Errorf("营业时间必填")
|
||||
// } else {
|
||||
// timeStr = splicingTimeToDoudian(storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2)
|
||||
// }
|
||||
// m := make(map[int64]string)
|
||||
// for j := 1; j <= 7; j++ {
|
||||
// m[int64(j)] = timeStr
|
||||
// }
|
||||
// list := shop_batchCreateStore_request.StoreListItem{
|
||||
// RowId: 1,
|
||||
// Name: storeDetail.Name,
|
||||
// StoreCode: storeDetail.VendorStoreID,
|
||||
// Longitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(storeDetail.Lng)),
|
||||
// Latitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(storeDetail.Lat)),
|
||||
// Province: storeDetail.ProvinceName,
|
||||
// City: storeDetail.CityName,
|
||||
// District: storeDetail.DistrictName,
|
||||
// Address: storeDetail.Address,
|
||||
// Contact: storeDetail.Tel1,
|
||||
// OpenTime: &shop_batchCreateStore_request.OpenTime{
|
||||
// DayMap: m,
|
||||
// },
|
||||
// }
|
||||
// lists = append(lists, list)
|
||||
// ShopBatchCreateStoreParam = &shop_batchCreateStore_request.ShopBatchCreateStoreParam{
|
||||
// StoreList: lists,
|
||||
// }
|
||||
// if resp, err := api.DouDianApi.BatchCreateStore(ShopBatchCreateStoreParam); err != nil {
|
||||
// return "", err
|
||||
// } else {
|
||||
// for k, v := range resp.ResultList {
|
||||
// if k != len(resp.ResultList) {
|
||||
// storeIDs += utils.Int64ToStr(v.Store.StoreId) + ","
|
||||
// }
|
||||
// storeIDs += utils.Int64ToStr(v.Store.StoreId)
|
||||
// }
|
||||
// return storeIDs, nil
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//// shop/editStore 编辑门店信息 正向推送平台
|
||||
//func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName string) (err error) {
|
||||
// var (
|
||||
// storeInfo *dao.StoreDetail
|
||||
// name string
|
||||
// )
|
||||
// if db == nil {
|
||||
// db = dao.GetDB()
|
||||
// }
|
||||
// sqlStr := ` SELECT
|
||||
// t1.*,
|
||||
// t2.status, t2.vendor_store_id, t2.vendor_org_code,
|
||||
// IF(t1.updated_at > t2.updated_at, t1.last_operator, t2.last_operator) real_last_operator, t2.sync_status, t2.vendor_store_name
|
||||
// FROM store t1
|
||||
// LEFT JOIN store_map t2 ON t1.id = t2.store_id AND t2.vendor_id = ? AND (t2.deleted_at = ?)
|
||||
// WHERE t1.id = ?
|
||||
// ORDER BY t2.updated_at`
|
||||
// err = dao.GetRow(db, &storeInfo, sqlStr, model.VendorIDDouDian, utils.DefaultTimeValue, utils.Int2Str(storeID))
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// errList := errlist.New()
|
||||
// timeStr := ""
|
||||
// m := make(map[int64]string)
|
||||
// if storeInfo.OpenTime1 != 0 && storeInfo.CloseTime1 != 0 {
|
||||
// timeStr = splicingTimeToDoudian(storeInfo.OpenTime1, storeInfo.CloseTime1, storeInfo.OpenTime2, storeInfo.CloseTime2)
|
||||
// for j := 1; j <= 7; j++ {
|
||||
// m[int64(j)] = timeStr
|
||||
// }
|
||||
// }
|
||||
// vendorStoreID := &shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||
// StoreId: utils.Str2Int64(storeInfo.VendorStoreID),
|
||||
// }
|
||||
// if globals.EnableDdStoreWrite {
|
||||
// remoteStoreInfo, err2 := api.DouDianApi.GetStoreDetail(vendorStoreID)
|
||||
// if err2 != nil {
|
||||
// return err2
|
||||
// }
|
||||
// if remoteStoreInfo.StoreDetail.Store.StoreId == 0 {
|
||||
// return fmt.Errorf("ID:%d 的门店不存在,请先创建", utils.Str2Int64(storeInfo.VendorStoreID))
|
||||
// }
|
||||
// mergedStoreStatus := jxutils.MergeStoreStatus(storeInfo.Status, storeInfo.VendorStatus)
|
||||
// name = remoteStoreInfo.StoreDetail.Store.Name
|
||||
// if storeInfo.SyncStatus&(model.SyncFlagNewMask|model.SyncFlagStoreName) != 0 {
|
||||
// if storeInfo.VendorStoreName != "" {
|
||||
// name = storeInfo.VendorStoreName
|
||||
// }
|
||||
// }
|
||||
// store := fmt.Sprintf("门店id:%d,门店名称:%s,第三方门店状态:%d,本地修改前门店状态%d,本地门店修改后状态:%d,第三方平台Id(抖店):%s", storeID, remoteStoreInfo.StoreDetail.Store.Name, remoteStoreInfo.StoreDetail.Store.State, storeInfo.Status, mergedStoreStatus, storeInfo.VendorOrgCode)
|
||||
// event.AddOperateEvent(jxcontext.AdminCtx, jxcontext.AdminCtx.GetTrackInfo(), store, "", "", 10, "UpdateStore")
|
||||
// params := &shop_editStore_request.ShopEditStoreParam{
|
||||
// StoreId: remoteStoreInfo.StoreDetail.Store.StoreId, //平台id不可修改
|
||||
// Name: name,
|
||||
// StoreCode: utils.Int2Str(storeInfo.ID), //自用编码即很本地storeID
|
||||
// Latitude: utils.Int2Str(storeInfo.Lat),
|
||||
// Longitude: utils.Int2Str(storeInfo.Lng),
|
||||
// Province: storeInfo.ProvinceName,
|
||||
// City: storeInfo.CityName,
|
||||
// District: storeInfo.DistrictName,
|
||||
// Address: storeInfo.Address,
|
||||
// Contact: storeInfo.Tel1,
|
||||
// OpenTime: &shop_editStore_request.OpenTime{
|
||||
// DayMap: m,
|
||||
// },
|
||||
// }
|
||||
// //修改店铺状态
|
||||
// if storeInfo.SyncStatus&(model.SyncFlagNewMask|model.SyncFlagStoreStatus) != 0 {
|
||||
// errList.AddErr(P.UpdateStoreStatus(jxcontext.AdminCtx, storeInfo.VendorOrgCode, storeID, storeInfo.VendorStoreID, mergedStoreStatus))
|
||||
// }
|
||||
// _, err3 := api.DouDianApi.EditStore(params)
|
||||
// if err3 != nil {
|
||||
// errList.AddErr(err3)
|
||||
// }
|
||||
// }
|
||||
// return err
|
||||
//}
|
||||
//
|
||||
//// shop/storeSuspend 门店暂停营业
|
||||
//// shop/unsuspendStore 门店恢复营业
|
||||
//func (p *PurchaseHandler) UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, status int) (err error) {
|
||||
// isOnline := bizStatusJX2DouDian(status)
|
||||
// if globals.EnableDdStoreWrite {
|
||||
// if isOnline != tiktok_api.StoreStatusOnline { //暂停营业状态
|
||||
// unsuspendStoreID := &shop_unsuspendStore_request.ShopUnsuspendStoreParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// }
|
||||
// _, err = api.DouDianApi.UnsuspendStore(unsuspendStoreID)
|
||||
// } else { //恢复营业
|
||||
// suspendStoreID := &shop_storeSuspend_request.ShopStoreSuspendParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// }
|
||||
// getStoreID := &shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// }
|
||||
// //平台上店铺状态
|
||||
// remoteStoreInfo, err2 := api.DouDianApi.GetStoreDetail(getStoreID)
|
||||
// if err2 != nil {
|
||||
// return err2
|
||||
// }
|
||||
// if remoteStoreInfo.StoreDetail.Store.SuspendType == tiktok_api.SuspendTypePlatformPenalty {
|
||||
// err = errors.New("门店因平台处罚暂停营业,不可主动修改营业状态")
|
||||
// } else {
|
||||
// _, err = api.DouDianApi.StoreSuspend(suspendStoreID)
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// return err
|
||||
//}
|
||||
//
|
||||
//// /freightTemplate/create 创建运费模板
|
||||
//func (P *PurchaseHandler) CreateFreightTemplate(templateInfo freightTemplate_create_request.FreightTemplateCreateParam, storeID, vendorStoreID int64) error {
|
||||
// var (
|
||||
// db *dao.DaoDB
|
||||
// )
|
||||
// if templateInfo.Template.RuleType > 0 {
|
||||
// templateInfo.Template.CalculateType = tiktok_api.CalculateTypeNum
|
||||
// }
|
||||
// info := &freightTemplate_create_request.FreightTemplateCreateParam{
|
||||
// Template: templateInfo.Template,
|
||||
// Columns: templateInfo.Columns,
|
||||
// }
|
||||
// resp, err := api.DouDianApi.FreightTemplateCreate(info)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// //创建成功后进行绑定
|
||||
// bindInfo := &shop_bindStoreFreight_request.ShopBindStoreFreightParam{
|
||||
// StoreId: vendorStoreID,
|
||||
// FreightId: resp.TemplateId,
|
||||
// }
|
||||
// _, err1 := api.DouDianApi.BindFreightTemplate(bindInfo)
|
||||
// if err != nil {
|
||||
// return err1
|
||||
// }
|
||||
// //并写入数据库
|
||||
// freightInfo := model.FreightTemplate{
|
||||
// StoreID: storeID,
|
||||
// VendorStoreID: vendorStoreID,
|
||||
// TemplateID: resp.TemplateId,
|
||||
// }
|
||||
// if err = dao.CreateEntity(db, freightInfo); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
//}
|
||||
//
|
||||
//// /shop/bindStoreFreight 门店绑定运费模版
|
||||
////门店绑定运费模版,运费模版必须属于门店关联的抖店,且门店与运费模版是一对一关系
|
||||
//func (P *PurchaseHandler) ShopBindStoreFreight(storeID, freightID int64) error {
|
||||
// param := &shop_bindStoreFreight_request.ShopBindStoreFreightParam{
|
||||
// StoreId: storeID,
|
||||
// FreightId: freightID,
|
||||
// }
|
||||
// _, err := api.DouDianApi.BindFreightTemplate(param)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
//}
|
||||
//
|
||||
//// /address/create 创建店铺地址库(新建即绑定)
|
||||
//func (P *PurchaseHandler) CreateAddress(addressInfo address_create_request.AddressCreateParam) (addressID int64, err error) {
|
||||
// info := &address_create_request.AddressCreateParam{
|
||||
// Address: addressInfo.Address,
|
||||
// StoreId: addressInfo.StoreId,
|
||||
// }
|
||||
// resp, err := api.DouDianApi.AddressCreate(info)
|
||||
// if err != nil {
|
||||
// return 0, err
|
||||
// }
|
||||
// //添加进数据库page_shop
|
||||
// //获取门店信息
|
||||
// //storeID := &shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||
// // StoreId: addressInfo.StoreId,
|
||||
// //}
|
||||
// //storeInfo, err1 := api.DouDianApi.GetStoreDetail(storeID)
|
||||
// //if err1 != nil {
|
||||
// // return 0, err1
|
||||
// //}
|
||||
// //createAddress := &model.PageShop{ //此表暂存门店售后地址库
|
||||
// // Name: storeInfo.StoreDetail.Store.Name,
|
||||
// // VendorID: model.VendorIDDouDian,
|
||||
// // VendorStoreID: utils.Int64ToStr(storeInfo.StoreDetail.Store.StoreId), //抖店平台ID
|
||||
// // OrgCode: storeInfo.StoreDetail.Store.StoreCode, //暂时用来存放京西平台门店ID
|
||||
// // VendorStatus: utils.Int64ToStr(storeInfo.StoreDetail.Store.State),
|
||||
// // Status: 0,
|
||||
// // CityCode: utils.Str2Int(storeInfo.StoreDetail.Store.CityCode),
|
||||
// // DistrictCode: utils.Str2Int(storeInfo.StoreDetail.Store.DistrictCode),
|
||||
// // Address: storeInfo.StoreDetail.Store.Address,
|
||||
// // Lng: utils.Str2Float64(storeInfo.StoreDetail.Store.Longitude),
|
||||
// // Lat: utils.Str2Float64(storeInfo.StoreDetail.Store.Latitude),
|
||||
// // Tel1: storeInfo.StoreDetail.Store.Contact,
|
||||
// //}
|
||||
// //if err = dao.CreateEntity(dao.GetDB(), createAddress); err != nil {
|
||||
// // return 0, err
|
||||
// //}
|
||||
// return resp.AddressId, nil
|
||||
//}
|
||||
//
|
||||
//// /address/list 获取售后地址列表接口
|
||||
////分页获取商家地址列表
|
||||
//func (P *PurchaseHandler) GetAddressList(param *address_list_request.AddressListParam) (*address_list_response.AddressListData, error) {
|
||||
// //不传入ID则是获取所有门店售后地址列表
|
||||
// info := &address_list_request.AddressListParam{
|
||||
// PageSize: 10,
|
||||
// PageNo: 1,
|
||||
// OrderBy: param.OrderBy,
|
||||
// OrderField: param.OrderField,
|
||||
// }
|
||||
// if param.StoreId != 0 {
|
||||
// info.StoreId = param.StoreId
|
||||
// }
|
||||
// listInfo, err := api.DouDianApi.GetAddressList(info)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// return listInfo, nil
|
||||
//}
|
||||
//
|
||||
//// /trade/createTradeLimitTemplate 创建限售模板
|
||||
//func (P *PurchaseHandler) CreateTradeLimitTemplate(template trade_createTradeLimitTemplate_request.TradeCreateTradeLimitTemplateParam) (tradeLimitID int64, err error) {
|
||||
// info := &trade_createTradeLimitTemplate_request.TradeCreateTradeLimitTemplateParam{
|
||||
// StoreId: template.StoreId,
|
||||
// TradeLimitRuleRequestList: template.TradeLimitRuleRequestList,
|
||||
// }
|
||||
// resp, err := api.DouDianApi.CreateTradeLimitTemplate(info)
|
||||
// if err != nil {
|
||||
// return 0, err
|
||||
// }
|
||||
// return resp.TradeLimitId, nil
|
||||
//}
|
||||
//
|
||||
//// /shop/bindStoreSaleLimit 门店绑定限售模板
|
||||
//func (P *PurchaseHandler) BindStoreSaleLimit(storeID, saleLimitTemplateID int64) error {
|
||||
// info := &shop_bindStoreSaleLimit_request.ShopBindStoreSaleLimitParam{
|
||||
// StoreId: storeID,
|
||||
// SaleLimitId: saleLimitTemplateID,
|
||||
// }
|
||||
// if _, err := api.DouDianApi.BindStoreSaleLimit(info); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, opTimeList []int16) (err error) {
|
||||
// t1 := opTimeList[0]
|
||||
// t2 := opTimeList[1]
|
||||
// t3 := opTimeList[2]
|
||||
// t4 := opTimeList[4]
|
||||
// timeStr := splicingTimeToDoudian(t1, t2, t3, t4)
|
||||
// m := make(map[int64]string)
|
||||
// for j := 1; j <= 7; j++ {
|
||||
// m[int64(j)] = timeStr
|
||||
// }
|
||||
// params := &shop_editStore_request.ShopEditStoreParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// OpenTime: &shop_editStore_request.OpenTime{
|
||||
// DayMap: m,
|
||||
// },
|
||||
// }
|
||||
// if globals.EnableDdStoreWrite {
|
||||
// api.DouDianApi.EditStore(params)
|
||||
// }
|
||||
// return err
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) GetStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string) (storeStatus int, err error) {
|
||||
// params := &shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// }
|
||||
// result, err := api.DouDianApi.GetStoreDetail(params)
|
||||
// if err != nil {
|
||||
// return 0, err
|
||||
// }
|
||||
// status := bizStatusJX2DouDian(int(result.StoreDetail.Store.State))
|
||||
// return status, nil
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) EnableAutoAcceptOrder(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, isSetEnable bool) (err error) {
|
||||
// return err
|
||||
//}
|
||||
//
|
||||
//// 获取店铺所有平台ID
|
||||
//func (P *PurchaseHandler) GetAllStoresVendorID(ctx *jxcontext.Context, vendorOrgCode string) (vendorStoreIDs []string, err error) {
|
||||
// param := &shop_getStoreList_request.ShopGetStoreListParam{
|
||||
// Page: 0,
|
||||
// PageSize: 10,
|
||||
// }
|
||||
// storeList, err := api.DouDianApi.GetStoreList(param)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// if len(storeList.StoreDetailList) > 0 {
|
||||
// vendorStoreIDs = make([]string, len(storeList.StoreDetailList))
|
||||
// for k, v := range storeList.StoreDetailList {
|
||||
// vendorStoreIDs[k] = utils.Int64ToStr(v.Store.StoreId)
|
||||
// }
|
||||
// }
|
||||
// return vendorStoreIDs, err
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) UpdateStoreLineStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, lineStatus int) (err error) {
|
||||
// if lineStatus == model.StoreStatusOpened {
|
||||
// param := &shop_storeSuspend_request.ShopStoreSuspendParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// }
|
||||
// _, err = api.DouDianApi.StoreSuspend(param)
|
||||
// } else {
|
||||
// param := &shop_unsuspendStore_request.ShopUnsuspendStoreParam{
|
||||
// StoreId: utils.Str2Int64(vendorStoreID),
|
||||
// }
|
||||
// _, err = api.DouDianApi.UnsuspendStore(param)
|
||||
// }
|
||||
// return err
|
||||
//}
|
||||
//func (P *PurchaseHandler) ReadStore(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorStoreName string) (store *dao.StoreDetail, err error) {
|
||||
// return nil, err
|
||||
//}
|
||||
//
|
||||
//func (P *PurchaseHandler) RefreshAllStoresID(ctx *jxcontext.Context, parentTask tasksch.ITask, isAsync bool) (hint string, err error) {
|
||||
// return "", errors.New("抖店暂不支持此操作")
|
||||
//}
|
||||
@@ -1,118 +0,0 @@
|
||||
package doudian
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
shop_batchCreateStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_batchCreateStore/request"
|
||||
"git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestCreateStore(t *testing.T) {
|
||||
accesstoken := `{"access_token":"90868a42-1287-4453-ba71-34c72f22e886","expires_in":555553,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接专用店","refresh_token":"4e8cf946-8df1-4489-be88-f96f2d4603a8","authority_id ":""}`
|
||||
a := tiktok_api.New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", accesstoken)
|
||||
//request := shop_batchCreateStore_request.New()
|
||||
StoreList := shop_batchCreateStore_request.StoreListItem{
|
||||
RowId: 1,
|
||||
Name: "京西菜市小时达测试店铺1008",
|
||||
StoreCode: "100002",
|
||||
Longitude: "128.443241",
|
||||
Latitude: "31.133237",
|
||||
Address: "金牛区一环路北二段10号",
|
||||
Contact: "17358644830",
|
||||
Province: "四川省",
|
||||
City: "成都市",
|
||||
District: "金牛区",
|
||||
OpenTime: &shop_batchCreateStore_request.OpenTime{
|
||||
DayMap: map[int64]string{1: "07:00-19:00", 2: "8:00-19:00"},
|
||||
},
|
||||
}
|
||||
storeLists := []shop_batchCreateStore_request.StoreListItem{}
|
||||
storeLists = append(storeLists, StoreList)
|
||||
param := &shop_batchCreateStore_request.ShopBatchCreateStoreParam{
|
||||
StoreList: storeLists,
|
||||
}
|
||||
resp, err := a.BatchCreateStore(param)
|
||||
fmt.Println(resp, err)
|
||||
}
|
||||
|
||||
//
|
||||
//func TestUpdateStore(t *testing.T) {
|
||||
// accesstoken := `{"access_token":"90868a42-1287-4453-ba71-34c72f22e886","expires_in":555553,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接专用店","refresh_token":"4e8cf946-8df1-4489-be88-f96f2d4603a8","authority_id ":""}`
|
||||
// tiktok_api.New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", accesstoken)
|
||||
// request := shop_batchCreateStore_request.New()
|
||||
// err := CurPurchaseHandler.UpdateStore(nil, 666667, "")
|
||||
// resp, err := request.Execute(tiktok_api.AccessToken)
|
||||
// t.Fatal("err===========", err)
|
||||
// t.Fatalf("resp===========:%v", resp)
|
||||
//}
|
||||
////
|
||||
func TestCreateFreightTemplate(t *testing.T) {
|
||||
//accesstoken := `{"access_token":"a1746210-a8a3-4497-a87b-09d1f10dbb95","expires_in":1665652252,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对 接专用店","refresh_token":"c1cf8d88-0983-4f2a-b969-3746fae6b0cd","authorit y_id":""}`
|
||||
//a := tiktok_api.New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", accesstoken)
|
||||
//t1 := &freightTemplate_create_request.FreightTemplateCreateParam{
|
||||
// Columns: []freightTemplate_create_request.ColumnsItem{
|
||||
// {
|
||||
// AddWeight: 20,
|
||||
// MinSkuAmount: -1,
|
||||
// FirstWeight: 20,
|
||||
// ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{
|
||||
// {
|
||||
// Id: 51,
|
||||
// Children: []freightTemplate_create_request.ChildrenItem_4{
|
||||
// {
|
||||
// Id: 510101,
|
||||
// Children: []freightTemplate_create_request.ChildrenItem_5{
|
||||
// {
|
||||
// Id: 510107,
|
||||
// Children: []freightTemplate_create_request.ChildrenItem{
|
||||
// {
|
||||
// Id: 610041,
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
// Template: &freightTemplate_create_request.Template{
|
||||
// TemplateName: "运费模板创建测试0929",
|
||||
// ProductProvince: 51,
|
||||
// ProductCity: 510104,
|
||||
// CalculateType: 1,
|
||||
// TransferType: 1,
|
||||
// RuleType: 0,
|
||||
// },
|
||||
//}
|
||||
////t2 := []freightTemplate_create_request.FreightTemplateCreateParam{}
|
||||
////t2 = append(t2, t1)
|
||||
//freightID, err := a.FreightTemplateCreate(t1)
|
||||
////fmt.Println("freightID==", fmt.Sprintf("%v", freightID))
|
||||
//t.Fatal("err===========", err)
|
||||
//t.Fatalf("resp===========:%v", freightID)
|
||||
}
|
||||
|
||||
//
|
||||
////func TestBindFreightTemplate(t *testing.T) {
|
||||
//// accesstoken := `{"access_token":"6c4d71b3-831c-4a96-8d2e-977e37afba5a","expires_in":462248,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接 专用店","refresh_token":"65aae144-4cc0-44d2-89ba-5d3062caca41","authority_ id":""}`
|
||||
//// tiktok_api.New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", accesstoken)
|
||||
//// request := shop_bindStoreFreight_request.New()
|
||||
//// param := shop_bindStoreFreight_request.ShopBindStoreFreightParam{
|
||||
//// //StoreId: ,
|
||||
//// //FreightId: ,
|
||||
//// }
|
||||
////}
|
||||
|
||||
func TestCreateFences(t *testing.T) {
|
||||
//accesstoken := `{"access_token":"a1746210-a8a3-4497-a87b-09d1f10dbb95","expires_in":1665652252,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对 接专用店","refresh_token":"c1cf8d88-0983-4f2a-b969-3746fae6b0cd","authorit y_id":""}`
|
||||
//a := tiktok_api.New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", accesstoken)
|
||||
//resp, err := tiktok_store.CreateFenceByStore(668472)
|
||||
//t.Fatal("err===========", err)
|
||||
//t.Fatalf("resp===========:%v", resp)
|
||||
}
|
||||
func TestSplice(t *testing.T) {
|
||||
//resp := tiktok_store.SplicingTimeToDoudian(100, 1100, 1200, 2100)
|
||||
//t.Fatalf("resp===========:%v", resp)
|
||||
}
|
||||
@@ -1,143 +0,0 @@
|
||||
package doudian
|
||||
|
||||
//import (
|
||||
// "fmt"
|
||||
// warehouse_bindFencesByStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFencesByStore/request"
|
||||
// warehouse_bindStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindStore/request"
|
||||
// warehouse_createBatch_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createBatch/request"
|
||||
// warehouse_createFence_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createFence/request"
|
||||
// "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
||||
// "git.rosy.net.cn/baseapi/utils"
|
||||
// "git.rosy.net.cn/jx-callback/business/model"
|
||||
// "git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
// "git.rosy.net.cn/jx-callback/globals/api"
|
||||
// "strings"
|
||||
//)
|
||||
//
|
||||
//// /warehouse/createBatch 批量创建区域仓
|
||||
//func (P *PurchaseHandler) BatchCreateWarehouse(param warehouse_createBatch_request.WarehouseCreateBatchParam) error {
|
||||
// infos := []warehouse_createBatch_request.OutWarehouseListItem{}
|
||||
// for _, v := range param.OutWarehouseList {
|
||||
// info := warehouse_createBatch_request.OutWarehouseListItem{
|
||||
// OutWarehouseId: v.OutWarehouseId,
|
||||
// Name: v.Name,
|
||||
// Intro: v.Intro,
|
||||
// AddressDetail: v.AddressDetail,
|
||||
// WarehouseLocation: v.WarehouseLocation,
|
||||
// }
|
||||
// infos = append(infos, info)
|
||||
// }
|
||||
// req := &warehouse_createBatch_request.WarehouseCreateBatchParam{
|
||||
// OutWarehouseList: infos,
|
||||
// }
|
||||
// resp, err := api.DouDianApi.BatchCreateWarehouse(req)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// if resp.Data["outWarehouseId"] == false {
|
||||
// return fmt.Errorf("outWarehouseId:%v 出错", resp.Data["outWarehouseId"])
|
||||
// }
|
||||
// return nil
|
||||
//}
|
||||
//
|
||||
//// /warehouse/bindStore 仓库绑定门店
|
||||
//func (P *PurchaseHandler) BindStoreWarehouse(storeIDs []int64, outWarehouseID string) error {
|
||||
// param := &warehouse_bindStore_request.WarehouseBindStoreParam{
|
||||
// StoreIds: storeIDs,
|
||||
// OutWarehouseId: outWarehouseID,
|
||||
// }
|
||||
// if _, err := api.DouDianApi.StoreBindWarehouse(param); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
//}
|
||||
//
|
||||
//type LocalStore struct {
|
||||
// Lng int `json:"-"` // 乘了10的6次方
|
||||
// Lat int `json:"-"` // 乘了10的6次方
|
||||
// DeliveryRangeType int8 `json:"deliveryRangeType"` // 参见相关常量定义
|
||||
// DeliveryRange string `json:"deliveryRange"` // 如果DeliveryRangeType为DeliveryRangeTypePolygon,则为逗号分隔坐标,分号分隔的坐标点(坐标与Lng和Lat一样,都是整数),比如 121361504,31189308;121420555,31150238。否则为半径,单位为米
|
||||
// VendorStoreID string `json:"vendorStoreID"` // 平台上门店id
|
||||
//}
|
||||
//
|
||||
//// /warehouse/createFence 以门店方式创建电子围栏
|
||||
//func (P *PurchaseHandler) CreateFenceByStore(storeID int) (fenceID string, err error) {
|
||||
// var (
|
||||
// db *dao.DaoDB
|
||||
// localStore *LocalStore
|
||||
// verticeses []warehouse_createFence_request.VerticesItem
|
||||
// )
|
||||
// sqlParam := []interface{}{
|
||||
// model.VendorIDDouDian,
|
||||
// }
|
||||
// sqlStr := ` SELECT t.lng,t.lat,t.delivery_range_type,t.delivery_range,s.vendor_store_id FROM store t
|
||||
// LEFT JOIN store_map s ON t.id = s.store_id
|
||||
// WHERE s.vendor_id= ? `
|
||||
// if storeID != 0 {
|
||||
// sqlStr += " AND t.id = ? "
|
||||
// sqlParam = append(sqlParam, storeID)
|
||||
// } else {
|
||||
// return "", fmt.Errorf("storeID必填")
|
||||
// }
|
||||
// if err = dao.GetRow(db, &localStore, sqlStr, sqlParam...); err == nil {
|
||||
// param := &warehouse_createFence_request.WarehouseCreateFenceParam{
|
||||
// FenceInfo: &warehouse_createFence_request.FenceInfo{
|
||||
// OutFenceId: "京西门店:" + utils.Int2Str(storeID) + " 的电子围栏",
|
||||
// Shape: int32(localStore.DeliveryRangeType),
|
||||
// },
|
||||
// }
|
||||
// if localStore.DeliveryRangeType == tiktok_api.ShapeCircular {
|
||||
// circular := &warehouse_createFence_request.Circular{
|
||||
// Center: &warehouse_createFence_request.Center{
|
||||
// Longitude: utils.Int2Float64(localStore.Lng),
|
||||
// Latitude: utils.Int2Float64(localStore.Lat),
|
||||
// },
|
||||
// Radius: utils.Str2Float64(localStore.DeliveryRange),
|
||||
// }
|
||||
// param.FenceInfo.Circular = circular
|
||||
// } else if localStore.DeliveryRangeType == tiktok_api.ShapePolygon {
|
||||
// tempStr := strings.Split(localStore.DeliveryRange, ";")
|
||||
// for v := len(tempStr) - 1; v >= 0; v-- {
|
||||
// s2 := strings.Split(tempStr[v], ",")
|
||||
// vertices := warehouse_createFence_request.VerticesItem{
|
||||
// Longitude: utils.Str2Float64(s2[0]),
|
||||
// Latitude: utils.Str2Float64(s2[1]),
|
||||
// }
|
||||
// verticeses = append(verticeses, vertices)
|
||||
// }
|
||||
// param.FenceInfo.Polygon.Vertices = verticeses
|
||||
// }
|
||||
// resp, err := api.DouDianApi.CreateFence(param)
|
||||
// if err != nil {
|
||||
// return "", err
|
||||
// } else {
|
||||
// return resp.FenceId, err
|
||||
// }
|
||||
// } else {
|
||||
// return "", err
|
||||
// }
|
||||
//}
|
||||
//
|
||||
////直接创建电子围栏方式
|
||||
//func (P *PurchaseHandler) CreateFenceDirectly(param warehouse_createFence_request.WarehouseCreateFenceParam) (fenceID string, err error) {
|
||||
// info := &warehouse_createFence_request.WarehouseCreateFenceParam{
|
||||
// FenceInfo: param.FenceInfo,
|
||||
// }
|
||||
// resp, err := api.DouDianApi.CreateFence(info)
|
||||
// if err != nil {
|
||||
// return "", err
|
||||
// }
|
||||
// return resp.FenceId, err
|
||||
//}
|
||||
//
|
||||
////门店直接绑定围栏
|
||||
//func (P *PurchaseHandler) BindFenceByStore(storeID int64, addOutFenceIDs []string) error {
|
||||
// param := &warehouse_bindFencesByStore_request.WarehouseBindFencesByStoreParam{
|
||||
// StoreId: storeID,
|
||||
// AddOutFenceIds: addOutFenceIDs,
|
||||
// }
|
||||
// if _, err := api.DouDianApi.BindFenceByStore(param); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
//}
|
||||
Reference in New Issue
Block a user