This commit is contained in:
wangchengming 2025-01-03 14:50:55 +08:00
parent 98ef795163
commit 2e7f07b688
8 changed files with 732 additions and 643 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -98,14 +98,14 @@
] ]
}, },
{ title: '联系我们', path: '/cnkhp.com/CU' }, { title: '联系我们', path: '/cnkhp.com/CU' },
{ // {
title: '客户登录', // title: '',
jump: 'http://117.72.41.220:9097' // jump: 'http://117.72.41.220:9097'
}, // },
{ // {
title: '供应商登录', // title: '',
jump: 'http://117.72.41.220:9097' // jump: 'http://117.72.41.220:9097'
} // }
] ]
}; };
}, },
@ -149,7 +149,7 @@
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
padding: 28rem 60rem; padding: 28rem 70rem;
box-sizing: border-box; box-sizing: border-box;
transition: background-color 0.3s; transition: background-color 0.3s;
height: 158rem; height: 158rem;

View File

@ -5,7 +5,7 @@
id="screen1" id="screen1"
> >
<img <img
src="/static/img/about/aboutBanner.png" src="/static/img/about/aboutBanner.jpg"
alt="" alt=""
style="width: 100%;height: 100%;" style="width: 100%;height: 100%;"
/> />

View File

@ -231,11 +231,31 @@
</el-col> </el-col>
</el-row> </el-row>
<el-form-item label="附件"> <el-form-item label="附件">
<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :file-list="fileList2"> <div class="upload-file">
<el-button size="small" type="primary"> <el-upload multiple :action="uploadFileUrl" :before-upload="handleBeforeUpload1" :file-list="fileList1" :limit="limit" :on-error="handleUploadError1" :on-exceed="handleExceed1" :on-success="handleUploadSuccess1" :show-file-list="false" class="upload-file-uploader" ref="fileUpload1">
上传 <!-- 上传按钮 -->
</el-button> <el-button size="small" type="primary">上传</el-button>
<!-- 上传提示 -->
<div class="el-upload__tip" slot="tip" v-if="isShowTip">
请上传
<template v-if="fileSize"> 大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b> </template>
<template v-if="fileType"> 格式为 <b style="color: #f56c6c">{{ fileType.join("/") }}</b> </template>
的文件
</div>
</el-upload> </el-upload>
<!-- 文件列表 -->
<transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul">
<li :key="file.url" class="el-upload-list__item ele-upload-list__item-content" v-for="(file, index) in fileList1">
<el-link :href="`${file.url}`" :underline="false" target="_blank">
<span class="el-icon-document"> {{ getFileName(file.name) }} </span>
</el-link>
<div class="ele-upload-list__item-content-action">
<el-link :underline="false" @click="handleDelete1(index)" type="danger">删除</el-link>
</div>
</li>
</transition-group>
</div>
</el-form-item> </el-form-item>
</div> </div>
<el-form-item style="text-align: center;border-top:1rem solid #B0B0B0;padding: 20rem 0rem"> <el-form-item style="text-align: center;border-top:1rem solid #B0B0B0;padding: 20rem 0rem">
@ -455,8 +475,10 @@
number: 0, number: 0,
uploadList: [], uploadList: [],
// //
uploadFileUrl: process.env.VUE_APP_API_TARGET_URL + '/system/oss/upload', uploadFileUrl:
process.env.VUE_APP_API_TARGET_URL + 'system/oss/addFilesUpload',
fileList: [], fileList: [],
fileList1: [],
loadingModal: undefined loadingModal: undefined
}; };
}, },
@ -501,6 +523,9 @@
this.$refs['Partnerform'].validate(valid => { this.$refs['Partnerform'].validate(valid => {
if (valid) { if (valid) {
this.form1.fieldType = this.form1.fieldType.toString(); this.form1.fieldType = this.form1.fieldType.toString();
this.form1.imageurl = this.fileList
.map(item => item.url)
.toString();
this.$request this.$request
.post('/official/companymessage/add', this.form1) .post('/official/companymessage/add', this.form1)
.then(res => { .then(res => {
@ -512,10 +537,11 @@
phoneNumber: '', phoneNumber: '',
email: '', email: '',
fieldType: [], fieldType: [],
otherNotes: '',
advantageConcept: '', advantageConcept: '',
cooperationIntention: '' cooperationIntention: '',
imageurl: ''
}; };
this.fileList = [];
} }
}); });
} }
@ -532,6 +558,9 @@
this.form.productCertification = this.form.productCertification.toString(); this.form.productCertification = this.form.productCertification.toString();
this.form.qualitySystem = this.form.qualitySystem.toString(); this.form.qualitySystem = this.form.qualitySystem.toString();
this.form.relevantQualifications = this.form.relevantQualifications.toString(); this.form.relevantQualifications = this.form.relevantQualifications.toString();
this.form.imageurl = this.fileList1
.map(item => item.url)
.toString();
this.$request this.$request
.post('/official/companymessage/add', this.form) .post('/official/companymessage/add', this.form)
.then(res => { .then(res => {
@ -554,8 +583,10 @@
qualitySystem: [], qualitySystem: [],
relevantQualifications: [], relevantQualifications: [],
advantageConcept: '', advantageConcept: '',
cooperationIntention: '' cooperationIntention: '',
imageurl: ''
}; };
this.fileList1 = [];
} }
}); });
} }
@ -599,7 +630,7 @@
}, },
// //
handleUploadError(err) { handleUploadError(err) {
this.$message.error(`上传文件失败,请重试`); this.$message.error(`上传文件失败,请重试`, err);
this.loadingModal.close(); this.loadingModal.close();
}, },
// //
@ -621,8 +652,8 @@
}, },
// //
handleDelete(index) { handleDelete(index) {
let ossId = this.fileList[index].ossId; // let ossId = this.fileList[index].ossId;
delOss(ossId); // delOss(ossId);
this.fileList.splice(index, 1); this.fileList.splice(index, 1);
}, },
// //
@ -642,6 +673,76 @@
} else { } else {
return name; return name;
} }
},
//
handleBeforeUpload1(file) {
//
if (this.fileType) {
const fileName = file.name.split('.');
const fileExt = fileName[fileName.length - 1];
const isTypeOk = this.fileType.indexOf(fileExt) >= 0;
if (!isTypeOk) {
this.$message.error(
`文件格式不正确, 请上传${this.fileType.join('/')}格式文件!`
);
return false;
}
}
//
if (this.fileSize) {
const isLt = file.size / 1024 / 1024 < this.fileSize;
if (!isLt) {
this.$message.error(`上传文件大小不能超过 ${this.fileSize} MB!`);
return false;
}
}
this.loadingModal = this.$loading({
lock: true,
text: '正在上传文件,请稍候...',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
});
this.number++;
return true;
},
//
handleExceed1() {
this.$message.error(`上传文件数量不能超过 ${this.limit} 个!`);
},
//
handleUploadError1(err) {
this.$message.error(`上传文件失败,请重试`, err);
this.loadingModal.close();
},
//
handleUploadSuccess1(res, file) {
if (res.code === 200) {
this.uploadList1.push({
name: res.data.fileName,
url: res.data.url,
ossId: res.data.ossId
});
this.uploadedSuccessfully1();
} else {
this.number--;
this.loadingModal.close();
this.$message.error(res.msg);
this.$refs.fileUpload1.handleRemove(file);
this.uploadedSuccessfully1();
}
},
//
handleDelete1(index) {
this.fileList1.splice(index, 1);
},
//
uploadedSuccessfully1() {
if (this.number > 0 && this.uploadList1.length === this.number) {
this.fileList1 = this.fileList1.concat(this.uploadList1);
this.uploadList1 = [];
this.number = 0;
this.loadingModal.close();
}
} }
} }
}; };

View File

@ -2,48 +2,23 @@
<div class="page-company"> <div class="page-company">
<div style="height:104rem;"></div> <div style="height:104rem;"></div>
<div class="screen1"> <div class="screen1">
<img <img :src="screen1.imageurl" alt="" style="width: 100%" />
:src="screen1.imageurl"
alt=""
style="width: 100%"
/>
</div> </div>
<div class="screen2"> <div class="screen2">
<div class="wrapper1680"> <div class="wrapper1680">
<el-tabs <el-tabs tab-position="left" v-model="activeName" @tab-click="handleChosePane">
tab-position="left" <el-tab-pane label="投资者新闻" name="first">
v-model="activeName"
@tab-click="handleChosePane"
>
<el-tab-pane
label="投资者新闻"
name="first"
>
<div class="news-wrapper"> <div class="news-wrapper">
<div class="news-item"> <div class="news-item">
<ul> <ul>
<li <li v-for="item in investorNews.actionOne" :key="item.id" @click="() => $router.push('/investor/detail/' + item.id)">
v-for="item in investorNews.actionOne"
:key="item.id"
@click="() => $router.push('/investor/detail/' + item.id)"
>
<el-row class="itemRow"> <el-row class="itemRow">
<el-col <el-col :span="8" class="imgCol">
:span="8"
class="imgCol"
>
<div class="list-img"> <div class="list-img">
<img <img :src="item.cover" style="width:100%;height:100%;object-fit:cover;" alt="">
:src="item.cover"
style="width:100%;height:100%;object-fit:cover;"
alt=""
>
</div> </div>
</el-col> </el-col>
<el-col <el-col :span="16" class="listContent">
:span="16"
class="listContent"
>
<div class="list-title"> <div class="list-title">
{{ item.captionName }}<span class="deailTitle">[详细]</span> {{ item.captionName }}<span class="deailTitle">[详细]</span>
</div> </div>
@ -55,12 +30,7 @@
<div class="news-item"> <div class="news-item">
<div class="contentTitle"> <div class="contentTitle">
<ul> <ul>
<li <li v-for="item in investorNews.actionTwo" :key="item.id" class="itemDisc" @click="() => $router.push('/investor/detail/' + item.id)">
v-for="item in investorNews.actionTwo"
:key="item.id"
class="itemDisc"
@click="() => $router.push('/investor/detail/' + item.id)"
>
{{ item.captionName }} {{ item.captionName }}
</li> </li>
</ul> </ul>
@ -69,19 +39,10 @@
<div class="news-item"> <div class="news-item">
<div class="contentThree"> <div class="contentThree">
<ul> <ul>
<li <li v-for="(item, index) in investorNews.actionThree" :key="item.id" class="itemNomal" @click="() => $router.push('/investor/detail/' + item.id)">
v-for="(item, index) in investorNews.actionThree"
:key="item.id"
class="itemNomal"
@click="() => $router.push('/investor/detail/' + item.id)"
>
<template v-if="index == 0"> <template v-if="index == 0">
<div class="imgList"> <div class="imgList">
<img <img :src="item.cover" style="width:100%;height:100%;object-fit:cover;" alt="">
:src="item.cover"
style="width:100%;height:100%;object-fit:cover;"
alt=""
>
<div class="imgMask"> <div class="imgMask">
{{ item.captionName }} {{ item.captionName }}
</div> </div>
@ -96,53 +57,27 @@
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane <el-tab-pane label="公司治理" name="second">
label="公司治理"
name="second"
>
<div class="news-wrapper"> <div class="news-wrapper">
<div class="news-item"> <div class="news-item">
<ul> <ul>
<li <li v-for="(item, index) in corporateGovernance.actionOne" :key="item.id">
v-for="item in corporateGovernance.actionOne" <div class="contentTitle" v-if="index == 0" @click="handleView(item.cover)">
:key="item.id"
@click="() => $router.push('/investor/detail/' + item.id)"
>
<el-row class="itemRow">
<el-col
:span="8"
class="imgCol"
>
<div class="list-img">
<img
:src="item.cover"
style="width:100%;height:100%;object-fit:cover;"
alt=""
>
</div>
</el-col>
<el-col
:span="16"
class="listContent"
>
<div class="list-title">
{{ item.captionName }}<span class="deailTitle">[详细]</span> {{ item.captionName }}<span class="deailTitle">[详细]</span>
</div> </div>
</el-col> <div class="contentTitle" v-else>
</el-row> <a :href="item.cover" :download="getFileName(item.cover)"> {{ item.captionName }}<span class="deailTitle">[下载]</span></a>
</div>
</li> </li>
</ul> </ul>
</div> </div>
<div class="news-item"> <div class="news-item">
<div class="contentTitle"> <div class="contentTitle">
<ul> <ul>
<li <li v-for="item in corporateGovernance.actionTwo" :key="item.id">
v-for="item in corporateGovernance.actionTwo" <div class="contentTitle">
:key="item.id" <a :href="item.cover" :download="getFileName(item.cover)"> {{ item.captionName }}<span class="deailTitle">[下载]</span></a>
class="itemDisc" </div>
@click="() => $router.push('/investor/detail/' + item.id)"
>
{{ item.captionName }}
</li> </li>
</ul> </ul>
</div> </div>
@ -150,117 +85,48 @@
<div class="news-item"> <div class="news-item">
<div class="contentThree"> <div class="contentThree">
<ul> <ul>
<li <li v-for="item in corporateGovernance.actionThree" :key="item.id">
v-for="(item, index) in corporateGovernance.actionThree" <div class="contentTitle">
:key="item.id" <a :href="item.cover" :download="getFileName(item.cover)"> {{ item.captionName }}<span class="deailTitle">[下载]</span></a>
class="itemNomal"
@click="() => $router.push('/investor/detail/' + item.id)"
>
<template v-if="index == 0">
<div class="imgList">
<img
:src="item.cover"
style="width:100%;height:100%;object-fit:cover;"
alt=""
>
<div class="imgMask">
{{ item.captionName }}
</div> </div>
</div>
</template>
<template v-else>
{{ item.captionName }}
</template>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane <el-tab-pane label="投资者关系" name="third">
label="投资者关系" <el-form ref="feekform" :model="form" :rules="formRules" label-width="110rem" style="margin-top: 40rem">
name="third" <div class="formBarContent">
> <el-row>
<div class="news-wrapper"> <el-col :span="12">
<div class="news-item"> <el-form-item label="联系人" prop="userName">
<ul> <el-input v-model="form.userName" />
<li </el-form-item>
v-for="item in investorRelations.actionOne"
:key="item.id"
@click="() => $router.push('/investor/detail/' + item.id)"
>
<el-row class="itemRow">
<el-col
:span="8"
class="imgCol"
>
<div class="list-img">
<img
:src="item.cover"
style="width:100%;height:100%;object-fit:cover;"
alt=""
>
</div>
</el-col> </el-col>
<el-col <el-col :span="12">
:span="16" <el-form-item label="联系方式" prop="phoneNumber">
class="listContent" <el-input v-model="form.phoneNumber" />
> </el-form-item>
<div class="list-title">
{{ item.captionName }}<span class="deailTitle">[详细]</span>
</div>
</el-col> </el-col>
</el-row> </el-row>
</li> <el-form-item label="留言内容" prop="abstracts">
</ul> <el-input v-model="form.abstracts" :autosize="{ minRows: 6, maxRows: 6 }" type="textarea" />
</div> </el-form-item>
<div class="news-item">
<div class="contentTitle">
<ul>
<li
v-for="item in investorRelations.actionTwo"
:key="item.id"
class="itemDisc"
@click="() => $router.push('/investor/detail/' + item.id)"
>
{{ item.captionName }}
</li>
</ul>
</div>
</div>
<div class="news-item">
<div class="contentThree">
<ul>
<li
v-for="(item, index) in investorRelations.actionThree"
:key="item.id"
class="itemNomal"
@click="() => $router.push('/investor/detail/' + item.id)"
>
<template v-if="index == 0">
<div class="imgList">
<img
:src="item.cover"
style="width:100%;height:100%;object-fit:cover;"
alt=""
>
<div class="imgMask">
{{ item.captionName }}
</div>
</div>
</template>
<template v-else>
{{ item.captionName }}
</template>
</li>
</ul>
</div>
</div>
</div> </div>
<el-form-item style="text-align: center;">
<el-button class="subBtn" @click="handleAdd">
提交
</el-button>
</el-form-item>
</el-form>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
</div> </div>
<el-dialog :visible.sync="dialogVisible">
<img width="100%" :src="dialogImageUrl" alt="">
</el-dialog>
<FootBar theme="dark"></FootBar> <FootBar theme="dark"></FootBar>
</div> </div>
</template> </template>
@ -271,7 +137,7 @@ import FootBar from '@/components/FootBar.vue';
export default { export default {
components: { components: {
FootBar, FootBar
}, },
data() { data() {
return { return {
@ -280,45 +146,72 @@ export default {
introduction: { introduction: {
businessName: '', businessName: '',
businessNameEnglish: '', businessNameEnglish: '',
titleChinese: '', titleChinese: ''
}, }
}, },
dialogVisible: false,
dialogImageUrl: '',
activeName: 'first', activeName: 'first',
investorNews: { investorNews: {
actionOne: [], actionOne: [],
actionTwo: [], actionTwo: [],
actionThree: [], actionThree: []
}, },
corporateGovernance: { corporateGovernance: {
actionOne: [], actionOne: [],
actionTwo: [], actionTwo: [],
actionThree: [], actionThree: []
}, },
investorRelations: { investorRelations: {
actionOne: [], actionOne: [],
actionTwo: [], actionTwo: [],
actionThree: [], actionThree: []
}, },
tempImg: '/static/img/tempNews.png', tempImg: '/static/img/tempNews.png',
form: {
userName: '',
phoneNumber: '',
abstracts: ''
},
formRules: {
userName: [
{ required: true, message: '请输入联系人', trigger: 'blur' }
],
phoneNumber: [
{ required: true, message: '请输入联系方式', trigger: 'blur' },
{
validator: function(rule, value, callback) {
const reg = /^1[3456789]\d{9}$/;
const reg3 = /^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
if (!(reg.test(value) || reg3.test(value))) {
callback(new Error('请输入手机号、座机号或邮箱'));
} else {
callback();
}
},
trigger: 'blur'
}
],
abstracts: [{ required: true, message: '请输入内容', trigger: 'blur' }]
}
}; };
}, },
computed: { computed: {
...mapState({ ...mapState({
scrollTop: state => state.scroll.scrollTop, scrollTop: state => state.scroll.scrollTop
}), })
}, },
created() { created() {
this.$event.$emit('nav-theme', 'light'); this.$event.$emit('nav-theme', 'light');
this.getScreen1Banner(); this.getScreen1Banner();
this.getInvestorNewsData(); this.getInvestorNewsData();
this.getCorporateGovernanceData(); this.getCorporateGovernanceData();
this.getInvestorRelationsData();
}, },
mounted() { mounted() {
if (this.$route.hash) { if (this.$route.hash) {
this.forceScroll({ this.forceScroll({
top: document.getElementById(this.$route.hash.slice(1)).offsetTop, top: document.getElementById(this.$route.hash.slice(1)).offsetTop,
behavior: 'smooth', behavior: 'smooth'
}); });
} }
}, },
@ -326,10 +219,13 @@ export default {
...mapMutations(['forceScroll', 'setScrollTop']), ...mapMutations(['forceScroll', 'setScrollTop']),
async getScreen1Banner() { async getScreen1Banner() {
try { try {
const res = await this.$request.get( const res = await this.$request.get('/official/index/list', {
'/official/index/list', params: {
{ params: { pageNum: 1, pageSize: 1, captionName: '投资与合作/投资者/banner' } }, pageNum: 1,
); pageSize: 1,
captionName: '投资与合作/投资者/banner'
}
});
this.screen1.imageurl = res.rows[0].imageurl; this.screen1.imageurl = res.rows[0].imageurl;
} catch (error) {} } catch (error) {}
}, },
@ -339,7 +235,9 @@ export default {
// //
async getInvestorNewsData() { async getInvestorNewsData() {
try { try {
const res = await this.$request.get('/official/slideshow/list', { params: { pageNum: 1, pageSize: 22, type: '4' } }); const res = await this.$request.get('/official/slideshow/list', {
params: { pageNum: 1, pageSize: 22, type: '4' }
});
this.investorNews.actionOne = res.rows.slice(0, 4); this.investorNews.actionOne = res.rows.slice(0, 4);
this.investorNews.actionTwo = res.rows.slice(4, 18); this.investorNews.actionTwo = res.rows.slice(4, 18);
this.investorNews.actionThree = res.rows.slice(18, 22); this.investorNews.actionThree = res.rows.slice(18, 22);
@ -348,22 +246,47 @@ export default {
// //
async getCorporateGovernanceData() { async getCorporateGovernanceData() {
try { try {
const res = await this.$request.get('/official/slideshow/list', { params: { pageNum: 1, pageSize: 22, type: '5' } }); const res = await this.$request.get('/official/slideshow/list', {
this.corporateGovernance.actionOne = res.rows.slice(0, 4); params: { pageNum: 1, pageSize: 42, type: '5' }
this.corporateGovernance.actionTwo = res.rows.slice(4, 18); });
this.corporateGovernance.actionThree = res.rows.slice(18, 22); var sortDate = res.rows.sort((a, b) => a.orderBy - b.orderBy);
this.corporateGovernance.actionOne = sortDate.slice(0, 14);
this.corporateGovernance.actionTwo = sortDate.slice(14, 28);
this.corporateGovernance.actionThree = sortDate.slice(28, 42);
} catch (error) {} } catch (error) {}
}, },
// handleView(imgUrl) {
async getInvestorRelationsData () { console.log('$$$$', imgUrl);
this.dialogImageUrl = imgUrl;
this.dialogVisible = true;
},
//
getFileName(name) {
// url
if (name.lastIndexOf('/') > -1) {
return name.slice(name.lastIndexOf('/') + 1);
} else {
return name;
}
},
handleAdd() {
try { try {
const res = await this.$request.get('/official/slideshow/list', { params: { pageNum: 1, pageSize: 22, type: '6' } }); this.$refs['feekform'].validate(valid => {
this.investorRelations.actionOne = res.rows.slice(0, 4); if (valid) {
this.investorRelations.actionTwo = res.rows.slice(4, 18); this.$request.post('/official/message/add', this.form).then(res => {
this.investorRelations.actionThree = res.rows.slice(18, 22); if (res.code == 200) {
this.form = {
userName: '',
phoneNumber: '',
abstracts: ''
};
}
});
}
});
} catch (error) {} } catch (error) {}
}, }
}, }
}; };
</script> </script>
@ -374,7 +297,7 @@ export default {
.screen2 { .screen2 {
padding: 90rem 120rem 60rem; padding: 90rem 120rem 60rem;
background: #FFFFFF; background: #ffffff;
} }
/deep/.el-tabs__item { /deep/.el-tabs__item {
padding: 0rem; padding: 0rem;
@ -407,7 +330,7 @@ export default {
text-align: justifyLeft; text-align: justifyLeft;
font-style: normal; font-style: normal;
text-transform: none; text-transform: none;
border-bottom: 2rem solid #F0D145;; border-bottom: 2rem solid #f0d145;
} }
/deep/.el-tabs--left .el-tabs__item.is-left { /deep/.el-tabs--left .el-tabs__item.is-left {
text-align: left; text-align: left;
@ -415,6 +338,67 @@ export default {
/deep/.el-tabs--left .el-tabs__header.is-left { /deep/.el-tabs--left .el-tabs__header.is-left {
margin-right: 120rem; margin-right: 120rem;
} }
.el-form-item {
margin-bottom: 22rem !important;
}
/deep/.el-form-item__error {
font-size: 12rem;
padding-top: 4rem;
}
/deep/.el-form-item__label {
font-size: 14rem;
line-height: 40rem;
padding: 0 12rem 0 0;
}
/deep/.el-form-item__content {
line-height: 40rem;
font-size: 14rem;
}
/deep/.el-input {
font-size: 14rem;
}
/deep/.el-input__inner {
border-radius: 4rem;
border: 1rem solid #dcdfe6;
height: 40rem;
line-height: 40rem;
padding: 0 15rem;
}
/deep/.el-checkbox {
font-size: 14rem;
margin-right: 30rem;
}
/deep/.el-checkbox__inner {
border: 1rem solid #dcdfe6;
border-radius: 2rem;
width: 14rem;
height: 14rem;
}
/deep/.el-checkbox__label {
padding-left: 10rem;
line-height: 19rem;
font-size: 14rem;
}
/deep/.el-textarea {
font-size: 14rem;
}
/deep/.el-textarea__inner {
padding: 5rem 15rem;
border: 1rem solid #dcdfe6;
border-radius: 4rem;
height: 138rem !important;
min-height: 138rem !important;
}
/deep/.el-upload-list__item {
font-size: 14rem;
margin-top: 5rem;
border-radius: 4rem;
}
/deep/.el-button--small {
padding: 9rem 15rem;
font-size: 12rem;
border-radius: 3rem;
}
.news-wrapper { .news-wrapper {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
@ -464,7 +448,7 @@ export default {
.deailTitle { .deailTitle {
font-family: MicrosoftYaHei; font-family: MicrosoftYaHei;
font-size: 16rem; font-size: 16rem;
color: #0045A2; color: #0045a2;
line-height: 30rem; line-height: 30rem;
text-align: justifyLeft; text-align: justifyLeft;
font-style: normal; font-style: normal;
@ -479,7 +463,7 @@ export default {
white-space: nowrap; white-space: nowrap;
} }
.itemDisc::marker { .itemDisc::marker {
color: #F0D145; color: #f0d145;
} }
.contentTitle { .contentTitle {
font-family: MicrosoftYaHei; font-family: MicrosoftYaHei;
@ -517,7 +501,7 @@ export default {
opacity: 0.7; opacity: 0.7;
font-family: MicrosoftYaHei; font-family: MicrosoftYaHei;
font-size: 20rem; font-size: 20rem;
color: #FFFFFF; color: #ffffff;
line-height: 40rem; line-height: 40rem;
text-align: center; text-align: center;
font-style: normal; font-style: normal;

View File

@ -2,11 +2,7 @@
<div class="page-news-detail"> <div class="page-news-detail">
<div style="height:104rem;"></div> <div style="height:104rem;"></div>
<div class="screen1"> <div class="screen1">
<img <img :src="screen1.bannerUrl" alt="" style="width:100%;" />
:src="screen1.bannerUrl"
alt=""
style="width:100%;"
/>
</div> </div>
<div class="screen2"> <div class="screen2">
<div class="wrapper1400"> <div class="wrapper1400">
@ -17,10 +13,7 @@
<span>{{ newsDetail.releaseTime.slice(0, 10) }}</span> <span>{{ newsDetail.releaseTime.slice(0, 10) }}</span>
<span>{{ newsDetail.groupName }}</span> <span>{{ newsDetail.groupName }}</span>
</div> </div>
<div <div class="news-content ql-editor" v-html="newsDetail.newsContent">
class="news-content ql-editor"
v-html="newsDetail.newsContent"
>
</div> </div>
</div> </div>
</div> </div>
@ -66,14 +59,14 @@ export default {
data() { data() {
return { return {
screen1: { screen1: {
bannerUrl: '', bannerUrl: ''
}, },
currentNewsId: '', currentNewsId: '',
prevNewsId: '', prevNewsId: '',
nextNewsId: '', nextNewsId: '',
newsDetail: { newsDetail: {
releaseTime: '', releaseTime: ''
}, }
}; };
}, },
computed: { computed: {
@ -82,11 +75,15 @@ export default {
}, },
recommendData() { recommendData() {
return [].concat( return [].concat(
this.newsDetail.slideshowMap?.previous ? [this.newsDetail.slideshowMap.previous] : [], this.newsDetail.slideshowMap?.previous
? [this.newsDetail.slideshowMap.previous]
: [],
[this.newsDetail], [this.newsDetail],
this.newsDetail.slideshowMap?.nextArticle ? [this.newsDetail.slideshowMap.nextArticle] : [], this.newsDetail.slideshowMap?.nextArticle
? [this.newsDetail.slideshowMap.nextArticle]
: []
); );
}, }
}, },
watch: { watch: {
currentId: { currentId: {
@ -94,8 +91,8 @@ export default {
document.getElementById('app').scrollTop = 0; document.getElementById('app').scrollTop = 0;
this.getNewsDetail(v); this.getNewsDetail(v);
}, },
immediate: true, immediate: true
}, }
}, },
created() { created() {
this.$event.$emit('nav-theme', 'light'); this.$event.$emit('nav-theme', 'light');
@ -104,22 +101,27 @@ export default {
methods: { methods: {
async getScreen1Banner() { async getScreen1Banner() {
try { try {
const res = await this.$request.get( const res = await this.$request.get('/official/index/list', {
'/official/index/list', params: {
{ params: { pageNum: 1, pageSize: 1, captionName: '投资与合作/投资者/详情banner' } }, pageNum: 1,
); pageSize: 1,
captionName: '投资与合作//详情banner'
}
});
this.screen1.bannerUrl = res.rows[0].imageurl; this.screen1.bannerUrl = res.rows[0].imageurl;
} catch (error) {} } catch (error) {}
}, },
async getNewsDetail(currentNewsId) { async getNewsDetail(currentNewsId) {
try { try {
const res = await this.$request.get('/official/slideshow/' + currentNewsId); const res = await this.$request.get(
'/official/slideshow/' + currentNewsId
);
this.newsDetail = res.data; this.newsDetail = res.data;
this.prevNewsId = res.data.slideshowMap.previous?.id || ''; this.prevNewsId = res.data.slideshowMap.previous?.id || '';
this.nextNewsId = res.data.slideshowMap.nextArticle?.id || ''; this.nextNewsId = res.data.slideshowMap.nextArticle?.id || '';
} catch (error) {} } catch (error) {}
}, }
}, }
}; };
</script> </script>
@ -190,7 +192,8 @@ export default {
height: 505rem; height: 505rem;
border-radius: 10rem; border-radius: 10rem;
background-color: #ffffff; background-color: #ffffff;
box-shadow: rgba(28, 28, 30, 0.05) 0rem 0rem 2rem 0rem, rgba(28, 28, 30, 0.05) 0rem 8rem 16rem 0rem; box-shadow: rgba(28, 28, 30, 0.05) 0rem 0rem 2rem 0rem,
rgba(28, 28, 30, 0.05) 0rem 8rem 16rem 0rem;
overflow: hidden; overflow: hidden;
margin-bottom: 60rem; margin-bottom: 60rem;
cursor: pointer; cursor: pointer;
@ -201,7 +204,8 @@ export default {
margin-right: calc((1400rem - 430rem * 3) / 2); margin-right: calc((1400rem - 430rem * 3) / 2);
} }
.screen3 .news-item:hover { .screen3 .news-item:hover {
box-shadow: rgba(28, 28, 30, 0.1) 0rem 0rem 2rem 0rem, rgba(28, 28, 30, 0.1) 0rem 8rem 16rem 0rem; box-shadow: rgba(28, 28, 30, 0.1) 0rem 0rem 2rem 0rem,
rgba(28, 28, 30, 0.1) 0rem 8rem 16rem 0rem;
z-index: 10; z-index: 10;
} }
.screen3 .news-cover { .screen3 .news-cover {