合并分支 'feature_dev_FQQ' 到 'dev_20230216'

修改ios的pdf预览

查看合并请求 laws-foton-slrs/foton-laws-system-front!26
This commit is contained in:
高嵩
2023-03-14 16:10:38 +08:00
+179 -88
View File
@@ -14,21 +14,26 @@
<div class="details-content" style="position: relative"> <div class="details-content" style="position: relative">
<div class="details-content-modular basic-information"> <div class="details-content-modular basic-information">
</div> </div>
<div class="details-content-modular clearfix" v-for="(item, index) in dynamicFormField" :key="index" v-if="item.isShowImp === '0'"> <div class="details-content-modular clearfix" v-for="(item, index) in dynamicFormField" :key="index"
v-if="item.isShowImp === '0'">
<el-collapse v-model="activeNames" @change="handleChange"> <el-collapse v-model="activeNames" @change="handleChange">
<div v-if="item.label === '基础信息'" class="details-content-modular basic-information" style="border-top:none;position: absolute;right: 36px;"> </div> <div v-if="item.label === '基础信息'" class="details-content-modular basic-information"
style="border-top:none;position: absolute;right: 36px;"></div>
<el-collapse-item :name="item.label" @click.native="handleChange1(item.label)"> <el-collapse-item :name="item.label" @click.native="handleChange1(item.label)">
<template slot="title"> <template slot="title">
<div class="modular-header" v-if="item.label === '基础信息'"> <div class="modular-header" v-if="item.label === '基础信息'">
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div> <div class="modular-header-title"><i
class="icon-modular-title"/><span>{{ item.label }}</span></div>
</div> </div>
<div class="modular-header" v-if="item.label !== '基础信息'"> <div class="modular-header" v-if="item.label !== '基础信息'">
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div> <div class="modular-header-title"><i
class="icon-modular-title"/><span>{{ item.label }}</span></div>
</div> </div>
</template> </template>
<div class="modular-content"> <div class="modular-content">
<template v-if="item.label === '基础信息'"> <template v-if="item.label === '基础信息'">
<div class="details-content-modular basic-information" style="border-top:none; border-bottom: none;"> <div class="details-content-modular basic-information"
style="border-top:none; border-bottom: none;">
<div class="basic-information-content"> <div class="basic-information-content">
<!-- <p><label style=" margin-right: 150px;">标准类别</label><span>{{ sarStandardsInfoEO.standSort || '-' }}</span></p>--> <!-- <p><label style=" margin-right: 150px;">标准类别</label><span>{{ sarStandardsInfoEO.standSort || '-' }}</span></p>-->
<el-row :gutter="5" class=""> <el-row :gutter="5" class="">
@@ -64,8 +69,10 @@
</el-col> </el-col>
</el-row> </el-row>
<!--发布稿(必读)--> <!--发布稿(必读)-->
<template v-for="(child, childIndex) in item.child1" v-if="child.value && child.value.length > 0"> <template v-for="(child, childIndex) in item.child1"
<el-row :gutter="5" class="files-titles" style="border-bottom: 1px solid #E5E5E5"> v-if="child.value && child.value.length > 0">
<el-row :gutter="5" class="files-titles"
style="border-bottom: 1px solid #E5E5E5">
<el-col :span="8"> <el-col :span="8">
<label style="float: left">{{ child.attrName }}</label> <label style="float: left">{{ child.attrName }}</label>
</el-col> </el-col>
@@ -73,7 +80,8 @@
<template v-if="child.value && child.value.length > 0"> <template v-if="child.value && child.value.length > 0">
<!-- 单个文件时--> <!-- 单个文件时-->
<div style=" line-height: 32px"> <div style=" line-height: 32px">
<div v-for="(file, fileIndex) in child1Func(child.value)" style="display: flex;"> <div v-for="(file, fileIndex) in child1Func(child.value)"
style="display: flex;">
<span v-if="child.value && child.value.length > 0 && child.value.length === 1" <span v-if="child.value && child.value.length > 0 && child.value.length === 1"
style="display: flex; align-items: center;"> style="display: flex; align-items: center;">
<a style="font-size:0.2rem;color: #409EFF;cursor: pointer;display: inline-block;" <a style="font-size:0.2rem;color: #409EFF;cursor: pointer;display: inline-block;"
@@ -98,16 +106,20 @@
</template> </template>
<template v-else-if="child.value === null">-</template> <template v-else-if="child.value === null">-</template>
<!--发布稿(必读)--> <!--发布稿(必读)-->
<template v-for="(child, childIndex) in item.child6" v-if="child.value && child.value.length > 0"> <template v-for="(child, childIndex) in item.child6"
<el-row :gutter="5" class="files-titles" style="border-bottom: 1px solid #E5E5E5"> v-if="child.value && child.value.length > 0">
<el-row :gutter="5" class="files-titles"
style="border-bottom: 1px solid #E5E5E5">
<el-col :span="8"> <el-col :span="8">
<label style="float: left">{{ child.attrName }}</label> <label style="float: left">{{ child.attrName }}</label>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<template v-if="child.value && child.value.length > 0" > <template v-if="child.value && child.value.length > 0">
<div style="line-height: 32px"> <div style="line-height: 32px">
<div v-for="(file, fileIndex) in child6Func(child.value)" style="display: flex;"> <div v-for="(file, fileIndex) in child6Func(child.value)"
<span v-if="child.value && child.value.length > 0 && child.value.length === 1" style="display: flex; align-items: center;"> style="display: flex;">
<span v-if="child.value && child.value.length > 0 && child.value.length === 1"
style="display: flex; align-items: center;">
<a style="font-size: 0.2rem;color: #409EFF;cursor: pointer;display: inline-block" <a style="font-size: 0.2rem;color: #409EFF;cursor: pointer;display: inline-block"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName | ellipsis50}}</a> :title="file.oldFileName">{{ file.oldFileName | ellipsis50}}</a>
@@ -115,13 +127,14 @@
<!--多个文件时--> <!--多个文件时-->
<div v-else-if="child.value && child.value.length > 0"> <div v-else-if="child.value && child.value.length > 0">
<span style="display: flex; align-items: center;"> <span style="display: flex; align-items: center;">
<a style="font-size: 16px;color: #409EFF;cursor: pointer" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" <a style="font-size: 16px;color: #409EFF;cursor: pointer"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName | ellipsis50}}</a> :title="file.oldFileName">{{ file.oldFileName | ellipsis50}}</a>
</span> </span>
</div> </div>
</div> </div>
<!-- <el-button v-if="child.attrField === 'FBGYWBD'" @click="showItemsModel(child.attrField)" class="decomposition-btn">标准分解单--> <!-- <el-button v-if="child.attrField === 'FBGYWBD'" @click="showItemsModel(child.attrField)" class="decomposition-btn">标准分解单-->
<!-- </el-button>--> <!-- </el-button>-->
</div> </div>
</template> </template>
<template v-else-if="child.value === null">-</template> <template v-else-if="child.value === null">-</template>
@@ -144,11 +157,11 @@
:title="file.oldFileName">{{ file.oldFileName }}</a> :title="file.oldFileName">{{ file.oldFileName }}</a>
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>--> <!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</span> </span>
<!-- <el-button v-if="child.value && child.value.length > 1"--> <!-- <el-button v-if="child.value && child.value.length > 1"-->
<!-- style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"--> <!-- style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"-->
<!-- class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">--> <!-- class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">-->
<!-- 更多--> <!-- 更多-->
<!-- </el-button>--> <!-- </el-button>-->
</template> </template>
<template v-if="child.value === null">-</template> <template v-if="child.value === null">-</template>
</el-col> </el-col>
@@ -161,18 +174,19 @@
<label>{{ child.attrName }}</label> <label>{{ child.attrName }}</label>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<template v-if="child.value && child.value.length > 0" v-for="(file, fileIndex) in child4Func(child.value)"> <template v-if="child.value && child.value.length > 0"
v-for="(file, fileIndex) in child4Func(child.value)">
<span> <span>
<a style="font-size: 16px;color: #409EFF;cursor: pointer" <a style="font-size: 16px;color: #409EFF;cursor: pointer"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{ file.oldFileName }}</a> :title="file.oldFileName">{{ file.oldFileName }}</a>
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>--> <!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</span> </span>
<!-- <el-button v-if="child.value && child.value.length > 1"--> <!-- <el-button v-if="child.value && child.value.length > 1"-->
<!-- style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"--> <!-- style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"-->
<!-- class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">--> <!-- class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">-->
<!-- 更多--> <!-- 更多-->
<!-- </el-button>--> <!-- </el-button>-->
</template> </template>
<template v-if="child.value === null">-</template> <template v-if="child.value === null">-</template>
</el-col> </el-col>
@@ -193,11 +207,11 @@
:title="file.oldFileName">{{ file.oldFileName }}</a> :title="file.oldFileName">{{ file.oldFileName }}</a>
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>--> <!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
</span> </span>
<!-- <el-button v-if="child.value && child.value.length > 1"--> <!-- <el-button v-if="child.value && child.value.length > 1"-->
<!-- style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"--> <!-- style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);"-->
<!-- class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">--> <!-- class="decomposition-btn" icon="icon-relation" @click="relateEvent1(child.value)">-->
<!-- 更多--> <!-- 更多-->
<!-- </el-button>--> <!-- </el-button>-->
</template> </template>
<template v-if="child.value === null">-</template> <template v-if="child.value === null">-</template>
</el-col> </el-col>
@@ -255,14 +269,19 @@
<div class="modular-item-more" v-if="item.label === '实施日期' && item.one.length > 6"> <div class="modular-item-more" v-if="item.label === '实施日期' && item.one.length > 6">
<div class="wrap" @click="handleToggleShowAll(item)"> <div class="wrap" @click="handleToggleShowAll(item)">
<span>{{ item.showAll ? '收起' : '更多' }}</span> <span>{{ item.showAll ? '收起' : '更多' }}</span>
<img :class="{'is-show-all': item.showAll}" src="@/assets/images/shangqi/img/more.png"> <img :class="{'is-show-all': item.showAll}"
src="@/assets/images/shangqi/img/more.png">
</div> </div>
</div> </div>
<template v-for="(child, childIndex) in item.half" v-if="child.isShowImp === '0' && child.attrField !== 'CBCD'"> <template v-for="(child, childIndex) in item.half"
v-if="child.isShowImp === '0' && child.attrField !== 'CBCD'">
<!-- modular-item half 代替标准编号--> <!-- modular-item half 代替标准编号-->
<el-row :gutter="5" :key="child.id" :class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'" v-if=" child.attrField === 'DTBJH' || child.attrField === 'YYBJ' || child.attrField === 'BYYBJ' || child.attrField === 'CBBH' || child.attrField === 'DXBZ' || child.attrField === 'XGLC' || child.attrField === 'BDTBZBH' || child.attrField === 'BFDTBZ' || child.attrField === 'BBFDTBZ' "> <el-row :gutter="5" :key="child.id"
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
v-if=" child.attrField === 'DTBJH' || child.attrField === 'YYBJ' || child.attrField === 'BYYBJ' || child.attrField === 'CBBH' || child.attrField === 'DXBZ' || child.attrField === 'XGLC' || child.attrField === 'BDTBZBH' || child.attrField === 'BFDTBZ' || child.attrField === 'BBFDTBZ' ">
<el-col :span="8"> <el-col :span="8">
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label> <label class="modular-content-p-name" :title="child.attrName">{{ child.attrName
}}</label>
</el-col> </el-col>
<el-col :span="16"></el-col> <el-col :span="16"></el-col>
<span class="modular-content-p-val" :title="child.value || '-'"> <span class="modular-content-p-val" :title="child.value || '-'">
@@ -271,7 +290,8 @@
<template v-if="child.attrField === 'XGLC' && child.value"> <template v-if="child.attrField === 'XGLC' && child.value">
<p class="modular-content-p-val"> <p class="modular-content-p-val">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="processCenterClick(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="processCenterClick(item)"
style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
class="span-line" :title="item">{{ item }}</a> class="span-line" :title="item">{{ item }}</a>
</span> </span>
</p> </p>
@@ -301,9 +321,12 @@
</span> </span>
</el-row> </el-row>
<!-- 其他项--> <!-- 其他项-->
<div v-else :key="child.id" :class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"> <div v-else :key="child.id"
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label> :class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'">
<span v-if="child.attrField === 'FGWHR'" class="modular-content-p-val clearfix" :title="child.value || '-'"> <label class="modular-content-p-name" :title="child.attrName">{{ child.attrName
}}</label>
<span v-if="child.attrField === 'FGWHR'" class="modular-content-p-val clearfix"
:title="child.value || '-'">
<template v-if="child.value"> <template v-if="child.value">
{{ child.value }} {{ child.value }}
<put-question-button <put-question-button
@@ -319,19 +342,24 @@
<span v-else-if="child.attrType === 'DATE_PICKER'" class="modular-content-p-val"> <span v-else-if="child.attrType === 'DATE_PICKER'" class="modular-content-p-val">
{{ child.value ? child.value : '-' }} {{ child.value ? child.value : '-' }}
</span> </span>
<span v-else-if="child.attrType !== 'FILE'" class="modular-content-p-val" :title="child.value || '-'"> <span v-else-if="child.attrType !== 'FILE'" class="modular-content-p-val"
:title="child.value || '-'">
{{ child.value || '-' }} {{ child.value || '-' }}
</span> </span>
<div v-else class="modular-content-p-flies"> <div v-else class="modular-content-p-flies">
<p class="files-title" v-for="(file, fileIndex) in child.value" :key="fileIndex"> <p class="files-title" v-for="(file, fileIndex) in child.value"
:key="fileIndex">
<!--发布稿、增补件单独设置下载权限--> <!--发布稿、增补件单独设置下载权限-->
<template v-if="child.attrField === 'FBGBJBD' || child.attrField === 'ZBJBD'"> <template
<a :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"> v-if="child.attrField === 'FBGBJBD' || child.attrField === 'ZBJBD'">
<a :title="file.oldFileName"
@click="openFileInPdf(file.id, file.oldFileName)" target="_blank">
{{ file.oldFileName }} {{ file.oldFileName }}
</a> </a>
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName"> <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">
{{file.oldFileName}} {{file.oldFileName}}
</a> </a>
</template> </template>
@@ -339,9 +367,12 @@
</div> </div>
</div> </div>
</template> </template>
<template v-for="(child, childIndex) in item.child" v-if="child.isShowImp === '0' && item.label === '关联信息'"> <template v-for="(child, childIndex) in item.child"
<div :key="child.id" :class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"> v-if="child.isShowImp === '0' && item.label === '关联信息'">
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label> <div :key="child.id"
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'">
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName
}}</label>
<!--相关流程--> <!--相关流程-->
<template v-if="child.attrField === 'XGLC' && child.value"> <template v-if="child.attrField === 'XGLC' && child.value">
<p class="modular-content-p-val"> <p class="modular-content-p-val">
@@ -351,7 +382,8 @@
</span> </span>
</p> </p>
</template> </template>
<template v-else-if="child.attrField === 'DTBJH'|| child.attrField === 'BDTBZH' || child.attrField === 'BDTBZBH' || child.attrField === 'YYBJ' || child.attrField === 'BYYBJ' || child.attrField === 'CBBH' || child.attrField === 'DXBZ' || child.attrField === 'BFDTBZ' || child.attrField === 'BBFDTBZ'"> <template
v-else-if="child.attrField === 'DTBJH'|| child.attrField === 'BDTBZH' || child.attrField === 'BDTBZBH' || child.attrField === 'YYBJ' || child.attrField === 'BYYBJ' || child.attrField === 'CBBH' || child.attrField === 'DXBZ' || child.attrField === 'BFDTBZ' || child.attrField === 'BBFDTBZ'">
<p class="modular-content-p-val" v-if="child.value"> <p class="modular-content-p-val" v-if="child.value">
<span v-for="(item, index) in child.value.split(',')" :key="index"> <span v-for="(item, index) in child.value.split(',')" :key="index">
<a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;" <a @click="showReplaceStandInfo(item)" style="cursor: pointer;color: #0c91e5;margin-right: 5px;"
@@ -360,26 +392,31 @@
</p> </p>
<span class="modular-content-p-val" v-else>-</span> <span class="modular-content-p-val" v-else>-</span>
</template> </template>
<span v-else-if="child.attrField === 'SVPPS'" class="modular-content-p-val" :title="child.tips || '-'"> <span v-else-if="child.attrField === 'SVPPS'" class="modular-content-p-val"
:title="child.tips || '-'">
{{ !child.value || child.value === 'null' ? '-' : child.value }} {{ !child.value || child.value === 'null' ? '-' : child.value }}
</span> </span>
<span v-else-if="child.attrType !== 'FILE'" class="modular-content-p-val" :title="child.value || '-'"> <span v-else-if="child.attrType !== 'FILE'" class="modular-content-p-val"
:title="child.value || '-'">
{{ child.value || '-' }} {{ child.value || '-' }}
<!-- 被代替标准号--> <!-- 被代替标准号-->
</span> </span>
<div v-else class="modular-content-p-flies"> <div v-else class="modular-content-p-flies">
<p class="files-title" v-for="(file, fileIndex) in child.value" :key="fileIndex"> <p class="files-title" v-for="(file, fileIndex) in child.value"
:key="fileIndex">
<!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>--> <!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>-->
<!--发布稿、增补件单独设置下载权限--> <!--发布稿、增补件单独设置下载权限-->
<template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG' <template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG'
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA' || child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'"> || child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName"> <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">
{{file.oldFileName}} {{file.oldFileName}}
</a> </a>
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName"> <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">
{{file.oldFileName}} {{file.oldFileName}}
</a> </a>
</template> </template>
@@ -387,7 +424,8 @@
</div> </div>
</div> </div>
</template> </template>
<template v-for="(child, childIndex) in item.one" v-if="child.isShowImp === '0' && item.label == '过程稿件'"> <template v-for="(child, childIndex) in item.one"
v-if="child.isShowImp === '0' && item.label == '过程稿件'">
<!-- 增补件(必读)和勘误件不放在过程稿件里了--> <!-- 增补件(必读)和勘误件不放在过程稿件里了-->
<el-row :gutter="5" <el-row :gutter="5"
v-show="child.attrField !== 'ZBJBD' && child.attrField !== 'KWJ' && child.attrField !== 'FBGYWBD' " v-show="child.attrField !== 'ZBJBD' && child.attrField !== 'KWJ' && child.attrField !== 'FBGYWBD' "
@@ -395,7 +433,8 @@
:class="'modular-item half'" :class="'modular-item half'"
> >
<el-col :span="8"> <el-col :span="8">
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label> <label class="modular-content-p-name" :title="child.attrName">{{ child.attrName
}}</label>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<span <span
@@ -416,12 +455,14 @@
<template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG' <template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG'
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA' || child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'"> || child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
</template> </template>
@@ -438,7 +479,8 @@
:key="child.id" :key="child.id"
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'" :class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
> >
<label class="modular-content-p-name" :title="child.attrName">{{ child.attrName }}</label> <label class="modular-content-p-name" :title="child.attrName">{{ child.attrName
}}</label>
<!--相关流程--> <!--相关流程-->
<template v-if="child.attrField === 'XGLC' && child.value"> <template v-if="child.attrField === 'XGLC' && child.value">
<p class="modular-content-p-val"> <p class="modular-content-p-val">
@@ -482,12 +524,14 @@
<!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>--> <!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>-->
<!--发布稿、增补件单独设置下载权限--> <!--发布稿、增补件单独设置下载权限-->
<template v-if="child.attrField === 'GLWJ'"> <template v-if="child.attrField === 'GLWJ'">
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
</template> </template>
<template v-else> <template v-else>
<a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank" :title="file.oldFileName">{{ <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"
:title="file.oldFileName">{{
file.oldFileName file.oldFileName
}}</a> }}</a>
</template> </template>
@@ -502,6 +546,7 @@
</el-collapse> </el-collapse>
</div> </div>
</div> </div>
<loading :loading="loadingText">加载中请稍后</loading>
</div> </div>
</template> </template>
<!--查看分解单--> <!--查看分解单-->
@@ -518,7 +563,8 @@
<el-form inline :model="standardForm" ref="ruleForm" class="label-input-form"> <el-form inline :model="standardForm" ref="ruleForm" class="label-input-form">
<el-form-item class="search-item"> <el-form-item class="search-item">
<el-input size="small" v-model="standItemSearch.orgName" v-show="false" style="height: 32px"/> <el-input size="small" v-model="standItemSearch.orgName" v-show="false" style="height: 32px"/>
<el-input size="small" v-model="standItemSearch.responsibleUnit" v-show="false" style="height: 32px"/> <el-input size="small" v-model="standItemSearch.responsibleUnit" v-show="false"
style="height: 32px"/>
<el-popover <el-popover
placement="bottom" placement="bottom"
popper-class="user-dept-popper" popper-class="user-dept-popper"
@@ -643,8 +689,10 @@
<!-- {{ scope.row.termsConditions ? scope.row.termsConditions.replace(/<.*?>/ig, ' ') : '' }}--> <!-- {{ scope.row.termsConditions ? scope.row.termsConditions.replace(/<.*?>/ig, ' ') : '' }}-->
<!-- </div>--> <!-- </div>-->
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content" v-html="scope.row.termsConditions" :disabled="scope.row.termsConditions"></div> <div slot="content" v-html="scope.row.termsConditions"
<div class="table-jump" style=" overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" @click="itemsTextDialog(scope.row.itemsNum, scope.row.termsConditions)"> :disabled="scope.row.termsConditions"></div>
<div class="table-jump" style=" overflow: hidden;text-overflow: ellipsis;white-space: nowrap;"
@click="itemsTextDialog(scope.row.itemsNum, scope.row.termsConditions)">
{{ scope.row.termsConditions ? scope.row.termsConditions.replace(/<.*?>/ig, ' ') : '' }} {{ scope.row.termsConditions ? scope.row.termsConditions.replace(/<.*?>/ig, ' ') : '' }}
</div> </div>
</el-tooltip> </el-tooltip>
@@ -953,7 +1001,8 @@
<el-input v-model="standItemEO.itemsNum" :disabled="itemFormdisableflag" placeholder="请输入内容"></el-input> <el-input v-model="standItemEO.itemsNum" :disabled="itemFormdisableflag" placeholder="请输入内容"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="条款名称" prop="itemsName" class="add-form-item"> <el-form-item label="条款名称" prop="itemsName" class="add-form-item">
<el-input v-model="standItemEO.itemsName" :disabled="itemFormdisableflag" placeholder="请输入内容"></el-input> <el-input v-model="standItemEO.itemsName" :disabled="itemFormdisableflag"
placeholder="请输入内容"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="内容简介" prop="termsConditions" class="add-form-item"> <el-form-item label="内容简介" prop="termsConditions" class="add-form-item">
<el-input v-model="standItemEO.termsConditions" :disabled="itemFormdisableflag" placeholder="请输入内容"/> <el-input v-model="standItemEO.termsConditions" :disabled="itemFormdisableflag" placeholder="请输入内容"/>
@@ -1460,7 +1509,6 @@
</div> </div>
</el-dialog> </el-dialog>
<loading :loading="loading">数据获取中</loading> <loading :loading="loading">数据获取中</loading>
<!-- 关联条款抽屉--> <!-- 关联条款抽屉-->
<el-drawer <el-drawer
ref="relatedTermsDrawer" ref="relatedTermsDrawer"
@@ -1482,9 +1530,11 @@
</div> </div>
<div class="demo-drawer-footer"> <div class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" :loading="btnLoading" <el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" :loading="btnLoading"
@click="handleRelatedTermsDrawerSubmit">提交</el-button> @click="handleRelatedTermsDrawerSubmit">提交
</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" <el-button class="common-button-default" size="mini" icon="el-icon-close"
@click="handleRelatedTermsDrawerCancel">取消</el-button> @click="handleRelatedTermsDrawerCancel">取消
</el-button>
</div> </div>
</el-drawer> </el-drawer>
<!--内容简介--> <!--内容简介-->
@@ -1504,7 +1554,8 @@
import RelatedTermsSelect from "@/pages/details/otherStandardDetails/components/RelatedTermsSelect"; import RelatedTermsSelect from "@/pages/details/otherStandardDetails/components/RelatedTermsSelect";
import {getBusStandFileByAttId} from 'api/process' import {getBusStandFileByAttId} from 'api/process'
import {dicTypeData} from "api/unqualProcess"; import {dicTypeData} from "api/unqualProcess";
import { onlyOfficeUrl,kkFileViewUrl } from '@/sysConfig' import {onlyOfficeUrl, kkFileViewUrl} from '@/sysConfig'
import Axios from "axios";
export default { export default {
@@ -1524,10 +1575,10 @@
} }
return value return value
}, },
ellipsis50 (value) { ellipsis50(value) {
if (!value) return '' if (!value) return ''
if (value.length > 50) { if (value.length > 50) {
return value.slice(0,50) + '...' return value.slice(0, 50) + '...'
} }
return value return value
} }
@@ -1536,7 +1587,8 @@
return { return {
screenWidth: document.body.offsetWidth - 141, screenWidth: document.body.offsetWidth - 141,
screenHeight: document.documentElement.clientHeight, screenHeight: document.documentElement.clientHeight,
externalStatus:'', externalStatus: '',
loadingText: false,
handleList: [], handleList: [],
CycxOptions: [], CycxOptions: [],
activeNames: ['基础信息', '过程稿件', '实施日期'], activeNames: ['基础信息', '过程稿件', '实施日期'],
@@ -1863,7 +1915,7 @@
props: {}, props: {},
watch: {}, watch: {},
methods: { methods: {
handleChangeList(data){ handleChangeList(data) {
this.handleList = data this.handleList = data
}, },
child1Func(child1) { child1Func(child1) {
@@ -2518,7 +2570,7 @@
let idList = [] let idList = []
ids.forEach(item => { ids.forEach(item => {
let a, b let a, b
a = item.substring(item.indexOf('(') +1) a = item.substring(item.indexOf('(') + 1)
b = a.substring(0, a.lastIndexOf(')')) b = a.substring(0, a.lastIndexOf(')'))
idList.push(b) idList.push(b)
}) })
@@ -2743,28 +2795,63 @@
if (fileSuffix !== undefined && fileSuffix !== null) { if (fileSuffix !== undefined && fileSuffix !== null) {
fileSuffix = fileSuffix.toUpperCase() fileSuffix = fileSuffix.toUpperCase()
} }
if(fileSuffix !== 'pdg' && fileSuffix !== 'PDG'){ if (fileSuffix !== 'pdg' && fileSuffix !== 'PDG') {
this.getBusStandFileByAttId(attId) this.getBusStandFileByAttId(attId)
.then(res => { .then(res => {
if (res) { if (res) {
const editFileInfo = res const editFileInfo = res
const nowTime = new Date().getTime() const nowTime = new Date().getTime()
if(editFileInfo.fileSuffix.toLowerCase() === 'pdf'){ this.loadingText = true
if (editFileInfo.fileSuffix.toLowerCase() === 'pdf') {
if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
//alert(navigator.userAgent);
this.getFileInfo(editFileInfo.id)
} else if (/(Android)/i.test(navigator.userAgent)) {
//alert(navigator.userAgent);
this.loadingText = false
window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + editFileInfo.id)) window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + editFileInfo.id))
}else { } else {
this.loadingText = false
window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + editFileInfo.id))
}
// window.open('/#/phonePDF?fileId='+editFileInfo.id)
} else {
const nowTime = new Date().getTime() const nowTime = new Date().getTime()
// window.open(onlyOfficeUrl+'/onlyOffice?oldFileName=' + editFileInfo.oldFileName + '&fileType=' + editFileInfo.fileSuffix + '&attId=' + editFileInfo.id + '&fileUrl=' + editFileInfo.downLoadUrl + '&key=' + editFileInfo.id + nowTime+'&filePath='+editFileInfo.filePath+'&fileName='+editFileInfo.fileName) // window.open(onlyOfficeUrl+'/onlyOffice?oldFileName=' + editFileInfo.oldFileName + '&fileType=' + editFileInfo.fileSuffix + '&attId=' + editFileInfo.id + '&fileUrl=' + editFileInfo.downLoadUrl + '&key=' + editFileInfo.id + nowTime+'&filePath='+editFileInfo.filePath+'&fileName='+editFileInfo.fileName)
window.open(kkFileViewUrl+'/onlinePreview?url='+encodeURIComponent(Base64.encode(editFileInfo.downLoadUrl))); window.open(kkFileViewUrl + '/onlinePreview?url=' + encodeURIComponent(Base64.encode(editFileInfo.downLoadUrl)));
} }
} }
}).catch(e => { }).catch(e => {
this.$message.warning('文件不存在,预览失败') this.$message.warning('文件不存在,预览失败')
this.loadingText = false
}) })
}else { } else {
this.$message.warning('PDG文件,不支持手机端预览') this.$message.warning('PDG文件,不支持手机端预览')
} }
}, },
getFileInfo(fileId) {
Axios({
url: "/api/att/attFile/getFileInfo",
method: 'get',
responseType: 'blob',
params: {
fileId: fileId
},
headers: {'Content-Type': 'multipart/form-data'}
}).then(res => {
let blob = new Blob([res.data], {
type: 'application/pdf'
});
if (blob.size > 0) {
let fileURL = window.URL.createObjectURL(blob)
this.loadingText = false
window.open(fileURL, '_self')
} else {
this.getFileInfo()
}
})
},
showItemsModel(attField) { showItemsModel(attField) {
if (attField) { if (attField) {
this.fileType = attField this.fileType = attField
@@ -2819,18 +2906,18 @@
} else { } else {
this.$message.error('请选择要下载的文件') this.$message.error('请选择要下载的文件')
} }
if(this.$route.query.pageType === 'INLAND_STAND'){ if (this.$route.query.pageType === 'INLAND_STAND') {
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
this.$http.get('sarStandardsInfo/sar-standards-info/logInvalidDownload1',{ this.$http.get('sarStandardsInfo/sar-standards-info/logInvalidDownload1', {
standNumber: standNumber, standNumber: standNumber,
standName: this.sarStandardsInfoEO.standName standName: this.sarStandardsInfoEO.standName
}, { }, {
_this: this _this: this
}, res => { }, res => {
}) })
}else{ } else {
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
this.$http.get('sarStandardsInfo/sar-standards-info/logForeignDownload1',{ this.$http.get('sarStandardsInfo/sar-standards-info/logForeignDownload1', {
standNumber: standNumber, standNumber: standNumber,
standName: this.sarStandardsInfoEO.standEnName standName: this.sarStandardsInfoEO.standEnName
}, { }, {
@@ -3270,7 +3357,7 @@
//关联成功的提示 //关联成功的提示
handleRelatedTermsDrawerSubmit() { handleRelatedTermsDrawerSubmit() {
this.btnLoading = true this.btnLoading = true
if(this.handleList.length){ if (this.handleList.length) {
this.$refs['relatedTermsSelect'].handleSubmit(() => { this.$refs['relatedTermsSelect'].handleSubmit(() => {
this.selectSarStandItems() this.selectSarStandItems()
this.btnLoading = false this.btnLoading = false
@@ -3279,7 +3366,7 @@
type: 'success' type: 'success'
}); });
}) })
}else{ } else {
this.$message.warning('请至少勾选一条条款进行关联') this.$message.warning('请至少勾选一条条款进行关联')
this.btnLoading = false this.btnLoading = false
} }
@@ -3338,7 +3425,7 @@
})() })()
} }
let external = localStorage.getItem("external"); let external = localStorage.getItem("external");
if(external !== undefined && external !== null){ if (external !== undefined && external !== null) {
this.externalStatus = external this.externalStatus = external
} }
this.sarStandardsInfoEO.id = this.$route.query.id this.sarStandardsInfoEO.id = this.$route.query.id
@@ -3444,9 +3531,9 @@
location['child2'] = [] location['child2'] = []
} else { } else {
const childList = list2[0].child.filter(item => item.attrField === 'SYRZ'); const childList = list2[0].child.filter(item => item.attrField === 'SYRZ');
if(childList.length){ if (childList.length) {
childList.forEach(item => { childList.forEach(item => {
if(item.value === "[]"){ if (item.value === "[]") {
item.value = '' item.value = ''
} }
}) })
@@ -3531,9 +3618,11 @@
<style lang="less" scoped> <style lang="less" scoped>
@import '~@/assets/styles/mixins'; @import '~@/assets/styles/mixins';
@import '~@/assets/styles/style'; @import '~@/assets/styles/style';
.files-title { .files-title {
display: flex; display: flex;
align-items: center; align-items: center;
a { a {
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@@ -3542,6 +3631,7 @@
display: block; display: block;
} }
} }
.files-titles { .files-titles {
a { a {
overflow: hidden; overflow: hidden;
@@ -3550,6 +3640,7 @@
display: block; display: block;
} }
} }
/deep/ .el-icon-circle-close:before { /deep/ .el-icon-circle-close:before {
margin-left: 250px; margin-left: 250px;
} }