4807 lines
170 KiB
Vue
4807 lines
170 KiB
Vue
<!-- eslint-disable -->
|
||
<!--国内标准法规详情页-->
|
||
<template>
|
||
<div :class="{'hidden': !isMoreAwayBtn}" class="other-standard-details v-class">
|
||
<!--title 标题-->
|
||
<div class="details-header">
|
||
<span v-if="sarStandardsInfoEO.standYear === null">
|
||
{{ sarStandardsInfoEO.standSortShow || '' }} {{
|
||
sarStandardsInfoEO.standNumber
|
||
}} 《{{ sarStandardsInfoEO.standName ? sarStandardsInfoEO.standName : sarStandardsInfoEO.standEnName }}》
|
||
</span>
|
||
<span v-else>
|
||
{{ sarStandardsInfoEO.standSortShow || '' }} {{
|
||
sarStandardsInfoEO.standNumber
|
||
}}-{{
|
||
sarStandardsInfoEO.standYear
|
||
}} 《{{ sarStandardsInfoEO.standName ? sarStandardsInfoEO.standName : sarStandardsInfoEO.standEnName }}》
|
||
</span>
|
||
</div>
|
||
<!--主体内容-->
|
||
<div class="details-content" style="position: relative">
|
||
<div class="details-content-modular basic-information">
|
||
</div>
|
||
<div
|
||
v-for="(item, index) in dynamicFormField"
|
||
v-if="item.isShowImp === '0'"
|
||
:key="index"
|
||
class="details-content-modular clearfix"
|
||
>
|
||
<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 class="modular-header" style="height: 50px;">
|
||
<div class="modular-header-btn">
|
||
<el-button v-if="sarStandardsInfoEO.collectId" :loading="isSubmit"
|
||
class="collection-btn" icon="el-icon-star-on" title="取消收藏" @click="collectClick(sarStandardsInfoEO.collectId)"></el-button>
|
||
<el-button v-else :loading="isSubmit" class="collection-btn" icon="el-icon-star-off" title="收藏"
|
||
@click="collectClick()"></el-button>
|
||
<el-button class="relation-btn" icon="icon-relation" @click="relateEvent()">更新记录</el-button>
|
||
<el-button class="relation-btn" @click="knowledgeSharing">标准问答</el-button>
|
||
<el-button v-if="false" class="relation-btn" @click="">标准需求(翻译)申请流程</el-button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<el-collapse-item :name="item.label" @click.native="handleChange1(item.label)">
|
||
<template slot="title">
|
||
<div v-if="item.label === '基础信息'" class="modular-header">
|
||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||
</div>
|
||
<div v-if="item.label !== '基础信息'" class="modular-header">
|
||
<div class="modular-header-title"><i class="icon-modular-title"/><span>{{ item.label }}</span></div>
|
||
</div>
|
||
</template>
|
||
<div class="modular-content">
|
||
<template v-if="item.label === '基础信息'">
|
||
<div class="details-content-modular basic-information" style="border-top:none; border-bottom: none;">
|
||
<div class="basic-information-content">
|
||
<p class="">
|
||
<label style=" margin-right: 164px;">标准号</label>
|
||
<span v-if="sarStandardsInfoEO.standYear">{{
|
||
sarStandardsInfoEO.standSortShow + ' ' + sarStandardsInfoEO.standNumber + '-' + sarStandardsInfoEO.standYear
|
||
}}</span>
|
||
<span v-else>{{ sarStandardsInfoEO.standSort + ' ' + sarStandardsInfoEO.standNumber }}</span>
|
||
</p>
|
||
<p><label style=" margin-right: 150px;">中文名称</label><span>{{
|
||
sarStandardsInfoEO.standName || '-'
|
||
}}</span></p>
|
||
<p v-if="activeState"><label style=" margin-right: 150px;">英文名称</label><span>{{
|
||
sarStandardsInfoEO.standEnName || '-'
|
||
}}</span></p>
|
||
<!--发布稿(必读)-->
|
||
<template v-for="(child, childIndex) in item.child1">
|
||
<p class="files-titles" style="border-bottom: 1px solid #E5E5E5">
|
||
<label style="float: left">{{ child.attrName }}</label>
|
||
<template v-if="child.value && child.value.length > 0">
|
||
<div style="position: relative;margin-left: 214px; line-height: 32px">
|
||
<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"
|
||
style="display: flex; align-items: center;">
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer;display: inline-block" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis50 }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
</span>
|
||
<!--多个文件时-->
|
||
<div v-else-if="child.value && child.value.length > 0">
|
||
<span style="display: flex; align-items: center;">
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis50 }}</a>
|
||
<i v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'" class="icon-download" title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'" class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
<el-button v-if="child.attrField === 'FBGBJBD'" class="decomposition-btn"
|
||
@click="showItemsModel(child.attrField)">标准分解单
|
||
</el-button>
|
||
</div>
|
||
</template>
|
||
<template v-else-if="child.value === null">
|
||
<div style="position: relative;margin-left: 214px; line-height: 32px">-</div>
|
||
</template>
|
||
</p>
|
||
</template>
|
||
<!--发布稿(必读)-->
|
||
<template v-for="(child, childIndex) in item.child6">
|
||
<p class="files-titles" style="border-bottom: 1px solid #E5E5E5">
|
||
<label style="float: left">{{ child.attrName }}</label>
|
||
<template v-if="child.value && child.value.length > 0">
|
||
<div style="position: relative;margin-left: 214px; line-height: 32px">
|
||
<div v-for="(file, fileIndex) in child6Func(child.value)" style="display: flex;">
|
||
<span v-if="child.value && child.value.length > 0 && child.value.length === 1"
|
||
style="display: flex; align-items: center;">
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer;display: inline-block" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis50 }}</a>
|
||
<i v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'" class="icon-download" title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'" class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
</span>
|
||
<!--多个文件时-->
|
||
<div v-else-if="child.value && child.value.length > 0">
|
||
<span style="display: flex; align-items: center;">
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis50 }}</a>
|
||
<i v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'" class="icon-download" title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'" class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
<el-button v-if="child.attrField === 'FBGYWBD'" class="decomposition-btn"
|
||
@click="showItemsModel(child.attrField)">标准分解单
|
||
</el-button>
|
||
</div>
|
||
</template>
|
||
<template v-else-if="child.value === null">
|
||
<div style="position: relative;margin-left: 214px; line-height: 32px">-</div>
|
||
</template>
|
||
</p>
|
||
</template>
|
||
<!--修订本-->
|
||
<template v-for="(child, childIndex) in item.child5">
|
||
<p class="files-title">
|
||
<label style=" margin-right: 164px;">{{ child.attrName }}</label>
|
||
<template v-for="(file, fileIndex) in child5Func(child.value)"
|
||
v-if="child.value && child.value.length > 0">
|
||
<span>
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</span>
|
||
<el-button
|
||
v-for="(itemNam,index) in itemExistList"
|
||
v-if="child.attrField === itemNam "
|
||
:key="index"
|
||
class="decomposition-btn"
|
||
style="right:62px"
|
||
@click="showItemsModel(child.attrField)"
|
||
>标准分解单
|
||
</el-button>
|
||
<el-button v-if="child.value && child.value.length > 1"
|
||
class="decomposition-btn"
|
||
icon="icon-relation" style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);" @click="relateEvent1(child.value)">
|
||
更多
|
||
</el-button>
|
||
</template>
|
||
<template v-if="child.value === null">-</template>
|
||
</p>
|
||
</template>
|
||
<!--勘误件-->
|
||
<template v-for="(child, childIndex) in item.child4">
|
||
<p class="files-title">
|
||
<label style=" margin-right: 164px;">{{ child.attrName }}</label>
|
||
<template v-for="(file, fileIndex) in child4Func(child.value)"
|
||
v-if="child.value && child.value.length > 0">
|
||
<span>
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</span>
|
||
<el-button
|
||
v-for="(itemNam,index) in itemExistList"
|
||
v-if="child.attrField === itemNam "
|
||
:key="index"
|
||
class="decomposition-btn"
|
||
style="right:62px"
|
||
@click="showItemsModel(child.attrField)"
|
||
>标准分解单
|
||
</el-button>
|
||
<el-button v-if="child.value && child.value.length > 1"
|
||
class="decomposition-btn"
|
||
icon="icon-relation" style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);" @click="relateEvent1(child.value)">
|
||
更多
|
||
</el-button>
|
||
</template>
|
||
<template v-if="child.value === null">-</template>
|
||
</p>
|
||
</template>
|
||
<!--增补件(必读)-->
|
||
<template v-for="(child, childIndex) in item.child3">
|
||
<p class="files-title">
|
||
<label style=" margin-right: 164px;">{{ child.attrName }}</label>
|
||
<template v-for="(file, fileIndex) in child3Func(child.value)"
|
||
v-if="child.value && child.value.length > 0">
|
||
<span>
|
||
<a :title="file.oldFileName"
|
||
style="font-size: 16px;color: #409EFF;cursor: pointer" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</span>
|
||
<el-button
|
||
v-for="(itemNam,index) in itemExistList"
|
||
v-if="child.attrField === itemNam "
|
||
:key="index"
|
||
class="decomposition-btn"
|
||
style="right:62px"
|
||
@click="showItemsModel(child.attrField)"
|
||
>标准分解单
|
||
</el-button>
|
||
<el-button v-if="child.value && child.value.length > 1"
|
||
class="decomposition-btn"
|
||
icon="icon-relation" style="color:#409EFF;border: 1px solid #409EFF;background: rgba(64, 158, 255, 0.1);" @click="relateEvent1(child.value)">
|
||
更多
|
||
</el-button>
|
||
</template>
|
||
<template v-if="child.value === null">-</template>
|
||
</p>
|
||
</template>
|
||
<p class="half">
|
||
<label style=" margin-right: 150px;" title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。">标准状态</label>
|
||
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
||
</p>
|
||
<p class="half"><label style=" margin-right: 150px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span>
|
||
</p>
|
||
|
||
<p class="half"><label style=" margin-right: 150px;">标准体系</label><span>{{
|
||
sarStandardsInfoEO.standSystem || '-'
|
||
}}</span></p>
|
||
<p class="half">
|
||
<label style=" margin-right: 84px;">是否纳入认证清单</label>
|
||
<span>
|
||
{{
|
||
sarStandardsInfoEO.isRelateAccess ? (sarStandardsInfoEO.isRelateAccess === '1' ? '是' : '否') : '-'
|
||
}}
|
||
</span>
|
||
</p>
|
||
<template v-for="(child, childIndex) in item.child2">
|
||
<p class="half"><label style=" margin-right: 150px;">{{ child.attrName }}</label><span>{{ child.value || '-' }}</span>
|
||
</p>
|
||
</template>
|
||
<div v-if="item.label === '实施日期' && item.one.length > 6" class="modular-item-more">
|
||
<div class="wrap" @click="handleToggleShowAll(item)">
|
||
<span>{{ item.showAll ? '收起' : '更多' }}</span>
|
||
<img :class="{'is-show-all': item.showAll}" src="@/assets/images/shangqi/img/more.png">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
<template v-for="(child, childIndex) in item.half" v-if="child.isShowImp === '0' && child.attrField !== 'CBCD'">
|
||
<!-- modular-item half 代替标准编号-->
|
||
<div
|
||
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' "
|
||
:key="child.id"
|
||
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
|
||
>
|
||
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
||
<span
|
||
:title="child.value || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
<div v-if="child.value != null && child.value !== '' && child.value.split(',').length > 0">
|
||
<!--相关流程-->
|
||
<template v-if="child.attrField === 'XGLC' && child.value">
|
||
<p class="modular-content-p-val">
|
||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||
<a :title="item" class="span-line"
|
||
style="cursor: pointer;color: #0c91e5;margin-right: 5px;" @click="processCenterClick(item)">{{ item }}</a>
|
||
</span>
|
||
</p>
|
||
</template>
|
||
<!--是否授权-->
|
||
<template v-else-if="child.attrField === 'QBSQ' && child.value">
|
||
<p class="modular-content-p-val">
|
||
<span v-if="child.value === '1'">
|
||
是
|
||
</span>
|
||
<span v-else>
|
||
否
|
||
</span>
|
||
</p>
|
||
</template>
|
||
<!--其他-->
|
||
<template v-else>
|
||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||
<a :title="item" class="span-line"
|
||
style="cursor: pointer;color: #0c91e5;margin-right: 5px;" @click="showReplaceStandInfo(item)">{{ item }}</a>
|
||
</span>
|
||
</template>
|
||
</div>
|
||
<div v-else>
|
||
{{ '-' }}
|
||
</div>
|
||
</span>
|
||
</div>
|
||
<!-- 其他项-->
|
||
<div
|
||
v-else
|
||
:key="child.id"
|
||
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
|
||
>
|
||
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
||
<span
|
||
v-if="child.attrField === 'FGWHR'"
|
||
:title="child.value || '-'"
|
||
class="modular-content-p-val clearfix"
|
||
>
|
||
<template v-if="child.value">
|
||
{{ child.value }}
|
||
<put-question-button
|
||
:resId="sarStandardsInfoEO.id"
|
||
:resType="saveStandType"
|
||
style="float: right;"
|
||
></put-question-button>
|
||
</template>
|
||
<template v-else>
|
||
{{ '-' }}
|
||
</template>
|
||
</span>
|
||
<span
|
||
v-else-if="child.attrType === 'DATE_PICKER'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ child.value ? child.value : '-' }}
|
||
</span>
|
||
<span
|
||
v-else-if="child.attrType !== 'FILE'"
|
||
:title="child.value || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ child.value || '-' }}
|
||
</span>
|
||
<div v-else class="modular-content-p-flies">
|
||
<p
|
||
v-for="(file, fileIndex) in child.value"
|
||
:key="fileIndex"
|
||
class="files-title"
|
||
>
|
||
<!--发布稿、增补件单独设置下载权限-->
|
||
<template v-if="child.attrField === 'FBGBJBD' || child.attrField === 'ZBJBD'">
|
||
<a :title="file.oldFileName" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{
|
||
file.oldFileName
|
||
}}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</template>
|
||
<template v-else>
|
||
<a :title="file.oldFileName" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{
|
||
file.oldFileName
|
||
}}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</template>
|
||
<!-- <el-button-->
|
||
<!-- @click="showItemsModel(child.attrField)"-->
|
||
<!-- class="decomposition-btn"-->
|
||
<!-- icon="icon-separate"-->
|
||
<!-- >标准分解单</el-button>-->
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
</template>
|
||
<template
|
||
v-for="(child, childIndex) in item.child"
|
||
v-if="child.isShowImp === '0' && item.label === '关联信息'"
|
||
>
|
||
<div
|
||
:key="child.id"
|
||
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
|
||
>
|
||
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
||
<!--相关流程-->
|
||
<template v-if="child.attrField === 'XGLC' && child.value">
|
||
<p class="modular-content-p-val">
|
||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||
<a :title="item" class="span-line"
|
||
style="cursor: pointer;color: #0c91e5;margin-right: 5px;" @click="processCenterClick(item)">{{ item }}</a>
|
||
</span>
|
||
</p>
|
||
</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'"
|
||
>
|
||
<p v-if="child.value" class="modular-content-p-val">
|
||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||
<a :title="item" class="span-line"
|
||
style="cursor: pointer;color: #0c91e5;margin-right: 5px;" @click="showReplaceStandInfo(item)">{{ item }}</a>
|
||
</span>
|
||
</p>
|
||
<span v-else class="modular-content-p-val">-</span>
|
||
</template>
|
||
<span
|
||
v-else-if="child.attrField === 'SVPPS'"
|
||
:title="child.tips || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ !child.value || child.value === 'null' ? '-' : child.value }}
|
||
</span>
|
||
<span
|
||
v-else-if="child.attrType !== 'FILE'"
|
||
:title="child.value || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ child.value || '-' }}
|
||
<!-- 被代替标准号-->
|
||
</span>
|
||
<div v-else class="modular-content-p-flies">
|
||
<p
|
||
v-for="(file, fileIndex) in child.value"
|
||
:key="fileIndex"
|
||
class="files-title"
|
||
>
|
||
<!-- <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'
|
||
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|
||
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
|
||
<a :title="file.oldFileName" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{
|
||
file.oldFileName
|
||
}}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45': 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
|
||
<!-- <el-button v-if="file.fileSuffix='pdf'" type="primary" round>OCR</el-button>-->
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</template>
|
||
<template v-else>
|
||
<a :title="file.oldFileName" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{
|
||
file.oldFileName
|
||
}}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</template>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
<template
|
||
v-for="(child, childIndex) in item.one"
|
||
v-if="child.isShowImp === '0' && item.label == '过程稿件'"
|
||
>
|
||
<!-- 增补件(必读)和勘误件不放在过程稿件里了-->
|
||
<div
|
||
v-show="child.attrField !== 'ZBJBD' && child.attrField !== 'KWJ' && child.attrField !== 'FBGYWBD' "
|
||
:key="child.id"
|
||
:class="'modular-item half'"
|
||
>
|
||
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
||
<span
|
||
v-if="child.attrType !== 'FILE'"
|
||
:title="child.value || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ child.value || '-' }}
|
||
</span>
|
||
<div v-else class="modular-content-p-flies">
|
||
<p
|
||
v-for="(file, fileIndex) in child.value"
|
||
:key="fileIndex"
|
||
class="files-title"
|
||
>
|
||
<!--发布稿、增补件单独设置下载权限-->
|
||
<template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG'
|
||
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|
||
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
|
||
<a :title="file.oldFileName" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
</template>
|
||
<template v-else>
|
||
<a :title="file.oldFileName" target="_blank"
|
||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
</template>
|
||
</p>
|
||
<el-button
|
||
v-for="(itemNam,index) in itemExistList"
|
||
v-if="child.attrField === itemNam "
|
||
:key="itemNam"
|
||
class="decomposition-btn"
|
||
@click="showItemsModel(child.attrField)"
|
||
>标准分解单
|
||
</el-button>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
<template
|
||
v-for="(child, childIndex) in item.one"
|
||
v-if="child.isShowImp === '0' && item.label !== '关联信息' && item.label !== '过程稿件' && (item.label !== '实施日期' || (childIndex < 6 || item.showAll))"
|
||
>
|
||
<div
|
||
:key="child.id"
|
||
:class="item.label !== '过程稿件' ? 'modular-item half' : 'modular-item'"
|
||
>
|
||
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
||
<!--相关流程-->
|
||
<template v-if="child.attrField === 'XGLC' && child.value">
|
||
<p class="modular-content-p-val">
|
||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||
<a :title="item" class="span-line"
|
||
style="cursor: pointer;color: #0c91e5;margin-right: 5px;" @click="processCenterClick(item)">{{ item }}</a>
|
||
</span>
|
||
</p>
|
||
</template>
|
||
<template
|
||
v-else-if="child.attrField === 'DTBJH'|| child.attrField === 'BDTBZBH' || child.attrField === 'YYBJ' || child.attrField === 'BYYBJ' || child.attrField === 'CBBH' || child.attrField === 'DXBZ' || child.attrField === 'BFDTBZ' || child.attrField === 'BBFDTBZ'"
|
||
>
|
||
<p v-if="child.value" class="modular-content-p-val">
|
||
<span v-for="(item, index) in child.value.split(',')" :key="index">
|
||
<a :title="item" class="span-line"
|
||
style="cursor: pointer;color: #0c91e5;margin-right: 5px;" @click="showReplaceStandInfo(item)">{{ item }}</a>
|
||
</span>
|
||
</p>
|
||
<span v-else class="modular-content-p-val">-</span>
|
||
</template>
|
||
<span
|
||
v-else-if="child.attrField === 'SVPPS'"
|
||
:title="child.tips || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ !child.value || child.value === 'null' ? '-' : child.value }}
|
||
</span>
|
||
<!-- 去掉模块结构字段 -->
|
||
<span
|
||
v-else-if="child.attrType !== 'FILE' && !['DYBXH','DYMC','DYBXHCAR','DYMCCAR'].includes(child.attrField)"
|
||
:title="child.value || '-'"
|
||
class="modular-content-p-val"
|
||
>
|
||
{{ !child.value || child.value === 'null' || child.value === '[]' ? '-' : child.value }}
|
||
</span>
|
||
<div v-else class="modular-content-p-flies">
|
||
<p
|
||
v-for="(file, fileIndex) in child.value"
|
||
:key="fileIndex"
|
||
class="files-title"
|
||
>
|
||
<!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>-->
|
||
<!--发布稿、增补件单独设置下载权限-->
|
||
<template v-if="child.attrField === 'GLWJ'">
|
||
<a :title="file.oldFileName" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{
|
||
file.oldFileName
|
||
}}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- OCR按钮,根据文件名取后缀判断是否出现-->
|
||
|
||
<!-- <el-button v-if="judgeSuffix(file.fileName)" type="primary" size="mini" style="margin: 5px" @click="ocrFunction(file)" plain>OCR</el-button>-->
|
||
|
||
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</template>
|
||
<template v-else>
|
||
<a :title="file.oldFileName" target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{
|
||
file.oldFileName
|
||
}}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<!-- <span class="time-text">上传时间:{{ dateFormat(file.modifyTime) }}</span>-->
|
||
</template>
|
||
</p>
|
||
<el-button
|
||
v-for="(itemNam,index) in itemExistList"
|
||
v-if="child.attrField === itemNam "
|
||
:key="index"
|
||
class="decomposition-btn"
|
||
@click="showItemsModel(child.attrField)"
|
||
>标准分解单
|
||
</el-button>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</template>
|
||
</div>
|
||
</el-collapse-item>
|
||
</el-collapse>
|
||
</div>
|
||
</div>
|
||
<!-- <div v-show="!isMoreAwayBtn" class="more" @click="moreClick">更多<img src="@/assets/images/shangqi/img/more.png">-->
|
||
<!-- </div>-->
|
||
<!-- <div v-show="isMoreAwayBtn" class="put-away" @click="putAwayClick">收起<img src="@/assets/images/shangqi/img/more.png"></div>-->
|
||
<!--查看分解单-->
|
||
<el-drawer
|
||
:visible.sync="modalStandItemflag"
|
||
:wrapperClosable="false"
|
||
class="not-footer-drawer"
|
||
size="80%"
|
||
title="查看分解单"
|
||
@close="closeDrawer"
|
||
>
|
||
<div class="search-area">
|
||
<div class="left">
|
||
<el-form ref="ruleForm" :model="standardForm" class="label-input-form" inline>
|
||
<el-form-item class="search-item">
|
||
<el-input v-show="false" v-model="standItemSearch.orgName" size="small" style="height: 32px"/>
|
||
<el-input v-show="false" v-model="standItemSearch.responsibleUnit" size="small" style="height: 32px"/>
|
||
<el-popover
|
||
:value="false"
|
||
placement="bottom"
|
||
popper-class="user-dept-popper"
|
||
trigger="click"
|
||
>
|
||
</el-popover>
|
||
</el-form-item>
|
||
|
||
|
||
<el-form-item class="search-item">
|
||
<el-input v-model="standItemSearch.itemsName" clearable maxlength="100" placeholder="根据条款名称查找"
|
||
size="small"></el-input>
|
||
</el-form-item>
|
||
<!-- 新车实施日期-->
|
||
<el-form-item class="search-item">
|
||
<div class="block">
|
||
<el-date-picker
|
||
v-model="standItemSearch.XCXSSRQ"
|
||
placeholder="新车实施日期"
|
||
type="date"
|
||
value-format="yyyy-MM-dd">
|
||
</el-date-picker>
|
||
</div>
|
||
</el-form-item>
|
||
<!-- //在产车实施日期-->
|
||
<el-form-item class="search-item">
|
||
<div class="block">
|
||
<el-date-picker
|
||
v-model="standItemSearch.ZCCSSRQ"
|
||
placeholder="在产车实施日期"
|
||
type="date"
|
||
value-format="yyyy-MM-dd">
|
||
</el-date-picker>
|
||
</div>
|
||
</el-form-item>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
:loading="searching"
|
||
class="common-button-primary"
|
||
size="mini"
|
||
type="primary"
|
||
@click="searchSarStandItems">
|
||
查询
|
||
</el-button>
|
||
</el-form-item>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
class="common-button-default"
|
||
size="mini"
|
||
@click="clearAllSearch">
|
||
清空
|
||
</el-button>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
</div>
|
||
<div class="action-bar">
|
||
<el-button class="common-button-default export-button" icon="export" size="mini"
|
||
@click="exportStandardItem"
|
||
>
|
||
导出
|
||
</el-button>
|
||
<el-button
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'bd291146ac1e42c48968c5142ae55375' : '960a97045a6e47b0b8e33ebc347e5fd9'"
|
||
class="common-button-primary"
|
||
size="mini"
|
||
type="primary"
|
||
@click="openRelatedTermsDrawer"
|
||
>关联条款
|
||
</el-button>
|
||
<el-button
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'bd291146ac1e42c48968c5142ae55375' : '960a97045a6e47b0b8e33ebc347e5fd9'"
|
||
class="common-button-primary"
|
||
size="mini"
|
||
type="primary"
|
||
@click="editResolveList"
|
||
>编辑
|
||
</el-button>
|
||
<el-upload
|
||
:key="cfjgscUploadKey"
|
||
style="display: inline-block;margin:0 5px;"
|
||
:show-file-list = 'false'
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'bd291146ac1e42c48968c5142ae55375' : '960a97045a6e47b0b8e33ebc347e5fd9'"
|
||
:limit="1"
|
||
ref="importSplitResultFile"
|
||
:action="splitResultPath"
|
||
:file-list="defaultImportSplitResultFileList"
|
||
:data="uploadFilesplitEo"
|
||
:headers="headers"
|
||
:on-success="uploadSplitResultSuccess"
|
||
:on-remove="removeSplitResultFile"
|
||
:before-upload="beforeSplitResultImport"
|
||
:on-change="handleUploadChange"
|
||
>
|
||
<el-button size="mini" icon="el-icon-upload">拆分结果上传
|
||
</el-button>
|
||
</el-upload>
|
||
<el-button
|
||
size="mini"
|
||
type="primary"
|
||
@click="uploadImportSplitResultModal"
|
||
>模板下载
|
||
</el-button>
|
||
<!--<el-button size="mini" type="primary" @click="handleImportSplitResult">拆分结果提交-->
|
||
<!--</el-button>-->
|
||
</div>
|
||
<div class="content">
|
||
<el-table
|
||
ref="multipleTable"
|
||
:data="standItemList"
|
||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||
fontWeight: 'bold', height: '48px'}"
|
||
:height="tableHeight"
|
||
border
|
||
style="width: 100%"
|
||
tooltip-effect="dark"
|
||
@sort-change='sort'
|
||
@selection-change="selectAllStand">
|
||
<el-table-column
|
||
fixed="left"
|
||
type="selection"
|
||
width="60"
|
||
>
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="序号"
|
||
align="center"
|
||
type="index"
|
||
width="50">
|
||
<template slot-scope="{scope, column, $index}">
|
||
{{ ($index + 1) + (page7 - 1) * pageSize7 }}
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="条款号"
|
||
prop="itemsNum"
|
||
show-overflow-tooltip
|
||
sortable="custom"
|
||
width="90"
|
||
>
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="条款名称"
|
||
min-width="300"
|
||
prop="itemsName"
|
||
show-overflow-tooltip
|
||
>
|
||
</el-table-column>
|
||
<el-table-column
|
||
:resizable="false"
|
||
label="条款内容"
|
||
min-width="200"
|
||
prop="termsConditions"
|
||
>
|
||
<template slot-scope="scope">
|
||
<!-- <div class="table-jump" @click="itemsTextDialog(scope.row.itemsNum, scope.row.termsConditions)">-->
|
||
<!-- {{ scope.row.termsConditions ? scope.row.termsConditions.replace(/<.*?>/ig, ' ') : '' }}-->
|
||
<!-- </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, ' ') : '' }}
|
||
</div>
|
||
<!-- <el-tooltip placement="top">-->
|
||
<!-- <div slot="content" v-html="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, ' ') : '' }}-->
|
||
<!-- </div>-->
|
||
<!-- </el-tooltip>-->
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="核心技术要求/变化点"
|
||
prop="readContent"
|
||
show-overflow-tooltip
|
||
width="170"
|
||
>
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="基于上一版本差异"
|
||
prop="comparedWithPrevious"
|
||
show-overflow-tooltip
|
||
width="170">
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="新车型实施日期(文本)"
|
||
prop="xccssrq"
|
||
width="180">
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="在产车实施日期(文本)"
|
||
prop="zccssrq"
|
||
width="170">
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="适用车型"
|
||
prop="applyArctic"
|
||
show-overflow-tooltip
|
||
width="90"
|
||
>
|
||
<template slot-scope="scope">
|
||
{{ filterApplyArctic(scope.row) }}
|
||
</template>
|
||
</el-table-column>
|
||
<!-- <el-table-column-->
|
||
<!-- prop="responsibleUnit"-->
|
||
<!-- label="责任部门">-->
|
||
<!-- </el-table-column>-->
|
||
<el-table-column
|
||
label="责任工程师"
|
||
prop="dutyEngineer"
|
||
width="100">
|
||
</el-table-column>
|
||
<!-- <el-table-column-->
|
||
<!-- show-overflow-tooltip-->
|
||
<!-- label="符合性状态"-->
|
||
<!-- width="100">-->
|
||
<!-- <template slot-scope="scope">-->
|
||
<!-- {{ scope.row.complianceRequire ? (scope.row.complianceRequire === '1' ? '是' : '否') : '-' }}-->
|
||
<!-- </template>-->
|
||
<!-- </el-table-column>-->
|
||
<!-- <el-table-column-->
|
||
<!-- show-overflow-tooltip-->
|
||
<!-- prop="complianceState"-->
|
||
<!-- label="合规性分析"-->
|
||
<!-- width="100">-->
|
||
<!-- </el-table-column>-->
|
||
<el-table-column align="center" fixed="right" label="操作" width="50">
|
||
<template slot-scope="scope">
|
||
<div @click.stop>
|
||
<el-dropdown trigger="click" @command="handleCommand">
|
||
<i class="iconfont"></i>
|
||
<el-dropdown-menu slot="dropdown">
|
||
<el-dropdown-item :command="[scope.row, '查看']" :disabled="scope.row.enable==='0'">查看
|
||
</el-dropdown-item>
|
||
<!--<el-dropdown-item :disabled="scope.row.enable==='0'" :command="[scope.row, '编辑']">编辑</el-dropdown-item>-->
|
||
<!--<el-dropdown-item :disabled="scope.row.enable==='0'" :command="[scope.row, '删除']">删除</el-dropdown-item>-->
|
||
</el-dropdown-menu>
|
||
</el-dropdown>
|
||
</div>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
<loading :loading="tableLoading">数据加载中...</loading>
|
||
</div>
|
||
<pagination
|
||
:auto-size="true"
|
||
:page-size="pageSize7"
|
||
:page="page7"
|
||
:total="total7"
|
||
@pageChange="pageChange7"
|
||
@pageSizeChange="pageSizeChange7"></pagination>
|
||
<!-- <el-pagination-->
|
||
<!-- @size-change="pageSizeChange"-->
|
||
<!-- @current-change="pageChange"-->
|
||
<!-- :current-page="1"-->
|
||
<!-- :page-sizes="[10, 20, 30, 50]"-->
|
||
<!-- :page-size="100"-->
|
||
<!-- layout="sizes, prev, pager, next, jumper"-->
|
||
<!-- :total="standitemTotal">-->
|
||
<!-- </el-pagination>-->
|
||
|
||
<!-- <pagination :total="standitemTotal" @pageChange="pageChange"-->
|
||
<!-- @pageSizeChange="pageSizeChange"></pagination>-->
|
||
|
||
</el-drawer>
|
||
<!-- 编辑分解单的条款-->
|
||
<el-drawer
|
||
:before-close="resetEditResolveListForm"
|
||
:visible.sync="editResolveListShowflag"
|
||
:wrapperClosable="false"
|
||
class="label-input-form"
|
||
size="800px"
|
||
title="编辑"
|
||
>
|
||
<el-form ref="resolveListForm" :model="resolveListForm" :rules="resolveListFormRules" style="padding-left: 10px;">
|
||
<el-input
|
||
v-show="false"
|
||
v-model="resolveListForm.id"
|
||
/>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="条款号"
|
||
>
|
||
<el-input
|
||
v-model="resolveListForm.itemsNum"
|
||
disabled
|
||
style="width: 45%"
|
||
/>
|
||
</el-form-item>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="条款名称"
|
||
>
|
||
<el-input
|
||
v-model="resolveListForm.itemsName"
|
||
disabled
|
||
style="width: 45%"
|
||
/>
|
||
</el-form-item>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="条款内容"
|
||
>
|
||
<el-input
|
||
v-model="resolveListForm.termsConditions"
|
||
disabled
|
||
style="width: 45%"
|
||
/>
|
||
</el-form-item>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="核心技术要求/变化点"
|
||
>
|
||
<el-input
|
||
v-model="resolveListForm.readContent"
|
||
clearable
|
||
style="width: 45%"
|
||
/>
|
||
</el-form-item>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="基于上一版本差异"
|
||
>
|
||
<el-input
|
||
v-model="resolveListForm.comparedWithPrevious"
|
||
clearable
|
||
style="width: 45%"
|
||
/>
|
||
</el-form-item>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="新车型实施日期(文本)"
|
||
>
|
||
<el-date-picker
|
||
v-model="resolveListForm.xccssrq"
|
||
placeholder="请选择新车型实施日期"
|
||
prefix-icon="none"
|
||
style="width: 45%"
|
||
type="dates"
|
||
value-format="yyyy-MM-dd">
|
||
</el-date-picker>
|
||
<!-- <el-input-->
|
||
<!-- style="width: 45%"-->
|
||
<!-- v-model.trim="resolveListForm.xccssrq"-->
|
||
<!-- clearable-->
|
||
<!-- />-->
|
||
</el-form-item>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label="在产车实施日期(文本)"
|
||
>
|
||
<el-date-picker
|
||
v-model="resolveListForm.zccssrq"
|
||
placeholder="请选择在产车实施日期"
|
||
prefix-icon="none"
|
||
style="width: 45%"
|
||
type="dates"
|
||
value-format="yyyy-MM-dd">
|
||
</el-date-picker>
|
||
<!-- <el-input-->
|
||
<!-- style="width: 45%"-->
|
||
<!-- v-model.trim="resolveListForm.zccssrq"-->
|
||
<!-- clearable-->
|
||
<!-- />-->
|
||
</el-form-item>
|
||
<!--适用车型-->
|
||
<template>
|
||
<custom-select-array
|
||
v-model="resolveListForm.applyArctic"
|
||
:config="applyArcticOptions"
|
||
></custom-select-array>
|
||
</template>
|
||
|
||
<!-- 责任工程师-->
|
||
<template>
|
||
<el-form-item
|
||
class="add-form-item"
|
||
label-width="150px"
|
||
prop="ZRGCSUser"
|
||
>
|
||
<template slot="label">责任工程师</template>
|
||
<el-input v-model="resolveListForm.dutyEngineer" clearable placeholder="请选择责任工程师"
|
||
@click.native="choiceZRRS('zrgcs', '查询责任工程师', resolveListForm.dutyEngineer)">
|
||
</el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<!-- <el-form-item-->
|
||
<!-- label="责任工程师"-->
|
||
<!-- class="add-form-item"-->
|
||
<!-- >-->
|
||
<!-- <el-input-->
|
||
<!-- style="width: 45%"-->
|
||
<!-- v-model="resolveListForm.dutyEngineer"-->
|
||
<!-- clearable-->
|
||
<!-- />-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <el-form-item-->
|
||
<!-- label="符合性状态"-->
|
||
<!-- class="add-form-item"-->
|
||
<!-- >-->
|
||
<!-- <template>-->
|
||
<!-- <el-radio v-model="resolveListForm.complianceRequire" label="1">符合</el-radio>-->
|
||
<!-- <el-radio v-model="resolveListForm.complianceRequire" label="2">不符合</el-radio>-->
|
||
<!-- </template>-->
|
||
<!-- <!– <el-input–>-->
|
||
<!-- <!– style="width: 45%"–>-->
|
||
<!-- <!– v-model="resolveListForm.complianceRequire"–>-->
|
||
<!-- <!– clearable–>-->
|
||
<!-- <!– />–>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <el-form-item-->
|
||
<!-- label="合规性分析"-->
|
||
<!-- class="add-form-item"-->
|
||
<!-- >-->
|
||
<!-- <el-input-->
|
||
<!-- style="width: 45%"-->
|
||
<!-- v-model="resolveListForm.complianceState"-->
|
||
<!-- clearable-->
|
||
<!-- />-->
|
||
<!-- </el-form-item>-->
|
||
</el-form>
|
||
<div id="roleFormButton" class="demo-drawer-footer" style="margin-top: 8%">
|
||
<el-button
|
||
:loading="editLoading"
|
||
class="common-button-primary"
|
||
icon="el-icon-check"
|
||
size="mini"
|
||
type="primary"
|
||
@click="saveEditInfo"
|
||
>提交
|
||
</el-button
|
||
>
|
||
<el-button
|
||
class="common-button-default"
|
||
icon="el-icon-close"
|
||
size="mini"
|
||
@click="resetEditResolveListForm"
|
||
>取消
|
||
</el-button
|
||
>
|
||
</div>
|
||
</el-drawer>
|
||
<Role-tree
|
||
:is-title="drawerTitle"
|
||
:is-visible.sync="modalShowRoleFlag"
|
||
:nodeList="nodeList2"
|
||
@checkedRole="checkedRole2"
|
||
></Role-tree>
|
||
<Mechanism-tree
|
||
:is-visible.sync="modalshowflagZRBM"
|
||
:nodeList="nodeListZRBM"
|
||
is-title="选择部门信息"
|
||
@checkedRole="drawerCheckZRBM"
|
||
/>
|
||
<!--新增标准条款-->
|
||
<el-drawer
|
||
:before-close="resetForm"
|
||
:title="itemModalTitle"
|
||
:visible.sync="modalItemaddShowflag"
|
||
:wrapperClosable="false"
|
||
destroy-on-close
|
||
size="800px"
|
||
>
|
||
<div class="demo-drawer-content">
|
||
<el-form
|
||
v-if="modalItemaddShowflag"
|
||
ref="sarStandardsItemForm"
|
||
:model="standItemEO"
|
||
:rules="sarStandardItemRules"
|
||
class="label-input-form"
|
||
label-width="150px"
|
||
>
|
||
<el-form-item class="add-form-item" label="条款号" prop="itemsNum">
|
||
<el-input v-model="standItemEO.itemsNum" :disabled="itemFormdisableflag" placeholder="请输入内容"></el-input>
|
||
</el-form-item>
|
||
<el-form-item class="add-form-item" label="条款名称" prop="itemsName">
|
||
<el-input v-model="standItemEO.itemsName" :disabled="itemFormdisableflag" placeholder="请输入内容"></el-input>
|
||
</el-form-item>
|
||
<el-form-item class="add-form-item" label="内容简介" prop="termsConditions">
|
||
<el-input v-model="standItemEO.termsConditions" :disabled="itemFormdisableflag" placeholder="请输入内容"/>
|
||
</el-form-item>
|
||
<el-row>
|
||
<custom-org
|
||
v-model="standItemEO.responsibleUnit"
|
||
:config="{
|
||
attrName: '责任部门',
|
||
attrField: 'responsibleUnit',
|
||
selVal: 'ORGLIST',
|
||
valueName: standItemEO.orgName,
|
||
attrType: 'SEL_OPTION'
|
||
}"
|
||
:data-model="standItemEO"
|
||
:zNodes="zNodesSItem"
|
||
@on-checked="(checkName) => {standItemEO.ZRBM = standItemEO.responsibleUnit;standItemEO.orgName = checkName}"
|
||
></custom-org>
|
||
</el-row>
|
||
<el-row>
|
||
<custom-org
|
||
v-model="standItemEO.FO"
|
||
:config="{
|
||
attrName: 'FO',
|
||
attrField: 'FO',
|
||
selVal: 'USERLIST',
|
||
valueName: standItemEO.foShow,
|
||
attrType: 'SEL_OPTION'
|
||
}"
|
||
:data-model="standItemEO"
|
||
:zNodes="zNodesSItem"
|
||
@on-checked="(checkName) => {standItemEO.fo = standItemEO.FO;standItemEO.foShow = checkName}"
|
||
></custom-org>
|
||
</el-row>
|
||
<el-row>
|
||
<custom-org
|
||
v-model="standItemEO.dutyEngineer"
|
||
:config="{
|
||
attrName: '责任工程师',
|
||
attrField: 'dutyEngineer',
|
||
selVal: 'USERLIST',
|
||
valueName: standItemEO.dutyEngineerShow,
|
||
attrType: 'SEL_OPTION'
|
||
}"
|
||
:data-model="standItemEO"
|
||
:zNodes="zNodesSItem"
|
||
@on-checked="(checkName) => {standItemEO.dutyEngineerShow = checkName}"
|
||
></custom-org>
|
||
</el-row>
|
||
<el-row>
|
||
<custom-SVPPS
|
||
v-model="standItemEO.svpps"
|
||
:config="{
|
||
attrName: 'SVPPS',
|
||
attrField: 'SVPPS',
|
||
valueName: standItemEO.svppsShow,
|
||
value: standItemEO.svpps
|
||
}"
|
||
></custom-SVPPS>
|
||
</el-row>
|
||
<el-form-item class="add-form-item" label="适用车辆类型" prop="applyArctic">
|
||
<el-select v-model="standItemEO.applyArctic" :filterable="true" multiple placeholder="请选择">
|
||
<el-option
|
||
v-for="(opt, index) in applyArcticOptions"
|
||
:key="index"
|
||
:label="opt.label"
|
||
:value="opt.value">
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item class="add-form-item" label="要求类型" prop="claimType">
|
||
<el-select v-model="standItemEO.claimType" :filterable="true" placeholder="请选择">
|
||
<el-option
|
||
v-for="(opt, index) in requestOptions"
|
||
:key="index"
|
||
:label="opt.label"
|
||
:value="opt.value">
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item class="add-form-item" label="企标覆盖关系" prop="busStandCover">
|
||
<el-select
|
||
v-model="standItemEO.busStandCover"
|
||
:disabled="itemFormdisableflag"
|
||
placeholder="请选择"
|
||
>
|
||
<el-option
|
||
v-for="(item, index) in BZFGGXOUIUJ"
|
||
:key="index"
|
||
:label="item.label"
|
||
:value="item.value"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button v-if="!itemFormdisableflag" :loading="isSubmit" class="common-button-primary" icon="el-icon-check"
|
||
type="primary" @click="saveOrUpdateStandItem">
|
||
保存
|
||
</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="resetForm">取消</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!--导入模态窗-->
|
||
<el-dialog :footer-hide="true" :visible.sync="importModalshowflag" title="导入文件" width="400px" v-dragDialogWidth :close-on-click-modal="false">
|
||
<el-upload
|
||
ref="importFileAboutStand"
|
||
:action="importExcelUrl"
|
||
:before-upload="beforeUpload"
|
||
:file-list="defaultFileList"
|
||
:on-remove="removeOneFile"
|
||
:on-success="importFileSuccess"
|
||
:show-file-list="showUploadlist"
|
||
accept=".xlsx"
|
||
drag
|
||
multiple
|
||
name="file">
|
||
<div style="padding: 20px 0">
|
||
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||
<p>点击或拖拽上传文件</p>
|
||
</div>
|
||
</el-upload>
|
||
</el-dialog>
|
||
<!--分解单-查看 (标准拆分-属性)-->
|
||
<el-drawer
|
||
:visible.sync="showItemInfoModal"
|
||
:wrapperClosable="false"
|
||
size="800px"
|
||
title="查看属性信息"
|
||
>
|
||
<div class="see-drawer-content">
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="条款号">条款号</label>
|
||
<span :title="standShowItemEO.itemsNum" class="see-drawer-val" style="font-size: 12px">{{
|
||
standShowItemEO.itemsNum
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="条款名称">条款名称</label>
|
||
<span :title="standShowItemEO.itemsName" class="see-drawer-val" style="font-size: 12px">{{
|
||
standShowItemEO.itemsName
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="内容简介">条款内容</label>
|
||
<span :title="standShowItemEO.termsConditions ? standShowItemEO.termsConditions.replace(/<.*?>/ig, ' ') : ''" class="see-drawer-val"
|
||
style="font-size: 12px">{{
|
||
standShowItemEO.termsConditions ? standShowItemEO.termsConditions.replace(/<.*?>/ig, ' ') : ''
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="核心技术要求">核心技术要求</label>
|
||
<span :title="standShowItemEO.readContent ? standShowItemEO.readContent.replace(/<.*?>/ig, ' ') : ''" class="see-drawer-val"
|
||
style="font-size: 12px">
|
||
{{
|
||
standShowItemEO.readContent ? standShowItemEO.readContent.replace(/<.*?>/ig, ' ') : ''
|
||
}}</span>
|
||
</div>
|
||
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="新车型实施日期">新车型实施日期</label>
|
||
<span :title="standShowItemEO.xcxssrq" class="see-drawer-val"
|
||
style="font-size: 12px">{{
|
||
standShowItemEO.xccssrq
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="在产车实施日期">在产车实施日期</label>
|
||
<span :title="standShowItemEO.zccssrq" class="see-drawer-val"
|
||
style="font-size: 12px">{{
|
||
standShowItemEO.zccssrq
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="适用车型">适用车型</label>
|
||
<span :title="standShowItemEO.applyArctic" class="see-drawer-val" style="font-size: 12px">{{
|
||
filterApplyArctic(standShowItemEO)
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="责任部门">责任部门</label>
|
||
<span :title="standShowItemEO.responsibleUnit" class="see-drawer-val" style="font-size: 12px">{{
|
||
standShowItemEO.responsibleUnit
|
||
}}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="责任工程师">责任工程师</label>
|
||
<span :title="standShowItemEO.dutyEngineer" class="see-drawer-val" style="font-size: 12px">
|
||
{{ standShowItemEO.dutyEngineer }}</span>
|
||
</div>
|
||
<div class="see-drawer-div">
|
||
<label class="see-drawer-name" style="font-size: 14px" title="基于上一版本差异">基于上一版本差异</label>
|
||
<span :title="standShowItemEO.comparedWithPrevious" class="see-drawer-val" style="font-size: 12px">
|
||
{{ standShowItemEO.comparedWithPrevious }}</span>
|
||
</div>
|
||
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" style="font-size: 14px" title="符合性状态">符合性状态</label>-->
|
||
<!-- <span class="see-drawer-val" style="font-size: 12px" :title="standShowItemEO.complianceRequire">-->
|
||
<!-- {{ standShowItemEO.complianceRequire ? (standShowItemEO.complianceRequire === '1' ? '是' : '否') : '-' }}-->
|
||
<!-- </span>-->
|
||
|
||
<!-- </div>-->
|
||
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" style="font-size: 14px" title="合规性分析">合规性分析</label>-->
|
||
<!-- <span class="see-drawer-val" style="font-size: 12px" :title="standShowItemEO.complianceState">-->
|
||
<!-- {{ standShowItemEO.complianceState }}</span>-->
|
||
<!-- </div>-->
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" title="FO">FO</label>-->
|
||
<!-- <span class="see-drawer-val" :title="standShowItemEO.foShow">{{ standShowItemEO.foShow }}</span>-->
|
||
<!-- </div>-->
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" title="责任工程师">责任工程师</label>-->
|
||
<!-- <span class="see-drawer-val" :title="standShowItemEO.dutyEngineerShow">{{-->
|
||
<!-- standShowItemEO.dutyEngineerShow-->
|
||
<!-- }}</span>-->
|
||
<!-- </div>-->
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" title="svpps">svpps</label>-->
|
||
<!-- <span class="see-drawer-val" :title="standShowItemEO.svppsShow">{{ standShowItemEO.svppsShow }}</span>-->
|
||
<!-- </div>-->
|
||
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" title="要求类型">要求类型</label>-->
|
||
<!-- <span class="see-drawer-val" :title="standShowItemEO.claimTypeShow">{{ standShowItemEO.claimTypeShow }}</span>-->
|
||
<!-- </div>-->
|
||
<!-- <div class="see-drawer-div">-->
|
||
<!-- <label class="see-drawer-name" title="企标覆盖关系">企标覆盖关系</label>-->
|
||
<!-- <span class="see-drawer-val"-->
|
||
<!-- :title="standShowItemEO.busStandCoverShow ? standShowItemEO.busStandCoverShow : busStandCoverName(standShowItemEO.busStandCover)">{{-->
|
||
<!-- standShowItemEO.busStandCoverShow ? standShowItemEO.busStandCoverShow : busStandCoverName(standShowItemEO.busStandCover)-->
|
||
<!-- }}</span>-->
|
||
<!-- </div>-->
|
||
</div>
|
||
</el-drawer>
|
||
<el-dialog
|
||
:before-close="relateDialogClose1"
|
||
:visible.sync="relateDialog1"
|
||
class="relateClass"
|
||
title="更多发布稿"
|
||
width="40%">
|
||
<div
|
||
v-for="(file, index) in relateNowList1"
|
||
v-if="relateNowList1"
|
||
:key="index"
|
||
style="margin-bottom: 10px;line-height: 20px;max-height: 300px"
|
||
>
|
||
{{ index + 1 }}.
|
||
<a :title="file.oldFileName" style="font-size: 16px;color: #409EFF;cursor: pointer"
|
||
target="_blank" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||
class="icon-download"
|
||
title="下载"
|
||
@click="downloadFile(file.id)"
|
||
/>
|
||
<i
|
||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '02fd6eff0537c283dd071683de10689f' : '824f3bf9edef83fc7488917136167232'"
|
||
class="icon-download2"
|
||
title="下载带水印"
|
||
@click="downloadFileByWater(file.id, file.fileSuffix)"
|
||
/>
|
||
<div v-if="relateNowList.length >1">
|
||
<el-divider></el-divider>
|
||
</div>
|
||
</div>
|
||
<div slot="footer" class="dialog-footer">
|
||
<el-button type="primary" @click="relateDialogClose1">关 闭</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 更新LOG -->
|
||
<el-dialog
|
||
:before-close="relateDialogClose"
|
||
:visible.sync="relateDialog"
|
||
class="relateClass"
|
||
title="更新记录"
|
||
width="60%">
|
||
<div
|
||
v-for="(item, index) in relateNowList"
|
||
v-if="relateNowList"
|
||
:key="index"
|
||
style="margin-bottom: 10px;line-height: 20px;max-height: 300px"
|
||
>
|
||
{{ index + 1 }}. {{ item.creationUserName }} {{ item.creationTime }} {{ item.content }}
|
||
<div v-if="relateNowList.length >1">
|
||
<el-divider></el-divider>
|
||
</div>
|
||
</div>
|
||
<div slot="footer" class="dialog-footer">
|
||
<el-button type="primary" @click="relateDialogClose">关 闭</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 知识点分享 -->
|
||
<el-dialog
|
||
:visible.sync="knowledgeSharingDialog"
|
||
class="myDialog"
|
||
title="知识点分享"
|
||
width="800px">
|
||
<div class="action-bar">
|
||
<el-button :v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'PVBSWCJQ9X4RVBM9RK7L' : 'NJ3YL4SVEJADWH7ESHDX'"
|
||
class="common-button-primary add-button"
|
||
size="mini"
|
||
type="primary"
|
||
@click="addknowledge(1)"><i class="el-icon-plus"></i>新增
|
||
</el-button>
|
||
<el-button :v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '4V4592SVLAZY9HMC8WHU' : '485WL3QHGRJ27H2XD34Z'"
|
||
class="common-button-default delete-button"
|
||
size="mini"
|
||
@click="deleteknowledge(2)"><i class="iconfont"></i>批量删除
|
||
</el-button>
|
||
</div>
|
||
<div class="knowContent">
|
||
<el-table
|
||
:data="knowList"
|
||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||
fontWeight: 'bold', height: '48px'}"
|
||
border
|
||
height="100%"
|
||
style="width: 100%"
|
||
tooltip-effect="dark"
|
||
@selection-change="handleSelectionKnow"
|
||
>
|
||
<el-table-column
|
||
align="center"
|
||
type="selection"
|
||
width="55">
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="序号"
|
||
align="center"
|
||
type="index"
|
||
width="50">
|
||
<template slot-scope="{scope, column, $index}">
|
||
{{ ($index + 1) + (pageNo - 1) * $store.getters.userInfo.configContent }}
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="标题"
|
||
prop="title"
|
||
show-overflow-tooltip
|
||
width="150">
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="内容"
|
||
prop="content"
|
||
show-overflow-tooltip>
|
||
</el-table-column>
|
||
<el-table-column
|
||
align="center"
|
||
label="时间"
|
||
prop="creationTime"
|
||
width="150">
|
||
<template slot-scope="scope">
|
||
{{ $moment(scope.row.creationTime).format('YYYY-MM-DD') }}
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column align="center" fixed="right" label="操作" width="50">
|
||
<template slot-scope="scope">
|
||
<div style="display: inline-block" @click.stop>
|
||
<el-dropdown trigger="click" @command="handleCommand2">
|
||
<i class="iconfont"></i>
|
||
<el-dropdown-menu slot="dropdown">
|
||
<el-dropdown-item :command="[scope.row, '查看']">查看</el-dropdown-item>
|
||
<el-dropdown-item
|
||
:command="[scope.row, '编辑']"
|
||
:v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'XPMLS6UV5HXG7C9ZR6B8' : '5ZC797XABNFV36KWJCA5'">
|
||
编辑
|
||
</el-dropdown-item>
|
||
<el-dropdown-item
|
||
:command="[scope.row, '删除']"
|
||
:v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? '4V4592SVLAZY9HMC8WHU' : '485WL3QHGRJ27H2XD34Z'">
|
||
删除
|
||
</el-dropdown-item>
|
||
</el-dropdown-menu>
|
||
</el-dropdown>
|
||
</div>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
<pagination :total="total" @pageChange="pageChange1" @pageSizeChange="pageSizeChange1"></pagination>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 知识点新增 -->
|
||
<el-dialog
|
||
:before-close="AddKnowClose"
|
||
:close-on-click-modal="false"
|
||
:title="KnowTitle"
|
||
:visible.sync="AddKnowledgDialog"
|
||
destroy-on-close
|
||
width="600px">
|
||
<el-form ref="addForm" :model="addForm" :rules="addFormRules" class="label-input-form" label-width="130px">
|
||
<el-formItem class="add-form-item" label="标题" prop="title">
|
||
<el-input v-model="addForm.title" placeholder="请输入标题"></el-input>
|
||
</el-formItem>
|
||
<el-formItem class="add-form-item" label="内容" prop="content">
|
||
<el-input v-model="addForm.content" :autosize="{ minRows: 3, maxRows: 4}" placeholder="请输入内容" resize="none"
|
||
type="textarea"></el-input>
|
||
</el-formItem>
|
||
<el-formItem class="add-form-item" label="附件" prop="files">
|
||
<el-upload
|
||
ref="importFileAboutStand"
|
||
:action="importExcelUrl"
|
||
:before-upload="beforeUpload1"
|
||
:file-list="defaultFileList"
|
||
:on-remove="removeOneFile1"
|
||
:on-success="uploadSuccess1"
|
||
:show-file-list="showUploadlist2"
|
||
drag
|
||
multiple
|
||
name="file"
|
||
style="margin-top: 15px;">
|
||
<i class="el-icon-upload"></i>
|
||
<div class="el-upload__text">点击或拖拽上传文件</div>
|
||
</el-upload>
|
||
</el-formItem>
|
||
</el-form>
|
||
<div slot="footer" class="demo-drawer-footer">
|
||
<el-button :loading="AddKnowSubLoading" class="common-button-primary" icon="el-icon-check" size="mini"
|
||
type="primary" @click="AddKnowSub">
|
||
确定
|
||
</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="AddKnowClose">取消</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 查看知识点详情-->
|
||
<el-dialog
|
||
:visible.sync="AddKnowledgDialogItem"
|
||
class="myDialog"
|
||
destroy-on-close
|
||
title="查看"
|
||
width="60%">
|
||
<div class="basic-information-content">
|
||
<p><label>标题:</label><span>{{ knowSee.title }}</span></p>
|
||
<p><label>内容:</label><span>{{ knowSee.content }}</span></p>
|
||
<p><label>附件:</label>
|
||
<span
|
||
v-for="(item,index) in knowSee.fileList"
|
||
:key="index"
|
||
class="fileCss"
|
||
@click="downloadFile(item.id)">{{ item.oldFileName }}</span>
|
||
</p>
|
||
<p><label>发布时间:</label><span>{{
|
||
knowSee.creationTime ? $moment(knowSee.creationTime).format('YYYY-MM-DD') : ''
|
||
}}</span></p>
|
||
</div>
|
||
</el-dialog>
|
||
|
||
<el-dialog
|
||
:before-close="comparisonClose"
|
||
:visible.sync="comparisonDialog"
|
||
class="myDialog1"
|
||
title="比对">
|
||
<div class="search-area">
|
||
<el-form :inline="true" class="label-input-form">
|
||
<el-form-item class="search-item" label="关键字">
|
||
<el-input v-model="comparisonTitle" placeholder="请输入关键字"></el-input>
|
||
</el-form-item>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
class="common-button-primary"
|
||
icon="el-icon-search"
|
||
size="mini"
|
||
type="primary"
|
||
@click="getComparison()">
|
||
</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
icon="el-icon-refresh-left"
|
||
size="mini"
|
||
@click="clearComparison()"></el-button>
|
||
<el-button class="common-button-primary" size="mini" type="primary" @click="addComparison">
|
||
<i class="el-icon-plus"></i>新增
|
||
</el-button>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
<div class="action-bar">
|
||
<div class="myRadio">
|
||
<template>
|
||
<el-radio-group v-for="(item, index) in comparisonList" :key="index" v-model="comparisonId">
|
||
<el-radio :label="item.id">{{ item.listName }}</el-radio>
|
||
<br>
|
||
</el-radio-group>
|
||
</template>
|
||
</div>
|
||
<div slot="footer" class="demo-drawer-footer">
|
||
<el-button class="common-button-primary" icon="el-icon-check" size="mini" type="primary"
|
||
@click="comparisonSub">
|
||
确定
|
||
</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="comparisonClose">取消</el-button>
|
||
</div>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 新增清单抽屉 -->
|
||
<el-drawer
|
||
:visible.sync="AddcomparisonDrawer"
|
||
destroy-on-close
|
||
size="800px"
|
||
title="比对清单新增"
|
||
>
|
||
<div class="demo-drawer-content">
|
||
<el-form
|
||
ref="listVO"
|
||
:model="listVO"
|
||
:rules="listVOFormRules"
|
||
class="label-input-form"
|
||
label-width="150px"
|
||
>
|
||
<el-form-item class="add-form-item" label="清单名称" prop="name">
|
||
<el-input v-model.trim="listVO.name" clearable placeholder="请输入清单名称"/>
|
||
</el-form-item>
|
||
<el-form-item class="add-form-item" label="是否公开" prop="public">
|
||
<el-radio-group v-model="listVO.public"
|
||
style="margin-bottom: 0px; display: flex; align-items: center; height: 50px;">
|
||
<el-radio :label="true">是</el-radio>
|
||
<el-radio :label="false">否</el-radio>
|
||
</el-radio-group>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
<div id="listFormButton" class="demo-drawer-footer">
|
||
<el-button class="common-button-primary" icon="el-icon-check" type="primary"
|
||
@click="submitDrawerForm('listVO')">
|
||
确定
|
||
</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="AddcomparisonDrawer = false">取消
|
||
</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 导入失败-->
|
||
<el-dialog :close-on-click-modal="false" :visible.sync="importFailed" width="400px">
|
||
<p slot="title" style="color:#f60">
|
||
<span>导入失败</span>
|
||
</p>
|
||
<div style="max-height: 300px;overflow: auto;padding: 10px 0;">
|
||
<p v-html="importForm.content"></p>
|
||
</div>
|
||
<div slot="footer" class="demo-drawer-footer">
|
||
<el-button class="common-button-default" icon="el-icon-check" size="mini" type="primary"
|
||
@click="importFailed = false">
|
||
确认
|
||
</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<loading :loading="loading">数据获取中</loading>
|
||
|
||
<!-- 关联条款抽屉-->
|
||
<el-drawer
|
||
ref="relatedTermsDrawer"
|
||
:show-close="true"
|
||
:visible.sync="relatedTermsDrawerVisible"
|
||
:wrapperClosable="false"
|
||
destroy-on-close
|
||
size="800px"
|
||
title="关联条款"
|
||
>
|
||
<div class="demo-drawer-content">
|
||
<related-terms-select
|
||
ref="relatedTermsSelect"
|
||
:fileType="fileType"
|
||
:stand-id="standId"
|
||
@close="closeRelatedTermsDrawer"
|
||
@func="handleChangeList"
|
||
></related-terms-select>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button :loading="btnLoading" class="common-button-primary" icon="el-icon-check" size="mini" type="primary"
|
||
@click="handleRelatedTermsDrawerSubmit">提交
|
||
</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" size="mini"
|
||
@click="handleRelatedTermsDrawerCancel">取消
|
||
</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!--内容简介-->
|
||
<el-dialog :close-on-click-modal="false" :visible.sync="itemsTextDialogs" title="内容简介">
|
||
<div class="itemsTextBox" v-html="itemsText"></div>
|
||
<div slot="footer">
|
||
<el-button size="large" type="primary" @click="itemsTextDialogs = false">关闭</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
</div>
|
||
</template>
|
||
<script>
|
||
/* eslint-disable */
|
||
import PutQuestionButton from '@/components/PutQuestionButton'
|
||
import CustomSVPPS from '@/components/CustomFormComponents/SVPPS'
|
||
import CustomSelectArray from '@/components/CustomFormComponents/SelectArray'
|
||
import CustomOrg from '@/components/CustomFormComponents/OrgTree'
|
||
import {dateFormat} from '@/common/date'
|
||
import RelatedTermsSelect from './components/RelatedTermsSelect'
|
||
import {getBusStandFileByAttId} from 'api/process'
|
||
import {dicTypeData} from "api/unqualProcess";
|
||
|
||
|
||
export default {
|
||
name: 'OtherStandardDetails',
|
||
components: {
|
||
PutQuestionButton,
|
||
CustomSVPPS,
|
||
CustomSelectArray,
|
||
CustomOrg,
|
||
RelatedTermsSelect
|
||
},
|
||
filters: {
|
||
ellipsis(value) {
|
||
if (!value) return ''
|
||
return value
|
||
},
|
||
ellipsis50(value) {
|
||
if (!value) return ''
|
||
if (value.length > 50) {
|
||
return value.slice(0, 50) + '...'
|
||
}
|
||
return value
|
||
}
|
||
},
|
||
data() {
|
||
return {
|
||
cfjgscUploadKey:1,
|
||
externalStatus: '',
|
||
handleList: [],
|
||
CycxOptions: [],
|
||
activeNames: ['基础信息', '过程稿件', '实施日期'],
|
||
activeState: true,
|
||
itemExistList: [],
|
||
interpretationContent: '',
|
||
relatedTermsDrawerVisible: false,
|
||
btnLoading: false,
|
||
comparisonTitle: '',
|
||
AddKnowSubLoading: false,
|
||
listVO: {
|
||
name: '',
|
||
public: false
|
||
},
|
||
resolveListFormRules: {
|
||
applyArcticyRule: [
|
||
{required: true, message: '适用车型不能为空', trigger: 'blur'},
|
||
]
|
||
},
|
||
listVOFormRules: {
|
||
name: [
|
||
{required: true, message: '名称不能为空', trigger: 'blur'},
|
||
{type: 'string', max: 100, message: '名称不能超过100个字符', trigger: 'blur'}
|
||
]
|
||
},
|
||
AddcomparisonDrawer: false,
|
||
comparisonId: '',
|
||
comparisonList: [],
|
||
comparisonDialog: false,
|
||
knowSee: [],
|
||
AddKnowledgDialogItem: false,
|
||
showUploadlist2: true, // 导入过程中新增数据时,如果数据错误,不出现导入列表
|
||
importFileFormat: [],
|
||
knowId: '',
|
||
knowType: '',
|
||
KnowTitle: '',
|
||
knowIdList: '',
|
||
order: '',
|
||
orderBy: '',
|
||
total7: 0,
|
||
page7: 1,
|
||
pageSize7: 20,
|
||
addForm: {
|
||
title: '',
|
||
content: '',
|
||
fileId: ''
|
||
},
|
||
addFormRules: {
|
||
title: [
|
||
{required: true, message: '标题不能为空', trigger: 'blur'},
|
||
{type: 'string', max: 200, message: '标题不能超过200个字符', trigger: 'change'}
|
||
],
|
||
|
||
content: [
|
||
{required: true, message: '内容不能为空', trigger: 'blur'},
|
||
{type: 'string', max: 200, message: '内容不能超过200个字符', trigger: 'change'}
|
||
]
|
||
},
|
||
total: 0,
|
||
pageNo: 1,
|
||
pageSize: 10,
|
||
knowList: [],
|
||
AddKnowledgDialog: false,
|
||
knowledgeSharingDialog: false,
|
||
relateDialog: false,
|
||
relateDialog1: false,
|
||
relateList: [],
|
||
relateNowList: [],
|
||
relateNowList1: [],
|
||
loading: false,
|
||
showItemInfoModal: false,
|
||
standShowItemEO: {},
|
||
// 提交状态
|
||
isSubmit: false,
|
||
zNodesSItem: [],
|
||
zNodesSItemEngin: [],
|
||
zNodesSItemFO: [],
|
||
sarStandardsInfoEO: {
|
||
id: '',
|
||
standType: 'INLAND', // 标准分类
|
||
country: 'CN',
|
||
standSort: '',
|
||
applyArctic: '',
|
||
standNumber: '',
|
||
standYear: '',
|
||
standName: '',
|
||
standEnName: '',
|
||
standState: '',
|
||
standNature: '',
|
||
replaceStandNum: '',
|
||
replacedStandNum: '',
|
||
interStandNum: '',
|
||
adoptExtent: '',
|
||
emergyKind: '',
|
||
registerPutTime: '',
|
||
applyAuth: '',
|
||
issueTime: '',
|
||
putTime: '',
|
||
newcarPutTime: '',
|
||
productPutTime: '',
|
||
newproductPutTime: '',
|
||
draftingUnit: '',
|
||
draftUser: '',
|
||
standFile: '',
|
||
standModifyFile: '',
|
||
draftFile: '',
|
||
opinionFile: '',
|
||
sentScreenFile: '',
|
||
approvalFile: '',
|
||
relevanceFile: '',
|
||
standFileList: [],
|
||
standModifyFileList: [],
|
||
draftFileList: [],
|
||
opinionFileList: [],
|
||
sentScreenFileList: [],
|
||
approvalFileList: [],
|
||
relevanceFileList: [],
|
||
tags: '',
|
||
synopsis: '',
|
||
responsibleUnit: '',
|
||
category: '',
|
||
remark: '',
|
||
}, // 标准新增过程中用到的对象
|
||
standItemEO: {
|
||
id: '',
|
||
standId: '',
|
||
itemsNum: '',
|
||
itemsName: '',
|
||
parts: '',
|
||
mainPointImplementation: '', // 实施要点
|
||
termsConditions: '', // 内容简介
|
||
tackTime: '',
|
||
applyArctic: '', // 试用车型
|
||
energyKind: '', // 能源种类
|
||
responsibleUnit: '',
|
||
remarks: '',
|
||
orgName: '',
|
||
quoteStand: '',
|
||
relevanceFile: '',
|
||
fo: '',
|
||
foShow: '',
|
||
dutyEngineer: '',
|
||
dutyEngineerShow: '',
|
||
svpps: '',
|
||
claimType: '',
|
||
busStandCover: '',
|
||
fileType: '',
|
||
ZRBM: '',
|
||
FO: ''
|
||
}, // 标准条款新增过程中用到对象
|
||
standItemEODefault: {
|
||
id: '',
|
||
standId: '',
|
||
itemsNum: '',
|
||
itemsName: '',
|
||
parts: '',
|
||
mainPointImplementation: '', // 实施要点
|
||
termsConditions: '', // 内容简介
|
||
tackTime: '',
|
||
applyArctic: '', // 试用车型
|
||
energyKind: '', // 能源种类
|
||
responsibleUnit: '',
|
||
remarks: '',
|
||
orgName: '',
|
||
quoteStand: '',
|
||
relevanceFile: '',
|
||
fo: '',
|
||
foShow: '',
|
||
dutyEngineer: '',
|
||
dutyEngineerShow: '',
|
||
svpps: '',
|
||
claimType: '',
|
||
busStandCover: '',
|
||
fileType: '',
|
||
ZRBM: '',
|
||
FO: ''
|
||
},
|
||
applyArcticOptions: {
|
||
attrName: '适用车型',
|
||
attrField: 'applyArcticyRule',
|
||
options: []
|
||
}, // 适用车辆类型下拉框
|
||
modalshowflagZRBM: false,
|
||
nodeListZRBM: [],
|
||
nodeList2: [],
|
||
nodeList: [],
|
||
userType: '',
|
||
drawerTitle: '',
|
||
modalShowRoleFlag: false,
|
||
emergyKindOptions: [], // 能源种类下拉框
|
||
requestOptions: [],
|
||
BZFGGXOUIUJ: [], // 企标覆盖关系
|
||
itemModalTitle: '',
|
||
modalItemaddShowflag: false,
|
||
editResolveListShowflag: false,
|
||
resolveListForm: {
|
||
id: '',
|
||
itemsNum: '',
|
||
itemsName: '',
|
||
termsConditions: '',
|
||
readContent: '',
|
||
comparedWithPrevious: '',
|
||
xccssrq: '',
|
||
zccssrq: '',
|
||
applyArctic: '',
|
||
dutyEngineer: '',
|
||
complianceRequire: '',
|
||
complianceState: '',
|
||
},
|
||
editLoading: false,
|
||
itemAddOrUPdateFlag: '',
|
||
itemFormdisableflag: false, // 查看标准条款不可编辑
|
||
recommendList: [],
|
||
showModalTitle: '查看分解单',
|
||
replaceNumList: [],
|
||
replacedNumList: [],
|
||
// 代替,被代替标准号页面跳转
|
||
replaceStandInfoEO: {},
|
||
personCookieEO: {
|
||
cookieType: '',
|
||
resTitle: '',
|
||
resId: ''
|
||
},
|
||
saveStandType: this.$route.params.pageType,
|
||
opinionsProcessList: [], // 标准征求意见审批流程
|
||
notifiProcessList: [], // 标准法规实施通知及排查流程
|
||
modalStandItemflag: false,
|
||
tableLoading: false,
|
||
standItemSearch: {
|
||
XCXSSRQ: '',
|
||
ZCCSSRQ: '',
|
||
standId: '',
|
||
fileType: '',
|
||
itemsName: '',
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
page: 1,
|
||
},
|
||
standitemTotal: 0,
|
||
searching: false,
|
||
searchInlandNodes: [], // 条款部门选择树形结构
|
||
standItemList: [],
|
||
tableHeight: null,
|
||
selectedItemList: [],
|
||
sarStandardItemRules: {
|
||
itemsNum: [
|
||
{required: true, message: '条款号不能为空', trigger: 'change'},
|
||
{required: true, validator: this.verify.validateStandardItem, trigger: 'change'},
|
||
{type: 'string', max: 100, message: '条款号不能超过100个字符', trigger: 'change'},
|
||
{validator: this.validCode, trigger: 'blur'}
|
||
],
|
||
itemsName: [
|
||
{required: true, message: '条款名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 100, message: '条款名称不能超过100个字符', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter, trigger: 'blur'}
|
||
],
|
||
// mainPointImplementation: [
|
||
// {type: 'string', max: 255, message: '实施要点不能超过255个字符', trigger: 'blur'}
|
||
// // {type: 'string', validator: this.verify.checkSpecialCharacter, trigger: 'blur'}
|
||
// ],
|
||
termsConditions: [
|
||
{required: true, message: '内容简介不能为空', trigger: 'change'},
|
||
{type: 'string', max: 500, message: '内容简介不能超过500个字符', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter, trigger: 'blur'}
|
||
],
|
||
responsibleUnit: [
|
||
{required: true, message: '责任部门不能为空', trigger: 'change'}
|
||
],
|
||
fo: [
|
||
{required: true, message: 'fo不能为空', trigger: 'change'}
|
||
// {type: 'string', max: 100, message: 'fo不能超过100个字符', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
],
|
||
FO: [
|
||
{required: true, message: 'FO不能为空', trigger: 'change'}
|
||
// {type: 'string', max: 100, message: 'fo不能超过100个字符', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
],
|
||
dutyEngineer: [
|
||
{required: true, message: '责任工程师不能为空', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
],
|
||
svpps: [
|
||
{required: true, message: 'svpps不能为空', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
],
|
||
// tackTime: [],
|
||
applyArctic: [
|
||
{type: 'Array', validator: this.verify.valiCategory, trigger: 'change'}
|
||
],
|
||
claimType: [
|
||
{required: true, message: '要求类型不能为空', trigger: 'change'}
|
||
],
|
||
busStandCover: [
|
||
{required: true, message: '企标覆盖关系不能为空', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
],
|
||
// energyKind: [
|
||
// {type: 'Array', validator: this.verify.valiCategory, trigger: 'change'}
|
||
// ],
|
||
// orgName
|
||
remarks: [
|
||
{type: 'string', max: 1000, message: '备注不能超过1000个字符', trigger: 'change'}
|
||
// {validator: this.verify.checkSpecialCharacter, trigger: 'blur'}
|
||
]
|
||
},
|
||
importModalshowflag: false,
|
||
showUploadlist: true, // 导入过程中新增数据时,如果数据错误,不出现导入列表
|
||
importExcelUrl: 'api/att/attFile/uploadNew', // 导入EXCEL文档
|
||
exportModelFlag: false,
|
||
exportName: {},
|
||
standardForm: {},
|
||
defaultFileList: [], // 默认显示
|
||
currentFileList: '', // 当前操作的是哪个FormItem的上传
|
||
importModalshowflagtemp: false,
|
||
currentFile: '', // 当前操作的是哪个FormItem的上传
|
||
dynamicFormField: [],
|
||
displayLocation: [],
|
||
isMoreAwayBtn: false,
|
||
fileType: '',
|
||
editAddType: 1, // 1 新增、 2、编辑
|
||
importFailed: false,
|
||
importForm: {
|
||
content: ''
|
||
},
|
||
itemsText: '',
|
||
itemsTextDialogs: false,
|
||
textStatusMap: {},
|
||
standMap: {},
|
||
splitResultPath: 'api/lawss/sarFileSplitItems/importSplitItemsInfoZip',
|
||
defaultImportSplitResultFileList:[],
|
||
// 记录上传文件相关信息
|
||
uploadFilesplitEo: {
|
||
standId: '',
|
||
fileType: '',
|
||
attId: '',
|
||
fileName: '',
|
||
standNumSplit: '',
|
||
standNameSplit: '',
|
||
defaultFileList: [],
|
||
splitType: '全部章节'
|
||
},
|
||
headers:{
|
||
// token: JSON.parse(localStorage.getItem('userInfo')).token
|
||
}
|
||
}
|
||
},
|
||
props: {},
|
||
watch: {},
|
||
methods: {
|
||
// 模板下载
|
||
uploadImportSplitResultModal () {
|
||
window.open('/api/lawss/sarFileSplitItems/exportTemplate')
|
||
},
|
||
uploadSplitResultSuccess (res, file, fileList) {
|
||
if (res.ok) {
|
||
this.$message.success(res.message)
|
||
this.cfjgscUploadKey++
|
||
// this.uploadFilesplitEo.attId = res.data.attId
|
||
// this.uploadFilesplitEo.fileName = res.data.name
|
||
// if (res.data.standNum != null && res.data.standNum !== '') {
|
||
// this.uploadFilesplitEo.standNumSplit = res.data.standNum
|
||
// }
|
||
// if (res.data.standName != null && res.data.standName !== '') {
|
||
// this.uploadFilesplitEo.standNameSplit = res.data.standName
|
||
// }
|
||
// this.defaultImportSplitResultFileList.push(file)
|
||
// this.$message.success('文件上传成功')
|
||
// setTimeout(()=>{
|
||
// this.handleImportSplitResult();
|
||
// },1000)
|
||
} else {
|
||
// this.defaultImportSplitResultFileList = []
|
||
// this.uploadFilesplitEo.attId = ''
|
||
this.$message.error(res.message)
|
||
}
|
||
setTimeout(()=>{
|
||
this.$router.go(0)
|
||
},2000)
|
||
},
|
||
handleImportSplitResult(){
|
||
console.log(123333)
|
||
if (this.defaultImportSplitResultFileList.length) {
|
||
const file = this.defaultImportSplitResultFileList[0]
|
||
const fileTypeResult = this.beforeSplitResultImport(file.raw)
|
||
const _formData = new FormData()
|
||
_formData.append('standNumSplit', this.uploadFilesplitEo.standNumSplit)
|
||
_formData.append('standId', this.uploadFilesplitEo.standId)
|
||
_formData.append('standNameSplit', this.uploadFilesplitEo.standNameSplit)
|
||
// _formData.append('fileType', this.uploadFilesplitEo.fileType)
|
||
console.log(this.textStatusMap[sarStandardsInfoEO.textStatus])
|
||
_formData.append('fileType', this.textStatusMap[sarStandardsInfoEO.textStatus])
|
||
_formData.append('file', file.raw)
|
||
if (fileTypeResult) {
|
||
this.importSplitResultLoading = true
|
||
console.log(123)
|
||
this.$http.postData('lawss/sarFileSplitItems/importSplitItemsZip', _formData, {
|
||
}, res => {
|
||
this.importSplitResultLoading = false
|
||
if (res.ok) {
|
||
this.visibleImportSplitResultDialog = false
|
||
this.$message({
|
||
dangerouslyUseHTMLString: true,
|
||
message: res.message,
|
||
type: 'success'
|
||
})
|
||
} else {
|
||
this.$message({
|
||
dangerouslyUseHTMLString: true,
|
||
message: res.message,
|
||
type: 'warning'
|
||
})
|
||
}
|
||
})
|
||
}
|
||
} else {
|
||
this.$message.warning('请上传文件')
|
||
}
|
||
},
|
||
// 上传按钮 文件上传之前的钩子
|
||
beforeSplitResultImport(file) {
|
||
if (this.sarStandardsInfoEO.standYear) {
|
||
this.sarStandardsInfoEO.lawsNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear
|
||
} else {
|
||
this.sarStandardsInfoEO.lawsNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber
|
||
}
|
||
this.sarStandardsInfoEO.lawsName = this.sarStandardsInfoEO.standName
|
||
this.sarStandardsInfoEO.stateName = this.sarStandardsInfoEO.standStateShow
|
||
this.sarStandardsInfoEO.resType = this.$route.params.pageType
|
||
this.uploadFilesplitEo.standNumSplit = this.sarStandardsInfoEO.lawsNumber
|
||
this.uploadFilesplitEo.standNameSplit = this.sarStandardsInfoEO.lawsName
|
||
this.uploadFilesplitEo.standId = this.sarStandardsInfoEO.id
|
||
//this.uploadFilesplitEo.fileType = this.$route.params.pageType
|
||
this.uploadFilesplitEo.fileType = this.fileType;
|
||
// this.uploadFilesplitEo.fileType = this.sarStandardsInfoEO.textStatus
|
||
|
||
var filename = file.name
|
||
var index1 = filename.lastIndexOf('.')
|
||
var index2 = filename.length
|
||
var fileSuffix = filename.substring(index1, index2)
|
||
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||
if (this.defaultImportSplitResultFileList.length > 1) {
|
||
this.$message.warning('只能导入一个文件')
|
||
return false
|
||
}
|
||
if (fileSuffix !== '.zip') {
|
||
this.$message.warning('文件' + file.name + '格式不正确,请上传zip文件')
|
||
return false
|
||
}
|
||
if (file.size / 1024 / 1024 > 200) {
|
||
this.$message.warning('文件大小不能超过200M')
|
||
return false
|
||
}
|
||
return true
|
||
},
|
||
removeSplitResultFile (file, fileList) {
|
||
this.defaultImportSplitResultFileList = fileList
|
||
this.uploadFilesplitEo.attId = fileList.length > 0 ? this.uploadFilesplitEo.attId : ''
|
||
this.uploadFilesplitEo.defaultFileList = fileList
|
||
},
|
||
// 导入拆分结果
|
||
handleUploadChange (file, fileList) {
|
||
this.defaultImportSplitResultFileList = fileList
|
||
this.uploadFilesplitEo.defaultFileList = fileList
|
||
// this.$refs['uploadFileSplitEO'].validateField('defaultFileList')
|
||
},
|
||
filterApplyArctic(row) {
|
||
if (row.applyArctic) {
|
||
return row.applyArctic.replaceAll('\"', '').replaceAll('\[', '').replaceAll('\]', '')
|
||
} else {
|
||
return ""
|
||
}
|
||
},
|
||
handleChangeList(data) {
|
||
this.handleList = data
|
||
},
|
||
child1Func(child1) {
|
||
const list = []
|
||
if (child1 && child1.length > 1) {
|
||
for (let i = 0; i < child1.length; i++) {
|
||
list.push(child1[i])
|
||
}
|
||
return list
|
||
}
|
||
return child1
|
||
},
|
||
child3Func(child3) {
|
||
const list = []
|
||
if (child3 && child3.length > 1) {
|
||
list.push(child3[0])
|
||
return list
|
||
}
|
||
return child3
|
||
},
|
||
child4Func(child4) {
|
||
const list = []
|
||
if (child4 && child4.length > 1) {
|
||
list.push(child4[0])
|
||
return list
|
||
}
|
||
return child4
|
||
},
|
||
child5Func(child5) {
|
||
const list = []
|
||
if (child5 && child5.length > 1) {
|
||
list.push(child5[0])
|
||
return list
|
||
}
|
||
return child5
|
||
},
|
||
child6Func(child6) {
|
||
const list = []
|
||
if (child6 && child6.length > 1) {
|
||
for (let i = 0; i < child6.length; i++) {
|
||
list.push(child6[i])
|
||
}
|
||
// list.push(child6[0])
|
||
return list
|
||
}
|
||
return child6
|
||
},
|
||
handleChange(val) {
|
||
},
|
||
handleChange1(val) {
|
||
if (val && val === '基础信息') {
|
||
this.activeState = true;
|
||
}
|
||
},
|
||
judgeSuffix(fileName) {
|
||
if ('pdf' === fileName.substring(fileName.lastIndexOf('.') + 1)) {
|
||
return true;
|
||
} else return false;
|
||
},
|
||
ocrFunction(file) {
|
||
return "ocr"
|
||
},
|
||
FormatDate(date) {
|
||
return moment(date).format('YYYY-MM-DD');
|
||
},
|
||
// 将标准状态的id与name对应
|
||
setMap(data) {
|
||
data.forEach(item => {
|
||
this.$set(this.textStatusMap, item.value, item.label)
|
||
this.$set(this.standMap, item.value, item.label)
|
||
})
|
||
},
|
||
statusClick() {
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'standInvolveProjectTwo',
|
||
query: {
|
||
resId: this.sarStandardsInfoEO.id
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
},
|
||
closeDrawer() {
|
||
this.modalStandItemflag = false
|
||
},
|
||
clearComparison() {
|
||
this.comparisonTitle = ''
|
||
this.getComparison()
|
||
},
|
||
// 验证条款号是否唯一
|
||
validCode(rule, value, callback) {
|
||
let find = 0
|
||
this.standItemList.map(item => {
|
||
if (item.itemsNum === value) {
|
||
find++
|
||
}
|
||
})
|
||
if (find > 1 && this.editAddType === 2) {
|
||
return callback(new Error('条款号已存在'))
|
||
} else if (find > 0 && this.editAddType === 1) {
|
||
return callback(new Error('条款号已存在'))
|
||
}
|
||
callback()
|
||
},
|
||
// 新增清单
|
||
submitDrawerForm(name) {
|
||
this.$refs[name].validate((valid) => {
|
||
if (valid) {
|
||
const formData = {
|
||
listName: this.listVO.name,
|
||
publicFlag: this.listVO.public ? '1' : '0' // 0: 不公开 1: 公开
|
||
}
|
||
this.$http.postData('lawss/sarStandCompareBase/saveSarStandCompareBase', formData,
|
||
{
|
||
_this: this,
|
||
loading: 'tableDataLoading'
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.AddcomparisonDrawer = false
|
||
this.getComparison()
|
||
} else {
|
||
}
|
||
})
|
||
} else {
|
||
}
|
||
})
|
||
},
|
||
// 比对提交
|
||
comparisonSub() {
|
||
if (this.comparisonId === '') {
|
||
this.$message.error('请选择比对清单')
|
||
} else {
|
||
let standNum = ''
|
||
const item = this.sarStandardsInfoEO
|
||
if (item.standYear) {
|
||
standNum = `${item.standSortShow} ${item.standNumber}-${item.standYear}`
|
||
} else {
|
||
standNum = `${item.standSortShow} ${item.standNumber}`
|
||
}
|
||
const formData = {
|
||
compareBaseId: this.comparisonId,
|
||
list: [{
|
||
country: this.sarStandardsInfoEO.countryShow,
|
||
standNum: standNum,
|
||
standName: this.sarStandardsInfoEO.standName,
|
||
standId: this.sarStandardsInfoEO.id,
|
||
standType: this.$route.params.pageType
|
||
}]
|
||
}
|
||
this.$http.postData('lawss/SarStandCompareList/save', formData, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.$router.push({
|
||
name: 'ViewStandardComparisonLibrary',
|
||
params: {
|
||
listId: this.comparisonId
|
||
}
|
||
})
|
||
}
|
||
})
|
||
}
|
||
},
|
||
// 比对关闭
|
||
comparisonClose() {
|
||
this.comparisonTitle = ''
|
||
this.comparisonId = ''
|
||
this.comparisonDialog = false
|
||
},
|
||
// 获取清单
|
||
getComparison() {
|
||
this.$http.get('lawss/sarStandCompareBase/page', {
|
||
listName: this.comparisonTitle,
|
||
page: '1',
|
||
pageSize: '99999',
|
||
publicFlag: 1
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.comparisonList = res.data.list
|
||
}
|
||
})
|
||
},
|
||
// 打开比对模态框
|
||
comparisonDialogOpen() {
|
||
this.comparisonDialog = true
|
||
this.getComparison()
|
||
},
|
||
// 比对新增
|
||
addComparison() {
|
||
this.AddcomparisonDrawer = true
|
||
this.listVO.name = ''
|
||
this.listVO.public = false
|
||
},
|
||
beforeUpload1(file) {
|
||
var filename = file.name
|
||
var index1 = filename.lastIndexOf('.')
|
||
var index2 = filename.length
|
||
var fileSuffix = filename.substring(index1, index2)
|
||
if (fileSuffix === '.pdf' || fileSuffix === '.doc' || fileSuffix === '.docx' || fileSuffix === '.PDF' || fileSuffix === '.ppt' || fileSuffix === '.pptx') {
|
||
return true
|
||
} else {
|
||
this.$message.error('文件' + file.name + '格式不正确,请上传doc、docx、ppt、pptx、pdf、或PDF文件')
|
||
return false
|
||
}
|
||
// 判断文件上传大小
|
||
if (file.size / 1024 / 1024 > 200) {// eslint-disable-line
|
||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||
return false
|
||
}
|
||
return true
|
||
},
|
||
uploadSuccess1(res, file, fileList) {
|
||
if (res.ok) {
|
||
this.addForm.fileId += res.data.id + ','
|
||
this.$message({
|
||
message: '文件上传成功',
|
||
type: 'success'
|
||
})
|
||
} else {
|
||
this.importFailed = true
|
||
this.importForm.content = res.message
|
||
}
|
||
},
|
||
removeOneFile1(file, fileList) {
|
||
let ids = this.addForm.fileId.split(',')
|
||
if (file.response) {
|
||
let fileIds = file.response.data.id
|
||
let newIdList = this.removeAaary(ids, fileIds)
|
||
this.addForm.fileId = newIdList.join(',')
|
||
}
|
||
},
|
||
// 删除数组中的某个对象
|
||
removeAaary(_arr, _obj) {
|
||
var length = _arr.length
|
||
for (var i = 0; i < length; i++) {
|
||
if (_arr[i] === _obj) {
|
||
if (i === 0) {
|
||
_arr.shift() // 删除并返回数组的第一个元素
|
||
return _arr
|
||
} else if (i === length - 1) {
|
||
_arr.pop() // 删除并返回数组的最后一个元素
|
||
return _arr
|
||
} else {
|
||
_arr.splice(i, 1) // 删除下标为i的元素
|
||
return _arr
|
||
}
|
||
}
|
||
}
|
||
},
|
||
handleSelectionKnow(val) {
|
||
this.knowIdList = ''
|
||
val.map((item, index) => {
|
||
if (val.length === 1) {
|
||
this.knowIdList += item.id
|
||
} else if (index === val.length - 1) {
|
||
this.knowIdList += item.id
|
||
} else if (val.length > 1) {
|
||
this.knowIdList += item.id + ','
|
||
}
|
||
})
|
||
},
|
||
// 确定新增
|
||
AddKnowSub() {
|
||
this.$refs['addForm'].validate((valid) => {
|
||
if (valid) {
|
||
this.AddKnowSubLoading = true
|
||
if (this.knowType === 1) {
|
||
this.$http.postData('lawss/sarKnowledgeShare/addKnowShare', {
|
||
content: this.addForm.content,
|
||
title: this.addForm.title,
|
||
sarId: this.$route.params.id,
|
||
sarType: this.$route.params.pageType,
|
||
file: this.addForm.fileId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.AddKnowClose()
|
||
this.getKnowList()
|
||
this.AddKnowSubLoading = false
|
||
} else {
|
||
this.AddKnowSubLoading = false
|
||
}
|
||
})
|
||
} else {
|
||
this.$http.putData('lawss/sarKnowledgeShare/updateKnowShare', {
|
||
content: this.addForm.content,
|
||
title: this.addForm.title,
|
||
sarId: this.$route.params.id,
|
||
sarType: this.$route.params.pageType,
|
||
file: this.addForm.fileId,
|
||
id: this.knowId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.AddKnowClose()
|
||
this.getKnowList()
|
||
this.AddKnowSubLoading = false
|
||
} else {
|
||
this.AddKnowSubLoading = false
|
||
}
|
||
})
|
||
}
|
||
}
|
||
})
|
||
},
|
||
// 关闭知识点新增
|
||
AddKnowClose() {
|
||
this.defaultFileList = []
|
||
this.addForm.title = ''
|
||
this.addForm.content = ''
|
||
this.addForm.fileId = ''
|
||
this.knowId = ''
|
||
this.AddKnowledgDialog = false
|
||
},
|
||
//查看分解单分页
|
||
pageChange7(page) {
|
||
this.page7 = page
|
||
this.selectSarStandItems()
|
||
},
|
||
pageSizeChange7(pageSize) {
|
||
this.pageSize7 = pageSize
|
||
this.selectSarStandItems()
|
||
},
|
||
// 知识点分页
|
||
pageChange1(page) {
|
||
this.pageNo = page
|
||
this.getKnowList()
|
||
},
|
||
pageSizeChange1() {
|
||
this.getKnowList()
|
||
},
|
||
selectAskReply(){
|
||
return new Promise((resolve,reject)=>{
|
||
this.$http.post('lawss/AskQuestions/selectAskReply', {
|
||
id: this.$route.params.id
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
resolve(res)
|
||
},e => reject(e));
|
||
})
|
||
},
|
||
jump(){
|
||
return new Promise((resolve,reject)=>{
|
||
this.$http.post('lawss/AskQuestions/jump', {
|
||
standId: this.$route.params.id,
|
||
userId : this.$store.getters.userInfo.userId,
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
resolve(res)
|
||
},e => reject(e));
|
||
})
|
||
},
|
||
//标准问答按钮
|
||
knowledgeSharing() {
|
||
this.jump().then(res =>{
|
||
let activeName = res.data
|
||
this.selectAskReply()
|
||
.then((res)=>{
|
||
if( res && res.data.length === 0){
|
||
this.$router.push({
|
||
name: 'MyQuestions3',
|
||
query: {
|
||
activeName,
|
||
type: this.$route.params.pageType,
|
||
id: this.$route.params.id,
|
||
dialogVisible: true
|
||
},
|
||
})
|
||
}else{
|
||
const data = res.data[0].askQuestions
|
||
this.$router.push({
|
||
name: 'MyQuestions3',
|
||
query: {
|
||
activeName,
|
||
type: this.$route.params.pageType,
|
||
// classification: data.classification,
|
||
id: this.$route.params.id,
|
||
dialogVisible: false
|
||
},
|
||
})
|
||
}
|
||
}).catch(e =>{
|
||
console.log(e)
|
||
})
|
||
})
|
||
|
||
// this.$router.push({
|
||
// // path: '/standQA',
|
||
// query: {
|
||
// standId: this.$route.params.id,
|
||
// standType: this.sarStandardsInfoEO.standType,
|
||
// sourceType: 'details',
|
||
// },
|
||
// name: 'MyQuestions2',
|
||
// })
|
||
},
|
||
// 获取知识点列表数据
|
||
getKnowList() {
|
||
this.$http.get('lawss/sarKnowledgeShare/page', {
|
||
sarId: this.$route.params.id,
|
||
sarType: this.$route.params.pageType,
|
||
page: this.pageNo,
|
||
pageSize: this.$store.getters.userInfo.configContent
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.knowList = res.data.list
|
||
this.total = res.data.count
|
||
}
|
||
})
|
||
},
|
||
handleCommand2(command) {
|
||
switch (command[1]) {
|
||
case '查看':
|
||
this.handleKnow(command[0])
|
||
break
|
||
case '编辑':
|
||
this.addknowledge(2, command[0])
|
||
break
|
||
case '删除':
|
||
this.deleteknowledge(1, command[0])
|
||
break
|
||
}
|
||
},
|
||
// 查看知识点
|
||
handleKnow(row) {
|
||
this.AddKnowledgDialogItem = true
|
||
this.knowSee = row
|
||
},
|
||
// 点击新增知识点
|
||
addknowledge(type, row) {
|
||
this.knowType = type
|
||
if (type === 1) {
|
||
this.KnowTitle = '新增知识点'
|
||
this.AddKnowledgDialog = true
|
||
} else {
|
||
this.KnowTitle = '编辑知识点'
|
||
this.AddKnowledgDialog = true
|
||
this.addForm.title = row.title
|
||
this.addForm.content = row.content
|
||
this.knowId = row.id
|
||
this.addForm.fileId = row.file
|
||
let fileList = row.fileList
|
||
if (fileList != null && fileList.length > 0) {
|
||
for (let i = 0; i < fileList.length; i++) {
|
||
let obj = {name: '', response: {}}
|
||
obj.name = fileList[i].oldFileName
|
||
obj.response.data = fileList[i]
|
||
this.defaultFileList.push(obj)
|
||
}
|
||
}
|
||
}
|
||
},
|
||
// 删除知识点
|
||
deleteknowledge(type, row) {
|
||
// type = 2为批量删除 1为单条删除
|
||
var ids = ''
|
||
if (type === 2) {
|
||
if (this.knowIdList.length === 0) {
|
||
this.$message.warning('请选择要删除的数据')
|
||
return
|
||
}
|
||
ids = this.knowIdList
|
||
} else {
|
||
ids = row.id
|
||
}
|
||
let title = ''
|
||
if (type === 2) {
|
||
title = '确定删除选中数据?'
|
||
} else {
|
||
title = '确定删除此数据?'
|
||
}
|
||
this.$confirm(title, '提示', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning'
|
||
}).then(() => {
|
||
this.$http.put('lawss/sarKnowledgeShare/deleteKnowShare', {ids: ids}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.getKnowList()
|
||
this.$message({
|
||
type: 'success',
|
||
message: '删除成功!'
|
||
})
|
||
} else {
|
||
this.$message({
|
||
type: 'error',
|
||
message: '删除失败'
|
||
})
|
||
}
|
||
})
|
||
}).catch(() => {
|
||
this.$message({
|
||
type: 'info',
|
||
message: '已取消删除'
|
||
})
|
||
})
|
||
},
|
||
// 代替标准编号
|
||
showReplaceStandInfo(item) {
|
||
this.replaceStandInfoEO.standNumber = item
|
||
// this.replaceStandInfoEO.standType = this.sarStandardsInfoEO.standType
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/queryInfoByStandNum', this.replaceStandInfoEO, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.data != null) {
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'OtherStandardDetails',
|
||
params: {
|
||
id: res.data.id,
|
||
pageType: this.$route.params.pageType
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
} else {
|
||
this.$message.error('标准号已不存在!')
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
clickButtonToUpload(current) {
|
||
this.currentFileList = current
|
||
this.currentFile = JSON.parse(JSON.stringify(current).replace('List', ''))
|
||
// this.importModalshowflagtemp = true
|
||
this.importModalshowflag = true
|
||
// this.$refs.importFileAboutStand.clearFiles()
|
||
this.defaultFileList = []
|
||
if (this.standItemEO[this.currentFile] === 'null' || this.standItemEO[this.currentFile] == null) {
|
||
this.standItemEO[this.currentFile] = ''
|
||
}
|
||
let fileList
|
||
if (this.standItemEO[this.currentFile] != null && this.standItemEO[this.currentFile] !== '') {
|
||
let paramefile = this.standItemEO[this.currentFile]
|
||
if (paramefile.charAt(paramefile.length - 1) === ',') {
|
||
paramefile = paramefile.substring(0, paramefile.length - 1)
|
||
}
|
||
this.$http.get('att/attFile/getMultiFileInfos', {
|
||
fileIds: paramefile
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
fileList = res.data
|
||
if (fileList != null && fileList.length > 0) {
|
||
for (let i = 0; i < fileList.length; i++) {
|
||
let obj = {name: '', response: {}}
|
||
obj.name = fileList[i].oldFileName
|
||
obj.response.data = fileList[i]
|
||
this.defaultFileList.push(obj)
|
||
}
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
// 新增、编辑上传文件之前的钩子
|
||
beforeUpload(file) {
|
||
var filename = file.name
|
||
var index1 = filename.lastIndexOf('.')
|
||
var index2 = filename.length
|
||
var fileSuffix = filename.substring(index1, index2)
|
||
// const fileSuffix = file.name.split('.')[1] // 后缀名
|
||
// 判断上传文件格式
|
||
// if (fileSuffix === 'pdf' || fileSuffix === 'PDF' || fileSuffix === 'doc' || fileSuffix === 'docx' || fileSuffix === 'ppt' || fileSuffix === 'pptx') {
|
||
if (fileSuffix === '.xlsx') {
|
||
return true
|
||
} else {
|
||
// this.$message.error('文件' + file.name + '格式不正确,请上传pdf、PDF、doc、docx、ppt、pptx文件')
|
||
this.$message.error('文件' + file.name + '格式不正确,请上传xlsx文件')
|
||
return false
|
||
}
|
||
// 判断文件上传大小
|
||
if (file.size / 1024 / 1024 <= 200) {// eslint-disable-line
|
||
return true
|
||
} else {
|
||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||
return false
|
||
}
|
||
return true
|
||
},
|
||
// 导入标准数据成功后执行
|
||
importFileSuccess(res, file, fileList) {
|
||
if (res.ok) {
|
||
// 使用字条款是否展示模态框判断导入的文件是标准,还是条款modalStandItemflag
|
||
// this.selectSarStandItems(this.standItemSearch.standId)
|
||
// this.showUploadlist = true
|
||
this.selectSarStandItems()
|
||
this.importModalshowflag = false
|
||
this.$message({
|
||
message: res.message,
|
||
type: 'success'
|
||
})
|
||
} else {
|
||
this.importFailed = true
|
||
this.importForm.content = res.message
|
||
this.showUploadlist = false
|
||
}
|
||
},
|
||
removeOneFile(file, fileList) {
|
||
// this.sarStandardsInfoEO[this.currentFileList] = this.removeAaary(this.sarStandardsInfoEO[this.currentFileList], file.response.data)
|
||
let ids = this.sarStandardsInfoEO[this.currentFile].split(',')
|
||
if (file.response) {
|
||
let fileIds = file.response.data.id
|
||
let newIdList = this.removeAaary(ids, fileIds)
|
||
let newStr = ''
|
||
if (newIdList != null && newIdList.length > 0) {
|
||
for (let i = 0; i < newIdList.length; i++) {
|
||
if (newIdList[i] !== '') {
|
||
newStr += newIdList[i] + ','
|
||
}
|
||
}
|
||
this.sarStandardsInfoEO[this.currentFile] = newStr
|
||
} else {
|
||
this.sarStandardsInfoEO[this.currentFile] = ''
|
||
}
|
||
}
|
||
},
|
||
// 导入文件大小超出范围
|
||
handleSizeError(file) {
|
||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||
},
|
||
// 导入标准文件格式错误执行
|
||
handleFormatError(file) {
|
||
this.$message.error('文件' + file.name + '格式不正确,请上传以.xlsx结尾的excel文件')
|
||
},
|
||
// 子条款部门名称改变后
|
||
itemOrgNameChange() {
|
||
if (this.standItemEO.orgName === '') {
|
||
this.standItemEO.responsibleUnit = ''
|
||
}
|
||
this.getOrgTreeSource()
|
||
},
|
||
treeDblClickEngin(treeId, treeNode) {
|
||
this.standItemEO.dutyEngineer = treeNode.id
|
||
this.standItemEO.dutyEngineerShow = treeNode.name
|
||
$('#enginBtnS').click()
|
||
},
|
||
treeDblClickFO(treeId, treeNode) {
|
||
this.standItemEO.fo = treeNode.id
|
||
this.standItemEO.foShow = treeNode.name
|
||
$('#foBtnS').click()
|
||
},
|
||
// 标准条款新增
|
||
saveOrUpdateStandItem() {
|
||
this.$refs['sarStandardsItemForm'].validate((valid) => {
|
||
if (valid) {
|
||
let nowstandItem = JSON.parse(JSON.stringify(this.standItemEO))
|
||
nowstandItem.applyArctic = nowstandItem.applyArctic.join(',')
|
||
nowstandItem.standId = this.standItemSearch.standId
|
||
nowstandItem.fileType = this.fileType
|
||
// 新增
|
||
if (this.itemAddOrUPdateFlag === 1) {
|
||
this.$http.postData('lawss/sarStandItems/addSarStandItemsList', nowstandItem, {
|
||
_this: this,
|
||
loading: 'isSubmit'
|
||
}, res => {
|
||
this.selectSarStandItems(this.standItemSearch.standId)
|
||
this.resetForm()
|
||
}, e => {
|
||
})
|
||
} else {
|
||
// 修改
|
||
this.$http.postData('lawss/sarStandItems/updateStandItem', nowstandItem, {
|
||
_this: this,
|
||
loading: 'isSubmit'
|
||
}, res => {
|
||
this.selectSarStandItems(this.standItemSearch.standId)
|
||
this.standItemEO.responsibleUnit = ''
|
||
this.selectedItemList = []
|
||
this.resetForm()
|
||
}, e => {
|
||
})
|
||
}
|
||
} else {
|
||
this.$message.error('请检查表单是否填写正确!')
|
||
}
|
||
})
|
||
},
|
||
// 表单清空
|
||
resetForm() {
|
||
this.$nextTick(() => {
|
||
// this.$refs['sarStandardsItemForm'].resetFields()
|
||
this.$refs['sarStandardsItemForm'].clearValidate()
|
||
})
|
||
this.modalItemaddShowflag = false
|
||
},
|
||
drawerCheckZRBM(data) {
|
||
let idList = ''
|
||
let nameList = ''
|
||
data.forEach(item => {
|
||
// if (item.hasChild === '0' && item.children === null) {
|
||
if (nameList.length > 0) {
|
||
nameList += ','
|
||
idList += ','
|
||
}
|
||
idList += item.id
|
||
nameList += item.name
|
||
// }
|
||
})
|
||
if (this.drawerTitle === '责任部门') {
|
||
this.sarStandardsInfoEO.ZRBMId = idList;
|
||
this.sarStandardsInfoEO['ZRBM'] = nameList;
|
||
} else if (this.drawerTitle === '查询责任部门') {
|
||
this.advanceSearchMapping['ZRBM'] = nameList
|
||
}
|
||
},
|
||
choiceZRRS(type, title, id) {
|
||
this.nodeList2 = []
|
||
if (id) {
|
||
let ids = id.split(',')
|
||
let idList = []
|
||
ids.forEach(item => {
|
||
let a, b
|
||
a = item.substring(item.indexOf('(') + 1)
|
||
b = a.substring(0, a.lastIndexOf(')'))
|
||
idList.push(b)
|
||
})
|
||
idList = idList.join(',')
|
||
this.nodeList2.push(idList)
|
||
}
|
||
this.userType = type
|
||
this.drawerTitle = title
|
||
this.modalShowRoleFlag = true
|
||
},
|
||
checkedRole2(data) {
|
||
let idList = ''
|
||
let nameList = ''
|
||
data.forEach(item => {
|
||
if (nameList.length > 0) {
|
||
nameList += ','
|
||
idList += ','
|
||
}
|
||
idList += item.id
|
||
nameList += item.name
|
||
})
|
||
if (this.drawerTitle === '查询责任工程师') {
|
||
this.resolveListForm.dutyEngineer = nameList
|
||
}
|
||
},
|
||
// select(selection, row) {
|
||
// // 清除 所有勾选项
|
||
// this.$refs.multipleTable.clearSelection()
|
||
// // 当表格数据都没有被勾选的时候 就返回
|
||
// // 主要用于将当前勾选的表格状态清除
|
||
// if (selection.length === 0) return
|
||
// this.$refs.multipleTable.toggleRowSelection(row, true)
|
||
// },
|
||
selectAllStand(alldata) {
|
||
this.selectedItemList = alldata
|
||
},
|
||
editResolveList() {
|
||
if (this.selectedItemList.length < 1) {
|
||
this.$message.warning('请选择一条数据')
|
||
} else if (this.selectedItemList.length === 1) {
|
||
this.resolveListForm = JSON.parse(JSON.stringify(this.selectedItemList[0]))
|
||
this.resolveListForm.termsConditions = this.resolveListForm.termsConditions ? this.resolveListForm.termsConditions.replace(/<.*?>/ig, ' ') : ''
|
||
// this.resolveListForm.readContent = this.readContent?this.readContent.replace(/<.*?>/ig, ' '):''
|
||
this.resolveListForm.xccssrq = this.resolveListForm.xccssrq ? this.resolveListForm.xccssrq.split(',') : ''
|
||
this.resolveListForm.zccssrq = this.resolveListForm.zccssrq ? this.resolveListForm.zccssrq.split(',') : ''
|
||
this.editResolveListShowflag = true
|
||
} else {
|
||
this.$message.warning('仅可选择一条数据')
|
||
}
|
||
},
|
||
saveEditInfo() {
|
||
if (typeof this.resolveListForm.xccssrq !== 'string') {
|
||
this.resolveListForm.xccssrq = this.resolveListForm.xccssrq.join(',')
|
||
}
|
||
if (typeof this.resolveListForm.zccssrq !== 'string') {
|
||
this.resolveListForm.zccssrq = this.resolveListForm.zccssrq.join(',')
|
||
}
|
||
if (typeof this.resolveListForm.applyArctic !== 'string') {
|
||
this.resolveListForm.applyArctic = this.resolveListForm.applyArctic.join(',')
|
||
}
|
||
this.$http.putData(
|
||
'SarStandItems/sar-stand-items/updateSarItemAndInterpretation',
|
||
this.resolveListForm,
|
||
{
|
||
_this: this,
|
||
},
|
||
(res) => {
|
||
if (res.ok) {
|
||
this.$message.success('修改成功')
|
||
this.resetEditResolveListForm()
|
||
this.showItemsModel()
|
||
}
|
||
}
|
||
)
|
||
},
|
||
resetEditResolveListForm() {
|
||
this.resolveListForm.applyArctic = ''
|
||
this.resolveListForm.dutyEngineer = ''
|
||
this.editResolveListShowflag = false
|
||
},
|
||
// 分页点击后方法
|
||
pageChange(page) {
|
||
this.standItemSearch.page = page
|
||
this.selectSarStandItems()
|
||
},
|
||
// 分页每页显示数改变后方法
|
||
pageSizeChange(pageSize) {
|
||
// this.standItemSearch.pageSize = this.$store.getters.userInfo.configContent
|
||
this.standItemSearch.pageSize = pageSize;
|
||
this.selectSarStandItems()
|
||
// 此处需要调用接口,修改个人配置
|
||
},
|
||
selectStandMessage() {
|
||
return new Promise((resolve, reject) => {
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/getStandInfoById', {id: this.sarStandardsInfoEO.id}, {
|
||
_this: this
|
||
}, res => {
|
||
this.sarStandardsInfoEO = res.data || {}
|
||
this.itemExistList = new Set(this.sarStandardsInfoEO.attrInfoMap.itemExistList)
|
||
if (this.sarStandardsInfoEO.issueTime != null && this.sarStandardsInfoEO.issueTime !== '') {
|
||
this.sarStandardsInfoEO.issueTime = this.sarStandardsInfoEO.issueTime.split(' ')[0]
|
||
}
|
||
if (this.sarStandardsInfoEO.putTime != null && this.sarStandardsInfoEO.putTime !== '') {
|
||
this.sarStandardsInfoEO.putTime = this.sarStandardsInfoEO.putTime.split(' ')[0]
|
||
}
|
||
// 代替标准号
|
||
if (this.sarStandardsInfoEO.replaceStandNum) {
|
||
this.sarStandardsInfoEO.replaceStandNum = this.sarStandardsInfoEO.replaceStandNum.replace(/<br \/>/g, '\r\n')
|
||
this.sarStandardsInfoEO.replaceStandNum = this.sarStandardsInfoEO.replaceStandNum.replace(/<br \/>/g, '\n')
|
||
}
|
||
if (this.sarStandardsInfoEO.replaceStandNum != null && this.sarStandardsInfoEO.replaceStandNum !== '') {
|
||
this.replaceNumList = this.sarStandardsInfoEO.replaceStandNum.split(',')
|
||
}
|
||
// // eslint-disable-next-line no-mixed-operators
|
||
Object.keys((this.sarStandardsInfoEO && this.sarStandardsInfoEO.attrInfoMap) || {}).forEach((key) => {
|
||
if (this.sarStandardsInfoEO.attrInfoMap[key]) {
|
||
this.sarStandardsInfoEO[key] = this.sarStandardsInfoEO.attrInfoMap[key]
|
||
}
|
||
})
|
||
this.addPersonCookie()
|
||
resolve(res.data)
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
// 新增浏览记录
|
||
addPersonCookie() {
|
||
this.personCookieEO.cookieType = this.$route.params.pageType
|
||
if (this.sarStandardsInfoEO.standYear != null && this.sarStandardsInfoEO.standYear !== '') {
|
||
this.personCookieEO.resTitle = this.sarStandardsInfoEO.standName + '(编号:' + this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear + ')'
|
||
} else {
|
||
this.personCookieEO.resTitle = this.sarStandardsInfoEO.standName + '(编号:' + this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + ')'
|
||
}
|
||
this.personCookieEO.resId = this.$route.params.id
|
||
this.$http.postData('person/personCookies/create', this.personCookieEO, {
|
||
_this: this
|
||
}, res => {
|
||
}, e => {
|
||
})
|
||
},
|
||
// 获取组织机构数据
|
||
getOrgTreeSource() {
|
||
this.$http.get('sys/org/getTree', {}, {_this: this},
|
||
res => {
|
||
if (res.ok) {
|
||
let treeNode = []
|
||
res.data.map((item, index) => {
|
||
let treeItem = {}
|
||
for (let key in item) {
|
||
if (key === 'orgName') {
|
||
treeItem.name = item[key]
|
||
} else {
|
||
treeItem[key] = item[key]
|
||
}
|
||
}
|
||
treeNode[index] = treeItem
|
||
})
|
||
this.zNodesSItem = treeNode
|
||
this.searchInlandNodes = treeNode
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
getUserTreeSource() {
|
||
this.$http.get('sys/org/getTree', {}, {_this: this},
|
||
res => {
|
||
if (res.ok) {
|
||
let treeNode = []
|
||
res.data.map((item, index) => {
|
||
let treeItem = {}
|
||
for (let key in item) {
|
||
if (key === 'orgName') {
|
||
treeItem.name = item[key]
|
||
} else {
|
||
treeItem[key] = item[key]
|
||
}
|
||
}
|
||
treeNode[index] = treeItem
|
||
})
|
||
this.zNodesSItemEngin = treeNode
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
// 查询相近标准
|
||
selectCloseStand(id) {
|
||
let obj = {}
|
||
obj.id = id
|
||
let url = ''
|
||
url = 'lawss/sarStandardsInfo/selectCloseStand'
|
||
this.$http.get(url, obj, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.recommendList = res.data
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
getBusStandFileByAttId(attId) {
|
||
return new Promise((resolve, reject) => {
|
||
getBusStandFileByAttId({
|
||
attId
|
||
}).then(res => {
|
||
if (res.ok) {
|
||
resolve(res.data)
|
||
} else {
|
||
reject()
|
||
}
|
||
}).catch(e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
openFileInPdf(attId, oldFileName) {
|
||
if (this.$route.params.pageType === 'INLAND_STAND' && this.$hasPermission('2d6ab9d465ab73d415194e1ca4313793')) {
|
||
this.$preview(attId)
|
||
} else if (this.$route.params.pageType === 'FOREIGN_STAND' && this.$hasPermission('ee684b4a9975f5d8a6dfe898c0332f98')) {
|
||
this.$preview(attId)
|
||
} else {
|
||
this.$message.error('没有在线预览文档权限!')
|
||
}
|
||
/*
|
||
// 判断是否是图片格式,图片格式不预览,直接下载
|
||
let index1 = oldFileName.lastIndexOf('.')
|
||
let index2 = oldFileName.length
|
||
let fileSuffix = oldFileName.substring(index1, index2)
|
||
//把后缀转大写
|
||
if (fileSuffix !== undefined && fileSuffix !== null) {
|
||
fileSuffix = fileSuffix.toUpperCase()
|
||
}
|
||
// 判断上传文件格式
|
||
if (fileSuffix === '.PNG' || fileSuffix === '.JPG' || fileSuffix === '.JPEG') {
|
||
this.downloadFile(attId)
|
||
return true
|
||
}
|
||
// 缺少文件
|
||
if (this.$route.params.pageType === 'INLAND_STAND') {
|
||
if (this.$hasPermission('2d6ab9d465ab73d415194e1ca4313793')) {
|
||
if (fileSuffix === '.PDG' || fileSuffix === '.pdg') {
|
||
this.getBusStandFileByAttId(attId)
|
||
.then(res => {
|
||
if (res) {
|
||
const editFileInfo = res
|
||
if (editFileInfo.fileSuffix === 'pdg' || editFileInfo.fileSuffix === 'PDG') {
|
||
window.open('book://ssreader/e0?url=' + editFileInfo.downLoadUrl)
|
||
} else {
|
||
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)
|
||
}
|
||
}
|
||
}).catch(e => {
|
||
console.log(e)
|
||
this.$message.warning('文件不存在,预览失败')
|
||
})
|
||
} else {
|
||
this.$http.get('lawss/sarStandFile/queryConvertAtt', {
|
||
attId: attId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.data) {
|
||
let fileObj = {}
|
||
fileObj.fileId = res.data.attId
|
||
fileObj.fileName = oldFileName
|
||
let fileList = []
|
||
let repeatData = 0
|
||
if (sessionStorage.getItem('fileInfo')) {
|
||
fileList = JSON.parse(sessionStorage.getItem('fileInfo'))
|
||
if (fileList != null && fileList.length > 0) {
|
||
for (let i = 0; i < fileList.length; i++) {
|
||
if (fileList[i].fileId === res.data.attId) {
|
||
repeatData = 1
|
||
break
|
||
}
|
||
}
|
||
if (repeatData === 0) {
|
||
fileList.push(fileObj)
|
||
fileList = JSON.stringify(fileList)
|
||
sessionStorage.setItem('fileInfo', fileList)
|
||
}
|
||
}
|
||
} else {
|
||
fileList.push(fileObj)
|
||
fileList = JSON.stringify(fileList)
|
||
sessionStorage.setItem('fileInfo', fileList)
|
||
}
|
||
window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + res.data.attId))
|
||
} else {
|
||
this.$message.error('文档未转换成功或本地读取不到该文档')
|
||
}
|
||
}, e => {
|
||
this.$message.error('文档未转换成功或本地读取不到该文档')
|
||
})
|
||
}
|
||
} else {
|
||
this.$message.error('没有在线预览文档权限!')
|
||
}
|
||
} else {
|
||
// 国外在线预览权限
|
||
if (this.$hasPermission('ee684b4a9975f5d8a6dfe898c0332f98')) {
|
||
// if (this.$hasPermission('02fd6eff0537c283dd071683de10689f')) {
|
||
|
||
this.$http.get('lawss/sarStandFile/queryConvertAtt', {
|
||
attId: attId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.data) {
|
||
let fileObj = {}
|
||
fileObj.fileId = res.data.attId
|
||
fileObj.fileName = oldFileName
|
||
let fileList = []
|
||
let repeatData = 0
|
||
if (sessionStorage.getItem('fileInfo')) {
|
||
fileList = JSON.parse(sessionStorage.getItem('fileInfo'))
|
||
if (fileList != null && fileList.length > 0) {
|
||
for (let i = 0; i < fileList.length; i++) {
|
||
if (fileList[i].fileId === res.data.attId) {
|
||
repeatData = 1
|
||
break
|
||
}
|
||
}
|
||
if (repeatData === 0) {
|
||
fileList.push(fileObj)
|
||
fileList = JSON.stringify(fileList)
|
||
sessionStorage.setItem('fileInfo', fileList)
|
||
}
|
||
}
|
||
} else {
|
||
fileList.push(fileObj)
|
||
fileList = JSON.stringify(fileList)
|
||
sessionStorage.setItem('fileInfo', fileList)
|
||
}
|
||
window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + res.data.attId))
|
||
} else {
|
||
this.$message.error('文档未转换成功或本地读取不到该文档')
|
||
}
|
||
}, e => {
|
||
this.$message.error('文档未转换成功或本地读取不到该文档')
|
||
})
|
||
} else {
|
||
this.$message.error('没有在线预览文档权限!')
|
||
}
|
||
}
|
||
*/
|
||
if (this.$route.params.pageType === 'INLAND_STAND') {
|
||
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/logInvalid', {
|
||
standNumber: standNumber,
|
||
standName: this.sarStandardsInfoEO.standName
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
})
|
||
} else {
|
||
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/logForeign', {
|
||
standNumber: standNumber,
|
||
standName: this.sarStandardsInfoEO.standEnName
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
})
|
||
}
|
||
},
|
||
showItemsModel(attField) {
|
||
if (attField) {
|
||
this.fileType = attField
|
||
}
|
||
this.getOrgTreeSource()
|
||
this.selectedItemList = []
|
||
this.selectSarStandItems()
|
||
this.modalStandItemflag = true
|
||
this.$nextTick(() => {
|
||
this.tableHeight = $('.content').height()
|
||
window.onresize = function () {
|
||
this.tableHeight = $('.content').height()
|
||
}.bind(this)
|
||
})
|
||
},
|
||
sort(column) {
|
||
this.order = column.order;
|
||
this.orderBy = column.prop;
|
||
this.selectSarStandItems();
|
||
},
|
||
// 分解单----查看标准条款相关
|
||
selectSarStandItems(id, flag) {
|
||
this.tableLoading = true
|
||
this.standItemSearch.standId = this.sarStandardsInfoEO.id
|
||
this.standItemSearch.fileType = this.fileType
|
||
console.log("---------------------------------------------")
|
||
this.$http.get('SarStandItems/sar-stand-items/querySarItemAndInterpretation', {
|
||
...this.standItemSearch,
|
||
pageSize: this.pageSize7, page: this.page7, order: this.order, orderBy: this.orderBy
|
||
}, {}, res => {
|
||
this.selectedItemList = []
|
||
if (res.data) {
|
||
this.standItemList = res.data.list;
|
||
this.total7 = res.data.count // 分页需要
|
||
this.tableLoading = false
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
downloadFile(attId) {
|
||
if (attId != null && attId !== '') {
|
||
window.location.href = '/api/att/attFile/downloadFileForSarNew?fileId=' + attId
|
||
} else {
|
||
this.$message.error('请选择要下载的文件')
|
||
}
|
||
if (this.$route.params.pageType === 'INLAND_STAND') {
|
||
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', {
|
||
standNumber: standNumber,
|
||
standName: this.sarStandardsInfoEO.standName
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
})
|
||
} else {
|
||
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', {
|
||
standNumber: standNumber,
|
||
standName: this.sarStandardsInfoEO.standEnName
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
})
|
||
}
|
||
|
||
},
|
||
downloadFileByWater(attId, fileSuffix) {
|
||
if (fileSuffix !== undefined && fileSuffix !== null) {
|
||
fileSuffix = fileSuffix.toUpperCase()
|
||
}
|
||
if (fileSuffix === 'PDF' || fileSuffix === 'DOC' || fileSuffix === 'DOCX') {
|
||
if (attId != null && attId !== '') {
|
||
this.$http.get('lawss/sarStandFile/queryConvertAtt', {
|
||
attId: attId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.data) {
|
||
let fileObj = {}
|
||
window.location.href = '/api/att/attFile/downloadFileForSarWaterMarkNew?fileId=' + res.data.attId + '&userId=' + this.$store.getters.userInfo.userId
|
||
} else {
|
||
this.$message.error('当前暂时无法下载,请稍后重试')
|
||
}
|
||
}, e => {
|
||
this.$message.error('当前暂时无法下载,请稍后重试')
|
||
})
|
||
} else {
|
||
this.$message.error('请选择要下载的文件')
|
||
}
|
||
} else {
|
||
this.$message.error('水印下载仅支持PDF、DOC、DOCX格式文件')
|
||
}
|
||
if (this.$route.params.pageType === 'INLAND_STAND') {
|
||
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/logInvalidDownload2', {
|
||
standNumber: standNumber,
|
||
standName: this.sarStandardsInfoEO.standName
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
})
|
||
} else {
|
||
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/logForeignDownload2', {
|
||
standNumber: standNumber,
|
||
standName: this.sarStandardsInfoEO.standEnName
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
})
|
||
}
|
||
},
|
||
/**
|
||
* @Description: 跳转流程
|
||
*/
|
||
processCenterClick(item) {
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'ProcessDetail',
|
||
query: {
|
||
prcNum: item
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
},
|
||
searchSarStandItems() {
|
||
this.page7 = 1
|
||
this.selectSarStandItems()
|
||
},
|
||
// 清空搜索框
|
||
clearAllSearch() {
|
||
// 标准条款搜索
|
||
this.page7 = 1
|
||
this.standItemSearch.responsibleUnit = ''
|
||
this.standItemSearch.orgName = ''
|
||
this.standItemSearch.parts = ''
|
||
this.standItemSearch.nameOrRequest = ''
|
||
this.standItemSearch.fileType = ''
|
||
this.standItemSearch.itemsName = ''
|
||
this.standItemSearch.ZCCSSRQ = ''
|
||
this.standItemSearch.XCXSSRQ = ''
|
||
this.selectSarStandItems()
|
||
},
|
||
inputChange() {
|
||
this.standItemSearch.responsibleUnit = ''
|
||
this.getOrgTreeSource()
|
||
},
|
||
searchInlandNodesClick(treeId, treeNode) {
|
||
this.standItemSearch.responsibleUnit = treeNode.id
|
||
this.standItemSearch.orgName = treeNode.name
|
||
$('#searchInlandDeptBtn').click()
|
||
},
|
||
// 点击条款表格上面的操作按钮新增
|
||
addItemModal() {
|
||
this.editAddType = 1
|
||
this.getOrgTreeSource()
|
||
this.itemModalTitle = '新增标准法规条款'
|
||
this.modalItemaddShowflag = true
|
||
this.standItemEO = {...this.standItemEODefault}
|
||
this.$nextTick(() => {
|
||
// this.$refs['sarStandardsItemForm'].resetFields()
|
||
this.$refs['sarStandardsItemForm'].clearValidate()
|
||
})
|
||
this.itemAddOrUPdateFlag = 1
|
||
this.itemFormdisableflag = false
|
||
},
|
||
// 模板下载
|
||
uploadImportModal(flag) {
|
||
window.open('/api/att/attFile/uploadModalFile?fileName=分解单导入模板.xlsx')
|
||
},
|
||
// 点击导入标准
|
||
addImportModal(flag) {
|
||
this.importModalshowflag = true
|
||
this.importExcelUrl = '/api/lawss/sarStandItems/importSarStandItemsList?standId=' + this.standItemSearch.standId + '&fileType=' + this.fileType
|
||
this.$nextTick(() => {
|
||
this.$refs.importFileAboutStand.clearFiles()
|
||
})
|
||
},
|
||
exportStandardItem() {
|
||
this.$confirm('您是否要导出数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
roundButton: false,
|
||
type: 'warning'
|
||
}).then(() => {
|
||
if (this.selectedItemList != null && this.selectedItemList.length > 0) {
|
||
const ids = this.selectedItemList.reduce((init,item,index,arr)=>{
|
||
init.push(item.id)
|
||
return init
|
||
},[])
|
||
window.open('/api/lawss/sarFileSplitItems/exportStandardItemExcel?idList=' + ids.join(','))
|
||
this.$message.success('导出成功')
|
||
} else if (this.standItemList.length > 0) {
|
||
window.open('/api/lawss/sarFileSplitItems/exportStandardItemExcel?standId=' + this.$route.params.id + '&fileType=' + this.fileType)
|
||
} else {
|
||
this.$message.warning('暂无可导出的数据')
|
||
}
|
||
}).catch(() => {
|
||
})
|
||
},
|
||
// 标准条款删除
|
||
deleteStandItem(item, flag) {
|
||
// flag==1 删除单条 flag==2 批量删除
|
||
let ids = []
|
||
if (flag === 1) {
|
||
// item的id
|
||
ids.push(item.id)
|
||
// ids.push(this.standItemEO.id)
|
||
this.$confirm('确认删除该条数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
confirmButtonClass: 'common-button-primary',
|
||
roundButton: false
|
||
}).then(() => {
|
||
this.$http.post('lawss/sarStandItems/deleteStandItem', {
|
||
id: ids,
|
||
standId: this.standItemSearch.standId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.selectSarStandItems(this.standItemSearch.standId, 1)
|
||
this.selectedItemList = []
|
||
}
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
// this.$refs.selections.clearSelection()
|
||
})
|
||
} else {
|
||
if (this.selectedItemList.length === 0) {
|
||
this.$message.error('请先选择要删除的数据!')
|
||
} else {
|
||
ids = this.selectedItemList
|
||
this.$confirm('确认删除选中数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning'
|
||
}).then(() => {
|
||
this.$http.post('lawss/sarStandItems/deleteStandItem', {
|
||
id: ids,
|
||
standId: this.standItemSearch.standId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
this.selectSarStandItems(this.standItemSearch.standId, 1)
|
||
this.selectedItemList = []
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
// this.$refs.selections.clearSelection()
|
||
})
|
||
}
|
||
}
|
||
},
|
||
// 分解单-查看
|
||
handlePreview(item) {
|
||
this.standShowItemEO = item
|
||
this.showItemInfoModal = true
|
||
let fileList = []
|
||
item.defaultFileList = []
|
||
|
||
|
||
if (this.standShowItemEO.tackTime != null && this.standShowItemEO.tackTime !== '') {
|
||
this.standShowItemEO.tackTime = this.standShowItemEO.tackTime.split(' ')[0]
|
||
}
|
||
this.standShowItemEO.responsibleUnit = this.standShowItemEO.responsibleUnitShow
|
||
// 请求文件信息
|
||
if (item.relevanceFile != null && item.relevanceFile !== '') {
|
||
let paramefile = item.relevanceFile
|
||
if (paramefile.charAt(paramefile.length - 1) === ',') {
|
||
paramefile = paramefile.substring(0, paramefile.length - 1)
|
||
}
|
||
this.$http.get('att/attFile/getMultiFileInfos', {
|
||
fileIds: paramefile
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
fileList = res.data
|
||
if (fileList != null && fileList.length > 0) {
|
||
for (let i = 0; i < fileList.length; i++) {
|
||
let obj = {name: '', response: {}}
|
||
obj.name = fileList[i].oldFileName
|
||
obj.response.data = fileList[i]
|
||
item.defaultFileList.push(obj)
|
||
}
|
||
}
|
||
this.standShowItemEO = JSON.parse(JSON.stringify(item))
|
||
if (this.standShowItemEO.tackTime != null && this.standShowItemEO.tackTime !== '') {
|
||
this.standShowItemEO.tackTime = this.standShowItemEO.tackTime.split(' ')[0]
|
||
}
|
||
// let selectNode = this.getTreeNameByid(this.standShowItemEO.responsibleUnit)
|
||
this.standShowItemEO.orgName = this.standShowItemEO.responsibleUnitShow
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
// 分解单-编辑
|
||
selectStandardPro(item) {
|
||
this.editAddType = 2
|
||
this.itemModalTitle = '编辑标准法规条款'
|
||
item.orgName = ''
|
||
this.standItemEO = JSON.parse(JSON.stringify(item))
|
||
this.standItemEO.standId = this.standItemSearch.standId
|
||
this.standItemEO.quoteStand = item.quoteStand
|
||
this.standItemEO.applyArctic = this.standItemEO.applyArctic ? this.standItemEO.applyArctic.split(',') : []
|
||
this.itemAddOrUPdateFlag = 2
|
||
this.itemFormdisableflag = false
|
||
if (this.standItemEO.tackTime != null && this.standItemEO.tackTime !== '') {
|
||
this.standItemEO.tackTime = new Date(this.standItemEO.tackTime)
|
||
}
|
||
this.standItemEO.orgName = this.standItemEO.responsibleUnitShow
|
||
this.standItemEO.ZRBM = this.standItemEO.responsibleUnit
|
||
this.standItemEO.FO = this.standItemEO.fo
|
||
this.updateResidToAttid('relevanceFile')
|
||
this.modalItemaddShowflag = true
|
||
this.$nextTick(() => {
|
||
this.$refs['sarStandardsItemForm'].clearValidate()
|
||
})
|
||
},
|
||
// 修改过程中,将resId 修改成 attid
|
||
updateResidToAttid(filetype) {
|
||
if (this.sarStandardsInfoEO[filetype] !== null && this.sarStandardsInfoEO[filetype] !== '') {
|
||
this.$http.get('lawss/attFile/getMultiFileInfosByResid', {
|
||
fileIds: this.sarStandardsInfoEO[filetype], fileType: 'stand'
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
this.sarStandardsInfoEO[filetype] = res.data
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
/**
|
||
* 展示位置
|
||
*/
|
||
queryDisplayLocation() {
|
||
return new Promise((resolve, reject) => {
|
||
this.$http.get('lawssBase/utArea/getAreaList', {
|
||
sarType: 'INLAND_STAND'
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
// this.showRegionOptions = res.data || []
|
||
resolve(res.data || [])
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
/**
|
||
* 获取新增弹框的表单
|
||
*/
|
||
getAddFormFieldList(isEdit) {
|
||
return new Promise((resolve, reject) => {
|
||
this.$http.get('lawss/sarStandAttrDetails/list', {}, {_this: this},
|
||
res => {
|
||
if (res.ok) {
|
||
// const { data: { STAND: data } } = res
|
||
const {data = {}} = res
|
||
this.formFieldListData = data[this.$route.params.pageType]
|
||
// this.resolveFormFieldList()
|
||
resolve(data[this.$route.params.pageType])
|
||
} else {
|
||
reject(res)
|
||
}
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
// 点击更多按钮事件
|
||
moreClick() {
|
||
this.dynamicFormField.map(item => {
|
||
item.isShowImp = '0'
|
||
item.child.map(child => {
|
||
child.isShowImp = '0'
|
||
})
|
||
})
|
||
this.isMoreAwayBtn = true
|
||
},
|
||
// 点击收起按钮事件
|
||
putAwayClick() {
|
||
this.dynamicFormField = JSON.parse(sessionStorage.getItem('displayLocation'))
|
||
this.isMoreAwayBtn = false
|
||
},
|
||
// 鼠标滚轮事件
|
||
handleScroll(e) {
|
||
// 该语句可以用来判断滚轮是向上滑动还是向下
|
||
const direction = e.deltaY > 0 ? 'down' : 'up'
|
||
if (direction === 'down') {
|
||
this.moreClick()
|
||
}
|
||
},
|
||
// ...
|
||
handleCommand(command) {
|
||
switch (command[1]) {
|
||
case '查看':
|
||
this.handlePreview(command[0])
|
||
break
|
||
case '编辑':
|
||
this.selectStandardPro(command[0], 'edit')
|
||
break
|
||
case '删除':
|
||
this.deleteStandItem(command[0], 1)
|
||
break
|
||
}
|
||
},
|
||
/**
|
||
* 点击 加收藏 按钮事件
|
||
* @param collectId 有值:取消收藏 无值:加收藏
|
||
*/
|
||
collectClick(collectId) {
|
||
this.isSubmit = true
|
||
if (collectId) {
|
||
// 取消收藏
|
||
this.$http.put('person/personCollect/updateByUserId', {
|
||
id: collectId,
|
||
loading: ''
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
this.isSubmit = false
|
||
this.sarStandardsInfoEO.collectId = ''
|
||
}, e => {
|
||
this.isSubmit = false
|
||
})
|
||
} else {
|
||
// 加收藏
|
||
let collectTitle
|
||
if (this.sarStandardsInfoEO.standYear != null && this.sarStandardsInfoEO.standYear !== '') {
|
||
collectTitle = this.sarStandardsInfoEO.standName + ' ( 编号:' + this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear + ' )'
|
||
} else {
|
||
collectTitle = this.sarStandardsInfoEO.standName + ' ( 编号:' + this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber + ' )'
|
||
}
|
||
let personCollect = {
|
||
collectResId: this.sarStandardsInfoEO.id,
|
||
collectTitle: collectTitle,
|
||
collectType: this.$route.params.pageType, // 国内收藏type
|
||
userId: this.$store.getters.userInfo.userId
|
||
|
||
}
|
||
this.$http.postData('person/personCollect', personCollect, {
|
||
_this: this
|
||
}, res => {
|
||
this.isSubmit = false
|
||
this.sarStandardsInfoEO.collectId = res.data.id
|
||
}, e => {
|
||
this.isSubmit = false
|
||
})
|
||
}
|
||
},
|
||
relateEvent1(list) {
|
||
this.relateDialog1 = true
|
||
this.relateNowList1 = list
|
||
},
|
||
// 更新LOG
|
||
relateEvent() {
|
||
this.$http.get('lawss/sarUpdLog/getLogList', {
|
||
sarId: this.$route.params.id,
|
||
sarType: this.$route.params.pageType
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.data.length > 0) {
|
||
this.relateDialog = true
|
||
this.relateList = res.data
|
||
var i
|
||
for (i = 0; i < this.relateList.length; i++) {
|
||
let obj = {creationUserName: '', creationTime: '', content: ''}
|
||
obj.creationUserName = this.relateList[i].creationUserName
|
||
obj.creationTime = this.relateList[i].creationTime
|
||
obj.content = this.relateList[i].content
|
||
this.relateNowList.push(obj)
|
||
}
|
||
} else {
|
||
this.$message({
|
||
message: '暂无数据',
|
||
type: 'warning'
|
||
})
|
||
}
|
||
}, e => {
|
||
|
||
})
|
||
},
|
||
relateDialogClose() {
|
||
this.relateDialog = false
|
||
this.relateNowList = []
|
||
},
|
||
relateDialogClose1() {
|
||
this.relateDialog1 = false
|
||
this.relateNowList = []
|
||
},
|
||
halfClass(data, nextData, index) {
|
||
const halfType = ['INPUT_STR', 'DATE_PICKER', 'SEL_OPTION', 'INPUT_NUM']
|
||
let flag = false
|
||
if (halfType.includes(data.attrType)) { // 是 50% 显示的组件时
|
||
// 1. 判断下一个节点是否为50%显示的组件
|
||
|
||
if (nextData && halfType.includes(nextData.attrType)) { //
|
||
flag = true
|
||
} else if (index % 2 === 0) { // 下一个节点不是50%显示的组件 判断是否为奇数节点
|
||
flag = false
|
||
} else { // 下个组件不是50%显示的组件 并且刚好时偶数节点
|
||
flag = true
|
||
}
|
||
}
|
||
return flag ? '' : 'clear'
|
||
},
|
||
|
||
handleToggleShowAll(item) {
|
||
if (!item.showAll) {
|
||
item.showAll = true
|
||
} else {
|
||
item.showAll = false
|
||
}
|
||
},
|
||
// 根据企标覆盖关系value值获取名称
|
||
busStandCoverName(value) {
|
||
let busStandCoverName = ''
|
||
this.BZFGGXOUIUJ.map(item => {
|
||
if (item.value === value) {
|
||
busStandCoverName = item.label
|
||
}
|
||
})
|
||
return busStandCoverName
|
||
},
|
||
dateFormat(str) {
|
||
return dateFormat(str)
|
||
},
|
||
openRelatedTermsDrawer() {
|
||
// 打开关联条款弹框
|
||
this.relatedTermsDrawerVisible = true
|
||
this.btnLoading = false
|
||
},
|
||
handleRelatedTermsDrawerCancel() {
|
||
// this.relatedTermsDrawerVisible = false
|
||
this.$refs['relatedTermsSelect'].handleCancel()
|
||
|
||
},
|
||
//关联成功的提示
|
||
handleRelatedTermsDrawerSubmit() {
|
||
this.btnLoading = true
|
||
if (this.handleList.length) {
|
||
this.$refs['relatedTermsSelect'].handleSubmit(() => {
|
||
this.selectSarStandItems()
|
||
this.btnLoading = false
|
||
this.$message({
|
||
message: '关联成功',
|
||
type: 'success'
|
||
});
|
||
})
|
||
} else {
|
||
this.$message.warning('请至少勾选一条条款进行关联')
|
||
this.btnLoading = false
|
||
}
|
||
},
|
||
closeRelatedTermsDrawer() {
|
||
this.$refs['relatedTermsDrawer'].closeDrawer()
|
||
},
|
||
itemsTextDialog(itemsNum, text) {
|
||
this.itemsTextDialogs = true
|
||
this.itemsText = '<p>' + itemsNum + '</p>' + text.replace(/''/g, '\'')
|
||
}
|
||
},
|
||
computed: {
|
||
titleShow() {
|
||
return (this.sarStandardsInfoEO.standSortShow || '') + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear + '《' + this.sarStandardsInfoEO.standName + '》' + '标准详情'
|
||
},
|
||
titleHidden() {
|
||
return (this.sarStandardsInfoEO.standSortShow || '') + this.sarStandardsInfoEO.standNumber + '《' + this.sarStandardsInfoEO.standName + '》' + '标准详情'
|
||
},
|
||
visibleBtn() {
|
||
return this.$route.name === 'DomesticStandardDetails'
|
||
},
|
||
sarType() {
|
||
return this.$route.params.pageType
|
||
},
|
||
standNum() {
|
||
const item = this.sarStandardsInfoEO
|
||
if (item.standYear) {
|
||
return `${item.standSort} ${item.standNumber}-${item.standYear}`
|
||
} else {
|
||
return `${item.standSort} ${item.standNumber}`
|
||
}
|
||
},
|
||
standId() {
|
||
const item = this.sarStandardsInfoEO
|
||
return item.id
|
||
}
|
||
},
|
||
/*created() {
|
||
dicTypeData().then(res => {
|
||
// 能源类型数据字典
|
||
this.CycxOptions = res.data.CLLX
|
||
})
|
||
},*/
|
||
async mounted() {
|
||
let external = localStorage.getItem("external");
|
||
if (external !== undefined && external !== null) {
|
||
this.externalStatus = external
|
||
}
|
||
this.sarStandardsInfoEO.id = this.$route.params.id
|
||
// await this.selectStandMessage()
|
||
this.standItemEO.standId = this.$route.params.id
|
||
// 从数据库中查询各下拉框数据
|
||
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
||
_this: this
|
||
}, res => {
|
||
this.CycxOptions = res.data.CLLX
|
||
this.applyArcticOptions.options = res.data.ENERGYTYPES // 根据需求文档,产品类别对应标准属性中的“适用车辆类型”
|
||
this.emergyKindOptions = res.data.ENERGYTYPES
|
||
this.requestOptions = res.data.REQUESTTYPE
|
||
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
||
this.setMap(res.data.WBZTCLASS) // 标准状态
|
||
this.setMap(res.data.SARPROPERTY) // 标准性质
|
||
}, e => {
|
||
})
|
||
Promise.all([this.queryDisplayLocation(), this.selectStandMessage(), this.getAddFormFieldList()]).then((values) => {
|
||
const [displayLocation, standEO, formFieldList] = values
|
||
const dynamicFormField = standEO ? standEO.attrInfoMap : {}
|
||
formFieldList.forEach((field) => {
|
||
// 相关流程权限
|
||
// if (field.attrField === 'XGLC' && !this.$_has('6A52PZCAX8BAUUJ2TSQ4')) {
|
||
// return
|
||
// }
|
||
displayLocation.forEach((location) => {
|
||
location.isShowImp = '0'
|
||
if (dynamicFormField && (this.externalStatus === 'external' ? field.attrField !== 'XGLC' : true)) {
|
||
let value = dynamicFormField[field.attrField]
|
||
if (field.attrField === 'SVPPS') {
|
||
let tips = dynamicFormField.SVPPSTips
|
||
field['tips'] = tips
|
||
}
|
||
if (value && typeof value === 'number') {
|
||
value = this.$dateFormat(value, 'yyyy-MM-dd')
|
||
}
|
||
field['value'] = value
|
||
if (field.showRegionId === location.value) {
|
||
if (!location.child) {
|
||
location['child'] = []
|
||
}
|
||
location['child'].push(field)
|
||
// if (field.isShowImp === '0') {
|
||
// location.isShowImp = '0'
|
||
// }
|
||
}
|
||
}
|
||
if (location.label === '过程稿件') {
|
||
location.isShowImp = '0'
|
||
}
|
||
})
|
||
})
|
||
displayLocation.forEach(location => {
|
||
// 动态属性字段-FBGBJBD 单独添加至基础信息
|
||
const list = displayLocation.filter(item => item.label === '过程稿件');
|
||
if (location.label === '基础信息' && list && list.length > 0) {
|
||
//发布稿必读
|
||
if (!list[0].child) {
|
||
location['child1'] = []
|
||
} else {
|
||
const childList = list[0].child.filter(item => item.attrField === 'FBGBJBD');
|
||
location['child1'] = childList
|
||
|
||
}
|
||
//增补件必读
|
||
if (!list[0].child) {
|
||
location['child3'] = []
|
||
} else {
|
||
const childList = list[0].child.filter(item => item.attrField === 'ZBJBD');
|
||
location['child3'] = childList
|
||
|
||
}
|
||
//勘误件
|
||
if (!list[0].child) {
|
||
location['child4'] = []
|
||
} else {
|
||
const childList = list[0].child.filter(item => item.attrField === 'KWJ');
|
||
location['child4'] = childList
|
||
|
||
}
|
||
//修订本
|
||
if (!list[0].child) {
|
||
location['child5'] = []
|
||
} else {
|
||
const childList = list[0].child.filter(item => item.attrField === 'XDB');
|
||
location['child5'] = childList
|
||
|
||
}
|
||
//修订本
|
||
if (!list[0].child) {
|
||
location['child6'] = []
|
||
} else {
|
||
const childList = list[0].child.filter(item => item.attrField === 'FBGYWBD');
|
||
location['child6'] = childList
|
||
|
||
}
|
||
|
||
}
|
||
// 动态属性字段-SYRZ 单独添加至基础信息
|
||
const list2 = displayLocation.filter(item => item.label === '适用范围');
|
||
if (location.label === '基础信息' && list2 && list2.length > 0) {
|
||
if (!list2[0].child) {
|
||
location['child2'] = []
|
||
} else {
|
||
const childList = list2[0].child.filter(item => item.attrField === 'SYRZ');
|
||
if (childList.length) {
|
||
childList.forEach(item => {
|
||
if (item.value === "[]") {
|
||
item.value = ''
|
||
}
|
||
})
|
||
}
|
||
location['child2'] = childList
|
||
}
|
||
}
|
||
|
||
for (let i = 0; i < displayLocation.length; i++) {
|
||
// sss
|
||
if (displayLocation[i].label !== '基础信息' && displayLocation[i].label !== '过程稿件') {
|
||
const childList = displayLocation[i].child.filter(item => item.value !== null && item.value !== '');
|
||
if (childList.length === 0) {
|
||
displayLocation.splice(i, 1)
|
||
}
|
||
}
|
||
}
|
||
const child = location.child || []
|
||
const one = []
|
||
const half = []
|
||
child.map(field => {
|
||
if (['DATE_PICKER', 'SEL_OPTION', 'INPUT_NUM'].includes(field.attrType)) {
|
||
half.push(field)
|
||
} else {
|
||
if (field.attrField && field.attrField !== 'FBGBJBD' && field.attrField !== 'SYRZ') {
|
||
one.push(field)
|
||
}
|
||
}
|
||
})
|
||
const fieldsIsTextAreaOrFile = child.filter(field => {
|
||
return field.attrType === 'TEXTAREA' || field.attrType === 'FILE'
|
||
})
|
||
const fieldOthers = child.filter(field => {
|
||
return field.attrType !== 'TEXTAREA' && field.attrType !== 'FILE'
|
||
})
|
||
location.child = [...fieldOthers, ...fieldsIsTextAreaOrFile]
|
||
location.one = one
|
||
location.half = half
|
||
location.showAll = false
|
||
})
|
||
this.$http.get('sarLawsAttrDetailedList/sar-laws-attr-detailed-list', {
|
||
id: this.$route.params.id
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
displayLocation.map(item => {
|
||
if (item.value === '2URVBGR2Y4UG77KZ5YPL') {
|
||
for (let key in res.data) {
|
||
item.one.push({
|
||
attrName: key,
|
||
value: res.data[key].join(','),
|
||
isShowImp: '0',
|
||
id: key
|
||
})
|
||
}
|
||
}
|
||
})
|
||
this.dynamicFormField = displayLocation
|
||
console.log(this.dynamicFormField)
|
||
})
|
||
sessionStorage.setItem('displayLocation', JSON.stringify(displayLocation))
|
||
this.loading = false
|
||
})
|
||
/**
|
||
* 自定义鼠标滚轮事件
|
||
* chrome and ie
|
||
*/
|
||
window.addEventListener('mousewheel', this.handleScroll, false)
|
||
// firefox
|
||
window.addEventListener('DOMMouseScroll', this.handleScroll, false)
|
||
},
|
||
destroyed() {
|
||
window.removeEventListener('mousewheel', this.handleScroll, false)
|
||
window.removeEventListener('DOMMouseScroll', this.handleScroll, false)
|
||
sessionStorage.removeItem('displayLocation')
|
||
|
||
window.onresize = null
|
||
this.tableHeight = ''
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="less" scoped>
|
||
@import '~@/assets/styles/mixins';
|
||
@import '~@/assets/styles/style';
|
||
|
||
.files-title {
|
||
display: flex;
|
||
align-items: center;
|
||
|
||
a {
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
display: -webkit-box;
|
||
-webkit-line-clamp: 2;
|
||
-webkit-box-orient: vertical;
|
||
width: calc(~'100% - 40px');
|
||
white-space: break-spaces;
|
||
}
|
||
}
|
||
|
||
.files-titles {
|
||
a {
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
max-width: 780px;
|
||
white-space: nowrap;
|
||
display: block;
|
||
}
|
||
}
|
||
|
||
/deep/ .el-icon-circle-close:before {
|
||
margin-left: 250px;
|
||
}
|
||
|
||
/deep/ .el-tag.el-tag--info {
|
||
margin-left: 30px;
|
||
}
|
||
|
||
/deep/ .el-radio {
|
||
margin-left: 30px;
|
||
}
|
||
|
||
/deep/ .label-input-form .add-form-item .el-form-item__content .el-input .el-input__inner {
|
||
width: 600px;
|
||
margin-left: 20px;
|
||
}
|
||
|
||
/deep/ .label-input-form .add-form-item .el-form-item__label {
|
||
width: 150px;
|
||
}
|
||
|
||
/deep/ .el-collapse-item__header {
|
||
border-bottom: none !important;
|
||
}
|
||
|
||
/deep/ .decomposition-btn {
|
||
position: absolute;
|
||
top: 6px;
|
||
right: 0;
|
||
padding: 0 10px;
|
||
height: 30px;
|
||
line-height: 30px;
|
||
font-size: 14px;
|
||
color: #07C160;
|
||
border: 1px solid #07C160;
|
||
background: rgba(1, 193, 96, 0.1);
|
||
|
||
/deep/ .icon-separate {
|
||
display: inline-block;
|
||
margin-right: 3px;
|
||
width: 16px;
|
||
height: 16px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: sub;
|
||
background-image: url("~assets/images/shangqi/standardDetails/separate.png");
|
||
}
|
||
}
|
||
|
||
/deep/ .el-collapse {
|
||
border: none;
|
||
}
|
||
|
||
/deep/ .el-collapse-item__wrap {
|
||
border: none;
|
||
}
|
||
|
||
/deep/ .el-collapse-item__content {
|
||
padding-bottom: 0px;
|
||
font-size: 16px;
|
||
color: #303133;
|
||
line-height: 1.769230769230769;
|
||
}
|
||
|
||
/deep/ .btn1 #question {
|
||
padding: 0 10px;
|
||
margin-left: 10px;
|
||
height: 30px;
|
||
line-height: 30px;
|
||
font-size: 14px;
|
||
color: #409EFF;;
|
||
border: 1px solid #409EFF;
|
||
background: rgba(64, 158, 255, 0.1);
|
||
|
||
.icon-separate {
|
||
display: inline-block;
|
||
margin-right: 3px;
|
||
width: 16px;
|
||
height: 16px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: sub;
|
||
background-image: url("~assets/images/shangqi/standardDetails/separate.png");
|
||
}
|
||
}
|
||
|
||
.other-standard-details {
|
||
padding: 15px 30px 0;
|
||
width: 1200px;
|
||
margin: 0 auto;
|
||
height: 100%;
|
||
|
||
.itemsTextBox {
|
||
min-height: 300px;
|
||
max-height: 500px;
|
||
overflow: auto;
|
||
line-height: 20px;
|
||
|
||
/deep/ td {
|
||
border: 1px solid #606266;
|
||
text-align: center;
|
||
}
|
||
}
|
||
|
||
/deep/ .el-radio-group {
|
||
display: block;
|
||
margin-bottom: 10px;
|
||
}
|
||
|
||
/deep/ .icon-download {
|
||
display: inline-block;
|
||
margin-left: 3px;
|
||
width: 18px;
|
||
height: 16px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: sub;
|
||
cursor: pointer;
|
||
background-image: url("~assets/images/shangqi/img/download.png");
|
||
}
|
||
|
||
/deep/ .icon-download2 {
|
||
display: inline-block;
|
||
margin-left: 3px;
|
||
width: 18px;
|
||
height: 16px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: sub;
|
||
cursor: pointer;
|
||
background-image: url("~assets/images/shangqi/img/download2.png");
|
||
}
|
||
|
||
.action-bar {
|
||
border-top: 0px;
|
||
}
|
||
|
||
.fileCss {
|
||
margin-right: 10px;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.fileCss:hover {
|
||
color: #0c91e5;
|
||
}
|
||
|
||
.myDialog1 {
|
||
/deep/ .el-dialog__body {
|
||
padding: 0px 20px 10px;
|
||
}
|
||
|
||
.myRadio {
|
||
min-height: 200px;
|
||
max-height: 400px;
|
||
overflow: auto;
|
||
}
|
||
}
|
||
|
||
.myDialog {
|
||
min-width: 700px;
|
||
|
||
.el-dialog {
|
||
min-width: 700px;
|
||
width: 70%;
|
||
}
|
||
|
||
/deep/ .el-dialog__body {
|
||
padding: 0px 20px 56px;
|
||
|
||
.basic-information-content {
|
||
color: #333333;
|
||
font-size: 16px;
|
||
/*font-weight: 400;*/
|
||
|
||
.standard-text {
|
||
height: 50px;
|
||
line-height: 50px;
|
||
border-bottom: 1px solid #E5E5E5;
|
||
}
|
||
|
||
& > p {
|
||
min-height: 55px;
|
||
line-height: 55px;
|
||
border-bottom: 1px solid #E5E5E5;
|
||
}
|
||
}
|
||
}
|
||
|
||
.knowContent {
|
||
height: 500px;
|
||
}
|
||
}
|
||
|
||
.details-header {
|
||
padding: 34px 0;
|
||
font-size: 20px;
|
||
font-weight: bold;
|
||
color: #555555;
|
||
text-align: center;
|
||
|
||
& > span {
|
||
width: 100%;
|
||
}
|
||
}
|
||
|
||
/deep/ .details-content {
|
||
/*padding: 0 67px;*/
|
||
|
||
.details-content-modular {
|
||
.modular-header {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
width: 100%;
|
||
height: 50px;
|
||
border-bottom: 1px solid #E5E5E5;
|
||
|
||
.modular-header-title {
|
||
font-size: 18px;
|
||
font-weight: bold;
|
||
color: #3B424C;
|
||
|
||
& > .icon-modular-title {
|
||
display: inline-block;
|
||
margin-left: -28px;
|
||
width: 18px;
|
||
height: 18px;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
background-image: url("~assets/images/shangqi/standardDetails/modular-title.png");
|
||
position: relative;
|
||
top: 2px;;
|
||
}
|
||
|
||
& > span {
|
||
padding-left: 10px;
|
||
}
|
||
}
|
||
|
||
.modular-header-btn {
|
||
& > button {
|
||
height: 30px;
|
||
line-height: 30px;
|
||
font-size: 14px;
|
||
padding: 0 10px;
|
||
font-family: 'Microsoft Yahei', '\5FAE\8F6F\96C5\9ED1', Arial, sans-serif !important;
|
||
|
||
& > i {
|
||
display: inline-block;
|
||
margin-right: 3px;
|
||
width: 18px;
|
||
height: 18px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: text-bottom;
|
||
}
|
||
}
|
||
|
||
.collection-btn {
|
||
padding: 0;
|
||
border: none;
|
||
|
||
i {
|
||
color: #F2CB51;
|
||
font-size: 18px;
|
||
width: 18px;
|
||
height: 18px;
|
||
}
|
||
|
||
/*background: rgba(244, 162, 39, 0.1);*/
|
||
|
||
.icon-collection {
|
||
background-image: url("~assets/images/shangqi/standardDetails/collection.png");
|
||
}
|
||
|
||
&:hover {
|
||
background: transparent;
|
||
}
|
||
}
|
||
|
||
.relation-btn {
|
||
color: #409EFF;
|
||
border: 1px solid #409EFF;
|
||
background: rgba(64, 158, 255, 0.1);
|
||
|
||
.icon-relation {
|
||
background-image: url("~assets/images/shangqi/standardDetails/relation.png");
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
.basic-information-content {
|
||
color: #333333;
|
||
font-size: 16px;
|
||
/*font-weight: 400;*/
|
||
|
||
.standard-text {
|
||
height: 50px;
|
||
line-height: 50px;
|
||
border-bottom: 1px solid #E5E5E5;
|
||
}
|
||
}
|
||
|
||
.modular-content {
|
||
.modular-item-more {
|
||
padding: 5px 0;
|
||
width: 100%;
|
||
float: left;
|
||
text-align: center;
|
||
line-height: 30px;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
|
||
.wrap {
|
||
cursor: pointer;
|
||
|
||
span {
|
||
color: #409EFF;
|
||
}
|
||
|
||
img {
|
||
height: 10px;
|
||
margin-left: 5px;
|
||
transition: all .2s linear;
|
||
|
||
&.is-show-all {
|
||
transform: rotate(180deg);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
& > div:not(.modular-item-more) {
|
||
position: relative;
|
||
//英文名称变粗
|
||
border-bottom: 1px solid #E5E5E5;
|
||
min-height: 43px;
|
||
line-height: 43px;
|
||
|
||
.modular-content-p-name {
|
||
display: inline-block;
|
||
width: 213px;
|
||
height: 43px;
|
||
line-height: 43px;
|
||
font-size: 16px;
|
||
color: #333333;
|
||
vertical-align: top;
|
||
overflow: hidden;
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis;
|
||
}
|
||
|
||
.modular-content-p-val {
|
||
line-height: 32px;
|
||
display: inline-block;
|
||
width: calc(~'100% - 225px');
|
||
//min-height: 50px;
|
||
//line-height: 50px;
|
||
//font-size: 16px;
|
||
//color: #999999;
|
||
word-break: break-all;
|
||
//overflow: hidden;
|
||
//white-space: nowrap;
|
||
//text-overflow: ellipsis;
|
||
}
|
||
|
||
.modular-content-p-flies {
|
||
line-height: 32px;
|
||
//position: relative;
|
||
display: inline-block;
|
||
width: calc(~'100% - 225px');
|
||
|
||
& > .files-title {
|
||
width: calc(~'100% - 10px');
|
||
//报批稿撑开
|
||
//min-height: 50px;
|
||
//line-height: 50px;
|
||
//font-size: 16px;
|
||
color: #409EFF;
|
||
|
||
& > a {
|
||
cursor: pointer;
|
||
}
|
||
|
||
& > i {
|
||
display: inline-block;
|
||
margin-left: 3px;
|
||
width: 18px;
|
||
height: 16px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: sub;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.icon-download {
|
||
background-image: url("~assets/images/shangqi/img/download.png");
|
||
}
|
||
|
||
.icon-download2 {
|
||
background-image: url("~assets/images/shangqi/img/download2.png");
|
||
}
|
||
}
|
||
|
||
.decomposition-btn {
|
||
position: absolute;
|
||
//报批稿撑开
|
||
//top: 10px;
|
||
right: 0;
|
||
margin-right: 10px;
|
||
padding: 0 10px;
|
||
height: 30px;
|
||
line-height: 30px;
|
||
font-size: 14px;
|
||
color: #07C160;
|
||
border: 1px solid #07C160;
|
||
background: rgba(1, 193, 96, 0.1);
|
||
|
||
.icon-separate {
|
||
display: inline-block;
|
||
margin-right: 3px;
|
||
width: 16px;
|
||
height: 16px;
|
||
background-repeat: no-repeat;
|
||
background-size: 100% 100%;
|
||
background-position: center center;
|
||
vertical-align: sub;
|
||
background-image: url("~assets/images/shangqi/standardDetails/separate.png");
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
.basic-information {
|
||
border-top: 2px dashed #D1D1D1;
|
||
|
||
.modular-header {
|
||
height: 60px;
|
||
border-bottom: none;
|
||
}
|
||
|
||
.basic-information-content {
|
||
& > p {
|
||
min-height: 43px;
|
||
line-height: 43px;
|
||
border-bottom: 1px solid #E5E5E5;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
.more, .put-away {
|
||
position: fixed;
|
||
bottom: 0;
|
||
width: 1200px;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
//margin-bottom: 20px;
|
||
color: #409EFF;
|
||
font-size: 16px;
|
||
cursor: pointer;
|
||
background-image: linear-gradient(-180deg, rgba(255, 255, 255, 0) 0%, #fff 70%);
|
||
padding-bottom: 34px;
|
||
padding-top: 34px;
|
||
|
||
& > img {
|
||
margin-left: 5px;
|
||
width: 14px;
|
||
height: 14px;
|
||
}
|
||
}
|
||
|
||
.put-away {
|
||
& > img {
|
||
transform: rotate(180deg);
|
||
}
|
||
}
|
||
|
||
.not-footer-drawer {
|
||
.search-area {
|
||
margin-bottom: 0;
|
||
border-bottom: 5px solid #f6f6f6;
|
||
}
|
||
|
||
.content {
|
||
padding: 0 10px;
|
||
flex: auto;
|
||
//height: calc(~'100% - 105px - 56px');
|
||
}
|
||
|
||
.pagination {
|
||
position: static;
|
||
}
|
||
}
|
||
}
|
||
|
||
.half {
|
||
width: 50%;
|
||
float: left;
|
||
}
|
||
|
||
.hidden {
|
||
overflow: hidden;
|
||
}
|
||
|
||
.clearfix {
|
||
&:after {
|
||
clear: both;
|
||
}
|
||
|
||
&:after, &:before {
|
||
display: table;
|
||
content: "";
|
||
}
|
||
}
|
||
|
||
.details-container .el-divider {
|
||
height: 1px;
|
||
background-color: #d5d8da;
|
||
}
|
||
|
||
.span-line:hover {
|
||
text-decoration: underline;
|
||
}
|
||
|
||
.relateClass {
|
||
.el-dialog__body {
|
||
max-height: 460px;
|
||
overflow-y: auto;
|
||
}
|
||
}
|
||
|
||
.over {
|
||
word-break: break-all;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
display: -webkit-box;
|
||
-webkit-line-clamp: 2;
|
||
-webkit-box-orient: vertical;
|
||
}
|
||
|
||
::v-deep .el-drawer__header {
|
||
& > span:first-child {
|
||
outline: none !important;
|
||
}
|
||
}
|
||
|
||
::v-deep .el-drawer {
|
||
outline: none !important;
|
||
}
|
||
</style>
|