forked from TALL/check-work
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
132 lines
3.3 KiB
132 lines
3.3 KiB
<!--
|
|
Copyright (c) 2020.
|
|
author: song
|
|
email: 15235360226@163.com
|
|
-->
|
|
|
|
<template>
|
|
<div v-if="newPartners && newPartners.length > 0">
|
|
<div class="d-flex flex-wrap">
|
|
<div
|
|
:class="(index + 1) % 3 === 0 ? 'enterprise-box1' : ''"
|
|
:key="index"
|
|
@click="openProfile(item.name, item.description)"
|
|
class="enterprise-box d-flex flex-column align-center white mb-8"
|
|
v-for="(item, index) in newPartners"
|
|
>
|
|
<img :src="item.logoUrl" class="enterprise-pic my-2" />
|
|
<div class="font-bold-24 title-color my-2">{{ item.name }}</div>
|
|
<div
|
|
class="font-16 textColor d-flex flex-wrap align-left fill-width enterprise-txt"
|
|
>{{ item.description }}</div>
|
|
<div class="d-flex flex-nowrap fill-width py-5 enterprise-more">
|
|
<div class="flex-1"></div>
|
|
<span class="font-16 baseColor">
|
|
了解更多
|
|
<a-icon type="arrow-right" />
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<company-profile :show-profile="showProfile" @closeProfile="closeProfile" v-if="showProfile" />
|
|
</div>
|
|
<div class="inner d-flex flex-row-reverse pb-10 enterprise-page">
|
|
<a-pagination
|
|
:page-size="pageSize"
|
|
:total="newPartners.length"
|
|
@change="onChange"
|
|
show-less-items
|
|
v-model="current"
|
|
v-show="newPartners.length > 6"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { mapState, mapMutations, mapActions } from 'vuex';
|
|
import 'components/Introduce/PartnerShip.styl';
|
|
import CompanyProfile from 'components/Introduce/CompanyProfile.vue';
|
|
export default {
|
|
name: 'DeEnt',
|
|
components: { CompanyProfile },
|
|
props: {
|
|
title: {
|
|
type: String,
|
|
default: '',
|
|
},
|
|
typeOfPlatform: {
|
|
type: String,
|
|
default: '',
|
|
},
|
|
},
|
|
|
|
data() {
|
|
return {
|
|
current: 1,
|
|
pageSize: 6,
|
|
showProfile: false, // 显示公司介绍
|
|
};
|
|
},
|
|
|
|
computed: {
|
|
...mapState('home', ['partners', 'profile']),
|
|
|
|
newPartners() {
|
|
let { partners } = this;
|
|
let arr = [];
|
|
if (partners && partners.length > 0) {
|
|
for (let i = 0; i < partners.length; i++) {
|
|
const element = partners[i];
|
|
for (let j = 0; j < element.backendSearchList.length; j++) {
|
|
const item = element.backendSearchList[j];
|
|
arr.push(item);
|
|
}
|
|
}
|
|
return arr;
|
|
}
|
|
return arr;
|
|
},
|
|
},
|
|
|
|
async created() {
|
|
this.setPartners([]);
|
|
const { title, typeOfPlatform } = this;
|
|
const params = {
|
|
param: {
|
|
pageNum: this.current,
|
|
pageSize: 6,
|
|
type: title === '合作伙伴' ? 1 : 2,
|
|
typeOfPlatform: typeOfPlatform === '关于我们' ? 2 : 1,
|
|
},
|
|
};
|
|
await this.getFrontSearchCompany(params);
|
|
},
|
|
|
|
methods: {
|
|
...mapMutations('home', ['setPartners', 'setProfile']),
|
|
...mapActions('home', ['getFrontSearchCompany']),
|
|
|
|
// 切换页数
|
|
onChange(current) {
|
|
this.current = current;
|
|
},
|
|
|
|
// 介绍
|
|
openProfile(title, description) {
|
|
this.setProfile(null);
|
|
const profile = {
|
|
title,
|
|
description,
|
|
};
|
|
this.setProfile(profile);
|
|
this.showProfile = true;
|
|
},
|
|
|
|
closeProfile() {
|
|
this.showProfile = false;
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style lang="stylus" scoped></style>
|
|
|