|
@@ -15,17 +15,17 @@ class BaseData extends BasicLife
|
|
|
* https://partner.open-douyin.com/docs/resource/zh-CN/local-life/develop/OpenAPI/general-capabilities/goods/save
|
|
* https://partner.open-douyin.com/docs/resource/zh-CN/local-life/develop/OpenAPI/general-capabilities/goods/save
|
|
|
* https://open.douyin.com/goodlife/v1/goods/product/save/
|
|
* https://open.douyin.com/goodlife/v1/goods/product/save/
|
|
|
*/
|
|
*/
|
|
|
- public function createGoodsData(array $data = [],array $sku = [],array $store = [],array $valMap = []): array
|
|
|
|
|
|
|
+ public function createGoodsData(array $data = [],array $sku = [],array $store = [],array $valMap = [],string $type = "add"): array
|
|
|
{
|
|
{
|
|
|
$product_attrs = $sku_attrs = [];
|
|
$product_attrs = $sku_attrs = [];
|
|
|
foreach ($valMap['product_attrs'] as $val) {
|
|
foreach ($valMap['product_attrs'] as $val) {
|
|
|
- $keyVal = $this->getProductAttrs($val['key'],$data);
|
|
|
|
|
|
|
+ $keyVal = $this->getProductAttrs($val['key'],$data,$type);
|
|
|
if (!empty($keyVal)) {
|
|
if (!empty($keyVal)) {
|
|
|
$product_attrs[$val['key']] = $keyVal;
|
|
$product_attrs[$val['key']] = $keyVal;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
foreach ($valMap['sku_attrs'] as $val) {
|
|
foreach ($valMap['sku_attrs'] as $val) {
|
|
|
- $keyVal = $this->getProductAttrs($val['key'],$data);
|
|
|
|
|
|
|
+ $keyVal = $this->getProductAttrs($val['key'],$data,$type);
|
|
|
if (!empty($keyVal)) {
|
|
if (!empty($keyVal)) {
|
|
|
$sku_attrs[$val['key']] = $keyVal;
|
|
$sku_attrs[$val['key']] = $keyVal;
|
|
|
}
|
|
}
|
|
@@ -59,9 +59,9 @@ class BaseData extends BasicLife
|
|
|
if (empty($sku)) { // 单sku
|
|
if (empty($sku)) { // 单sku
|
|
|
$param['sku'] = [
|
|
$param['sku'] = [
|
|
|
"attr_key_value_map" => $sku_attrs,
|
|
"attr_key_value_map" => $sku_attrs,
|
|
|
- "actual_amount" => $data['price'], // 售价 实际支付价格
|
|
|
|
|
|
|
+ "actual_amount" => $type=='edit'?($data['price']*100):$data['price'], // 售价 实际支付价格
|
|
|
"sku_name" => $data['product_name'], // sku名
|
|
"sku_name" => $data['product_name'], // sku名
|
|
|
- "origin_amount" => $data['line_price'],
|
|
|
|
|
|
|
+ "origin_amount" => $type=='edit'?($data['line_price']*100):$data['line_price'],
|
|
|
"status" => 1,
|
|
"status" => 1,
|
|
|
"stock" => [
|
|
"stock" => [
|
|
|
"limit_type" => $data['limit_use_rule'], // 库存上限类型,为2时stock_qty和avail_qty字段无意义 1 有限库存 2 无限库存
|
|
"limit_type" => $data['limit_use_rule'], // 库存上限类型,为2时stock_qty和avail_qty字段无意义 1 有限库存 2 无限库存
|
|
@@ -81,7 +81,7 @@ class BaseData extends BasicLife
|
|
|
* @param array $data
|
|
* @param array $data
|
|
|
* @return string
|
|
* @return string
|
|
|
*/
|
|
*/
|
|
|
- protected function getProductAttrs(string $key = "",array $data = []): string
|
|
|
|
|
|
|
+ protected function getProductAttrs(string $key = "",array $data = [],string $type = "add"): string
|
|
|
{
|
|
{
|
|
|
switch ($key)
|
|
switch ($key)
|
|
|
{
|
|
{
|
|
@@ -93,7 +93,7 @@ class BaseData extends BasicLife
|
|
|
]);
|
|
]);
|
|
|
break;
|
|
break;
|
|
|
case "commodity": // 商品搭配
|
|
case "commodity": // 商品搭配
|
|
|
- $specs = json_decode($data['specs'],true);
|
|
|
|
|
|
|
+ $specs = is_string($data['specs']) ? json_decode($data['specs'],true) : $data['specs'];
|
|
|
$commodity = [];
|
|
$commodity = [];
|
|
|
foreach ($specs as $key=>$val) {
|
|
foreach ($specs as $key=>$val) {
|
|
|
$commodity[$key] = [
|
|
$commodity[$key] = [
|
|
@@ -148,7 +148,7 @@ class BaseData extends BasicLife
|
|
|
$return = "2";
|
|
$return = "2";
|
|
|
break;
|
|
break;
|
|
|
case "market_price": // 划线价格
|
|
case "market_price": // 划线价格
|
|
|
- $return = (string)$data['line_price'];
|
|
|
|
|
|
|
+ $return = $type=='edit'?(string)($data['line_price']*100):(string)$data['line_price'];
|
|
|
break;
|
|
break;
|
|
|
case "can_no_use_date": // 不可使用日期
|
|
case "can_no_use_date": // 不可使用日期
|
|
|
if ($data['can_no_use_date'] == 1) {
|
|
if ($data['can_no_use_date'] == 1) {
|
|
@@ -168,7 +168,7 @@ class BaseData extends BasicLife
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case "image_list": // 封面图 图片比例:375:280
|
|
case "image_list": // 封面图 图片比例:375:280
|
|
|
- $image_list = json_decode($data['image_list'],true);
|
|
|
|
|
|
|
+ $image_list = is_string($data['image_list']) ? json_decode($data['image_list'],true) : $data['image_list'];
|
|
|
$return = json_encode([
|
|
$return = json_encode([
|
|
|
[
|
|
[
|
|
|
"url" => $image_list[0]['url']
|
|
"url" => $image_list[0]['url']
|
|
@@ -223,7 +223,8 @@ class BaseData extends BasicLife
|
|
|
$return = $data['code_source_type']?(string)$data['code_source_type']:"1";
|
|
$return = $data['code_source_type']?(string)$data['code_source_type']:"1";
|
|
|
break;
|
|
break;
|
|
|
case "settle_type": // 收款方式 1-总店结算 2-分店结算
|
|
case "settle_type": // 收款方式 1-总店结算 2-分店结算
|
|
|
- $return = $data['code_source_type']?(string)$data['code_source_type']:"2";
|
|
|
|
|
|
|
+// $return = $data['code_source_type']?(string)$data['code_source_type']:"2";
|
|
|
|
|
+ $return = 2;
|
|
|
break;
|
|
break;
|
|
|
case "limit_rule": // 限制购买
|
|
case "limit_rule": // 限制购买
|
|
|
if ($data['limit_rule_type'] == 2) {
|
|
if ($data['limit_rule_type'] == 2) {
|