Forráskód Böngészése

Merge branch 'master' of http://git.cc-lotus.info/pointToNetwork/web-admin

lrf 2 éve
szülő
commit
07608800bd

+ 62 - 64
src/views/platmanag/goods/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div id="goods">
-    <template v-if="view === 'list'">
+    <span v-show="view === 'list'">
       <search-1
         :form="searchInfo"
         @onSubmit="search"
@@ -25,69 +25,67 @@
         @spec="toSpec"
         @copy="toCopy"
       ></data-table>
-    </template>
-    <template v-else>
-      <el-row>
-        <el-col :span="24" style="margin: 0 0 10px 0">
-          <el-col :span="2"><el-button type="primary" size="mini" @click="toBack()">返回</el-button></el-col>
-          <el-col :span="2"><el-button type="primary" size="mini" @click="toSave(form)">保存</el-button></el-col>
-        </el-col>
-        <el-col :span="24">
-          <data-form :fields="infoFields" :rules="rules" v-model="form" labelWidth="150px" @save="toSave">
-            <template #tags="{ item }">
-              <el-cascader v-model="form[item.model]" :options="tagsList" :props="props" clearable filterable :show-all-levels="false"></el-cascader>
-            </template>
-            <template #act_tags>
-              <el-option v-for="i in act_tagsList" :key="i.value" :label="i.label" :value="i.value"></el-option>
-            </template>
-            <template #status>
-              <el-option v-for="i in goodsStatusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
-            </template>
-            <template #is_cashBack>
-              <el-option v-for="i in statusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
-            </template>
-            <template #cb_config>
-              <el-form :model="cb_config" ref="cb_config" label-width="180px" @save="toSave" v-if="form.is_cashBack == '0'">
-                <el-col :span="24">
-                  <el-form-item label="返现金额类型" prop="back_type">
-                    <el-select v-model="cb_config.back_type" clearable filterable placeholder="请选择返现金额类型" size="small" style="width: 100%">
-                      <el-option v-for="i in typeList" :key="i.value" :label="i.label" :value="i.value"> </el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="24" v-if="cb_config.back_type == 'fixed'">
-                  <el-form-item label="具体返现金额设置" prop="money">
-                    <el-input v-model="cb_config.money" placeholder="请输入金额" type="number" size="small"></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="24" v-if="cb_config.back_type == 'percent'">
-                  <el-form-item label="具体返现金额设置" prop="money">
-                    <el-input v-model="cb_config.money" placeholder="请输入百分比" type="number" size="small"></el-input>
-                  </el-form-item>
-                </el-col>
-              </el-form>
-            </template>
-            <template #brief>
-              <editor v-model="form.brief" url="/files/point/goods/upload" />
-            </template>
-            <template #shop>
-              <el-select
-                v-model="form.shop"
-                filterable
-                remote
-                reserve-keyword
-                placeholder="请输入商铺名称"
-                :remote-method="searchShop"
-                :loading="loading"
-                @change="selectShop"
-              >
-                <el-option v-for="item in shopList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
-              </el-select>
-            </template>
-          </data-form>
-        </el-col>
-      </el-row>
-    </template>
+    </span>
+    <el-row v-if="view === 'info'">
+      <el-col :span="24" style="margin: 0 0 10px 0">
+        <el-col :span="2"><el-button type="primary" size="mini" @click="toBack()">返回</el-button></el-col>
+        <el-col :span="2"><el-button type="primary" size="mini" @click="toSave(form)">保存</el-button></el-col>
+      </el-col>
+      <el-col :span="24">
+        <data-form :fields="infoFields" :rules="rules" v-model="form" labelWidth="150px" @save="toSave">
+          <template #tags="{ item }">
+            <el-cascader v-model="form[item.model]" :options="tagsList" :props="props" clearable filterable :show-all-levels="false"></el-cascader>
+          </template>
+          <template #act_tags>
+            <el-option v-for="i in act_tagsList" :key="i.value" :label="i.label" :value="i.value"></el-option>
+          </template>
+          <template #status>
+            <el-option v-for="i in goodsStatusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
+          </template>
+          <template #is_cashBack>
+            <el-option v-for="i in statusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
+          </template>
+          <template #cb_config>
+            <el-form :model="cb_config" ref="cb_config" label-width="180px" @save="toSave" v-if="form.is_cashBack == '0'">
+              <el-col :span="24">
+                <el-form-item label="返现金额类型" prop="back_type">
+                  <el-select v-model="cb_config.back_type" clearable filterable placeholder="请选择返现金额类型" size="small" style="width: 100%">
+                    <el-option v-for="i in typeList" :key="i.value" :label="i.label" :value="i.value"> </el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24" v-if="cb_config.back_type == 'fixed'">
+                <el-form-item label="具体返现金额设置" prop="money">
+                  <el-input v-model="cb_config.money" placeholder="请输入金额" type="number" size="small"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24" v-if="cb_config.back_type == 'percent'">
+                <el-form-item label="具体返现金额设置" prop="money">
+                  <el-input v-model="cb_config.money" placeholder="请输入百分比" type="number" size="small"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-form>
+          </template>
+          <template #brief>
+            <editor v-model="form.brief" url="/files/point/goods/upload" />
+          </template>
+          <template #shop>
+            <el-select
+              v-model="form.shop"
+              filterable
+              remote
+              reserve-keyword
+              placeholder="请输入商铺名称"
+              :remote-method="searchShop"
+              :loading="loading"
+              @change="selectShop"
+            >
+              <el-option v-for="item in shopList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
+            </el-select>
+          </template>
+        </data-form>
+      </el-col>
+    </el-row>
   </div>
 </template>
 

+ 3 - 7
src/views/platmanag/goodsRate/detail.vue

@@ -71,7 +71,7 @@ const { mapActions } = createNamespacedHelpers('goodsRate');
 
 export default {
   name: 'form-1',
-  props: {},
+  props: { id: { type: String } },
   components: {},
   data: function () {
     return {
@@ -120,14 +120,10 @@ export default {
     },
     // 返回
     toBack() {
-      window.history.go('-1');
-    },
-  },
-  computed: {
-    id() {
-      return this.$route.query.id;
+      this.$emit('toBack');
     },
   },
+  computed: {},
   metaInfo() {
     return { title: this.$route.meta.title };
   },

+ 30 - 20
src/views/platmanag/goodsRate/index.vue

@@ -2,24 +2,27 @@
   <div id="index">
     <el-row>
       <el-col :span="24" class="main animate__animated animate__backInRight">
-        <el-col :span="24" class="one"> <span>商品评价</span> </el-col>
-        <el-col :span="24" class="two">
-          <search-1 :form="searchForm" @onSubmit="search" @toReset="toClose"></search-1>
-        </el-col>
-        <el-col :span="24" class="four">
-          <data-table
-            :select="true"
-            :selected="selected"
-            @handleSelect="handleSelect"
-            :fields="fields"
-            :opera="opera"
-            @query="search"
-            :data="list"
-            :total="total"
-            @edit="toEdit"
-          >
-          </data-table>
-        </el-col>
+        <span v-show="view === 'list'">
+          <el-col :span="24" class="one"> <span>商品评价</span> </el-col>
+          <el-col :span="24" class="two">
+            <search-1 :form="searchForm" @onSubmit="search" @toReset="toClose"></search-1>
+          </el-col>
+          <el-col :span="24" class="four">
+            <data-table
+              :select="true"
+              :selected="selected"
+              @handleSelect="handleSelect"
+              :fields="fields"
+              :opera="opera"
+              @query="search"
+              :data="list"
+              :total="total"
+              @edit="toEdit"
+            >
+            </data-table>
+          </el-col>
+        </span>
+        <detail v-if="view === 'info'" :id="id" @toBack="toBack"></detail>
       </el-col>
     </el-row>
   </div>
@@ -35,10 +38,12 @@ export default {
   props: {},
   components: {
     search1: () => import('./parts/search-1.vue'),
+    detail: () => import('./detail.vue'),
   },
   data: function () {
     const that = this;
     return {
+      view: 'list',
       // 列表
       opera: [{ label: '查看评价', method: 'edit' }],
       fields: [
@@ -51,7 +56,6 @@ export default {
       searchForm: {},
       // 多选值
       selected: [],
-      shop: {},
     };
   },
   async created() {
@@ -61,6 +65,7 @@ export default {
   methods: {
     ...dictData({ getDict: 'query' }),
     ...goods(['query', 'delete', 'fetch', 'update', 'create']),
+    // 查询
     async search({ skip = 0, limit = this.$limit, ...info } = {}) {
       let condition = _.cloneDeep(this.searchForm);
       let res = await this.query({ skip, limit, ...condition, ...info });
@@ -71,7 +76,12 @@ export default {
     },
     // 修改
     async toEdit({ data }) {
-      this.$router.push({ path: '/platmanag/goodsRate/detail', query: { id: data.id } });
+      this.$set(this, `id`, data.id);
+      this.$set(this, `view`, 'info');
+    },
+
+    toBack() {
+      this.view = 'list';
     },
     // 重置
     toClose() {

+ 27 - 39
src/views/platmanag/order/index.vue

@@ -1,44 +1,32 @@
 <template>
   <div id="index">
-    <keep-alive>
-      <el-row>
-        <el-col :span="24" class="main animate__animated animate__backInRight">
-          <template v-if="view === 'list'">
-            <el-col :span="24" class="one"> <span>订单管理</span> </el-col>
-            <el-col :span="24" class="four">
-              <el-tabs v-model="activeName" type="border-card">
-                <el-tab-pane label="待付款" name="1">
-                  <card-1 :statusList="statusList" @toDetail="toDetail" @toSales="toSales"></card-1>
-                </el-tab-pane>
-                <el-tab-pane label="待发货" name="2">
-                  <card-2 :statusList="statusList" @toDetails="toDetails" @toSaless="toSaless"></card-2>
-                </el-tab-pane>
-                <el-tab-pane label="待收货" name="3">
-                  <card-3 :statusList="statusList" @toDetails="toDetails" @toSaless="toSaless"></card-3>
-                </el-tab-pane>
-                <el-tab-pane label="已收货" name="4">
-                  <card-4 :statusList="statusList" @toDetails="toDetails" @toSaless="toSaless"></card-4>
-                </el-tab-pane>
-              </el-tabs>
-            </el-col>
-          </template>
-          <!--  -->
-          <template v-else-if="view === 'card1_detail'">
-            <detail_order :id="order_id" @toBack="toBack"></detail_order>
-          </template>
-          <template v-else-if="view === 'card1_sales'">
-            <detail_sales_order :id="sales_id" @toBack="toBack"></detail_sales_order>
-          </template>
-          <!--  -->
-          <template v-else-if="view === 'card_detail'">
-            <detail_orderDetail :id="order_id" @toBack="toBack"></detail_orderDetail>
-          </template>
-          <template v-else-if="view === 'card_sales'">
-            <detail_sales_orderDetail :id="sales_id" :status="status" @toBack="toBack"></detail_sales_orderDetail>
-          </template>
-        </el-col>
-      </el-row>
-    </keep-alive>
+    <el-row>
+      <el-col :span="24" class="main animate__animated animate__backInRight">
+        <span v-show="view === 'list'">
+          <el-col :span="24" class="one"> <span>订单管理</span> </el-col>
+          <el-col :span="24" class="four">
+            <el-tabs v-model="activeName" type="border-card">
+              <el-tab-pane label="待付款" name="1">
+                <card-1 :statusList="statusList" @toDetail="toDetail" @toSales="toSales"></card-1>
+              </el-tab-pane>
+              <el-tab-pane label="待发货" name="2">
+                <card-2 :statusList="statusList" @toDetails="toDetails" @toSaless="toSaless"></card-2>
+              </el-tab-pane>
+              <el-tab-pane label="待收货" name="3">
+                <card-3 :statusList="statusList" @toDetails="toDetails" @toSaless="toSaless"></card-3>
+              </el-tab-pane>
+              <el-tab-pane label="已收货" name="4">
+                <card-4 :statusList="statusList" @toDetails="toDetails" @toSaless="toSaless"></card-4>
+              </el-tab-pane>
+            </el-tabs>
+          </el-col>
+        </span>
+        <detail_order v-if="view === 'card1_detail'" :id="order_id" @toBack="toBack"></detail_order>
+        <detail_sales_order v-else-if="view === 'card1_sales'" :id="sales_id" @toBack="toBack"></detail_sales_order>
+        <detail_orderDetail v-else-if="view === 'card_detail'" :id="order_id" @toBack="toBack"></detail_orderDetail>
+        <detail_sales_orderDetail v-else-if="view === 'card_sales'" :id="sales_id" :status="status" @toBack="toBack"></detail_sales_orderDetail>
+      </el-col>
+    </el-row>
   </div>
 </template>
 

+ 3 - 5
src/views/platmanag/sales/index.vue

@@ -2,7 +2,7 @@
   <div id="card-1">
     <el-row>
       <el-col :span="24" class="main animate__animated animate__backInRight">
-        <template v-if="view === 'list'">
+        <span v-show="view === 'list'">
           <el-col :span="24" class="one"> <span>售后管理</span> </el-col>
           <el-col :span="24" class="two">
             <search-1 :form="searchForm" :statusList="statusList" :typeList="typeList" @onSubmit="search" @toReset="toClose"> </search-1>
@@ -21,10 +21,8 @@
             >
             </data-table>
           </el-col>
-        </template>
-        <template v-else-if="view === 'order'">
-          <detail :id="id" @toBack="toBack"></detail>
-        </template>
+        </span>
+        <detail v-if="view === 'order'" :id="id" @toBack="toBack"></detail>
       </el-col>
     </el-row>
   </div>

+ 48 - 50
src/views/selfShop/goods/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div id="goods">
-    <template v-if="view === 'list'">
+    <span v-show="view === 'list'">
       <data-search :fields="searchFields" v-model="searchInfo" @query="search">
         <template #status>
           <el-option v-for="i in goodsStatusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
@@ -31,55 +31,53 @@
         @spec="toSpec"
         @copy="toCopy"
       ></data-table>
-    </template>
-    <template v-else>
-      <el-row>
-        <el-col :span="24" style="margin: 0 0 10px 0">
-          <el-col :span="2"><el-button type="primary" size="mini" @click="toBack()">返回</el-button></el-col>
-          <el-col :span="2"><el-button type="primary" size="mini" @click="toSave(form)">保存</el-button></el-col>
-        </el-col>
-        <el-col :span="24">
-          <data-form :fields="infoFields" :rules="rules" v-model="form" labelWidth="150px" @save="toSave">
-            <template #tags="{ item }">
-              <el-cascader v-model="form[item.model]" :options="tagsList" :props="props" clearable filterable :show-all-levels="false"></el-cascader>
-            </template>
-            <template #act_tags>
-              <el-option v-for="i in act_tagsList" :key="i.value" :label="i.label" :value="i.value"></el-option>
-            </template>
-            <template #status>
-              <el-option v-for="i in goodsStatusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
-            </template>
-            <template #is_cashBack>
-              <el-option v-for="i in statusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
-            </template>
-            <template #cb_config>
-              <el-form :model="cb_config" ref="cb_config" label-width="180px" @save="toSave" v-if="form.is_cashBack == '0'">
-                <el-col :span="24">
-                  <el-form-item label="返现金额类型" prop="back_type">
-                    <el-select v-model="cb_config.back_type" clearable filterable placeholder="请选择返现金额类型" size="small" style="width: 100%">
-                      <el-option v-for="i in typeList" :key="i.value" :label="i.label" :value="i.value"> </el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="24" v-if="cb_config.back_type == 'fixed'">
-                  <el-form-item label="具体返现金额设置" prop="money">
-                    <el-input v-model="cb_config.money" placeholder="请输入金额" type="number" size="small"></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="24" v-if="cb_config.back_type == 'percent'">
-                  <el-form-item label="具体返现金额设置" prop="money">
-                    <el-input v-model="cb_config.money" placeholder="请输入百分比" type="number" size="small"></el-input>
-                  </el-form-item>
-                </el-col>
-              </el-form>
-            </template>
-            <template #brief>
-              <editor v-model="form.brief" url="/files/point/goods/upload" />
-            </template>
-          </data-form>
-        </el-col>
-      </el-row>
-    </template>
+    </span>
+    <el-row v-if="view === 'info'">
+      <el-col :span="24" style="margin: 0 0 10px 0">
+        <el-col :span="2"><el-button type="primary" size="mini" @click="toBack()">返回</el-button></el-col>
+        <el-col :span="2"><el-button type="primary" size="mini" @click="toSave(form)">保存</el-button></el-col>
+      </el-col>
+      <el-col :span="24">
+        <data-form :fields="infoFields" :rules="rules" v-model="form" labelWidth="150px" @save="toSave">
+          <template #tags="{ item }">
+            <el-cascader v-model="form[item.model]" :options="tagsList" :props="props" clearable filterable :show-all-levels="false"></el-cascader>
+          </template>
+          <template #act_tags>
+            <el-option v-for="i in act_tagsList" :key="i.value" :label="i.label" :value="i.value"></el-option>
+          </template>
+          <template #status>
+            <el-option v-for="i in goodsStatusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
+          </template>
+          <template #is_cashBack>
+            <el-option v-for="i in statusList" :key="i.value" :label="i.label" :value="i.value"></el-option>
+          </template>
+          <template #cb_config>
+            <el-form :model="cb_config" ref="cb_config" label-width="180px" @save="toSave" v-if="form.is_cashBack == '0'">
+              <el-col :span="24">
+                <el-form-item label="返现金额类型" prop="back_type">
+                  <el-select v-model="cb_config.back_type" clearable filterable placeholder="请选择返现金额类型" size="small" style="width: 100%">
+                    <el-option v-for="i in typeList" :key="i.value" :label="i.label" :value="i.value"> </el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24" v-if="cb_config.back_type == 'fixed'">
+                <el-form-item label="具体返现金额设置" prop="money">
+                  <el-input v-model="cb_config.money" placeholder="请输入金额" type="number" size="small"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24" v-if="cb_config.back_type == 'percent'">
+                <el-form-item label="具体返现金额设置" prop="money">
+                  <el-input v-model="cb_config.money" placeholder="请输入百分比" type="number" size="small"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-form>
+          </template>
+          <template #brief>
+            <editor v-model="form.brief" url="/files/point/goods/upload" />
+          </template>
+        </data-form>
+      </el-col>
+    </el-row>
   </div>
 </template>
 

+ 3 - 7
src/views/selfShop/goodsRate/detail.vue

@@ -80,7 +80,7 @@ const { mapActions } = createNamespacedHelpers('goodsRate');
 
 export default {
   name: 'form-1',
-  props: {},
+  props: { id: { type: String } },
   components: {},
   data: function () {
     return {
@@ -161,14 +161,10 @@ export default {
     },
     // 返回
     toBack() {
-      window.history.go('-1');
-    },
-  },
-  computed: {
-    id() {
-      return this.$route.query.id;
+      this.$emit('toBack');
     },
   },
+  computed: {},
   metaInfo() {
     return { title: this.$route.meta.title };
   },

+ 28 - 19
src/views/selfShop/goodsRate/index.vue

@@ -2,24 +2,27 @@
   <div id="index">
     <el-row>
       <el-col :span="24" class="main animate__animated animate__backInRight">
-        <el-col :span="24" class="one"> <span>商品评价</span> </el-col>
-        <el-col :span="24" class="two">
-          <search-1 :form="searchForm" @onSubmit="search" @toReset="toClose"></search-1>
-        </el-col>
-        <el-col :span="24" class="four">
-          <data-table
-            :select="true"
-            :selected="selected"
-            @handleSelect="handleSelect"
-            :fields="fields"
-            :opera="opera"
-            @query="search"
-            :data="list"
-            :total="total"
-            @edit="toEdit"
-          >
-          </data-table>
-        </el-col>
+        <span v-show="view === 'list'">
+          <el-col :span="24" class="one"> <span>商品评价</span> </el-col>
+          <el-col :span="24" class="two">
+            <search-1 :form="searchForm" @onSubmit="search" @toReset="toClose"></search-1>
+          </el-col>
+          <el-col :span="24" class="four">
+            <data-table
+              :select="true"
+              :selected="selected"
+              @handleSelect="handleSelect"
+              :fields="fields"
+              :opera="opera"
+              @query="search"
+              :data="list"
+              :total="total"
+              @edit="toEdit"
+            >
+            </data-table>
+          </el-col>
+        </span>
+        <detail v-if="view === 'info'" :id="id" @toBack="toBack"></detail>
       </el-col>
     </el-row>
   </div>
@@ -35,10 +38,12 @@ export default {
   props: {},
   components: {
     search1: () => import('./parts/search-1.vue'),
+    detail: () => import('./detail.vue'),
   },
   data: function () {
     const that = this;
     return {
+      view: 'list',
       // 列表
       opera: [{ label: '查看评价', method: 'edit' }],
       fields: [
@@ -71,7 +76,11 @@ export default {
     },
     // 修改
     async toEdit({ data }) {
-      this.$router.push({ path: '/selfShop/goodsRate/detail', query: { id: data.id } });
+      this.$set(this, `id`, data.id);
+      this.$set(this, `view`, 'info');
+    },
+    toBack() {
+      this.view = 'list';
     },
     // 重置
     toClose() {

+ 3 - 5
src/views/selfShop/sales/index.vue

@@ -2,7 +2,7 @@
   <div id="card-1">
     <el-row>
       <el-col :span="24" class="main animate__animated animate__backInRight">
-        <template v-if="view === 'list'">
+        <span v-show="view === 'list'">
           <el-col :span="24" class="one"> <span>售后管理</span> </el-col>
           <el-col :span="24" class="two">
             <search-1 :form="searchForm" :statusList="statusList" :typeList="typeList" @onSubmit="search" @toReset="toClose"> </search-1>
@@ -21,10 +21,8 @@
             >
             </data-table>
           </el-col>
-        </template>
-        <template v-else-if="view === 'order'">
-          <detail :id="id" @toBack="toBack"></detail>
-        </template>
+        </span>
+        <detail v-if="view === 'order'" :id="id" @toBack="toBack"></detail>
       </el-col>
     </el-row>
   </div>