xiaodai2017 2 năm trước cách đây
mục cha
commit
29ffd66951

+ 11 - 8
src/apis/goodsCost/index.js

@@ -7,10 +7,10 @@ export default {
  
   // 分页查询
   list: (data, params) => http(api + "getGoodList", data, "post", params),
-  // ...获取全部规格值
-  valueall: (data, params) => http(api + "valueall", data, "post", params),
-  // ...规格值添加
-  valueadd: (data, params) => http(api + "valuecreate", data, "post", params),
+  //获取全部规格值
+  valueall: (data, params) => http(api + "allSpec", data, "post", params),
+  //规格值添加
+  valueadd: (data, params) => http(api + "createSpec", data, "post", params),
   // 详情
   detail: (data, params) => http(api + "getGoodDetail", data, "post", params),
   // 基础信息更改
@@ -18,18 +18,21 @@ export default {
   // 成本更改
   updateP: (data, params) => http(api + "updateGoodPriceInfo", data, "post", params),
 
-  //... 商品数据修改(全部)
-  edit_update: (data, params) => http(api + "goodupedit", data, "post", params),
+  //商品数据修改(全部)
+  edit_update: (data, params) => http(api + "editGoodUp", data, "post", params),
+  // 判断是否允许修改成本信息和基础信息
+ checkIsUpdate: (data, params) => http(api + "checkIsUpdate", data, "post", params),
+
   // 删除
   delete: (data, params) => http(api + "goodupdelall", data, "post", params),
   // 更新状态
   status: (data, params) => http(api + "goodexam", data, "post", params),
   // ...获取分类详情
-  catinfo: (data, params) => http(api + "catinfo", data, "post", params),
+  catinfo: (data, params) => http(api + "catInfo", data, "post", params),
   // 删除
   copy: (data, params) => http(api + "goodupcopy", data, "post", params),
   // 取实时金价
-  golpricelast: (data, params) => http(api + "golpricelast", data, "post", params),
+  golpricelast: (data, params) => http(api + "goldPriceLastList", data, "post", params),
 
    //同一个spuCode下所有的商品都下线
    goodupoffline: (data, params) => http(api + "goodupoffline", data, "post", params),

+ 9 - 0
src/apis/recovery/index.js

@@ -0,0 +1,9 @@
+// 物业管理员
+import http from "@/apis/axios";
+const api = "abutment/";
+export default {
+  // 分页查询
+  list: (data, params) => http(api + "consultBidListCopy", data, "post", params),
+  // 采返商品详情
+  good_detail: (data, params) => http(api + "consultfeadinfo", data, "post", params),
+};

+ 3 - 2
src/components/file-upload/main.vue

@@ -15,7 +15,7 @@
 
 <script>
 import urlConfig from "@/apis/url-config";
-import { getToken } from "@/utils/auth";
+import { get_business_companyNo, getToken } from "@/utils/auth";
 import resToken from "@/mixins/resToken";
 //Uploadcondition 用于判断个性化文件 //返回 false 就不会上传文件
 //UploadErrorEvent 上传成功
@@ -89,8 +89,9 @@ export default {
           let form = new FormData();
           form.append("image", files[i]);
           form.append("token", getToken());
+          form.append("supplierNo", get_business_companyNo());
           axios
-            .post(`${that.imgAPI}admin/uploadimg`, form)
+            .post(`${that.imgAPI}abutment/uploadImg`, form)
             .then((res) => {
               const { status } = res;
               if (status === 200) {

+ 19 - 0
src/router/data.js

@@ -26,6 +26,25 @@ const config = [
       },
     ],
   },
+  {
+    is_display: "1",
+    menu_img: "el-icon-thumb",
+    menu_name: "招标反馈查询",
+    menu_route: "recovery",
+    status: "1",
+    child: [
+      {
+        is_display: "1",
+        is_private: "0",
+        menu_img: "el-icon-thumb",
+        menu_name: "招标反馈查询",
+        menu_route: "index",
+        menu_url: "recovery/index",
+        status: "1",
+      },
+    ],
+  },
+  
   {
     is_display: "1",
     menu_img: "el-icon-sold-out",

+ 1 - 1
src/views/goodsCost/columns.js

@@ -170,7 +170,7 @@ const listCol = [
     label: "操作",
     fixed: "right",
     _noset_: true,
-    width: "200px",
+    width: "140px",
     _slot_: "operation",
   },
 ];

+ 394 - 351
src/views/goodsCost/components/baseForm.vue

@@ -10,7 +10,7 @@
   >
     <el-row class="ddiv">
       <el-col :span="1" class="dtitle">
-        <ul style="padding: 140px 0 0 0">
+        <ul style="padding: 90px 0 0 0">
           <li>基</li>
           <li>础</li>
           <li>信</li>
@@ -20,6 +20,28 @@
       <el-col :span="23" class="dmain">
         <el-row>
           <el-col :span="12">
+            <el-form-item label="商品名称" prop="good_name">
+              <el-input
+                placeholder="商品名称"
+                maxlength="100"
+                :disabled="type === 'view' || type === 'editCoin'"
+                v-model="ruleForm.good_name"
+              ></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="4">
+            <el-form-item label="税点" prop="tax" label-width="60px">
+              <search-tax
+                :value="ruleForm.tax"
+                :disabled="type === 'view' || type === 'editBase' || type === 'editCoin'"
+                :size="'mini'"
+                :isDetail="type !== 'add'"
+                :placeholder="'税点'"
+                @searchChange="taxsearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
             <el-form-item label="商品分类" prop="cat_id">
               <search-sort
                 :value="ruleForm.cat_id"
@@ -32,16 +54,8 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="商品名称" prop="good_name">
-              <el-input
-                placeholder="商品名称"
-                maxlength="100"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.good_name"
-              ></el-input>
-            </el-form-item>
-          </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="12">
             <el-form-item label="业务公司" prop="company_id">
               <search-work-company
@@ -54,7 +68,20 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="12">
+          <el-col :span="4">
+            <el-form-item label="单位" prop="unit" label-width="60px">
+              <search-unit
+                :value="ruleForm.unit"
+                :disabled="type === 'view' || type === 'editCoin'"
+                :size="'mini'"
+                :isDetail="type !== 'add'"
+                :names="unit_name"
+                :placeholder="'单位'"
+                @searchChange="unitsearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <!-- <el-col :span="12">
             <el-form-item label="供应商" prop="supplierNo">
               <search-supplier
                 :value="ruleForm.supplierNo"
@@ -66,7 +93,7 @@
                 @searchChange="supplierNosearchChange"
               />
             </el-form-item>
-          </el-col>
+          </el-col> -->
           <el-col :span="8">
             <el-form-item label="商品品牌" prop="brandid">
               <search-brand
@@ -80,7 +107,7 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="8">
+          <!-- <el-col :span="8">
             <el-form-item label="销售权限" prop="is_auth">
               <el-select
                 v-model="ruleForm.is_auth"
@@ -98,33 +125,8 @@
                 />
               </el-select>
             </el-form-item>
-          </el-col>
+          </el-col> -->
 
-          <el-col :span="4">
-            <el-form-item label="单位" prop="unit" label-width="60px">
-              <search-unit
-                :value="ruleForm.unit"
-                :disabled="type === 'view' || type === 'editCoin'"
-                :size="'mini'"
-                :isDetail="type !== 'add'"
-                :names="unit_name"
-                :placeholder="'单位'"
-                @searchChange="unitsearchChange"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="4">
-            <el-form-item label="税点" prop="tax" label-width="60px">
-              <search-tax
-                :value="ruleForm.tax"
-                :disabled="type === 'view' || type === 'editBase' || type === 'editCoin'"
-                :size="'mini'"
-                :isDetail="type !== 'add'"
-                :placeholder="'税点'"
-                @searchChange="taxsearchChange"
-              />
-            </el-form-item>
-          </el-col>
           <el-col :span="8">
             <el-form-item label="专属类型" prop="is_exclusive">
               <search-exclusive
@@ -158,6 +160,27 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
+            <el-form-item label="是否定制" prop="good_type">
+              <el-select
+                v-model="ruleForm.good_type"
+                filterable
+                :disabled="type === 'view' || type === 'editCoin'"
+                clearable
+                style="width: 100%"
+                placeholder="是否定制"
+                @change="good_type_change"
+              >
+                <el-option
+                  v-for="group in options1"
+                  :key="group.id"
+                  :label="group.name"
+                  :value="group.id"
+                />
+              </el-select>
+            </el-form-item>
+          </el-col>
+
+          <!-- <el-col :span="8">
             <el-form-item label="是否库存品" prop="is_stock" label-width="95px">
               <el-select
                 v-model="ruleForm.is_stock"
@@ -176,10 +199,93 @@
                 />
               </el-select>
             </el-form-item>
-          </el-col>
-          <el-col :span="24" v-show="is_noble">
+          </el-col> -->
+
+          <el-col :span="24">
             <el-row>
               <el-col :span="8">
+                <el-form-item label="售后说明" prop="after_sales">
+                  <el-input
+                    type="textarea"
+                    :rows="4"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    placeholder="售后说明"
+                    v-model="ruleForm.after_sales"
+                    show-word-limit
+                    maxlength="250"
+                  >
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="商品备注" prop="good_remark">
+                  <el-input
+                    type="textarea"
+                    :rows="4"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    placeholder="商品备注"
+                    show-word-limit
+                    maxlength="250"
+                    v-model="ruleForm.good_remark"
+                  >
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="工艺说明" prop="craft_desc">
+                  <el-input
+                    type="textarea"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    :rows="4"
+                    placeholder="工艺说明"
+                    show-word-limit
+                    maxlength="250"
+                    v-model="ruleForm.craft_desc"
+                  >
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-col>
+          <el-col :span="24" v-show="is_noble || ruleForm.good_type === '1'">
+            <el-row>
+              <el-col :span="8" v-show="ruleForm.good_type === '1'">
+                <el-form-item label="定制起订量" prop="moq" label-width="95px">
+                  <digital-input
+                    :values="ruleForm.moq"
+                    :placeholder="'定制起订量'"
+                    :name="'ruleForm.moq'"
+                    :min="0"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    :max="100000000000"
+                    :position="'right'"
+                    :precision="0"
+                    :size="'mini'"
+                    :controls="false"
+                    :append="''"
+                    @reschange="number_change($event, 'moq')"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="8" v-show="ruleForm.good_type === '1'">
+                <el-form-item label="定制工期" prop="customized">
+                  <digital-input
+                    :values="ruleForm.customized"
+                    :placeholder="'定制工期'"
+                    :name="'ruleForm.customized'"
+                    :min="0"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    :max="100000000000"
+                    :position="'right'"
+                    :precision="0"
+                    :size="'mini'"
+                    :controls="false"
+                    :append="'天'"
+                    @reschange="number_change($event, 'customized')"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="8" v-show="is_noble">
                 <el-form-item label="贵金属重量" prop="noble_weight" label-width="95px">
                   <digital-input
                     :values="ruleForm.noble_weight"
@@ -199,7 +305,7 @@
                   />
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6" v-show="is_noble">
                 <el-form-item label="贵金属种类" prop="noble_metal" label-width="95px">
                   <search-metal-kind
                     :value="ruleForm.noble_metal"
@@ -213,7 +319,7 @@
                   />
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <!-- <el-col :span="8">
                 <el-form-item
                   label="启用实时金价"
                   prop="is_gold_price"
@@ -259,8 +365,8 @@
                     />
                   </el-select>
                 </el-form-item>
-              </el-col>
-              <el-col :span="10">
+              </el-col> -->
+              <el-col :span="10" v-show="is_noble">
                 <el-form-item label="配置要求" prop="config" label-width="85px">
                   <el-select
                     v-model="ruleForm.config"
@@ -279,7 +385,7 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="8" v-show="is_noble">
                 <el-form-item
                   label="其他配置要求"
                   prop="other_config"
@@ -297,105 +403,7 @@
             </el-row>
           </el-col>
 
-          <el-col :span="8">
-            <el-form-item label="售后说明" prop="after_sales">
-              <el-input
-                type="textarea"
-                :rows="4"
-                :disabled="type === 'view' || type === 'editCoin'"
-                placeholder="售后说明"
-                v-model="ruleForm.after_sales"
-                show-word-limit
-                maxlength="250"
-              >
-              </el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="8">
-            <el-form-item label="商品备注" prop="good_remark">
-              <el-input
-                type="textarea"
-                :rows="4"
-                :disabled="type === 'view' || type === 'editCoin'"
-                placeholder="商品备注"
-                show-word-limit
-                maxlength="250"
-                v-model="ruleForm.good_remark"
-              >
-              </el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="8">
-            <el-form-item label="工艺说明" prop="craft_desc">
-              <el-input
-                type="textarea"
-                :disabled="type === 'view' || type === 'editCoin'"
-                :rows="4"
-                placeholder="工艺说明"
-                show-word-limit
-                maxlength="250"
-                v-model="ruleForm.craft_desc"
-              >
-              </el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="8">
-            <el-form-item label="是否定制" prop="good_type">
-              <el-select
-                v-model="ruleForm.good_type"
-                filterable
-                :disabled="type === 'view' || type === 'editCoin'"
-                clearable
-                style="width: 100%"
-                placeholder="是否定制"
-                @change="good_type_change"
-              >
-                <el-option
-                  v-for="group in options1"
-                  :key="group.id"
-                  :label="group.name"
-                  :value="group.id"
-                />
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="8" v-show="ruleForm.good_type === '1'">
-            <el-form-item label="定制起订量" prop="moq" label-width="95px">
-              <digital-input
-                :values="ruleForm.moq"
-                :placeholder="'定制起订量'"
-                :name="'ruleForm.moq'"
-                :min="0"
-                :disabled="type === 'view' || type === 'editCoin'"
-                :max="100000000000"
-                :position="'right'"
-                :precision="0"
-                :size="'mini'"
-                :controls="false"
-                :append="''"
-                @reschange="number_change($event, 'moq')"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="8" v-show="ruleForm.good_type === '1'">
-            <el-form-item label="定制工期" prop="customized">
-              <digital-input
-                :values="ruleForm.customized"
-                :placeholder="'定制工期'"
-                :name="'ruleForm.customized'"
-                :min="0"
-                :disabled="type === 'view' || type === 'editCoin'"
-                :max="100000000000"
-                :position="'right'"
-                :precision="0"
-                :size="'mini'"
-                :controls="false"
-                :append="'天'"
-                @reschange="number_change($event, 'customized')"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="8" v-show="ruleForm.is_stock === '1'">
+          <!-- <el-col :span="8" v-show="ruleForm.is_stock === '1'">
             <el-form-item label="备库起订量" prop="stock_moq" label-width="95px">
               <digital-input
                 :values="ruleForm.stock_moq"
@@ -411,179 +419,208 @@
                 @reschange="number_change($event, 'stock_moq')"
               />
             </el-form-item>
-          </el-col>
+          </el-col> -->
         </el-row>
       </el-col>
     </el-row>
 
-    <el-row class="ddiv">
-      <el-col :span="1" class="dtitle">
-        <ul>
-          <li>规</li>
-          <li>格</li>
-          <li>信</li>
-          <li>息</li>
-        </ul>
-      </el-col>
-      <el-col :span="23" class="dmain" style="padding: 20px 0 20px 18px">
-        <el-table :data="spec_tableData" :size="'mini'" border style="width: 100%">
-          <el-table-column prop="spec_value" label="规格类型" />
-          <el-table-column prop="spec_value_value" label="规格值" />
-          <el-table-column
-            fixed="right"
-            v-if="type === 'add' || type === 'editBase' || type === 'edit'"
+    <el-row>
+      <el-col :span="12">
+        <el-row class="ddiv">
+          <el-col :span="1" class="dtitle">
+            <ul style="padding: 65px 0 0 0">
+              <li>包</li>
+              <li>装</li>
+              <li>信</li>
+              <li>息</li>
+            </ul></el-col
           >
-            <template slot="header" slot-scope="scope">
-              <span>操作</span>
-              <el-tooltip
-                class="item"
-                effect="dark"
-                content="添加规格类型"
-                placement="top"
+          <el-col :span="23" class="dmain">
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="包装方式" prop="packing_way">
+                  <el-input
+                    placeholder="包装方式"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    v-model="ruleForm.packing_way"
+                    maxlength="250"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="装箱规格" prop="packing_spec">
+                  <el-input
+                    placeholder="装箱规格"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    v-model="ruleForm.packing_spec"
+                    maxlength="250"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="装箱重量" prop="packing_weight">
+                  <digital-input
+                    :values="ruleForm.packing_weight"
+                    :placeholder="'装箱重量'"
+                    :min="0"
+                    :name="'ruleForm.packing_weight'"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    :max="100000000000"
+                    :position="'right'"
+                    :precision="3"
+                    :size="'mini'"
+                    :controls="false"
+                    :append="'g'"
+                    @reschange="number_change($event, 'packing_weight')"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="装箱尺寸" prop="packing_size">
+                  <el-input
+                    placeholder="装箱尺寸"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    v-model="ruleForm.packing_size"
+                    maxlength="250"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="商品尺寸" prop="good_size">
+                  <el-input
+                    placeholder="商品尺寸"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    v-model="ruleForm.good_size"
+                    maxlength="250"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="商品条形码" prop="good_bar">
+                  <el-input
+                    placeholder="商品条形码"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    v-model="ruleForm.good_bar"
+                    type="number"
+                    :min="0"
+                    :max="9999999999999"
+                    :step="0"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="包装清单" prop="packing_list">
+                  <el-input
+                    placeholder="包装清单"
+                    :disabled="type === 'view' || type === 'editCoin'"
+                    v-model="ruleForm.packing_list"
+                    maxlength="250"
+                  />
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-col>
+        </el-row>
+      </el-col>
+      <el-col :span="12">
+        <el-row class="ddiv ltitle">
+          <el-col :span="1" class="dtitle">
+            <ul style="padding: 65px 0 0 0">
+              <li>规</li>
+              <li>格</li>
+              <li>信</li>
+              <li>息</li>
+            </ul>
+          </el-col>
+          <el-col :span="23" class="dmain" style="padding: 20px 0 20px 18px">
+            <el-table
+              :data="spec_tableData"
+              :size="'mini'"
+              border
+              style="width: 100%"
+              height="164px"
+            >
+              <el-table-column prop="spec_value" label="规格类型" />
+              <el-table-column prop="spec_value_value" label="规格值" />
+              <el-table-column
+                fixed="right"
+                v-if="type === 'add' || type === 'editBase' || type === 'edit'"
               >
-                <i
-                  class="el-icon-circle-plus-outline fr"
-                  style="font-size: 18px; margin-top: 2px"
-                  @click="openEdit('-1', {})"
-                />
-              </el-tooltip>
-            </template>
-            <template slot-scope="scope">
-              <el-tooltip effect="dark" content="修改" placement="top">
-                <i
-                  class="el-icon-edit tb-icon"
-                  @click="openEdit(scope.$index, scope.row)"
-                ></i>
-              </el-tooltip>
+                <template slot="header" slot-scope="scope">
+                  <span>操作</span>
+                  <el-tooltip
+                    class="item"
+                    effect="dark"
+                    content="添加规格类型"
+                    placement="top"
+                  >
+                    <i
+                      class="el-icon-circle-plus-outline fr"
+                      style="font-size: 18px; margin-top: 2px"
+                      @click="openEdit('-1', {})"
+                    />
+                  </el-tooltip>
+                </template>
+                <template slot-scope="scope">
+                  <el-tooltip effect="dark" content="修改" placement="top">
+                    <i
+                      class="el-icon-edit tb-icon"
+                      @click="openEdit(scope.$index, scope.row)"
+                    ></i>
+                  </el-tooltip>
 
-              <el-tooltip
-                v-if="!scope.row.isMust"
-                effect="dark"
-                content="删除"
-                placement="top"
-              >
-                <i class="el-icon-delete tb-icon" @click="openDelete(scope.$index)"></i>
-              </el-tooltip>
-            </template>
-          </el-table-column>
-        </el-table>
-        <!-- 弹窗 新增/修改 -->
-        <base-form-add-edit
-          :index="modelIndex"
-          :show-model="showModel"
-          :sitem="sitem"
-          @refresh="refreshEdit"
-          @cancel="showModel = false"
-        />
+                  <el-tooltip
+                    v-if="!scope.row.isMust"
+                    effect="dark"
+                    content="删除"
+                    placement="top"
+                  >
+                    <i
+                      class="el-icon-delete tb-icon"
+                      @click="openDelete(scope.$index)"
+                    ></i>
+                  </el-tooltip>
+                </template>
+              </el-table-column>
+            </el-table>
+            <!-- 弹窗 新增/修改 -->
+            <base-form-add-edit
+              :index="modelIndex"
+              :show-model="showModel"
+              :sitem="sitem"
+              @refresh="refreshEdit"
+              @cancel="showModel = false"
+            />
+          </el-col>
+        </el-row>
       </el-col>
     </el-row>
+
     <el-row class="ddiv">
       <el-col :span="1" class="dtitle">
-        <ul>
-          <li>包</li>
-          <li>装</li>
+        <ul style="padding: 20px 0 0 0">
+          <li></li>
+          <li></li>
           <li>信</li>
           <li>息</li>
         </ul></el-col
       >
       <el-col :span="23" class="dmain">
         <el-row>
-          <el-col :span="6">
-            <el-form-item label="包装方式" prop="packing_way">
-              <el-input
-                placeholder="包装方式"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.packing_way"
-                maxlength="250"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="装箱规格" prop="packing_spec">
-              <el-input
-                placeholder="装箱规格"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.packing_spec"
-                maxlength="250"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="装箱重量" prop="packing_weight">
-              <digital-input
-                :values="ruleForm.packing_weight"
-                :placeholder="'装箱重量'"
-                :min="0"
-                :name="'ruleForm.packing_weight'"
+          <el-col :span="8">
+            <el-form-item label="发货地" prop="delivery_place">
+              <select-area
+                :placeholder="'发货地'"
+                :value="ruleForm.delivery_place"
+                :is-detail="id !== 'add'"
                 :disabled="type === 'view' || type === 'editCoin'"
-                :max="100000000000"
-                :position="'right'"
-                :precision="3"
                 :size="'mini'"
-                :controls="false"
-                :append="'g'"
-                @reschange="number_change($event, 'packing_weight')"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="装箱尺寸" prop="packing_size">
-              <el-input
-                placeholder="装箱尺寸"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.packing_size"
-                maxlength="250"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="商品尺寸" prop="good_size">
-              <el-input
-                placeholder="商品尺寸"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.good_size"
-                maxlength="250"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="商品条形码" prop="good_bar">
-              <el-input
-                placeholder="商品条形码"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.good_bar"
-                type="number"
-                :min="0"
-                :max="9999999999999"
-                :step="0"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="包装清单" prop="packing_list">
-              <el-input
-                placeholder="包装清单"
-                :disabled="type === 'view' || type === 'editCoin'"
-                v-model="ruleForm.packing_list"
-                maxlength="250"
+                @selectChange="selectAreaChange($event, 'delivery_place')"
               />
             </el-form-item>
           </el-col>
-        </el-row>
-      </el-col>
-    </el-row>
-    <el-row class="ddiv">
-      <el-col :span="1" class="dtitle">
-        <ul>
-          <li>发</li>
-          <li>货</li>
-          <li>信</li>
-          <li>息</li>
-        </ul></el-col
-      >
-      <el-col :span="23" class="dmain">
-        <el-row>
-          <el-col :span="6">
+
+          <el-col :span="8">
             <el-form-item label="供货区域" prop="supply_area">
               <el-select
                 v-model="ruleForm.supply_area"
@@ -603,7 +640,7 @@
             </el-form-item>
           </el-col>
 
-          <el-col :span="6">
+          <el-col :span="8">
             <el-form-item label="物流时间" prop="delivery_day">
               <digital-input
                 :values="ruleForm.delivery_day"
@@ -621,7 +658,19 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="6">
+          <el-col :span="8">
+            <el-form-item label="产地" prop="origin_place">
+              <select-area
+                :placeholder="'产地'"
+                :value="ruleForm.origin_place"
+                :size="'mini'"
+                :is-detail="id !== 'add'"
+                :disabled="type === 'view' || type === 'editCoin'"
+                @selectChange="selectAreaChange($event, 'origin_place')"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
             <el-form-item label="供货周期" prop="lead_time">
               <digital-input
                 :values="ruleForm.lead_time"
@@ -639,7 +688,7 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="6">
+          <el-col :span="8">
             <el-form-item label="调样周期" prop="sample_day">
               <digital-input
                 :values="ruleForm.sample_day"
@@ -657,36 +706,12 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="发货地" prop="delivery_place">
-              <select-area
-                :placeholder="'发货地'"
-                :value="ruleForm.delivery_place"
-                :is-detail="id !== 'add'"
-                :disabled="type === 'view' || type === 'editCoin'"
-                :size="'mini'"
-                @selectChange="selectAreaChange($event, 'delivery_place')"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="产地" prop="origin_place">
-              <select-area
-                :placeholder="'产地'"
-                :value="ruleForm.origin_place"
-                :size="'mini'"
-                :is-detail="id !== 'add'"
-                :disabled="type === 'view' || type === 'editCoin'"
-                @selectChange="selectAreaChange($event, 'origin_place')"
-              />
-            </el-form-item>
-          </el-col>
         </el-row>
       </el-col>
     </el-row>
     <el-row class="ddiv">
       <el-col :span="1" class="dtitle">
-        <ul>
+        <ul style="padding: 25px 0 0 0">
           <li>图</li>
           <li>片</li>
           <li>信</li>
@@ -827,7 +852,7 @@
     </el-row>
     <el-row class="ddiv">
       <el-col :span="1" class="dtitle">
-        <ul style="padding: 0">
+        <ul style="padding: 25px 0 0 0">
           <li>固</li>
           <li>定</li>
           <li>与</li>
@@ -1211,13 +1236,13 @@ export default {
               stock_moq,
               is_stock,
             } = this.ruleForm;
+            let min = parseInt(this.ladder_tableData[0].min_num),
+              smoq = parseInt(stock_moq);
+            this.ladder_tableData.forEach((si) => {
+              let n = parseInt(si.min_num);
+              min = n < min ? n : min;
+            });
             if (is_stock === "1") {
-              let min = parseInt(this.ladder_tableData[0].min_num),
-                smoq = parseInt(stock_moq);
-              this.ladder_tableData.forEach((si) => {
-                let n = parseInt(si.min_num);
-                min = n < min ? n : min;
-              });
               // console.log(smoq, min, smoq < min);
               if (smoq < min) {
                 this.$message.warning("备库起订量不能低于成本最低起订量!");
@@ -1225,6 +1250,10 @@ export default {
                 return;
               }
             }
+            if (min !== 1) {
+              this.$message.warning("要求填写一件起订量的成本!");
+              this.loading = false;
+            }
             // if (is_step === "0" && this.ladder_tableData.length > 1) {
             //   this.$message.warning("不启用阶梯成本,只能录入一条阶梯成本信息!");
             //   this.loading = false;
@@ -1268,7 +1297,11 @@ export default {
             let model = JSON.parse(JSON.stringify(this.ruleForm));
             model.cat_id = model.cat_id.toString();
             model.brandid = model.brandid.toString();
-            model.supplierNo = model.supplierNo.toString();
+            // model.supplierNo = model.supplierNo.toString();
+            model.is_auth = "1";
+            model.is_gold_price = "0";
+            model.is_stock = "0";
+            model.is_diff = "0";
             model.delivery_place = model.delivery_place.toString();
             model.origin_place = model.origin_place.toString();
             model.good_info_img = model.good_info_img.toString();
@@ -1277,6 +1310,7 @@ export default {
             model.speclist = JSON.parse(JSON.stringify(this.setResData(1)));
             model.good_ladder = JSON.parse(JSON.stringify(this.setResData(2)));
             model.config = model.config.toString();
+
             model.is_exclusive =
               model.is_exclusive.length > 0
                 ? model.is_exclusive[model.is_exclusive.length - 1]
@@ -1639,15 +1673,15 @@ export default {
         weight: "0",
         good_type: "0",
         is_stock: "0",
-        supplierNo: [],
+        // supplierNo: [],
         company_id: this.business_companyNo || "",
-        is_auth: "",
+        is_auth: "1",
         tax: "",
         good_name: "",
         unit: [],
         is_exclusive: [],
         noble_metal: "",
-        is_gold_price: "",
+        is_gold_price: "0",
         moq: "",
         customized: "",
         after_sales: "",
@@ -1678,7 +1712,7 @@ export default {
         cgd_gold_price: "0",
         noble_price: "0",
         // is_step: "0",
-        is_diff: "",
+        is_diff: "0",
         config: [],
         other_config: "",
         stock_moq: "0",
@@ -1712,7 +1746,7 @@ export default {
             is_exclusive, //	string	是否是专属
             customized, //	string	定制工期
             tax, //string	税率
-            supplierNo, //	string	供应商
+            // supplierNo, //	string	供应商
             is_auth, //string	是否有销售权限0 否1 是
             auth_img, //	string	无
             exclusive,
@@ -1813,9 +1847,9 @@ export default {
             weight: weight || "",
             good_type: good_type || "0",
             is_stock: is_stock || "0",
-            supplierNo: supplierNo ? [supplierNo] : [],
+            // supplierNo: supplierNo ? [supplierNo] : [],
             company_id: companyNo || "",
-            is_auth: is_auth || "",
+            is_auth: is_auth || "1",
             tax: tax ? tax + "%" : "",
             good_name: good_name || "",
             unit: good_unit ? [good_unit] : [],
@@ -1861,7 +1895,7 @@ export default {
             cgd_gold_price: cgd_gold_price || "",
             noble_price: noble_price || "0",
             // is_step: is_step || "0",
-            is_diff: is_diff || "",
+            is_diff: is_diff || "0",
             config: config ? config.split(",") : [],
             other_config: other_config || "",
             stock_moq: stock_moq || "0",
@@ -1923,7 +1957,7 @@ export default {
           open_fee: open_fee || "",
           noble_metal: noble_metal || "",
           noble_weight: noble_weight || "",
-          is_gold_price: is_gold_price || "",
+          is_gold_price: is_gold_price || "0",
           market_price: market_price || "",
           cgd_gold_price: cgd_gold_price || "",
           // is_step: is_step || "",
@@ -1936,11 +1970,20 @@ export default {
     //商品分类选择
     async goods_class_change(e) {
       const { code, pid, id, label, cat_desc } = e;
-      this.ruleForm.cat_id = id ? [id] : [];
+      if (pid === "6") {
+        this.$message.warning("不允许创建贵金属商品!");
+        this.ruleForm.cat_id = [];
+        this.ruleForm.after_sales = "";
+      } else {
+        this.ruleForm.cat_id = id ? [id] : [];
+        this.ruleForm.after_sales = cat_desc || "";
+      }
+      // this.is_noble = pid === "6";
+      this.is_noble = false;
       this.$refs.ruleForm.validateField("cat_id");
-      this.ruleForm.after_sales = cat_desc || "";
+
       this.$refs.ruleForm.validateField("after_sales");
-      this.is_noble = pid === "6";
+
       this.sch_is_noble();
       await this.set_must_spec();
       await this.get_all_fee();
@@ -2021,12 +2064,12 @@ export default {
       this.ruleForm.brandid = id ? [id] : [];
       this.$refs.ruleForm.validateField("brandid");
     },
-    //供应商选择
-    supplierNosearchChange(e) {
-      const { id, code, label } = e;
-      this.ruleForm.supplierNo = code ? [code] : [];
-      this.$refs.ruleForm.validateField("supplierNo");
-    },
+    // //供应商选择
+    // supplierNosearchChange(e) {
+    //   const { id, code, label } = e;
+    //   this.ruleForm.supplierNo = code ? [code] : [];
+    //   this.$refs.ruleForm.validateField("supplierNo");
+    // },
     //业务企业选择
     company_idsearchChange(e) {
       const { id, code, label } = e;

+ 51 - 44
src/views/goodsCost/components/baseFormAddEdit.vue

@@ -4,8 +4,8 @@
     :title="title"
     :center="true"
     align="left"
-    top="18vh"
-    width="600px"
+    top="5vh"
+    width="1040px"
     :close-on-click-modal="false"
     :visible.sync="showModelThis"
     element-loading-text="拼命加载中"
@@ -22,21 +22,14 @@
             status-icon
             :size="'small'"
             :rules="rulesThis"
-            label-width="80px"
+            label-width="30px"
             class="demo-ruleForm"
           >
-            <el-form-item label="规格类型" prop="spec_id">
-              <search-spec
-                :value="ruleForm.spec_id"
-                :disabled="sitem.isMust"
-                :size="'mini'"
-                :isDetail="false"
-                :placeholder="'规格类型'"
-                @searchChange="spec_idsearchChange"
-              />
-            </el-form-item>
             <el-form-item label="规格值" prop="spec_value_id">
-              <div v-if="specVlist.length > 0">
+              <div
+                v-if="specVlist.length > 0"
+                style="max-height: 600px; overflow-y: scroll"
+              >
                 <el-radio-group
                   v-model="ruleForm.spec_value_id"
                   @change="spec_value_id_change"
@@ -49,39 +42,53 @@
                   >
                 </el-radio-group>
               </div>
-              <div class="no-data" v-else>暂无规格值,请添加!</div>
+              <div class="no-data tc" style="" v-else>暂无规格值,请添加!</div>
             </el-form-item>
+            <el-row>
+              <el-col :span="6">
+                <el-form-item label="类型" prop="spec_id" label-width="58px">
+                  <search-spec
+                    :value="ruleForm.spec_id"
+                    :disabled="sitem.isMust"
+                    :size="'small'"
+                    :isDetail="false"
+                    :placeholder="'规格类型'"
+                    @searchChange="spec_idsearchChange"
+                  />
+                </el-form-item>
+              </el-col>
+              <el-col :span="18" style="text-align: right; padding: 0px 0 0 10px">
+                <el-input
+                  style="width: 209px"
+                  v-model="sinput"
+                  class="fl"
+                  :disabled="id == 'edit'"
+                  :size="'small'"
+                  placeholder="规格值名称,如红色"
+                  maxlength="100"
+                />
+                <el-button
+                  style="margin: 0 0 0 10px"
+                  icon="el-icon-plus"
+                  :size="'small'"
+                  @click="add_spec"
+                  class="fl"
+                  >新增规格值</el-button
+                >
+                <el-button
+                  v-if="id !== 'edit'"
+                  :size="'small'"
+                  type="primary"
+                  @click="submitForm"
+                  >保 存
+                </el-button>
+                <el-button @click="showModelThis = false" :size="'small'">{{
+                  id == "edit" ? "关 闭" : "取 消"
+                }}</el-button>
+              </el-col>
+            </el-row>
           </el-form>
         </el-col>
-        <el-col :span="24" style="text-align: right; padding-top: 18px">
-          <el-input
-            style="width: 209px"
-            v-model="sinput"
-            class="fl"
-            :disabled="id == 'edit'"
-            :size="'small'"
-            placeholder="规格值名称,如红色"
-            maxlength="100"
-          />
-          <el-button
-            style="margin: 0 0 0 10px"
-            icon="el-icon-plus"
-            :size="'small'"
-            @click="add_spec"
-            class="fl"
-            >新增规格值</el-button
-          >
-          <el-button
-            v-if="id !== 'edit'"
-            :size="'small'"
-            type="primary"
-            @click="submitForm"
-            >保 存
-          </el-button>
-          <el-button @click="showModelThis = false" :size="'small'">{{
-            id == "edit" ? "关 闭" : "取 消"
-          }}</el-button>
-        </el-col>
       </el-row>
     </el-card>
   </el-dialog>

+ 5 - 1
src/views/goodsCost/detail.vue

@@ -153,7 +153,7 @@ export default {
       console.log(row);
     },
     async refresh(e) {
-      await this.routeReGoto("goodsCost", {});
+      await this.routeReGoto("/goodsCost/index", {});
     },
     async initData() {
       this.loading = true;
@@ -202,12 +202,16 @@ export default {
   }
   /deep/ .ddiv {
     border-top: 1px solid #dcdfe6;
+    // &.ltitle {
+    //   border-left: 1px solid #dcdfe6;
+    // }
   }
   /deep/ .dtitle {
     width: 40px;
     text-align: center;
     height: 100%;
     min-height: 100%;
+
     ul {
       padding: 12px 0 0 0;
     }

+ 4 - 5
src/views/goodsCost/index.vue

@@ -198,7 +198,7 @@
         >
           <i
             class="el-icon-view tb-icon"
-            @click="getRouter('goodsCostDetail', scope.row.spuCode)"
+            @click="getRouter('/goodsCost/gDetail', scope.row.spuCode)"
           ></i>
         </el-tooltip>
 
@@ -215,7 +215,7 @@
           <i
             class="el-icon-edit tb-icon"
             @click="
-              routeGoto('goodsCost/gDetail', {
+              routeGoto('/goodsCost/gDetail', {
                 id: scope.row.spuCode,
                 type: 'edit',
               })
@@ -256,9 +256,9 @@
           ></i>
         </el-tooltip>
 
-        <el-tooltip effect="dark" content="删除" placement="top">
+        <!-- <el-tooltip effect="dark" content="删除" placement="top">
           <i class="el-icon-delete tb-icon" @click="deleteItem(scope.row.spuCode)"></i>
-        </el-tooltip>
+        </el-tooltip> -->
       </template>
     </ex-table>
   </div>
@@ -279,7 +279,6 @@ export default {
   data() {
     return {
       dialogFormVisible: false,
-
       statusList,
       isonlineoptions: [
         { id: "0", name: "未上线" },

+ 336 - 0
src/views/recovery/columns.js

@@ -0,0 +1,336 @@
+const columns = [
+  // {
+  //   prop: "zxNo",
+  //   label: "竞价单编号",
+  //   width: "158px",
+  // },
+  {
+    prop: "infoNo",
+    label: "任务单号",
+    width: "155px",
+  },
+
+  {
+    prop: "bidNo",
+    label: "反馈单编号",
+    width: "158px",
+  },
+  
+  {
+    prop: "good_name",
+    label: "商品名称",
+    _slot_: "good_name",
+    'min-width': "220px",
+  },
+  {
+    prop: "can",
+    label: "分类",
+    _slot_: "can",
+    'min-width': "180px",
+  },
+
+
+  {
+    prop: "brand_name",
+    label: "品牌",
+    width: "80px",
+  },
+
+
+  {
+    prop: "unit",
+    label: "单位",
+    width: "60px",
+  },
+  // {
+  //   prop: "company_name",
+  //   label: "采购员部门",
+  //   minWidth: "150px",
+  // },
+  // {
+  //   prop: "creater",
+  //   label: "采购员",
+  //   width: "60px",
+  // },
+  {
+    prop: "addtime",
+    label: "创建时间",
+    width: "145px",
+  },
+  {
+    prop: "",
+    label: "操作",
+    fixed: "right",
+    _noset_: true,
+    width: "50px",
+    _slot_: "operation",
+  },
+]
+const statusOptions = [
+  { value: "0", label: "待与供应商确认" },
+  { value: "1", label: "待入库" },
+  { value: "2", label: "部分入库" },
+  { value: "3", label: "入库完成" },
+  { value: "4", label: "已取消订单" },
+];
+
+//是否定制
+const options1 = [
+  { id: "0", name: "否" },
+  { id: "1", name: "是" },
+]
+//专属类型
+const options2 = [
+  { id: "0", name: "非泰康" },
+  { id: "1", name: "泰康" },
+]
+//销售权限
+const options3 = [
+  { id: "0", name: "无销售权限" },
+  { id: "1", name: "有销售权限" },
+]
+
+//是否库存品
+const options4 = [
+  { id: "0", name: "非库存品" },
+  { id: "1", name: "库存品" },
+]
+//是否启用实时金价
+const options5 = [
+  { id: "0", name: "否" },
+  { id: "1", name: "是" },
+]
+//供货区域
+const options6 = [
+  { id: "1", name: "全国" },
+  { id: "2", name: "全国除偏远" },
+]
+//是否启用阶梯
+const options7 = [
+  { id: "0", name: "否" },
+  { id: "1", name: "是" },
+]
+const options8 = [
+  // { id: "0", name: "待提交" },
+  { id: "1", name: "待完善成本" },
+  { id: "2", name: "待产品审核" },
+  { id: "3", name: "待财务定价" },
+  { id: "4", name: "待财务审核定价" },
+  { id: "5", name: "待上线" },
+  { id: "6", name: "上线成功" },
+  { id: "7", name: "审核失败" },
+  { id: "8", name: "已下线" },
+]
+
+const options9 = [
+  { id: "0", name: "现结" },
+  { id: "1", name: "月清" },
+  { id: "2", name: "双月清" },
+]
+const costColumns = [
+  {
+    prop: "good_name",
+    label: "商品名称",
+    _slot_: "good_name",
+    span: 24,
+  },
+  {
+    prop: "supplierName",
+    label: "供应商名称",
+    _slot_: "supplierName",
+    span: 12,
+  },
+  {
+    prop: "brand_name",
+    label: "品牌",
+    span: 12,
+  },
+  {
+    prop: "cat",
+    label: "分类",
+    _slot_: "cat",
+    span: 12,
+  },
+
+  {
+    prop: "tax",
+    label: "税点",
+    append: '%',
+    span: 6,
+  },
+  {
+    prop: "unit",
+    label: "单位",
+    span: 6,
+  },
+  {
+    prop: "delivery_place_cn",
+    label: "发货地",
+    span: 9,
+  },
+  {
+    prop: "expire_day",
+    label: "有效期",
+    append: '天',
+    span: 5,
+  },
+  {
+    prop: "delivery_day",
+    label: "物流时间",
+    append: '天',
+    span: 5,
+  },
+  {
+    prop: "work_day",
+    label: "生产工期",
+    append: '天',
+    span: 5,
+  },
+  {
+    prop: "origin_place_cn",
+    label: "产地",
+    span: 9,
+  },
+  {
+    prop: "pay_way",
+    label: "付款方式",
+    _slot_: "pay_way",
+    span: 5,
+  },
+  {
+    prop: "creater",
+    label: "反馈人",
+    span: 4,
+  },
+  {
+    prop: "addtime",
+    label: "反馈时间",
+    span: 6,
+  },
+
+
+ 
+
+
+  {
+    prop: "weight",
+    label: "商品总克重",
+    append: 'g',
+    span: 6,
+  },
+
+  {
+    prop: "supply_area",
+    label: "供货区域",
+    _slot_: "supply_area",
+    span: 6,
+  },
+ 
+
+  {
+    prop: "send_way",
+    label: "发货方式",
+    _slot_: "send_way",
+    span: 6,
+  },
+  {
+    prop: "total_fee",
+    label: "成本合计",
+    append: '元',
+    span: 6,
+  },
+  {
+    prop: "cert_fee",
+    label: "证书费",
+    append: '元',
+    span: 6,
+  },
+  {
+    prop: "pakge_fee",
+    label: "包装费",
+    append: '元',
+    span: 6,
+  },
+
+  {
+    prop: "cost_fee",
+    label: "工艺费",
+    append: '元',
+    span: 6,
+  },
+
+  {
+    prop: "mark_fee",
+    label: "加标费",
+    append: '元',
+    span: 6,
+  },
+
+  {
+    prop: "demo_fee",
+    label: "打样费",
+    append: '元',
+    span: 6,
+  },
+
+  {
+    prop: "open_fee",
+    label: "开模费",
+    append: '元',
+    span: 6,
+  },
+
+  {
+    prop: "delivery_fee",
+    label: "物流费",
+    append: '元',
+    span: 6,
+  },
+  {
+    prop: "nake_fee",
+    label: "裸价",
+    append: '元',
+    span: 6,
+  },
+
+
+
+
+
+
+  // {
+  //   prop: "stock_moq",
+  //   label: "备库起订量",
+  //   span: 4,
+  // },
+  // {
+  //   prop: "noble",
+  //   _slot_: "noble",
+  //   label: "贵金属信息",
+  //   span: 20,
+  // },
+
+  {
+    prop: "remark",
+    label: "采返备注",
+    span: 24,
+  },
+  {
+    prop: "cost_desc",
+    label: "工艺说明",
+    span: 24,
+  },
+  {
+    prop: "good_img",
+    _slot_: "good_img",
+    label: "商品图片",
+    span: 24,
+  },
+
+
+
+
+
+]
+
+export { columns, statusOptions,  options1, options2, options3, options4, options5, options6, options7, options8, options9, costColumns }

+ 224 - 0
src/views/recovery/index.vue

@@ -0,0 +1,224 @@
+<template>
+  <div class="recovery pagePadding">
+    <ex-table
+      v-loading="loading"
+      :table="table"
+      :data="tableData"
+      :columns="columns"
+      :page="pageInfo"
+      :size="size"
+      @page-curr-change="handlePageChange"
+      @page-size-change="handleSizeChange"
+      @screen-reset="
+        pageInfo.curr = 1;
+        parmValue.page = 1;
+        searchList();
+      "
+      @screen-submit="
+        pageInfo.curr = 1;
+        parmValue.page = 1;
+        searchList();
+      "
+    >
+      <template #table-header="{}">
+        <div style="width: 100%">
+          <el-row style="padding: 0 0 0 80px">
+            <el-col :span="6" style="width: 300px">
+              <el-input
+                clearable
+                placeholder="任务单号"
+                v-model="parmValue.infoNo"
+                maxlength="40"
+                :size="searchSize"
+                @blur="
+                  pageInfo.curr = 1;
+                  parmValue.page = 1;
+                  searchList();
+                "
+              >
+              </el-input>
+            </el-col>
+            <el-col :span="6" style="width: 300px; padding: 0 0 0 10px">
+              <el-input
+                clearable
+                placeholder="反馈编号"
+                v-model="parmValue.bidNo"
+                maxlength="40"
+                :size="searchSize"
+                @blur="
+                  pageInfo.curr = 1;
+                  parmValue.page = 1;
+                  searchList();
+                "
+              >
+              </el-input>
+            </el-col>
+            <!-- <el-col :span="6" style="width: 150px; padding: 0 0 0 10px">
+              <el-input
+                clearable
+                placeholder="采购员部门"
+                v-model="parmValue.company_name"
+                maxlength="40"
+                :size="searchSize"
+                @blur="
+                  pageInfo.curr = 1;
+                  parmValue.page = 1;
+                  searchList();
+                "
+              >
+              </el-input>
+            </el-col> -->
+
+            <el-col :span="4" style="width: 66px; float: right">
+              <el-button type="warning" class="fr" :size="searchSize" @click="restSearch">
+                重置
+              </el-button>
+            </el-col>
+
+            <el-col :span="3" style="width: 66px; float: right">
+              <el-button
+                :size="searchSize"
+                type="primary"
+                style="float: right; margin-left: 5px"
+                @click="searchList"
+              >
+                刷新
+              </el-button>
+            </el-col>
+          </el-row>
+        </div>
+      </template>
+      <template #good_name="{ scope }">
+        <!-- <img
+            style="width: 20px; height: 20px"
+            class="hover fl"
+            v-viewer
+            :src="scope.row.good_img"
+            alt=""
+            v-if="scope.row.good_img"
+          /> -->
+        <span>{{ scope.row.good_name }}</span>
+        <span v-for="(si, i) in scope.row.specinfo" :key="si.spec_id + i">
+          {{ i === 0 ? "__" : "--" }}{{ si.spec_name }}[{{ si.spec_value_name }}]
+        </span>
+      </template>
+      <template #can="{ scope }">
+        <span v-for="(si, i) in scope.row.can" :key="si.id + i">
+          {{ i === 0 ? "" : "_" }}{{ si.name }}
+        </span>
+      </template>
+
+      <template #operation="{ scope }">
+        <el-tooltip effect="dark" content="详情" placement="top">
+          <i
+            class="el-icon-view tb-icon"
+            @click="(modelId = scope.row.bidNo), (showModel = true)"
+          ></i>
+        </el-tooltip>
+      </template>
+    </ex-table>
+    <show-data :showModel="showModel" :bidNo="modelId" @cancel="showModel = false" />
+  </div>
+</template>
+<script>
+import mixinPage from "@/mixins/elPaginationHandle";
+import resToken from "@/mixins/resToken";
+import asyncRequest from "@/apis/recovery";
+import { columns } from "./columns";
+import { mapGetters } from "vuex";
+import showData from "./showData";
+export default {
+  name: "recovery",
+  mixins: [mixinPage, resToken],
+  components: {
+    showData,
+  },
+  computed: {
+    ...mapGetters(["tablebtnSize", "searchSize", "size"]),
+    powers() {
+      const tran =
+        this.$store.getters.btnList.find((item) => item.menu_route == "recovery") || {};
+      const { action } = tran ?? {};
+      return action ?? [];
+    },
+  },
+  data() {
+    return {
+      // 状态
+      loading: false,
+      showModel: false,
+      isDetail: false,
+      modelId: 0,
+
+      parmValue: {
+        infoNo: "",
+        bidNo: "",
+        is_own: "1",
+        company_name: "", //部门
+        page: 1, // 页码
+        size: 15, // 每页显示条数
+      },
+      tableData: [],
+      // 表格 - 数据
+      tableData: [],
+      // 表格 - 参数
+      table: {
+        stripe: true,
+        border: true,
+        _defaultHeader_: ["setcol"],
+      },
+      // 表格 - 分页
+      pageInfo: {
+        size: 15,
+        curr: 1,
+        total: 0,
+      },
+      // 表格 - 列参数
+      columns: columns,
+    };
+  },
+  mounted() {
+    this.searchList();
+  },
+
+  methods: {
+    restSearch() {
+      this.parmValue = {
+        infoNo: "",
+        bidNo: "",
+        is_own: "1",
+        company_name: "", //部门
+        page: 1, // 页码
+        size: 15, // 每页显示条数
+      };
+      // 表格 - 分页
+      this.pageInfo = {
+        size: 15,
+        curr: 1,
+        total: 0,
+      };
+      this.searchList();
+    },
+
+    async searchList() {
+      this.loading = true;
+      const res = await asyncRequest.list(this.parmValue);
+      if (res && res.code === 0 && res.data) {
+        this.tableData = res.data.list;
+        this.pageInfo.total = Number(res.data.count);
+      } else if (res && res.code >= 100 && res.code <= 104) {
+        await this.logout();
+      } else {
+        this.tableData = [];
+        this.pageInfo.total = 0;
+      }
+      this.loading = false;
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+.recovery {
+  // text-align: right;
+}
+</style>

+ 188 - 0
src/views/recovery/showData.vue

@@ -0,0 +1,188 @@
+<template>
+  <el-dialog
+    :title="'采返商品详情'"
+    :center="true"
+    align="left"
+    top="8vh"
+    width="1040px"
+    @close="showModelThis = false"
+    :close-on-click-modal="false"
+    :visible.sync="showModelThis"
+    v-loading="loading"
+    element-loading-text="拼命加载中"
+    element-loading-spinner="el-icon-loading"
+    element-loading-background="rgba(0, 0, 0, 0.8)"
+    append-to-body
+  >
+    <show-data-table
+      style="margin: -20px 0 0 0"
+      :sitem="sitem"
+      :columns="costColumns"
+      :border="true"
+    >
+      <template slot="supplierName">
+        <span>{{ sitem.supplierName }}</span>
+
+        <el-popover placement="top" width="300" trigger="hover">
+          <ul>
+            <li>
+              <span>供应商编号:</span><span>{{ sitem.supplierNo }}</span>
+            </li>
+          </ul>
+          <i class="el-icon-warning-outline fr" slot="reference"></i>
+        </el-popover>
+      </template>
+      <template slot="good_name">
+        <span>{{ sitem.good_name }}</span>
+        <span v-for="(si, i) in sitem.specinfo" :key="si.spec_id + i">
+          <span v-if="i !== 0">-</span>
+          <span v-else>_</span>
+          <span>{{ si.spec_name }}[{{ si.spec_value_name }}]</span>
+        </span>
+        <el-popover placement="top" width="300" trigger="hover">
+          <ul>
+            <li>
+              <span>商品编号:</span><span>{{ sitem.spuCode }}</span>
+            </li>
+          </ul>
+          <i class="el-icon-warning-outline fr" slot="reference"></i>
+        </el-popover>
+      </template>
+      <template slot="cat">
+        <span v-for="(si, i) in sitem.cat_info" :key="si.id + i">
+          {{ i === 0 ? "" : "_" }}{{ si.name }}
+        </span>
+      </template>
+      <template slot="send_way">
+        <span>{{ sitem.send_way === "1" ? "供应商包邮" : "公司自提" }}</span>
+      </template>
+
+      <template slot="good_type">
+        <el-tag
+          :size="'mini'"
+          v-text="
+            (options1.find((item) => item.id == sitem.good_type) || {}).name || '--'
+          "
+        />
+        <span v-if="sitem.good_type === '1'" style="padding: 0 0 0 5px"
+          >{{ sitem.moq }}起订/工期{{ sitem.customized }}天</span
+        >
+      </template>
+      <template slot="pay_way">
+        <el-tag
+          :size="'mini'"
+          v-text="(options9.find((item) => item.id == sitem.pay_way) || {}).name || '--'"
+        />
+      </template>
+      <template slot="supply_area">
+        <el-tag
+          :size="'mini'"
+          v-text="
+            (options6.find((item) => item.id == sitem.supply_area) || {}).name || '--'
+          "
+        />
+      </template>
+
+      <template slot="noble">
+        <span v-if="sitem.noble_name"
+          >{{ sitem.noble_weight ? sitem.noble_weight : "0" }}g-{{ sitem.noble_name }}-{{
+            sitem.gold_price ? sitem.gold_price : "0"
+          }}元/g-{{ sitem.is_gold_price === "0" ? "不" : "" }}启用实时金价-{{
+            sitem.is_diff === "1" ? "有" : "无"
+          }}工差-{{ sitem.config }}-{{ sitem.other_config }}</span
+        >
+        <span v-else>--</span>
+      </template>
+      <template slot="good_img">
+        <img
+          v-viewer
+          style="width: 23px; height: 23px; margin: 0 5px 0 0"
+          class="fl"
+          v-for="(si, sii) in sitem.good_img"
+          :key="si + sii"
+          :src="si"
+          alt=""
+        />
+      </template>
+    </show-data-table>
+  </el-dialog>
+</template>
+
+<script>
+import {
+  options1,
+  options2,
+  options3,
+  options4,
+  options5,
+  options6,
+  options7,
+  options8,
+  options9,
+  costColumns,
+} from "./columns";
+import resToken from "@/mixins/resToken";
+import asyncRequest from "@/apis/recovery";
+export default {
+  name: "showData",
+  props: ["showModel", "bidNo"],
+  mixins: [resToken],
+  data() {
+    return {
+      newTime: "",
+      loading: true,
+      showModelThis: this.showModel,
+      sitem: "",
+      options1,
+      options2,
+      options3,
+      options4,
+      options5,
+      options6,
+      options7,
+      options8,
+      options9,
+      costColumns,
+    };
+  },
+  watch: {
+    showModel: function (val) {
+      this.showModelThis = val;
+      if (val) {
+        this.initData();
+      }
+    },
+    showModelThis(val) {
+      if (!val) {
+        this.$emit("cancel");
+      }
+    },
+  },
+
+  methods: {
+    async initData() {
+      this.loading = true;
+      const { code, message, data } = await asyncRequest.good_detail({
+        bidNo: this.bidNo,
+      });
+      if (code === 0) {
+        this.sitem = data;
+        // const { good_img } = this.sitem;
+        // if (good_img) {
+        //   this.sitem.good_img = good_img.split(",");
+        // } else {
+        //   this.sitem.good_img = [];
+        // }
+
+        this.loading = false;
+      } else if (code >= 100 && code <= 104) {
+        await this.logout();
+      } else {
+        this.$message.warning(message);
+      }
+    },
+  },
+};
+</script>
+
+<style></style>

+ 0 - 0
src/views/recovery/采购采返查询


+ 8 - 2
src/views/workbench/components/baseForm.vue

@@ -1174,8 +1174,14 @@ export default {
     //分类选择
     async cat_id_change(e) {
       const { pid, id, label } = e;
-      this.pid = pid || "";
-      this.ruleForm.cat_id = id ? [id] : [];
+      if (pid === "6") {
+        this.$message.warning("不允许反馈贵金属商品!");
+        this.pid = "";
+        this.ruleForm.cat_id = [];
+      } else {
+        this.pid = pid || "";
+        this.ruleForm.cat_id = id ? [id] : [];
+      }
 
       this.$refs.ruleForm.validateField("cat_id");
       const { is_gold_price } = this.ruleForm;

+ 2 - 2
src/views/workbench/components/baseFormAddEdit.vue

@@ -4,8 +4,8 @@
     :title="title"
     :center="true"
     align="left"
-    top="18vh"
-    width="570px"
+    top="5vh"
+    width="1040px"
     :close-on-click-modal="false"
     :visible.sync="showModelThis"
     element-loading-text="拼命加载中"

+ 2 - 2
src/views/workbench/detail.vue

@@ -24,8 +24,8 @@
                 <li>{{ sitem.salesman }}</li>
                 <li>到货时间:</li>
                 <li>{{ sitem.arrival_time }}</li>
-                <li>客户名称:</li>
-                <li>{{ sitem.khname }}</li>
+                <li>需求公司:</li>
+                <li>{{ sitem.company }}</li>
               </ul>
             </div>
             <div class="left-card" v-if="sitem">