Browse Source

修改店铺列表获取接口

huxz 8 years ago
parent
commit
78f49a7a08

+ 21 - 7
components/provider/Suppliers.vue

@@ -13,7 +13,7 @@
 						</span>
           </div>
         </td>
-        <td width="150" style="vertical-align: middle"><span>入驻商家:</span><span class="text-message">{{stores ? stores.length : 0}}</span><span>家</span></td>
+        <td width="150" style="vertical-align: middle"><span>入驻商家:</span><span class="text-message">{{stores ? stores.totalElements : 0}}</span><span>家</span></td>
         <td width="150">
           <a href="vendor#/store-apply"><button class="btn btn-primary" style="margin-left: 6px;">立即入驻</button></a>
         </td>
@@ -21,7 +21,7 @@
       </thead>
       <tbody>
       <!--<tr>{{$data}}</tr>-->
-      <tr v-for="store in stores">
+      <tr v-for="store in stores.content" v-if="store">
         <td>
           <div class="logo">
             <a :href="'/store/' + store.uuid"><img :src="store.logoUrl || '/images/store/common/default.png'" :alt="store.storeName"></a>
@@ -31,7 +31,7 @@
           <a class="store-name" :href="'/store/' + store.uuid" target="_blank"><div :title="store.storeName">{{store.storeName}}</div></a>
           <div class="store-message">
             <span>商家介绍:</span>
-            <span>{{store.description.slice(0,160)}}<em v-if="store.description.length > 160">...</em></span>
+            <span>{{showLittleDescription(store.description)}}<em v-if="store.description.length > 160">...</em></span>
           </div>
         </td>
         <td class="vertical-middle">
@@ -51,10 +51,16 @@
 
 export default {
   name: 'suppliers',
-  props: ['op'],
+  props: ['types'],
   data () {
     return {
-      keyword: ''
+      keyword: '',
+      pageParams: {
+        page: 1,
+        count: 10,
+        keyword: '',
+        types: this.types
+      }
     }
   },
   computed: {
@@ -64,8 +70,16 @@ export default {
   },
   methods: {
     search () {
-      let params = { op: this.op, keyword: this.keyword }
-      this.$store.dispatch('provider/findStoreList', params)
+      this.pageParams.page = 1
+      this.pageParams.keyword = this.keyword === '' ? null : this.keyword
+      console.log(this.pageParams)
+      this.$store.dispatch('provider/findStoreList', this.pageParams)
+    },
+    showLittleDescription (description) {
+      if (!description || description === '') {
+        return '暂无简介'
+      }
+      return description.slice(0, 160)
     }
   }
 }

+ 0 - 25
components/store/Breadcrumb.vue

@@ -1,25 +0,0 @@
-<template>
-  <div>
-    <el-breadcrumb separator=">">
-      <el-breadcrumb-item v-for="(breadcrumb, index) in breadcrumbs" :key="index" :to="breadcrumb.to || {}" v-text="breadcrumb.name">首页</el-breadcrumb-item>
-      <!--<el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item>活动管理</el-breadcrumb-item>
-      <el-breadcrumb-item>活动列表</el-breadcrumb-item>
-      <el-breadcrumb-item>活动详情</el-breadcrumb-item>-->
-    </el-breadcrumb>
-  </div>
-</template>
-<script>
-
-export default {
-  name: 'breadcrumb',
-  props: ['breadcrumbs']
-}
-</script>
-<style lang="scss" scoped>
-  @import '~assets/scss/variables';
-
-  el-breadcrumb {
-    font-size: 14px;
-  }
-</style>

+ 0 - 0
components/store/StoreHeader.vue → components/store/common/StoreHeader.vue


+ 0 - 0
components/store/StoreTitle.vue → components/store/common/StoreTitle.vue


+ 2 - 2
components/store/index.js

@@ -1,5 +1,5 @@
-import StoreHeader from './StoreHeader.vue'
-import StoreTitle from './StoreTitle.vue'
+import StoreHeader from './common/StoreHeader.vue'
+import StoreTitle from './common/StoreTitle.vue'
 import BaseInfo from './BaseInfo.vue'
 import ComponentInfo from './ComponentInfo.vue'
 import CommodityInfo from './CommodityInfo.vue'

+ 0 - 1
package.json

@@ -11,7 +11,6 @@
     "cross-env": "^3.1.4",
     "element-ui": "^1.3.7",
     "express": "^4.14.1",
-    "font-awesome": "^4.7.0",
     "http-proxy-middleware": "^0.17.4",
     "nuxt": "0.10.6",
     "iview": "^2.0.0-rc.19",

+ 2 - 2
pages/provider/factories.vue

@@ -6,7 +6,7 @@
 
     <recommend-original/>
 
-    <suppliers :op="'findByOriginal'"/>
+    <suppliers :types="'ORIGINAL_FACTORY'"/>
   </div>
 </template>
 <script>
@@ -20,7 +20,7 @@ export default {
       store.dispatch('provider/loadSalesStore', { isOriginal: true }),
       store.dispatch('provider/loadNewStores', { types: 'ORIGINAL_FACTORY' }),
       store.dispatch('provider/loadRecommendOriginal'),
-      store.dispatch('provider/findStoreList', { op: 'findByOriginal' })
+      store.dispatch('provider/findStoreList', { page: 1, count: 10, types: 'ORIGINAL_FACTORY' })
     ])
   },
   components: {

+ 2 - 2
pages/provider/list.vue

@@ -2,7 +2,7 @@
   <div>
     <excellent-suppliers :isShowMore="false"/>
 
-    <suppliers :op="'findByAGENCY'"/>
+    <suppliers :types="'AGENCY-DISTRIBUTION'"/>
   </div>
 </template>
 <script>
@@ -13,7 +13,7 @@ export default {
   fetch ({ store }) {
     return Promise.all([
       store.dispatch('provider/loadRecommendStores'),
-      store.dispatch('provider/findStoreList', { op: 'findByAGENCY' })
+      store.dispatch('provider/findStoreList', { page: 1, count: 10, types: 'AGENCY-DISTRIBUTION' })
     ])
   },
   components: {

+ 2 - 0
store/provider.js

@@ -96,9 +96,11 @@ export const actions = {
       })
   },
   findStoreList ({ commit }, params = {}) {
+    params.op = 'pageByType'
     commit('stores/REQUEST_STORE_LIST')
     return axios.get('/api/store-service/stores', { params })
       .then(response => {
+        console.log('RESPONSE', response.data)
         commit('stores/GET_STORE_LIST_SUCCESS', response.data)
       }, err => {
         commit('stores/GET_STORE_LIST_FAILURE', err)

+ 2 - 2
store/provider/stores.js

@@ -1,7 +1,7 @@
 export const state = () => ({
   storeList: {
     fetching: false,
-    data: []
+    data: {}
   }
 })
 
@@ -12,7 +12,7 @@ export const mutations = {
   GET_STORE_LIST_FAILURE (state) {
     state.storeList.fetching = false
   },
-  GET_STORE_LIST_SUCCESS (state, result) {
+  GET_STORE_LIST_SUCCESS (state, result = {}) {
     state.storeList.fetching = false
     state.storeList.data = result
   }