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.修复发布需求报错

---
 supplier_vue/src/views/product/product/part/Basic.vue |   65 +++++++++++++++++++++++++++++---
 1 files changed, 59 insertions(+), 6 deletions(-)

diff --git a/supplier_vue/src/views/product/product/part/Basic.vue b/supplier_vue/src/views/product/product/part/Basic.vue
index 93354e9..4696c9c 100644
--- a/supplier_vue/src/views/product/product/part/Basic.vue
+++ b/supplier_vue/src/views/product/product/part/Basic.vue
@@ -5,7 +5,20 @@
     <el-form-item label="商品名称:" :rules="[{ required: true, message: '请填写商品名称' }]" prop="model.product_name">
       <el-input v-model="form.model.product_name" class="max-w460"></el-input>
     </el-form-item>
-   <el-form-item label="所属分类:" :rules="[{ required: true, message: '请选择商品分类' }]" prop="model.category_id">
+    <el-form-item label="所属分类:" :rules="[{ required: true, message: '请选择商品分类' }]" prop="model.category_ids">
+      <el-select v-model="form.model.category_ids" multiple style="width:460px">
+        <template v-for="cat in form.category" v-if="cat.dish_store_id==dish_store_id">
+          <el-option :value="cat.category_id" :key="cat.category_id" :label="cat.name"></el-option>
+          <template v-if="cat.child !== undefined" v-for="two in cat.child">
+            <el-option :value="two.category_id" :key="two.category_id" :label="two.name" style="padding-left: 30px;"></el-option>
+            <template v-if="two.child !== undefined" v-for="three in two.child">
+              <el-option :value="three.category_id" :key="three.category_id" :label="three.name" style="padding-left: 60px;"></el-option>
+            </template>
+          </template>
+        </template>
+      </el-select>
+    </el-form-item>
+<!--   <el-form-item label="所属分类:" :rules="[{ required: true, message: '请选择商品分类' }]" prop="model.category_id">
       <el-select v-model="form.model.category_id">
         <template v-for="cat in form.category">
           <el-option :value="cat.category_id" :key="cat.category_id" :label="cat.name"></el-option>
@@ -17,6 +30,15 @@
           </template>
         </template>
       </el-select>
+    </el-form-item>-->
+    <el-form-item v-if="form.is_newcomer" label="归属供应商:" prop="model.belonging_shop_supplier_id">
+      <el-row>
+        <el-button @click="openSupplier" icon="el-icon-plus">选择供应商</el-button>
+        <div v-if="form.model.belonging_shop_supplier_id" class="mt10">
+          <el-tag closable @close="clearSupplier">{{ form.supplierName }}</el-tag>
+        </div>
+        <div class="gray9">生成订单时归属的供应商,不选择则默认为当前供应商</div>
+      </el-row>
     </el-form-item>
     <el-form-item label="预告商品:">
       <el-radio-group v-model="form.model.is_preview">
@@ -101,6 +123,7 @@
         <el-radio :label="0">实物商品</el-radio>
         <el-radio :label="1">虚拟商品(无需发货)</el-radio>
         <el-radio :label="2">券商品</el-radio>
+        <el-radio :label="3">服务商品(无需发货)</el-radio>
       </el-radio-group>
     </el-form-item>
     <el-form-item label="运费:" prop="model.delivery_id" v-if="form.model.is_virtual==0">
@@ -124,18 +147,22 @@
       <el-input type="number" min="0" v-model="form.model.limit_num" class="max-w460"></el-input>
       <div class="gray9">每个会员购买的最大数量,0为不限购</div>
     </el-form-item>
-    <el-form-item label="发货类型:" v-if="form.model.is_virtual==1">
+    <el-form-item label="发货类型:" v-if="form.model.is_virtual==1||form.model.is_virtual==3">
       <el-radio-group v-model="form.model.virtual_auto">
         <el-radio :label="1">自动</el-radio>
         <el-radio :label="0">手动</el-radio>
       </el-radio-group>
     </el-form-item>
-    <el-form-item label="虚拟内容:" :rules="[{ required: true, message: '请填写虚拟内容' }]" prop="model.virtual_content" v-if="form.model.is_virtual==1">
+    <el-form-item label="虚拟商品:" :rules="[{ required: true, message: '请填写虚拟商品' }]" prop="model.virtual_content" v-if="form.model.is_virtual==1">
       <el-input type="text" v-model="form.model.virtual_content" class="max-w460"></el-input>
-      <div class="gray9">虚拟物品内容</div>
+      <div class="gray9">虚拟商品内容</div>
+    </el-form-item>
+    <el-form-item label="服务商品:" :rules="[{ required: true, message: '请填写服务商品' }]" prop="model.service_content" v-if="form.model.is_virtual==3">
+      <el-input type="text" v-model="form.model.service_content" class="max-w460"></el-input>
+      <div class="gray9">服务商品内容</div>
     </el-form-item>
 
-    <template v-if="form.model.virtual_auto==0&&form.model.is_virtual==1">
+    <template v-if="form.model.virtual_auto==0&&(form.model.is_virtual==1||form.model.is_virtual==3)">
       <el-form-item label="支持线下核销:">
         <el-radio-group v-model="form.model.is_verify">
           <el-radio :label="1">支持</el-radio>
@@ -184,6 +211,8 @@
     <Upload v-if="isProductUpload" :config="config" :isupload="isProductUpload" @returnImgs="returnProductImgsFunc">上传图片</Upload>
     <!--选择门店-->
     <StoreSelect :isstore="isstore" :excludeIds="excludeStoreIds" :islist="isstorelist" @closeDialog="closeStoreDialogFunc($event)"></StoreSelect>
+    <!--选择供应商-->
+    <Supplier :open="isSupplierOpen" :islist="false" @close="closeSupplierFunc"></Supplier>
   </div>
 </template>
 
@@ -192,11 +221,13 @@
 import Upload from '@/components/file/Upload';
 import draggable from 'vuedraggable';
 import StoreSelect from '@/components/store/StoreSelect';
+import Supplier from '@/components/supplier/Supplier.vue';
 export default {
   components: {
     Upload,
     draggable,
-    StoreSelect
+    StoreSelect,
+    Supplier
   },
   data() {
     return {
@@ -213,6 +244,8 @@
       isstorelist: true,
       /*门店需要去重的*/
       excludeStoreIds: [],
+      /*是否显示供应商选择*/
+      isSupplierOpen: false,
     };
   },
   inject: ['form'],
@@ -316,6 +349,26 @@
       self.form.verifyStoreList.splice(index, 1);
     },
 
+    /*打开供应商选择*/
+    openSupplier() {
+      this.isSupplierOpen = true;
+    },
+
+    /*关闭供应商选择*/
+    closeSupplierFunc(e) {
+      this.isSupplierOpen = false;
+      if (e.type == 'success') {
+        this.form.model.belonging_shop_supplier_id = e.params.shop_supplier_id;
+        this.form.supplierName = e.params.name;
+      }
+    },
+
+    /*清除供应商*/
+    clearSupplier() {
+      this.form.model.belonging_shop_supplier_id = null;
+      this.form.supplierName = '';
+    }
+
   }
 };
 </script>

--
Gitblit v1.9.2