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.
193 lines
6.8 KiB
193 lines
6.8 KiB
<template>
|
|
<view class="business">
|
|
<view class="business-school">
|
|
<view class="business-school-title">
|
|
<text class="business-school-title-left">公司及产品资质</text>
|
|
</view>
|
|
<view class="business-school-content">
|
|
<image class="image" :src="item.image" mode="aspectFill" v-for="(item, idx) in state.companyData" :key="item.id" @tap="preivewImg(idx, state.companyData)"></image>
|
|
</view>
|
|
</view>
|
|
<view class="business-school">
|
|
<view class="business-school-title">
|
|
<text class="business-school-title-left">案例介绍</text>
|
|
<text class="business-school-title-right" @click="sheep.$router.go('/pages/announcement/list', { type: '案例介绍' })">更多 ></text>
|
|
</view>
|
|
<view class="business-school-content">
|
|
<view class="business-school-content-item" v-for="item in state.articleData" :key="item.id" @click="onDetail(item.id, '营销素材')">
|
|
<view class="business-school-content-item-left">
|
|
<image :src="item.image" class="avatar"></image>
|
|
</view>
|
|
<view class="business-school-content-item-right">
|
|
<view class="business-school-content-item-right-title" v-html="item.title"></view>
|
|
<view class="business-school-content-item-right-time">
|
|
<view>上传时间:{{ dayjs(item.createtime).format('YYYY.MM.DD') }}</view>
|
|
<view>更新时间:{{ dayjs(item.updatetime).format('YYYY.MM.DD') }}</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="business-school">
|
|
<view class="business-school-title">
|
|
<text class="business-school-title-left">营销素材</text>
|
|
<text class="business-school-title-right" @click="sheep.$router.go('/pages/announcement/list', { type: '营销素材' })">更多 ></text>
|
|
</view>
|
|
<view class="business-school-content">
|
|
<view class="business-school-content-item" v-for="item in state.saleData" :key="item.id" @click="onDetail(item.id, '营销素材')">
|
|
<view class="business-school-content-item-left">
|
|
<image :src="item.image" class="avatar"></image>
|
|
</view>
|
|
<view class="business-school-content-item-right">
|
|
<view class="business-school-content-item-right-title" v-html="item.title"></view>
|
|
<view class="business-school-content-item-right-time">
|
|
<view>上传时间:{{ dayjs(item.createtime).format('YYYY.MM.DD') }}</view>
|
|
<view>更新时间:{{ dayjs(item.updatetime).format('YYYY.MM.DD') }}</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup>
|
|
import sheep from '@/sheep';
|
|
import { onLoad } from '@dcloudio/uni-app';
|
|
import { reactive } from 'vue';
|
|
import dayjs from 'dayjs';
|
|
|
|
const state = reactive({
|
|
companyData: [],
|
|
articleData: [],
|
|
saleData: [],
|
|
});
|
|
// 获取列表
|
|
async function getList() {
|
|
let { code, data: { data } } = await sheep.$api.businessSchool.companyList();
|
|
if (code === 1) {
|
|
state.companyData = data;
|
|
} else {
|
|
state.companyData = [];
|
|
}
|
|
let { code: articleCode, data: { data: articleData } } = await sheep.$api.businessSchool.articleList('1');
|
|
if (articleCode === 1) {
|
|
state.articleData = articleData;
|
|
} else {
|
|
state.articleData = [];
|
|
}
|
|
let { code: saleCode, data: { data: saleData } } = await sheep.$api.businessSchool.articleList('2');
|
|
console.log(saleData, 'saleData');
|
|
if (saleCode === 1) {
|
|
state.saleData = saleData;
|
|
} else {
|
|
state.saleData = [];
|
|
}
|
|
}
|
|
|
|
function onDetail(orderId, type) {
|
|
sheep.$router.go('/pages/announcement/detail', {
|
|
id: orderId,
|
|
type: type === '公告列表' ? '公告详情': `${type}详情`
|
|
});
|
|
}
|
|
|
|
function preivewImg(index, imgList) {
|
|
uni.previewImage({
|
|
current: index, // 当前显示图片索引
|
|
urls: imgList.map(val => (val.image)) // 需要预览的图片http链接列表
|
|
});
|
|
}
|
|
|
|
onLoad((options) => {
|
|
getList();
|
|
});
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
.business-school {
|
|
background: #FFFFFF;
|
|
border-radius: 15rpx 15rpx 15rpx 15rpx;
|
|
background: #fff;
|
|
margin: 0 25rpx 23rpx;
|
|
padding: 37rpx 35rpx;
|
|
&-title {
|
|
border-left: 10rpx solid var(--ui-BG-Main);
|
|
padding-left: 12rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
margin-bottom: 31rpx;
|
|
&-left {
|
|
font-weight: bold;
|
|
font-size: 32rpx;
|
|
color: #010101;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
}
|
|
&-right {
|
|
font-weight: 400;
|
|
font-size: 26rpx;
|
|
color: #898989;
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
&-content {
|
|
image {
|
|
width: 132rpx;
|
|
height: 188rpx;
|
|
margin-right: 25rpx;
|
|
&:last-child {
|
|
margin-right: 0;
|
|
}
|
|
}
|
|
&-item {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
height: 145rpx;
|
|
margin-bottom: 22rpx;
|
|
&-left {
|
|
flex: 0 0 298rpx;
|
|
width: 298rpx;
|
|
height: 100%;
|
|
border-radius: 15rpx 15rpx 15rpx 15rpx;
|
|
.avatar {
|
|
width: 100%;
|
|
height: 100%;
|
|
background: var(--ui-BG-Main);
|
|
border-radius: 15rpx 15rpx 15rpx 15rpx;
|
|
}
|
|
}
|
|
&-right {
|
|
flex: 1;
|
|
padding-left: 42rpx;
|
|
height: 100%;
|
|
font-weight: 400;
|
|
position: relative;
|
|
height: 145rpx;
|
|
overflow: hidden;
|
|
&-title {
|
|
font-size: 26rpx;
|
|
color: #000000;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
}
|
|
&-time {
|
|
font-weight: 400;
|
|
font-size: 22rpx;
|
|
color: #898989;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 42rpx;
|
|
}
|
|
}
|
|
&:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</style>
|
|
|