jds2
This commit is contained in:
@@ -1217,6 +1217,11 @@ func AddStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, vendorID int, vend
|
||||
}
|
||||
}()
|
||||
if err = dao.CreateEntity(db, storeMap); err == nil {
|
||||
if vendorID == model.VendorIDJDShop {
|
||||
storeMap2 := storeMap
|
||||
storeMap2.VendorOrgCode = "2"
|
||||
dao.CreateEntity(db, storeMap2)
|
||||
}
|
||||
dao.Commit(db)
|
||||
outStoreMap = storeMap
|
||||
_, err = CurVendorSync.SyncStore(ctx, db, storeMap.VendorID, storeID, false, userName)
|
||||
|
||||
@@ -453,7 +453,7 @@ type StoreMap struct {
|
||||
func (*StoreMap) TableUnique() [][]string {
|
||||
return [][]string{
|
||||
[]string{"StoreID", "VendorID", "DeletedAt", "VendorOrgCode"},
|
||||
[]string{"VendorStoreID", "VendorID", "DeletedAt"},
|
||||
[]string{"VendorStoreID", "VendorID", "DeletedAt", "VendorOrgCode"},
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -99,11 +99,25 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
CategoryName: jdshopapi.JdsStoreCategoryName,
|
||||
CustomerID: utils.Int2Str(store.ID),
|
||||
}
|
||||
createEntityStoreParam2 := &jdshopapi.CreateEntityStoreParam{
|
||||
Name: "京西菜市" + strings.ReplaceAll(store.Name, "店", "") + "生鲜店",
|
||||
AddCode: store.JdsCode,
|
||||
AddCodeName: store.DistrictName,
|
||||
AddName: store.ProvinceName + store.CityName + store.DistrictName + "@!" + store.Address,
|
||||
Coordinate: utils.Float64ToStr(jxutils.IntCoordinate2Standard(store.Lat)) + "," + utils.Float64ToStr(jxutils.IntCoordinate2Standard(store.Lng)),
|
||||
Phone: store.Tel1,
|
||||
ExtendJSON: string(timeJSON),
|
||||
ImageFile: base64.StdEncoding.EncodeToString(data),
|
||||
CategoryName: "生鲜店",
|
||||
CustomerID: utils.Int2Str(store.ID),
|
||||
}
|
||||
if store.JdsStreetCode != 0 {
|
||||
createEntityStoreParam.AddCode = store.JdsStreetCode
|
||||
createEntityStoreParam2.AddCode = store.JdsStreetCode
|
||||
}
|
||||
if createEntityStoreParam.AddCode == 0 {
|
||||
createEntityStoreParam.AddCode = store.JdCode
|
||||
createEntityStoreParam2.AddCode = store.JdCode
|
||||
}
|
||||
//证明这个店可能隶属直辖市或者东莞
|
||||
if model.ZXCityCodeMap[store.CityCode] != "" {
|
||||
@@ -121,6 +135,7 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
for _, vvv := range result3 {
|
||||
if street == vvv.AreaName {
|
||||
createEntityStoreParam.AddCode = vvv.AreaID
|
||||
createEntityStoreParam2.AddCode = vvv.AreaID
|
||||
break
|
||||
}
|
||||
}
|
||||
@@ -132,6 +147,69 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
}
|
||||
}
|
||||
vendorStoreID, err = api.JdShopAPI.CreateEntityStore(createEntityStoreParam)
|
||||
vendorStoreID2, _ := api.JdShop2API.CreateEntityStore(createEntityStoreParam2)
|
||||
if shopDetailResult, err := api.JdShop2API.ShopDetail(utils.Str2Int(vendorStoreID2)); err == nil {
|
||||
if store.Licence != "" {
|
||||
var storeName string
|
||||
data, _, _ := jxutils.DownloadFileByURL(store.Licence)
|
||||
fileName := store.Licence[strings.LastIndex(store.Licence, "/")+1 : len(store.Licence)]
|
||||
url, _ := api.JdShop2API.UploadImageNew(data, fileName)
|
||||
ex := store.LicenceExpire
|
||||
if ex == "" {
|
||||
ex = utils.Time2Str(utils.Str2Time(store.LicenceValid).AddDate(0, 6, 0))
|
||||
}
|
||||
if !strings.Contains(ex, "00:00:00") {
|
||||
ex += " 00:00:00"
|
||||
}
|
||||
if strings.Contains(store.Name, "(") {
|
||||
storeName = store.Name[0:strings.Index(store.Name, "(")] + store.Name[strings.Index(store.Name, ")")+3:len(store.Name)]
|
||||
}
|
||||
if strings.Contains(store.Name, ".") {
|
||||
storeName = store.Name[0:strings.Index(store.Name, ".")] + store.Name[strings.Index(store.Name, ".")+1:len(store.Name)]
|
||||
}
|
||||
err = api.JdShop2API.UpdateBasic(&jdshopapi.UpdateBasicParam{
|
||||
StoreID: utils.Str2Int(vendorStoreID2),
|
||||
StoreName: storeName,
|
||||
CategoryID2: 62,
|
||||
Coordinate: shopDetailResult.Coordinate,
|
||||
BussinessBeginTime: shopDetailResult.BussinessBeginTime,
|
||||
BussinessEndTime: shopDetailResult.BussinessEndTime,
|
||||
ImgURL: shopDetailResult.ImgURL,
|
||||
StorePhone: shopDetailResult.StorePhone,
|
||||
AddName: shopDetailResult.AddName,
|
||||
AddCode1: shopDetailResult.AddCode1,
|
||||
AddCode2: shopDetailResult.AddCode2,
|
||||
AddCode3: shopDetailResult.AddCode3,
|
||||
CategoryID1: 34,
|
||||
QualificationRequests: []*jdshopapi.QualificationRequests{
|
||||
&jdshopapi.QualificationRequests{
|
||||
QualificationID: 41,
|
||||
QualificationName: "营业执照",
|
||||
QualificationNo: store.LicenceCode,
|
||||
QualificationURL: url,
|
||||
StartTime: utils.Time2Str(utils.Str2Time(store.LicenceValid)),
|
||||
EndingTime: ex,
|
||||
Time: []string{utils.Time2Str(utils.Str2Time(store.LicenceValid)), ex},
|
||||
},
|
||||
},
|
||||
})
|
||||
if err == nil {
|
||||
var storeMap *model.StoreMap
|
||||
sql := `
|
||||
SELECT * FROM store_map WHERE deletad_at = ? AND store_id = ? AND vendor_id = ? AND vendor_org_code = ?
|
||||
`
|
||||
sqlParams := []interface{}{
|
||||
utils.DefaultTimeValue, storeID, model.VendorIDJDShop, "2",
|
||||
}
|
||||
if err = dao.GetRow(db, &storeMap, sql, sqlParams); err == nil {
|
||||
if storeMap != nil {
|
||||
storeMap.VendorStoreID = vendorStoreID2
|
||||
_, err = dao.UpdateEntity(db, storeMap, "VendorStoreID")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return vendorStoreID, err
|
||||
}
|
||||
|
||||
|
||||
@@ -445,6 +445,17 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas
|
||||
return skuNameList, err
|
||||
}
|
||||
|
||||
func getMainStoreVendorSkuID(mainStoreID int, skuID int) (vendorSkuID int64, err error) {
|
||||
var (
|
||||
db = dao.GetDB()
|
||||
)
|
||||
storeSkus, err := dao.GetStoresSkusInfo(db, []int{mainStoreID}, []int{skuID})
|
||||
if len(storeSkus) > 0 {
|
||||
vendorSkuID = storeSkus[0].JdsID
|
||||
}
|
||||
return vendorSkuID, err
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo, status int) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||
if globals.EnableJdShopWrite {
|
||||
var stock = 0
|
||||
@@ -472,7 +483,9 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
|
||||
}
|
||||
}
|
||||
} else {
|
||||
err = api.JdShop2API.StoreWareDoUpdate(status, utils.Str2Int64(v.VendorSkuID), vendorStoreID)
|
||||
if vendorSkuID, err := getMainStoreVendorSkuID(model.JdShopMainStoreID2, v.SkuID); err == nil {
|
||||
err = api.JdShop2API.StoreWareDoUpdate(status, vendorSkuID, vendorStoreID)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -494,7 +507,9 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
|
||||
if v.VendorOrgCode == "1" {
|
||||
// null
|
||||
} else {
|
||||
err = api.JdShop2API.StoreUpdatePrice(utils.Float64TwoInt(jxutils.IntPrice2Standard(v.VendorPrice)), utils.Str2Int64(v.VendorSkuID), vendorStoreID)
|
||||
if vendorSkuID, err := getMainStoreVendorSkuID(model.JdShopMainStoreID2, v.SkuID); err == nil {
|
||||
err = api.JdShop2API.StoreUpdatePrice(utils.Float64TwoInt(jxutils.IntPrice2Standard(v.VendorPrice)), vendorSkuID, vendorStoreID)
|
||||
}
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
@@ -513,7 +528,9 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg
|
||||
} else if storeID == model.JdShopMainStoreID2 {
|
||||
|
||||
} else {
|
||||
err = api.JdShop2API.StoreUpdateStock(v.Stock, utils.Str2Int64(v.VendorSkuID), vendorStoreID)
|
||||
if vendorSkuID, err := getMainStoreVendorSkuID(model.JdShopMainStoreID2, v.SkuID); err == nil {
|
||||
err = api.JdShop2API.StoreUpdateStock(v.Stock, vendorSkuID, vendorStoreID)
|
||||
}
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user