|
|
@@ -80,6 +80,27 @@ class DouYinService
|
|
|
}
|
|
|
|
|
|
// **************************** 商品管理
|
|
|
+
|
|
|
+ public static function addProduct($params)
|
|
|
+ {
|
|
|
+
|
|
|
+ $goods_category_id = $params['goods_category_id']??0;
|
|
|
+ $product_url = config('douyin.host').'goodlife/v1/goods/product/save/';
|
|
|
+ $res = http_request($product_url,self::getProductParams($params),['Content-Type' => 'application/json;charset=utf-8','access_token' => self::getClientToken()]);
|
|
|
+
|
|
|
+
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+
|
|
|
+ public static function addSku($params)
|
|
|
+ {
|
|
|
+ $goods_id = $params['goods_id']??0;
|
|
|
+ $sku_url = config('douyin.host').'goodlife/v1/goods/sku/batch_save/';
|
|
|
+ $res = http_request($sku_url,self::getSkuParams($params),['Content-Type' => 'application/json;charset=utf-8','access_token' => self::getClientToken()]);
|
|
|
+ // 根据返回后更新本地库对应关系
|
|
|
+
|
|
|
+ return [];
|
|
|
+ }
|
|
|
/*/product/save/ 先调
|
|
|
goods/sku/batch_save/ 再调
|
|
|
|
|
|
@@ -87,11 +108,38 @@ goods/sku/batch_save/ 再调
|
|
|
生成 sku 组装
|
|
|
生成对应的 attr_key_value_map 组装*/
|
|
|
|
|
|
- public static function getProductParams($type,$params)
|
|
|
+ public static function getProductParams($params)
|
|
|
{
|
|
|
- return [];
|
|
|
+ $goods_category_id = $params['goods_category_id']??0;
|
|
|
+ return [
|
|
|
+ "account_id" => '7511543640776017961',
|
|
|
+ "product" => [
|
|
|
+ "out_id" => $goods_category_id,
|
|
|
+ "product_name" => $params['name'],
|
|
|
+ "product_type" => 22,
|
|
|
+ "category_id" => 6004003,
|
|
|
+ "category_full_name" => "其他维修服务",
|
|
|
+ "biz_line" => 5,
|
|
|
+ "account_name" => "亿蜂快修·武汉市",
|
|
|
+ //{\"params\":\"{\"spuId\":\"xxxxx\",\"skuId\":\"xxxxxx\"}\",\"path\":\"pages/any/path\",\"app_id\":\"xxxxx\"}
|
|
|
+ "out_url" => json_encode(['app_id'=>config('douyin.appId'),'path'=>'pages/detail','params'=>json_encode(['goods_category_id'=>$goods_category_id])]),
|
|
|
+ "pois" =>[
|
|
|
+ [
|
|
|
+ "poi_id" => "7511543640776017961"
|
|
|
+ ]
|
|
|
+ ],
|
|
|
+ "product_ext" => [
|
|
|
+ "auto_online" => true,
|
|
|
+ "display_price"=> ["low_price" => 30,"high_price" => 300],
|
|
|
+ "test_extra"=> ["test_flag" => true,"uids" => ["1548********2888"]]
|
|
|
+ ],
|
|
|
+ "attr_key_value_map" => self::getAttrKeyValueMapParams('product',$params),
|
|
|
+ "sold_end_time" => time() + 180 * 86400,
|
|
|
+ "sold_start_time" => time()
|
|
|
+ ]
|
|
|
+ ];
|
|
|
}
|
|
|
- public static function getSkuParams($type,$params)
|
|
|
+ public static function getSkuParams($params)
|
|
|
{
|
|
|
return [];
|
|
|
}
|
|
|
@@ -99,7 +147,69 @@ goods/sku/batch_save/ 再调
|
|
|
|
|
|
public static function getAttrKeyValueMapParams($type,$params)
|
|
|
{
|
|
|
- return [];
|
|
|
+ $res = [];
|
|
|
+ if($type === 'product'){
|
|
|
+ $res = [
|
|
|
+ "appointment"=>json_encode([
|
|
|
+ "need_appointment"=>true,
|
|
|
+ "ahead_time_type"=>2,
|
|
|
+ "ahead_hour_num"=> 5,
|
|
|
+ "external_link"=>"pages/detail",
|
|
|
+ "order_appointment_time_url"=>"pages/order"
|
|
|
+ ]),
|
|
|
+ "auto_renew"=>true,
|
|
|
+ "can_no_use_date" => json_encode(["enable"=>false]),
|
|
|
+ "Description" => json_encode([]),
|
|
|
+ "image_list" => json_encode([["url"=>$params['picture']??'']]),
|
|
|
+ "limit_use_rule" => json_encode(["is_limit_use"=>true, "use_num_per_consume"=>1]),
|
|
|
+ "Notification" => json_encode([["title"=>$params['name']??'',"content"=>$params['name']??'']]),
|
|
|
+ "RefundPolicy"=> "2",
|
|
|
+ "refund_need_merchant_confirm"=> true,
|
|
|
+ "show_channel"=> 1,
|
|
|
+ "superimposed_discounts"=> false,
|
|
|
+ "trade_url"=> json_encode(['app_id'=>config('douyin.appId'),'path'=>'pages/detail','params'=>json_encode(['goods_category_id'=>$params['goods_category_id']??0])]),
|
|
|
+ "use_date"=> json_encode(["use_date_type"=>2, "day_duration"=>15]),
|
|
|
+ "use_time"=> json_encode(["use_time_type"=>1]),
|
|
|
+ //"user_num_limit"=> ,
|
|
|
+ "code_source_type"=> 3,
|
|
|
+ "settle_type"=> 1,
|
|
|
+ "use_type"=> 1,
|
|
|
+ "limit_rule"=> json_encode(["is_limit"=>false]),
|
|
|
+ "out_id"=> $params['goods_category_id']??0
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ if($type === 'sku'){
|
|
|
+ $res = [
|
|
|
+ /*"appointment"=>json_encode([
|
|
|
+ "need_appointment"=>true,
|
|
|
+ "ahead_time_type"=>2,
|
|
|
+ "ahead_hour_num"=> 5,
|
|
|
+ "external_link"=>"pages/detail",
|
|
|
+ "order_appointment_time_url"=>"pages/order"
|
|
|
+ ]),
|
|
|
+ "auto_renew"=>true,
|
|
|
+ "can_no_use_date" => json_encode(["enable"=>false]),
|
|
|
+ "Description" => json_encode([]),
|
|
|
+ "image_list" => json_encode([["url"=>$params['goods_image']]]),
|
|
|
+ "limit_use_rule" => json_encode(["is_limit_use"=>true, "use_num_per_consume"=>1]),
|
|
|
+ "Notification" => json_encode([["title"=>$params['goods_name'],"content"=>$params['goods_name']]]),
|
|
|
+ "RefundPolicy"=> "2",
|
|
|
+ "refund_need_merchant_confirm"=> true,
|
|
|
+ "show_channel"=> 1,
|
|
|
+ "superimposed_discounts"=> false,
|
|
|
+ "trade_url"=> json_encode(['app_id'=>config('douyin.appId'),'path'=>'pages/detail','params'=>json_encode(['goods_category_id'=>$params['goods_category_id']??0])]),
|
|
|
+ "use_date"=> json_encode(["use_date_type"=>2, "day_duration"=>15]),
|
|
|
+ "use_time"=> json_encode(["use_time_type"=>1]),
|
|
|
+ //"user_num_limit"=> ,
|
|
|
+
|
|
|
+ "code_source_type"=> 3,
|
|
|
+ "settle_type"=> 1,
|
|
|
+ "use_type"=> 1,
|
|
|
+ "limit_rule"=> json_encode(["is_limit"=>false]),
|
|
|
+ "out_id"=> $params['goods_category_id']??0*/
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ return $res;
|
|
|
}
|
|
|
|
|
|
|