From df60073f4fb06ea2d16984635e0714bae8a1f8e9 Mon Sep 17 00:00:00 2001
From: quanwei <419654421@qq.com>
Date: Mon, 22 Dec 2025 18:03:35 +0800
Subject: [PATCH] 1.在总后台首页装修增加了活动专区和智能匹配 模块 2.目前活动专区获取的是发布需求最新的数据,智能匹配是用户没登录前也是获取发布需求最新数据,登录后会根据用户发布的需求,通过分类匹配到对应的数据 3.修复缴纳保证金报错 4.修复发布需求报错

---
 admin/app/shop/model/product/Product.php |   24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 deletions(-)

diff --git a/admin/app/shop/model/product/Product.php b/admin/app/shop/model/product/Product.php
index bc0bf8d..c75e0fa 100644
--- a/admin/app/shop/model/product/Product.php
+++ b/admin/app/shop/model/product/Product.php
@@ -3,6 +3,7 @@
 namespace app\shop\model\product;
 
 use app\common\model\product\Product as ProductModel;
+use app\shop\controller\product\ProductCategory;
 use app\shop\service\ProductService;
 use app\common\library\helper;
 /**
@@ -34,6 +35,9 @@
 		
         $data['grade_ids'] = implode(',', $data['grade_ids']);
         $data['app_id'] = $data['sku']['app_id'] = self::$app_id;
+        if ($data['category_ids']) {
+            $data['category_id'] = $data['category_ids'][0]; // 从商品多分类中获取第一个作为主分类 by lyzflash
+        }
         // 开启事务
         $this->startTrans();
         try {
@@ -47,6 +51,8 @@
             if($data['is_picture'] == 1){
                 $this->addProductContentImages($data['contentImage']);
             }
+            // 保存商品多分类
+            $data['category_ids'] && $this->saveProductCategorys($data['category_ids']);
             $this->commit();
             return true;
         } catch (\Exception $e) {
@@ -54,6 +60,16 @@
             $this->rollback();
             return false;
         }
+    }
+    /**
+     * 添加商品多分类 by lzyflash 2023.06.15
+     */
+    private function saveProductCategorys($data)
+    {
+        // 先删除所有分类
+        $model = new ProductCategory;
+        $model->removeAll($this['product_id']);
+        $model->addCategoryList($this['product_id'], $data);
     }
 
     /**
@@ -104,12 +120,16 @@
         $data['grade_ids'] = implode(',', $data['grade_ids']);
         $data['app_id'] = $data['sku']['app_id'] = self::$app_id;
         $productSkuIdList = helper::getArrayColumn(($this['sku']), 'product_sku_id');
+        // 获取分类 by lyzflash 2023.06.15
+        if ($data['category_ids']) {
+            $data['category_id'] = $data['category_ids'][0]; // 从商品多分类中获取第一个作为主分类 by lyzflash
+        }
         return $this->transaction(function () use ($data, $productSkuIdList) {
             // 审核商品
             if($data['submit_type'] == 'edit'){
                 unset($data['audit_status']);
             }
-			
+
             $this->save($data);
             // 商品规格
             $this->addProductSpec($data, true, $productSkuIdList);
@@ -121,6 +141,8 @@
             }
             // 店铺商品总销量
             $this->reSupplierTotalSales($this['shop_supplier_id']);
+            // 保存商品多分类
+            $data['category_ids'] && $this->saveProductCategorys($data['category_ids']);
             return true;
         });
     }

--
Gitblit v1.9.2