SearchDataLayout.vue 1.84 KB
<template>
  <section class="search-data-layout">
    <MenuModuleLayout class="search-menus" v-if="menus" :datas="menus" />
    <HomeDataListModule v-for="(item, idx) in moduleList" :key="idx" :datas="item.list" v-bind="item" @clickMore="handleMore(item)" @clickItem="handleItem" />
  </section>
</template>

<script>
import MenuModuleLayout from './MenuModuleLayout'
import HomeDataListModule from '@/components/HomeDataListModule'
export default {
  name: 'SearchDataLayout',
  components: { MenuModuleLayout, HomeDataListModule },
  props: {
    data: {
      type: Object,
      default: () => { return {} }
    }
  },
  data () {
    return {}
  },
  computed: {
    menus () {
      return this.data && this.data.apps
    },
    
    moduleList () {
      const { modules } = this.data || {}
      const result = []
      modules && modules.forEach(item => {
        if (item.type == 1) { // 注册发行
          Object.assign(item, { name: this.$t('home.disclosure'), dateText: this.$t('home.disclosureDate') })
        } else if (item.type == 2) {  // 新闻动态
          Object.assign(item, { name: this.$t('home.news'), dateText: this.$t('home.updateDate') })
        } else if (item.type == 3) { // 信息披露
          Object.assign(item, { name: this.$t('home.registered'), dateText: this.$t('home.updateDate') })
        }
        result.push(item)
      });
      return result
    }
  },
  methods: {
    handleMore (item) {

    },
    handleItem (dataItem) {

    }
  }
}
</script>

<style lang="less" scoped>
@PaddingSize: 15px;
.search-data-layout {
  height: 100%;
  background: white;
  padding: @PaddingSize;

  .search-menus {
    padding-bottom: 25px;
  }

  /deep/.data-module {
    padding-top: initial;
    .module-top-container {
      border-bottom: initial;
      .module-name {
        border-bottom: initial !important;
      }
    }
  }
}
</style>