Jelajahi Sumber

新建产品

shish 2 tahun lalu
induk
melakukan
aca8b617bf
2 mengubah file dengan 76 tambahan dan 0 penghapusan
  1. 1 0
      app-pt/controllers/PtCpController.php
  2. 75 0
      biz/cp/classes/PtCpClass.php

+ 1 - 0
app-pt/controllers/PtCpController.php

@@ -18,6 +18,7 @@ class PtCpController extends BaseController
         $itemId = $get['id'] ?? 0;
         $cpClassId = $get['cpClassId'] ?? 0;
         $needLevelItem = $get['needLevelItem'] ?? 0;
+        PtCpClass::copyCreateCp($itemId, $cpClassId, $needLevelItem);
         util::complete();
     }
 

+ 75 - 0
biz/cp/classes/PtCpClass.php

@@ -3,6 +3,7 @@
 namespace biz\cp\classes;
 
 use biz\base\classes\BaseClass;
+use biz\item\classes\PtItemClass;
 use common\components\imgUtil;
 use common\components\stringUtil;
 use common\components\util;
@@ -13,6 +14,80 @@ class PtCpClass extends BaseClass
 
     public static $baseFile = '\biz\cp\models\PtCp';
 
+    public static function copyCreateCp($itemId, $cpClassId, $needLevelItem)
+    {
+        $info = PtItemClass::getById($itemId);
+        if (empty($info)) {
+            util::fail('没有找到花材');
+        }
+        if (isset($info->delStatus) && $info->delStatus == 1) {
+            util::fail('花材已经删除');
+        }
+        $info->auth = 1;
+        $info->save();
+        $itemAuth = 1;
+        $newItem = $info->attributes;
+        $itemId = $newItem['id'] ?? 0;
+        $itemName = $newItem['name'] ?? '';
+        $itemPy = $newItem['py'] ?? '';
+        $itemCover = $newItem['cover'] ?? '';
+        $itemInTurn = $newItem['inTurn'] ?? 100;
+        $addCp = [
+            'classId' => $cpClassId,
+            'name' => $itemName,
+            'cover' => $itemCover,
+            'auth' => $itemAuth,
+            'inTurn' => $itemInTurn,
+        ];
+        $newCp = PtCpClass::addCp($addCp);
+        $newCpId = $newCp->id ?? 0;
+
+        $addCpItem = [
+            'cpId' => $newCpId,
+            'itemId' => $itemId,
+            'auth' => $itemAuth,
+            'name' => $itemName,
+            'py' => $itemPy,
+            'cpName' => $itemName,
+            'cpPy' => $itemPy,
+        ];
+        PtCpItemClass::add($addCpItem, true);
+        if ($needLevelItem == 1) {
+            $a = $newItem;
+            $a['name'] = $a['name'] . ' A级';
+            unset($a['id']);
+            $b = $newItem;
+            $b['name'] = $b['name'] . ' B级';
+            unset($b['id']);
+            $c = $newItem;
+            $c['name'] = $c['name'] . ' C级';
+            unset($c['id']);
+            $d = $newItem;
+            $d['name'] = $d['name'] . ' D级';
+            unset($d['id']);
+            $e = $newItem;
+            $e['name'] = $e['name'] . ' E级';
+            unset($e['id']);
+            $arr = [$a, $b, $c, $d, $e];
+            foreach ($arr as $levelKey => $levelItem) {
+                $newItem = PtItemClass::add($levelItem, true);
+                $newItemName = $newItem->name ?? '';
+                $newItemPy = $newItem->py ?? '';
+                $newItemId = $newItem->id ?? 0;
+                $newAddCpItem = [
+                    'cpId' => $newCpId,
+                    'itemId' => $newItemId,
+                    'auth' => $itemAuth,
+                    'name' => $newItemName,
+                    'py' => $newItemPy,
+                    'cpName' => $itemName,
+                    'cpPy' => $itemPy,
+                ];
+                PtCpItemClass::add($newAddCpItem, true);
+            }
+        }
+    }
+
     public static function getCpList($where)
     {
         $data = self::getList('*', $where, 'inTurn DESC,addTime DESC');