zhangdan 4 anni fa
parent
commit
395c46bf72

+ 57 - 10
src/config/router.config.js

@@ -1,6 +1,7 @@
 import {
   UserLayout,
   BasicLayout,
+  RouteView,
   PageView
 } from '@/layouts'
 
@@ -54,16 +55,7 @@ export const asyncRouterMap = [{
       icon: 'snippets',
       permission: 'M_bundel_saller'
     },
-    children: [{
-      path: '/SetmealSales/VerificationRecords',
-      name: 'VerificationRecords',
-      component: () => import('@/views/SetmealSales/VerificationRecords.vue'),
-      meta: {
-        title: '核销记录',
-        icon: 'file-text',
-        permission: 'M_hxjl_list'
-      }
-    },
+    children: [
     {
       path: '/SetmealSales/BuySetmeal',
       name: 'BuySetmeal',
@@ -86,12 +78,67 @@ export const asyncRouterMap = [{
     }
     ]
   },
+  // 服务
+  {
+    path: '/Service',
+    redirect: '/Service/PurchasedService',
+    component: PageView,
+    meta: {
+      title: '服务',
+      icon: 'profile',
+    },
+    children: [
+      {
+        path: '/Service/PurchasedService',
+        redirect: '/Service/PurchasedService/list',
+        name: 'PurchasedService',
+        component: RouteView,
+        meta: {
+          title: '已购服务',
+          icon: 'profile',
+        },
+        hideChildrenInMenu: true,
+        children: [
+          {
+            path: '/Service/PurchasedService/list',
+            name: 'PurchasedServiceList',
+            component: () => import(/* webpackChunkName: "order" */ '@/views/Service/PurchasedServiceList.vue'),
+            meta: {
+              title: '服务列表',
+              icon: 'shopping',
+              hidden: true,
+            }
+          },
+          {
+            path: '/Service/PurchasedService/detail/:id',
+            name: 'PurchasedServiceDetail',
+            component: () => import(/* webpackChunkName: "order" */ '@/views/Service/PurchasedServiceDetail.vue'),
+            meta: {
+              title: '服务详情',
+              icon: 'profile',
+              hidden: true,
+            }
+          }
+        ]
+      }
+    ]
+  },
   {
 	  path: '/FinancialManagement',
 	  name: 'FinancialManagement',
 	  component: PageView,
 	  meta: { title: '财务管理', icon: 'account-book', permission: 'M_cwgn' },
 	  children: [
+			{
+			  path: '/SetmealSales/VerificationRecords',
+			  name: 'VerificationRecords',
+			  component: () => import('@/views/SetmealSales/VerificationRecords.vue'),
+			  meta: {
+			    title: '核销记录',
+			    icon: 'file-text',
+			    permission: 'M_hxjl_list'
+			  }
+			},
 	    {
 	      path: 'PaySettlementRecords/list',
 	      name: 'PaySettlementRecords',

+ 385 - 0
src/views/Service/PurchasedServiceDetail.vue

@@ -0,0 +1,385 @@
+<template>
+  <a-card >
+    <a-card class="detail-card" :bordered="false" title="基本信息">
+      <detail-list >
+        <detail-list-item term="订单编号">{{ orderBundle.number ? orderBundle.number : '--' }}</detail-list-item>
+        <detail-list-item term="订单来源">{{ dataSourceName ? dataSourceName : '--' }}</detail-list-item>
+        <detail-list-item term="下单时间">{{ orderBundle.orderDate ? orderBundle.orderDate : '--' }}</detail-list-item>
+        <detail-list-item term="订单状态">{{ palyStatus ? palyStatus :'--' }}</detail-list-item>
+        <detail-list-item term="订单来源">{{ palyStatus ? palyStatus :'--' }}</detail-list-item>
+        <detail-list-item term="客户信息">{{ custInfo ? custInfo : '--' }}</detail-list-item>
+        <detail-list-item term="套餐名称">{{ orderBundle.bundleName ? orderBundle.bundleName : '--' }}</detail-list-item>
+        <detail-list-item term="应付金额">{{ orderBundle.totalAmount ? orderBundle.totalAmount :'--' }}</detail-list-item>
+
+        <detail-list-item term="支付时间" v-if="isPay">{{ payDate ? payDate : '--' }}</detail-list-item>
+        <!-- <detail-list-item term="支付方式">{{ payDetail.payType }}</detail-list-item> -->
+        <detail-list-item term="支付金额" v-if="isPay">¥{{ orderBundle.payedAmount ? orderBundle.payedAmount : '--' }}</detail-list-item>
+
+      </detail-list>
+    </a-card>
+    <a-card class="detail-card" :bordered="false" title="优惠券">
+      <detail-list v-if="coupon">
+        <detail-list-item term="优惠券名称">{{ coupon.name ? coupon.name : '--' }}</detail-list-item>
+        <detail-list-item term="发放/领取时间">{{ customerCoupon.createDate ? customerCoupon.createDate : '--' }}</detail-list-item>
+        <detail-list-item term="使用有效期">{{ coupon.validTime ? Math.round(coupon.validTime/60/24) : '-' }} 天</detail-list-item>
+      </detail-list>
+      <div class="detail-card-info" v-if="!coupon">
+        此订单没有使用优惠券
+      </div>
+    </a-card>
+    <a-card class="detail-card" :bordered="false" title="套餐内容" v-if="isPay">
+      <a-table :columns="columns" rowKey="id" :dataSource="customerBundleItemList" bordered :pagination="false">
+        <span slot="no" slot-scope="text, record, index">
+          <template>
+            {{ index + 1 }}
+          </template>
+        </span>
+        <span slot="hexiao" slot-scope="text, record, index">
+          <template>
+            <a-button :disabled="record.remainTimes<=0" type="primary" v-hasPermission="'B_customerBundle_hexiao'" @click="hexiao(record)">延期</a-button>
+            <span v-if="!$hasPermissions('B_customerBundle_hexiao')" style="text-align: center;font-size: 20px;">-</span>
+          </template>
+        </span>
+      </a-table>
+    </a-card>
+    <a-card class="detail-card" :bordered="false" title="使用记录" v-if="isPay">
+      <a-table :columns="usedColumns" rowKey="id" :dataSource="verificationList" bordered v-if="verificationList && verificationList.length > 0" :pagination="false">
+        <span slot="no" slot-scope="text, record, index">
+          <template>
+            {{ index + 1 }}
+          </template>
+        </span>
+      </a-table>
+      <div class="detail-card-info" v-else>
+        此订单没有使用记录
+      </div>
+    </a-card>
+    <a-card class="detail-card" :bordered="false" title="订单取消信息" v-if="isCancel">
+      <detail-list>
+        <detail-list-item term="取消原因">{{ palyStatusStr }}</detail-list-item>
+        <detail-list-item term="取消时间">{{ orderBundle.cancleTime }}</detail-list-item>
+      </detail-list>
+    </a-card>
+    <a-card class="detail-card" :bordered="false" title="付款期限" v-if="orderBundle.orderFlag === 'UNPA' ">
+      <div class="detail-card-info">
+        {{ orderBundle.expiryDate }}  点前未支付, 系统将自动取消订单
+      </div>
+    </a-card>
+
+    <a-modal title="确定核销一次" :footer="null" v-model="hexiaoModal" @cancel="canselHx" @ok="handleHexiaoOk">
+      <!-- <StoreSearch ref="storeSearch" @storeChange="storeChange" placeholder="搜索并选择核销门店"></StoreSearch> -->
+      <div class="button-row">
+        <a-button key="back" @click="canselHx">
+          取消
+        </a-button>
+        <a-button key="submit" type="primary" :loading="loading" @click="handleHexiaoOk">
+          确定
+        </a-button>
+      </div>
+    </a-modal>
+  </a-card>
+</template>
+
+<script>
+import { customerBundleDetail, verificationHexiao } from '@/api/customerBundle'
+import { getLookUpDataBy } from '@/api/data'
+import { PageView } from '@/layouts'
+import { STable } from '@/components'
+// import StoreSearch from '@/components/QueryStore/StoreSearch'
+import DetailList from '@/components/tools/DetailList'
+import _ from 'lodash'
+const DetailListItem = DetailList.Item
+export default {
+  name: 'OrderAdd',
+  components: {
+    PageView,
+    DetailList,
+    DetailListItem,
+    STable
+  },
+  computed: {
+    palyStatus () {
+      const _playStatus = _.find(this.palyStatusList, ['code', this.orderBundle.orderFlag])
+      if (_playStatus) {
+        if (_playStatus.code === 'CAEL' || _playStatus.code === 'SYCA') {
+          return '已取消'
+        }
+        return _playStatus.dispName
+      }
+      return ''
+    },
+    palyStatusStr () {
+      const _playStatus = _.find(this.palyStatusList, ['code', this.orderBundle.orderFlag])
+      if (_playStatus) {
+        if (_playStatus.code === 'SYCA') {
+          return '超时未支付自动取消'
+        }
+        return _playStatus.dispName
+      }
+      return ''
+    },
+    isPay () {
+      return this.orderBundle.orderFlag === 'PAED'
+    },
+    isCancel () {
+      return this.orderBundle.orderFlag === 'CAEL' || this.orderBundle.orderFlag === 'SYCA'
+    },
+    payDate () {
+      return _.get(this, 'paymentDetailList.payDate')
+    },
+    custInfo () {
+      let info = null
+      if (this.customer) {
+        info = this.customer.name
+        if (info) {
+          info = info + '-' + this.customer.mobile
+        } else {
+          info = this.customer.mobile
+        }
+      } else {
+        info = this.orderBundle.custMobile
+        if (this.orderBundle.vehicleNumber) {
+          info += '(' + this.orderBundle.vehicleNumber + ')'
+        }
+      }
+      return info
+    }
+
+  },
+  data () {
+    return {
+      loading: false,
+      customerCoupon: {},
+      palyStatusList: [],
+      hexiaoModal: false,
+      hxStoreId: '',
+      hxCustomerBundleItemId: '',
+	    dataSourceName: '',
+      customer: null,
+      orderBundle: {
+        // bundleId: 10000,
+        // bundleName: '测试套餐',
+        // cancleTime: 1561304318000,
+        // cancleType: '1',
+        // couponAmount: 1,
+        // couponId: 10001,
+        // couponType: '1',
+        // custId: 10000,
+        // custMobile: '15811111111',
+        // custName: 'guoguoguo',
+        // id: 10001,
+        // number: '1112',
+        // orderDate: 1561132800000,
+        // orderFlag: '2',
+        // payedAmount: 1,
+        // totalAmount: 1,
+        // typeId: '1',
+        // typeLabel: '套餐购买'
+      },
+
+      payDetail: {
+        // billNo: '1233',
+        // bizId: 10000,
+        // bizType: '1',
+        // createDate: '2019-06-22 23:44:21',
+        // id: 1,
+        // operId: 1,
+        // operName: '1',
+        // payCategory: '1',
+        // payDate: 1561218251000,
+        // payDesc: '1111',
+        // payNo: '1',
+        // payType: '1',
+        // sort: 0,
+        // totalAmount: 100,
+        // type: '1'
+      },
+      verificationList: [
+        // {
+        //   bundId: 1,
+        //   bundItemId: 1,
+        //   bundItemName: '1',
+        //   bundItemTimes: 1561219124000,
+        //   bundName: '1',
+        //   createDate: '2019-06-22 23:57:51',
+        //   custId: 1,
+        //   custMobile: '1',
+        //   customerBundleId: 10000,
+        //   id: 1,
+        //   sort: 0,
+        //   storeId: 1,
+        //   storeName: '1'
+        // }
+      ],
+
+      customerBundleItemList: [
+        // {
+        //   customerBundleId: 10000,
+        //   id: 1,
+        //   itemClsName: '1',
+        //   itemId: 1,
+        //   itemName: '1',
+        //   itemPrice: 1,
+        //   lastUsedStoreId: 1,
+        //   lastUsedTime: 1561139801000,
+        //   lastUsedWeekNum: 1,
+        //   times: 1
+        // }
+      ],
+      coupon: {
+        // amount: 2,
+        // createDate: '2019-06-23 00:21:15',
+        // id: 10001,
+        // limitAmount: 2,
+        // limitCnt: 2,
+        // limitIsAmount: '2',
+        // limitProduct: '2',
+        // limitReceive: 2,
+        // limitStoreId: 2,
+        // limitStrategy: '2',
+        // name: 2,
+        // receivedQty: 2,
+        // remarks: '2',
+        // status: '2',
+        // typeId: '2',
+        // typeName: '2',
+        // usedQty: 2,
+        // validTime: 2
+      },
+      columns: [
+        {
+          title: '序号',
+          // dataIndex: 'no',
+          scopedSlots: { customRender: 'no' }
+        },
+        {
+          title: '服务项目',
+          dataIndex: 'itemName'
+        },
+        {
+          title: '剩余数量',
+          dataIndex: 'remainTimes'
+        },
+        {
+          title: '核销操作',
+          width: 200,
+          scopedSlots: { customRender: 'hexiao' }
+        }
+      ],
+      usedColumns: [
+        {
+          title: '序号',
+          scopedSlots: { customRender: 'no' }
+        },
+        {
+          title: '服务项目',
+          dataIndex: 'bundItemName'
+        },
+        {
+          title: '使用时间',
+          dataIndex: 'usedTime'
+        },
+        {
+          title: '使用门店',
+          dataIndex: 'usedStoreName'
+        }
+      ]
+
+    }
+  },
+  created () {
+    this.initPage()
+  },
+  beforeRouteEnter (to, from, next) {
+    next(vm => {
+      // vm.clear()
+      if (to.query.id) {
+        vm.initPage()
+      }
+    })
+  },
+  methods: {
+    initPage () {
+      const _this = this
+      getLookUpDataBy({
+        type: 'PAY_STATUS'
+      }).then(res => {
+        if (res.status === '200') {
+          _this.palyStatusList = res.data
+        }
+        return customerBundleDetail({
+          id: _this.$route.params.id
+        })
+      }).then(res => {
+        if (res.status + '' === '200') {
+          const _data = res.data
+          console.log(_data)
+          _this.customer = _data.customer
+		      _this.dataSourceName = _data.dataSourceName
+          _this.orderBundle = _data.orderBundle
+          if (_data.paymentDetailList && _data.paymentDetailList.length) {
+            _this.paymentDetailList = _data.paymentDetailList[0]
+          }
+          _this.coupon = _data.coupon
+          if (_data.customerCoupon) {
+            _this.customerCoupon = _data.customerCoupon
+          }
+          _this.customerBundleItemList = _data.customerBundleItemList
+          _this.verificationList = _data.verificationList
+        }
+      })
+    },
+    // 核销
+    hexiao (row) {
+      this.hexiaoModal = true
+      this.hxCustomerBundleItemId = row.id
+    },
+    // 关闭
+    canselHx () {
+      this.$refs.storeSearch.setVal(undefined)
+      this.hexiaoModal = false
+      this.loading = false
+      this.hxStoreId = ''
+      this.hxCustomerBundleItemId = ''
+    },
+    handleHexiaoOk () {
+      if (this.hxStoreId == '') {
+        this.$message.warning('请选择门店')
+        return
+      }
+      this.loading = true
+      verificationHexiao({
+        usedStoreId: this.hxStoreId,
+        customerBundleItemId: this.hxCustomerBundleItemId
+      }).then(res => {
+        console.log(res)
+        if (res.status == 200) {
+          this.$message.info('核销成功')
+          this.initPage()
+        }
+        this.canselHx()
+      })
+    },
+    storeChange (data) {
+      this.hxStoreId = data ? data.id : ''
+    }
+  }
+}
+</script>
+
+<style scoped>
+  .detail-card + .detail-card {
+    margin-top: 10px;
+  }
+  .detail-card-info {
+    text-align: center;
+    font-size: 1.1em;
+  }
+  .button-row{
+    padding-top: 20px;
+    text-align: right;
+  }
+  .button-row .ant-btn{
+    margin-left: 20px;
+  }
+</style>

+ 274 - 0
src/views/Service/PurchasedServiceList.vue

@@ -0,0 +1,274 @@
+<template>
+  <a-card :bordered="false">
+    <div class="table-page-search-wrapper">
+      <a-form layout="inline" :form="form" @keyup.enter.native="$refs.table.refresh(true)">
+        <a-row :gutter="48">
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="订单编号:" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <a-input class="full-width" v-model.trim="queryParam.number" placeholder="订单编号" allowClear />
+            </a-form-item>
+          </a-col>
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="下单时间:" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <a-range-picker allowClear style="width:100%" v-model="queryOrderDate" format="YYYY-MM-DD" :placeholder="['开始时间', '结束时间']" />
+            </a-form-item>
+          </a-col>
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="订单状态:" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <v-select ref="payStatus" code="PAY_STATUS" v-model="queryParam.orderFlag" allowClear></v-select>
+            </a-form-item>
+          </a-col>
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="订单来源" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <!-- <salesSearch ref="salesSearch" @salesChange="salesChange" placeholder="订单来源"></salesSearch> -->
+              <a-select placeholder="请选择" allowClear v-model="queryParam.dataSourceNo" :showSearch="true" option-filter-prop="children"
+                        :filter-option="filterOption" @focus="handleFocus" @blur="handleBlur" @change="handleChange">
+                <a-select-option v-for="item in optionData" :key="item.salesChannelNo" :value="item.salesChannelNo">{{ item.salesChannelName }}</a-select-option>
+              </a-select>
+            </a-form-item>
+          </a-col>
+        </a-row>
+
+        <a-row :gutter="48">
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="客户手机" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <a-input class="full-width" v-model.trim="queryParam.custMobile" :maxLength="11" placeholder="客户手机" allowClear />
+            </a-form-item>
+          </a-col>
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="车牌号码" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <a-input class="full-width" v-model.trim="queryParam.vehicleNumber" placeholder="车牌号码" allowClear />
+            </a-form-item>
+          </a-col>
+          <a-col :lg="6" :sm="12">
+            <a-form-item label="套餐名称" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+              <a-input class="full-width" v-model.trim="queryParam.bundleName" placeholder="套餐名称" allowClear />
+            </a-form-item>
+          </a-col>
+
+          <a-col :lg="6" :sm="12">
+            <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
+            <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
+          </a-col>
+        </a-row>
+      </a-form>
+    </div>
+    <div class="card-container">
+      <s-table ref="table" size="default" rowKey="id" bordered :columns="columns" :data="loadData">
+        <span slot="action" slot-scope="text, record">
+            <a-button type="primary"  style="margin: 5px;" @click="handleDetail(record)">详情</a-button>
+            <!-- <span v-if="!$hasPermissions('CustomerBundleDetail_1')">--</span> -->
+            </a-button>
+        </span>
+        <template slot="userInfo" slot-scope="text, record">
+          <p>{{ text }}<br>{{ record.vehicleNumber ? record.vehicleNumber : '--' }}</p>
+        </template>
+      </s-table>
+    </div>
+  </a-card>
+</template>
+<script>
+import moment from 'moment'
+import {
+  STable,
+  VSelect
+} from '@/components'
+import {
+  listCustomerBundle,
+  queryBankPayStatus,
+  salesChannelList
+} from '@/api/customerBundle'
+// import salesSearch from '@/components/salesQuery/salesSearch'
+export default {
+  name: 'OrderList',
+  components: {
+    VSelect,
+    STable
+  },
+  data () {
+    return {
+      loadData: parameter => {
+        const searchData = Object.assign(parameter, this.queryParam)
+        console.log(this.queryOrderDate, 'this.queryOrderDate')
+        if (this.queryOrderDate && this.queryOrderDate.length) {
+          searchData.beginDate = moment(this.queryOrderDate[0]).format('YYYY-MM-DD')
+          searchData.endDate = moment(this.queryOrderDate[1]).format('YYYY-MM-DD')
+        } else {
+          searchData.beginDate = ''
+          searchData.endDate = ''
+        }
+        // if
+        return listCustomerBundle(searchData).then(res => {
+          const no = (res.data.pageNo - 1) * res.data.pageSize
+          for (let i = 0; i < res.data.list.length; i++) {
+            const _item = res.data.list[i]
+            _item.no = no + i + 1
+          }
+          return res.data
+        })
+      },
+      form: this.$form.createForm(this, {
+        name: 'CustomerBundleList'
+      }),
+      queryOrderDate: undefined,
+      queryParam: {
+        number: '',
+        beginDate: '',
+        endDate: '',
+        orderFlag: '',
+        custMobile: '',
+        bundleName: '',
+        vehicleNumber: '',
+        dataSourceNo: undefined
+      },
+      optionData: [],
+      columns: [{
+        title: '序号',
+        dataIndex: 'no',
+        width: '60px',
+        align: 'center'
+      },
+      {
+        title: '订单编号',
+        dataIndex: 'number',
+        width: '150px',
+        align: 'center'
+      },
+      {
+        title: '订单来源',
+        dataIndex: 'salesChannelName',
+        width: '150px',
+        align: 'center',
+        customRender: function (text) {
+          return (text || '--')
+        }
+      },
+      {
+        title: '下单时间',
+        dataIndex: 'orderDate',
+        width: '150px',
+        align: 'center'
+      },
+      {
+        title: '客户信息',
+        dataIndex: 'custMobile',
+        width: '150px',
+        align: 'center',
+        scopedSlots: {
+          customRender: 'userInfo'
+        }
+      },
+      {
+        title: '套餐名称',
+        dataIndex: 'bundleName',
+        align: 'center',
+        width: '150px'
+      },
+      {
+        title: '应付金额',
+        dataIndex: 'totalAmount',
+        width: '100px',
+        align: 'center'
+      },
+      {
+        title: '订单状态',
+        dataIndex: 'orderFlag',
+        width: '100px',
+        align: 'center',
+        customRender: (text) => {
+          const payStatus = this.$refs.payStatus.getOptionDatas()
+          if (payStatus) {
+            if (_.find(payStatus, ['code', text])) {
+              return _.find(payStatus, ['code', text]).dispName
+            }
+          }
+          return text
+        }
+      },
+      {
+        title: '操作',
+        width: '150px',
+        align: 'center',
+        scopedSlots: {
+          customRender: 'action'
+        }
+      }
+      ]
+    }
+  },
+  methods: {
+    disabledDate (current) {
+      return current && current > moment().endOf('day')
+    },
+    handleChange (value) {
+      console.log(`selected ${value}`)
+    },
+    handleBlur () {
+      console.log('blur')
+    },
+    handleFocus () {
+      console.log('focus')
+    },
+    filterOption (input, option) {
+	  return (
+        option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
+	  )
+    },
+	// 查看详情、
+	handleDetail(row){
+		this.$router.push({
+		  path: `/Service/PurchasedService/detail/${row.id}`
+		})
+	},
+    getSalesListData () {
+	  salesChannelList().then(res => {
+        if (res.status == 200) {
+			 this.optionData = res.data || []
+			 const obj = { salesChannelName: '自有', salesChannelNo: 0 }
+			  const a = this.optionData.unshift(obj)
+			  console.log(this.optionData, '---------------添加自有')
+        }
+	  })
+    },
+    reloadRow (row) {
+      queryBankPayStatus({
+        tradeNo: row.tradeNo
+      }).then(res => {
+        console.log(res)
+        if (res.status == 200) {
+          this.$refs.table.refresh(true)
+        }
+      })
+    },
+    resetSearchForm () {
+      this.queryOrderDate = undefined
+      this.queryParam = {
+        number: '',
+        beginDate: '',
+        endDate: '',
+        orderFlag: '',
+        custMobile: '',
+        bundleName: '',
+        vehicleNumber: '',
+        dataSourceNo: undefined
+      }
+      // this.$refs.salesSearch.setVal(undefined)
+      this.$refs.table.refresh(true)
+    },
+    // 来源change
+    salesChange (data) {
+      this.queryParam.dataSourceNo = data ? data.salesChannelNo : ''
+    }
+  },
+  beforeRouteEnter (to, from, next) {
+    next(vm => {
+      vm.resetSearchForm()
+      vm.getSalesListData()
+    })
+  }
+}
+</script>
+
+<style lang="less">
+
+</style>