<template>
|
<div id="index" v-loading="loading">
|
<el-container v-show="!loading">
|
<el-main>
|
<el-row :gutter="20" id="images">
|
<el-col :span="12" v-for="(item, index) in items" :key="index">
|
<p class="title">{{ item.description }}</p>
|
<div class="imgList">
|
<div v-for="(image, index) in item.images" class="imgbox" :key="index">
|
<!-- <img :src="image.url" @click="handleImageClick(image.attachmentno)" /> -->
|
<img
|
src="@/assets/PDF.svg"
|
v-if="image.imagetype=='PDF'"
|
alt
|
@click="handleImageClick(image,item.objectNo,item.docType)"
|
/>
|
<img
|
src="@/assets/excel.svg"
|
v-else-if="image.imagetype=='XLSX'"
|
alt
|
@click="handleImageClick(image,item.objectNo,item.docType)"
|
/>
|
<img
|
src="@/assets/ppt.svg"
|
v-else-if="image.imagetype=='PPTX'"
|
alt
|
@click="handleImageClick(image,item.objectNo,item.docType)"
|
/>
|
<img
|
src="@/assets/word.svg"
|
v-else-if="image.imagetype=='DOCX'"
|
alt
|
@click="handleImageClick(image,item.objectNo,item.docType)"
|
/>
|
<img v-else :src="image.url" @click="handleImageClick(image,item.objectNo,item.docType)" />
|
</div>
|
</div>
|
</el-col>
|
</el-row>
|
</el-main>
|
</el-container>
|
</div>
|
</template>
|
|
<script>
|
import { queryChannelImageInfo, addChannelImage, delChannelImage } from '@/api/area/partner'
|
import { mapState } from 'vuex'
|
export default {
|
data: function() {
|
return {
|
loading: true,
|
items: '',
|
newWindow: null
|
}
|
},
|
computed: {
|
...mapState({
|
partnerParams: state => state.risk.partnerParams
|
})
|
},
|
created() {
|
this.getForm()
|
},
|
methods: {
|
async getForm() {
|
let params = {
|
serialno: this.partnerParams.serialno,
|
objectType: this.partnerParams.objectType
|
}
|
let res = await queryChannelImageInfo(params)
|
res.result.forEach((value,index) => {
|
// if (value.images.length < 4) {
|
// value.isShow = true
|
// } else {
|
// value.isShow = false
|
// }
|
value.images.forEach((item) => {
|
item.imagetype = item.filename.split('.')[1].toUpperCase()
|
})
|
})
|
this.items = res.result
|
this.loading = false
|
},
|
setIndex(index) {
|
this.index = index
|
},
|
submitForm() {
|
this.$emit('handleNextPage', true)
|
},
|
handleSave() {
|
this.$message.success('保存成功!')
|
},
|
handleImageClick(image,objectno,typeno) {
|
// 根据路由模式判断路径分割方式
|
const routeStr = location.href.includes('#') ? '#/' : ''
|
// 图片点击事件
|
let serialno = image.docno
|
let attachmentno = image.attachmentno
|
let objecttype = this.partnerParams.objectType
|
let type = '3' // 1-项目 2-企业 3-合作方
|
let params = `attachmentno=${attachmentno}&serialno=${serialno}&objectno=${objectno}&objecttype=${objecttype}&typeno=${typeno}&type=${type}`
|
this.newWindow = window.open(
|
`${location.origin}${process.env.VUE_APP_HOST_PATH}${routeStr}photoViewer?${params}`,
|
'newwindow',
|
'height=700px, width=800px, top=100px,left=400px, toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=no, status=no'
|
)
|
},
|
/* handleImageClick(attachmentno) {
|
// 图片点击事件
|
let serialno = this.partnerParams.serialno
|
let objectType = this.partnerParams.objectType
|
this.newWindow = window.open(
|
`/#/area/partner/imgDialog?serialno=${serialno}&objectType=${objectType}&attachmentno=${attachmentno}`,
|
'newwindow',
|
'height=600px, width=600px, top=100px,left=300px, toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=no, status=no'
|
)
|
}, */
|
}
|
}
|
</script>
|
|
<style scoped lang="stylus"></style>
|