@@ -77,7 +77,6 @@ func storeSku2ActData(act *model.Act2, actStoreSku []*model.ActStoreSku2, handle
}
}
for _ , v := range actStoreSku {
for _ , v := range actStoreSku {
globals . SugarLogger . Debugf ( "打印初始商品参数 sku=%s" , utils . Format4Output ( v , false ) )
if handler == nil || handler ( v . SyncStatus ) {
if handler == nil || handler ( v . SyncStatus ) {
stock := int64 ( 0 )
stock := int64 ( 0 )
if v . Stock > 0 {
if v . Stock > 0 {
@@ -87,9 +86,6 @@ func storeSku2ActData(act *model.Act2, actStoreSku []*model.ActStoreSku2, handle
actData = & domain . AlibabaRetailMarketingItemdiscountActivitySkuAddItemDiscountActivityElementOperateRequest {
actData = & domain . AlibabaRetailMarketingItemdiscountActivitySkuAddItemDiscountActivityElementOperateRequest {
SkuElements : & [ ] domain . AlibabaRetailMarketingItemdiscountActivitySkuAddSkuActivityElementDto { {
SkuElements : & [ ] domain . AlibabaRetailMarketingItemdiscountActivitySkuAddSkuActivityElementDto { {
SkuCode : utils . String2Pointer ( utils . Int2Str ( v . SkuID ) ) ,
SkuCode : utils . String2Pointer ( utils . Int2Str ( v . SkuID ) ) ,
//FixPriceMoney: &fixPriceMoney,
//DiscountRate: &discountRate,
//DecreaseMoney: &decreaseMoney,
Limit : & domain . AlibabaRetailMarketingItemdiscountActivitySkuAddLimitDto {
Limit : & domain . AlibabaRetailMarketingItemdiscountActivitySkuAddLimitDto {
TotalLimitCnt : & stock ,
TotalLimitCnt : & stock ,
DailyTotalLimitCnt : & limitDaily ,
DailyTotalLimitCnt : & limitDaily ,
@@ -104,7 +100,6 @@ func storeSku2ActData(act *model.Act2, actStoreSku []*model.ActStoreSku2, handle
}
}
sType := actType2Txd ( act . Type )
sType := actType2Txd ( act . Type )
globals . SugarLogger . Debugf ( "sType=%d" , sType )
switch sType {
switch sType {
case tao_vegetable . DiscountTypeDeductMoney :
case tao_vegetable . DiscountTypeDeductMoney :
decreaseMoney = v . VendorPrice - v . ActualActPrice
decreaseMoney = v . VendorPrice - v . ActualActPrice
@@ -159,7 +154,6 @@ func actSku2Delete(actIDs []string, vendorOrgCode, vendorStoreID string) (map[st
)
)
for _ , v := range actIDs {
for _ , v := range actIDs {
i := utils . Str2Int64 ( v )
i := utils . Str2Int64 ( v )
//if skus, err := api.TaoVegetableApi.ActivitySkuQuery(i); err == nil {
if skus , err := getAPI ( vendorOrgCode , 0 , vendorStoreID ) . ActivitySkuQuery ( i ) ; err == nil {
if skus , err := getAPI ( vendorOrgCode , 0 , vendorStoreID ) . ActivitySkuQuery ( i ) ; err == nil {
//查询商品
//查询商品
for _ , sku := range skus {
for _ , sku := range skus {
@@ -192,32 +186,28 @@ func createOneShopAct(act *model.Act2, vendorStoreID string, actStoreSku []*mode
actData := act2TxdActivity ( act )
actData := act2TxdActivity ( act )
//2 活动商品详情
//2 活动商品详情
actSkuData := storeSku2ActData ( act , actStoreSku , isCreateOrUpdate )
actSkuData := storeSku2ActData ( act , actStoreSku , isCreateOrUpdate )
globals . SugarLogger . Debugf ( "进入获取活动参数,actData=%s,actSkuData=%s" , utils . Format4Output ( actData , false ) , utils . Format4Output ( actSkuData , false ) )
if actData != nil && actSkuData != nil {
if actData != nil && actSkuData != nil {
if globals . EnableMtwmStoreWrite {
if globals . EnableMtwmStoreWrite {
globals . SugarLogger . Debugf ( "进入创建活动" )
//创建活动
//创建活动
actData . StoreIds = & [ ] string { vendorStoreID }
actData . StoreIds = & [ ] string { vendorStoreID }
actID , err1 := getAPI ( act . VendorOrgCode , 0 , vendorStoreID ) . ActivityCreate ( * actData )
actID , err1 := getAPI ( act . VendorOrgCode , 0 , vendorStoreID ) . ActivityCreate ( * actData )
globals . SugarLogger . Debugf ( "createOneShopAct actData=%s,err=%v" , utils . Format4Output ( actData , false ) , err1 )
if err1 != nil || actID == 0 {
if err1 != nil || actID == 0 {
failedList = append ( failedList , & partner . StoreSkuInfoWithErr {
failedList = append ( failedList , & partner . StoreSkuInfoWithErr {
VendoreID : model . VendorIDTaoVegetable ,
VendoreID : model . VendorIDTaoVegetable ,
ErrMsg : fmt . Sprintf ( "%v" , err1 ) ,
ErrMsg : fmt . Sprintf ( "%v" , err1 ) ,
StoreID : int ( utils . Str2Int64WithDefault ( vendorStoreID , 0 ) ) ,
StoreID : int ( utils . Str2Int64WithDefault ( vendorStoreID , 0 ) ) ,
} )
} )
globals . SugarLogger . Debugf ( "我在failedList=%s" , utils . Format4Output ( failedList , false ) , err1 )
return failedList , err1
return failedList , err1
}
}
//活动增加商品
//活动增加商品
actSkuData . ActId = & actID
actSkuData . ActId = & actID
err3 , successSkuCode , failSkuCode := getAPI ( act . VendorOrgCode , 0 , vendorStoreID ) . ActivitySkuCreate ( * actSkuData )
err3 , successSkuCode , failSkuCode := getAPI ( act . VendorOrgCode , 0 , vendorStoreID ) . ActivitySkuCreate ( * actSkuData )
globals . SugarLogger . Debugf ( "createOneShopAct actSkuData=%s,err3=%v" , utils . Format4Output ( actSkuData , false ) , err3 )
err = err3
err = err3
if err != nil { //商品新增失败,回滚删除创建的活动
if err != nil { //商品新增失败,回滚删除创建的活动
err4 := getAPI ( act . VendorOrgCode , 0 , vendorStoreID ) . ActivityDelete ( * actData . CreatorId , * actData . CreatorName , actID )
if err4 := getAPI ( act . VendorOrgCode , 0 , vendorStoreID ) . ActivityDelete ( * actData . CreatorId , * actData . CreatorName , actID ) ; err != nil {
globals . SugarLogger . Debugf ( "createOneShopAct rollback delete act err=%v " , err4 )
return nil , fmt . Errorf ( "活动创建但新增商品失败,删除活动错误:%v, 请在淘鲜达平台删除此活动 " , err4 )
}
}
}
actStoreSkuMap := make ( map [ int ] * model . ActStoreSku2 )
actStoreSkuMap := make ( map [ int ] * model . ActStoreSku2 )
for _ , v := range actStoreSku {
for _ , v := range actStoreSku {
@@ -295,12 +285,9 @@ func createSkuAct(ctx *jxcontext.Context, parentTask tasksch.ITask, act *model.A
task := tasksch . NewParallelTask ( "txd createSkuAct" , nil , ctx ,
task := tasksch . NewParallelTask ( "txd createSkuAct" , nil , ctx ,
func ( task * tasksch . ParallelTask , batchItemList [ ] interface { } , params ... interface { } ) ( retVal interface { } , err error ) {
func ( task * tasksch . ParallelTask , batchItemList [ ] interface { } , params ... interface { } ) ( retVal interface { } , err error ) {
list := batchItemList [ 0 ] . ( [ ] * model . ActStoreSku2 )
list := batchItemList [ 0 ] . ( [ ] * model . ActStoreSku2 )
globals . SugarLogger . Debugf ( "我在这里4" )
failedList , err2 := createOneShopAct ( act , list [ 0 ] . VendorStoreID , list )
failedList , err2 := createOneShopAct ( act , list [ 0 ] . VendorStoreID , list )
globals . SugarLogger . Debugf ( "我在这里6, failedList=%s, err2=%v" , utils . Format4Output ( failedList , false ) , err2 )
if err = err2 ; err2 == nil {
if err = err2 ; err2 == nil {
if len ( failedList ) > 0 {
if len ( failedList ) > 0 {
globals . SugarLogger . Debugf ( "我在这里5" )
failedMap := putils . StoreSkuInfoWithErrList2MapBySku ( failedList )
failedMap := putils . StoreSkuInfoWithErrList2MapBySku ( failedList )
list = [ ] * model . ActStoreSku2 { }
list = [ ] * model . ActStoreSku2 { }
for _ , v := range actStoreSku {
for _ , v := range actStoreSku {
@@ -356,7 +343,6 @@ func (c *PurchaseHandler) SyncAct(ctx *jxcontext.Context, parentTask tasksch.ITa
updateItems = append ( updateItems , partner . Act2Update ( ctx , act , model . SyncFlagModifiedMask ) )
updateItems = append ( updateItems , partner . Act2Update ( ctx , act , model . SyncFlagModifiedMask ) )
}
}
} else if model . IsSyncStatusNew ( act . SyncStatus ) {
} else if model . IsSyncStatusNew ( act . SyncStatus ) {
globals . SugarLogger . Debugf ( "我进入这里了createSkuAct" )
createdList , err2 := createSkuAct ( ctx , nil , act , actStoreSkuList4Create )
createdList , err2 := createSkuAct ( ctx , nil , act , actStoreSkuList4Create )
updateItems = append ( updateItems , partner . ActStoreSku2Update ( ctx , createdList , model . SyncFlagNewMask ) ... )
updateItems = append ( updateItems , partner . ActStoreSku2Update ( ctx , createdList , model . SyncFlagNewMask ) ... )
if err = err2 ; err == nil {
if err = err2 ; err == nil {