|
|
@@ -180,12 +180,13 @@ class ItemClass extends BaseClass
|
|
|
ProductClass::batchAdd($productAddData);
|
|
|
}
|
|
|
|
|
|
- //找出已经添加进来的花材
|
|
|
- $allItem = ProductClass::getAllByCondition(['mainId' => $mainId], null, '*', 'itemId', true);
|
|
|
+ //找出已经添加进来的所有花材
|
|
|
+ $allMyItem = ProductClass::getAllByCondition(['mainId' => $mainId], null, '*', 'itemId', true);
|
|
|
+ $hasCreate = [];
|
|
|
$ptCpClassList = PtCpClass::getAllByCondition(['delStatus' => 0], null, '*', null, true);
|
|
|
$hasClass = CpClassClass::getByCondition(['mainId' => $mainId], true);
|
|
|
if (!empty($ptCpClassList) && empty($hasClass)) {
|
|
|
- foreach ($ptCpClassList as $ptClassKey => $ptClass) {
|
|
|
+ foreach ($ptCpClassList as $ptClass) {
|
|
|
$ptCpClassId = $ptClass->id ?? 0;
|
|
|
$name = $ptClass->name ?? '';
|
|
|
$cover = $ptClass->cover ?? '';
|
|
|
@@ -201,6 +202,10 @@ class ItemClass extends BaseClass
|
|
|
if (!empty($currentCpList)) {
|
|
|
foreach ($currentCpList as $currentCp) {
|
|
|
$cpId = $currentCp->id ?? 0;
|
|
|
+ if (isset($hasCreate[$cpId])) {
|
|
|
+ //一个产品可能会在多个分类下,所以需要排重
|
|
|
+ continue;
|
|
|
+ }
|
|
|
$name = $currentCp->name ?? '';
|
|
|
$py = $currentCp->py ?? '';
|
|
|
$cover = $currentCp->cover ?? '';
|
|
|
@@ -217,6 +222,7 @@ class ItemClass extends BaseClass
|
|
|
'shopId' => 0,
|
|
|
'mainId' => $mainId,
|
|
|
], true);
|
|
|
+ $hasCreate[$cpId] = $cpId;
|
|
|
$ptCpItemList = PtCpItemClass::getAllByCondition(['cpId' => $cpId], null, '*', null, true);
|
|
|
if (!empty($ptCpItemList)) {
|
|
|
foreach ($ptCpItemList as $ptCpItem) {
|
|
|
@@ -227,10 +233,10 @@ class ItemClass extends BaseClass
|
|
|
$ptCpNamePy = $ptCpItem->cpPy ?? '';
|
|
|
$auth = $ptCpItem->auth ?? 0;
|
|
|
$inTurn = $ptCpItem->inTurn ?? 0;
|
|
|
- if (isset($allItem[$ptItemId]) == false) {
|
|
|
- util::fail("平台花材 {$ptItemName} ID {$ptItemId}没有设置花材分类");
|
|
|
+ if (isset($allMyItem[$ptItemId]) == false) {
|
|
|
+ util::fail("平台花材 {$ptItemName} ID {$ptItemId} 没有设置平台花材分类,导致没有生成产品");
|
|
|
}
|
|
|
- $current = $allItem[$ptItemId];
|
|
|
+ $current = $allMyItem[$ptItemId];
|
|
|
$productId = $current->id ?? 0;
|
|
|
$customCpId = $customCp->id ?? 0;
|
|
|
$addData = [
|