- Change2JDSPU4Store
This commit is contained in:
@@ -307,3 +307,59 @@ func Convert2JDSPU(ctx *jxcontext.Context, isAsync, isContinueWhenError bool) (h
|
|||||||
}
|
}
|
||||||
return hint, err
|
return hint, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Change2JDSPU4Store(ctx *jxcontext.Context, storeIDs []int, isAsync, isContinueWhenError bool) (hint string, err error) {
|
||||||
|
sql := `
|
||||||
|
DELETE t1
|
||||||
|
FROM store_sku_bind t1
|
||||||
|
JOIN sku t2 ON t1.sku_id = t2.id AND t2.link_id <> 0
|
||||||
|
WHERE 1 = 1
|
||||||
|
`
|
||||||
|
sqlParams := []interface{}{}
|
||||||
|
if len(storeIDs) > 0 {
|
||||||
|
sql += " AND store_id IN (" + dao.GenQuestionMarks(len(storeIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, storeIDs)
|
||||||
|
}
|
||||||
|
db := dao.GetDB()
|
||||||
|
if _, err = dao.ExecuteSQL(db, sql, sqlParams...); err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
|
||||||
|
sql = `
|
||||||
|
INSERT INTO store_sku_bind(created_at, updated_at, last_operator, deleted_at, store_id, sku_id, price, unit_price, status, ebai_id, mtwm_id, jd_sync_status, ebai_sync_status, mtwm_sync_status)
|
||||||
|
SELECT NOW(), NOW(), ?, ?, t1.store_id, t2.id, t1.price, t1.unit_price, ?,0,0,?,?,?
|
||||||
|
FROM store_sku_bind t1
|
||||||
|
JOIN sku t2 ON t2.link_id = t1.sku_id AND t2.deleted_at = ?
|
||||||
|
WHERE 1 = 1
|
||||||
|
`
|
||||||
|
sqlParams = []interface{}{
|
||||||
|
ctx.GetUserName(),
|
||||||
|
utils.DefaultTimeValue,
|
||||||
|
model.SkuStatusDontSale,
|
||||||
|
model.SyncFlagNewMask,
|
||||||
|
0, //model.SyncFlagNewMask,
|
||||||
|
0, //model.SyncFlagNewMask,
|
||||||
|
utils.DefaultTimeValue,
|
||||||
|
}
|
||||||
|
if len(storeIDs) > 0 {
|
||||||
|
sql += " AND t1.store_id IN (" + dao.GenQuestionMarks(len(storeIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, storeIDs)
|
||||||
|
}
|
||||||
|
if _, err = dao.ExecuteSQL(db, sql, sqlParams...); err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
var skuIDs []int
|
||||||
|
sql = `
|
||||||
|
SELECT id
|
||||||
|
FROM sku
|
||||||
|
WHERE link_id <> 0 AND deleted_at = ?
|
||||||
|
`
|
||||||
|
sqlParams = []interface{}{
|
||||||
|
utils.DefaultTimeValue,
|
||||||
|
}
|
||||||
|
if err = dao.GetRows(db, &skuIDs, sql, sqlParams...); err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
hint, err = cms.CurVendorSync.SyncStoresSkus(ctx, db, []int{model.VendorIDJD}, storeIDs, skuIDs, isAsync, isContinueWhenError)
|
||||||
|
return hint, err
|
||||||
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package controllers
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"git.rosy.net.cn/jx-callback/business/jxstore/initdata"
|
"git.rosy.net.cn/jx-callback/business/jxstore/initdata"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"github.com/astaxie/beego"
|
"github.com/astaxie/beego"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -65,3 +66,22 @@ func (c *InitDataController) Convert2JDSPU() {
|
|||||||
return retVal, "", err
|
return retVal, "", err
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title 将京东商店为份的SPU转换
|
||||||
|
// @Description 将京东商店为份的SPU转换
|
||||||
|
// @Param token header string true "认证token"
|
||||||
|
// @Param storeIDs formData string false "门店列表"
|
||||||
|
// @Param isAsync formData bool false "是否异步操作"
|
||||||
|
// @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false"
|
||||||
|
// @Success 200 {object} controllers.CallResult
|
||||||
|
// @Failure 200 {object} controllers.CallResult
|
||||||
|
// @router /Change2JDSPU4Store [post]
|
||||||
|
func (c *InitDataController) Change2JDSPU4Store() {
|
||||||
|
c.callChange2JDSPU4Store(func(params *tInitdataChange2JDSPU4StoreParams) (retVal interface{}, errCode string, err error) {
|
||||||
|
var storeIDs []int
|
||||||
|
if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs); err == nil {
|
||||||
|
retVal, err = initdata.Change2JDSPU4Store(params.Ctx, storeIDs, params.IsAsync, params.IsContinueWhenError)
|
||||||
|
}
|
||||||
|
return retVal, "", err
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -167,6 +167,14 @@ func init() {
|
|||||||
MethodParams: param.Make(),
|
MethodParams: param.Make(),
|
||||||
Params: nil})
|
Params: nil})
|
||||||
|
|
||||||
|
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:InitDataController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:InitDataController"],
|
||||||
|
beego.ControllerComments{
|
||||||
|
Method: "Change2JDSPU4Store",
|
||||||
|
Router: `/Change2JDSPU4Store`,
|
||||||
|
AllowHTTPMethods: []string{"post"},
|
||||||
|
MethodParams: param.Make(),
|
||||||
|
Params: nil})
|
||||||
|
|
||||||
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:InitDataController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:InitDataController"],
|
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:InitDataController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:InitDataController"],
|
||||||
beego.ControllerComments{
|
beego.ControllerComments{
|
||||||
Method: "Convert2JDSPU",
|
Method: "Convert2JDSPU",
|
||||||
|
|||||||
Reference in New Issue
Block a user