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 err = dao.CreateEntity(db, storeMap); err == nil {
|
||||||
|
if vendorID == model.VendorIDJDShop {
|
||||||
|
storeMap2 := storeMap
|
||||||
|
storeMap2.VendorOrgCode = "2"
|
||||||
|
dao.CreateEntity(db, storeMap2)
|
||||||
|
}
|
||||||
dao.Commit(db)
|
dao.Commit(db)
|
||||||
outStoreMap = storeMap
|
outStoreMap = storeMap
|
||||||
_, err = CurVendorSync.SyncStore(ctx, db, storeMap.VendorID, storeID, false, userName)
|
_, err = CurVendorSync.SyncStore(ctx, db, storeMap.VendorID, storeID, false, userName)
|
||||||
|
|||||||
@@ -453,7 +453,7 @@ type StoreMap struct {
|
|||||||
func (*StoreMap) TableUnique() [][]string {
|
func (*StoreMap) TableUnique() [][]string {
|
||||||
return [][]string{
|
return [][]string{
|
||||||
[]string{"StoreID", "VendorID", "DeletedAt", "VendorOrgCode"},
|
[]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,
|
CategoryName: jdshopapi.JdsStoreCategoryName,
|
||||||
CustomerID: utils.Int2Str(store.ID),
|
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 {
|
if store.JdsStreetCode != 0 {
|
||||||
createEntityStoreParam.AddCode = store.JdsStreetCode
|
createEntityStoreParam.AddCode = store.JdsStreetCode
|
||||||
|
createEntityStoreParam2.AddCode = store.JdsStreetCode
|
||||||
}
|
}
|
||||||
if createEntityStoreParam.AddCode == 0 {
|
if createEntityStoreParam.AddCode == 0 {
|
||||||
createEntityStoreParam.AddCode = store.JdCode
|
createEntityStoreParam.AddCode = store.JdCode
|
||||||
|
createEntityStoreParam2.AddCode = store.JdCode
|
||||||
}
|
}
|
||||||
//证明这个店可能隶属直辖市或者东莞
|
//证明这个店可能隶属直辖市或者东莞
|
||||||
if model.ZXCityCodeMap[store.CityCode] != "" {
|
if model.ZXCityCodeMap[store.CityCode] != "" {
|
||||||
@@ -121,6 +135,7 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
|||||||
for _, vvv := range result3 {
|
for _, vvv := range result3 {
|
||||||
if street == vvv.AreaName {
|
if street == vvv.AreaName {
|
||||||
createEntityStoreParam.AddCode = vvv.AreaID
|
createEntityStoreParam.AddCode = vvv.AreaID
|
||||||
|
createEntityStoreParam2.AddCode = vvv.AreaID
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -132,6 +147,69 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
vendorStoreID, err = api.JdShopAPI.CreateEntityStore(createEntityStoreParam)
|
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
|
return vendorStoreID, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -445,6 +445,17 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas
|
|||||||
return skuNameList, err
|
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) {
|
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 {
|
if globals.EnableJdShopWrite {
|
||||||
var stock = 0
|
var stock = 0
|
||||||
@@ -472,7 +483,9 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} 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" {
|
if v.VendorOrgCode == "1" {
|
||||||
// null
|
// null
|
||||||
} else {
|
} 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 {
|
if err != nil {
|
||||||
@@ -513,7 +528,9 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg
|
|||||||
} else if storeID == model.JdShopMainStoreID2 {
|
} else if storeID == model.JdShopMainStoreID2 {
|
||||||
|
|
||||||
} else {
|
} 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 {
|
if err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user