4988 lines
190 KiB
Vue
4988 lines
190 KiB
Vue
<!--标准法规--海外标准法规-->
|
||
<template>
|
||
<div id="foreignStandardsAndRegulations" :class="{ 'tree-close': sideClose }" class="demo-spin-article v-class">
|
||
<div class="tree-content" :class="{ 'tree-closed': sideClose }">
|
||
<div style="width: 100%">
|
||
<el-input
|
||
placeholder="输入树状图体系"
|
||
v-model="filterText">
|
||
</el-input>
|
||
<div class="tree">
|
||
<el-card style="height: 100%;padding-right: 120px;">
|
||
|
||
<el-tree
|
||
ref="tree"
|
||
node-key="id"
|
||
class="tree-line"
|
||
icon-class="icon-tree"
|
||
:indent="0"
|
||
:props="props"
|
||
:data="treeList"
|
||
highlight-current
|
||
@node-click="treeClick"
|
||
:filter-node-method="filterNode"
|
||
default-expand-all
|
||
:expand-on-click-node="false">
|
||
<span class="custom-tree-node" slot-scope="{ node, data }" @mouseenter="mouseenter(data)" @mouseleave="mouseleave(data)">
|
||
<span :class="data.children.length !== 0 ? 'is-show' : 'is-leaf-none'"></span>
|
||
<span> {{ node.label }} </span>
|
||
<span>
|
||
<el-button
|
||
type="text"
|
||
size="mini"
|
||
v-show="data.show"
|
||
@click="() => append(data)">
|
||
新增
|
||
</el-button>
|
||
<el-button
|
||
type="text"
|
||
size="mini"
|
||
v-show="data.show"
|
||
@click="() => update(data)">
|
||
编辑
|
||
</el-button>
|
||
<el-button
|
||
type="text"
|
||
size="mini"
|
||
v-show="data.showDel"
|
||
@click="() => remove(node, data)">
|
||
删除
|
||
</el-button>
|
||
</span>
|
||
</span>
|
||
</el-tree>
|
||
|
||
</el-card>
|
||
</div>
|
||
</div>
|
||
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
||
<!--切换折叠样式-->
|
||
<i class="el-icon-arrow-left" v-if="sideClose === false"></i>
|
||
<i class="el-icon-arrow-right" v-if="sideClose === true"></i>
|
||
</div>
|
||
</div>
|
||
<div class="tree-right">
|
||
<!--高级查询 ------------按钮-->
|
||
<table-tools-bar>
|
||
<div slot="content">
|
||
</div>
|
||
<div slot="left">
|
||
<div class="search-area">
|
||
<div class="left">
|
||
<el-form :modal="standCommonlySearch" inline class="label-input-form" @keyup.enter.native="searchBtnClick(standCommonlySearch)">
|
||
<el-form-item label="标准类别" class="search-item">
|
||
<el-select v-model="standCommonlySearch.standSort" filterable>
|
||
<el-option
|
||
v-for="item in standSortOptions"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="标准号/名称" class="search-item search-item-last">
|
||
<el-input v-model="standCommonlySearch.standNumber"
|
||
placeholder="请输入"
|
||
clearable
|
||
@keyup.enter="searchBtnClick(standCommonlySearch)"
|
||
:maxlength="100"
|
||
></el-input>
|
||
</el-form-item>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
:loading="searching"
|
||
type="primary"
|
||
class="common-button-primary"
|
||
size="mini"
|
||
v-btn-permission="'366c89d1c54465faca96aaed26a158b1'"
|
||
@click="searchBtnClick(standCommonlySearch)">
|
||
查询
|
||
</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
size="mini"
|
||
v-btn-permission="'31ac9f600d8a3072ba088f1c106df359'"
|
||
@click="clearAllSearch('standCommonlySearch')">清空
|
||
</el-button>
|
||
<el-button type="primary" class="common-button-primary" size="mini" @click="selectMoreBtn">
|
||
<i class="iconfont" v-btn-permission="'c9390928e5a3107956c7d43d8bde5cba'"></i>高级查询
|
||
</el-button>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div slot="right" class="right shaixuan-button">
|
||
<!--<el-button icon="shaixuan" type="primary" class="common-button-primary" size="mini" @click="selectMoreBtn">高级查询</el-button>-->
|
||
</div>
|
||
</table-tools-bar>
|
||
<div class="action-bar">
|
||
<el-button type="primary"
|
||
class="common-button-primary add-button"
|
||
size="mini"
|
||
@click="addModal"
|
||
v-btn-permission="'ceb5fb1e00'"
|
||
:disabled="addBtnDisabled"><i class="el-icon-plus"></i>新增
|
||
</el-button>
|
||
<el-button class="common-button-default in-button"
|
||
size="mini"
|
||
:loading="searching"
|
||
@click="addImportModal(1)"
|
||
v-btn-permission="'FQ5ECZ286K'"><i class="iconfont"></i>导入
|
||
</el-button>
|
||
<el-button class="common-button-default export-button"
|
||
size="mini"
|
||
@click="exportStandard()"
|
||
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
|
||
v-btn-permission="'8871ed1be74cf65851659514880bb50a'"><i class="iconfont"></i>导出
|
||
</el-button>
|
||
<!-- <el-button class="common-button-default delete-button"
|
||
:loading="delLoading"
|
||
size="mini"
|
||
@click="deleteStand(2)"
|
||
v-btn-permission="'4d01342db0f56f01bfceaee7b46904f4'"><i class="iconfont"></i>批量删除
|
||
</el-button>-->
|
||
<el-button class="common-button-default"
|
||
size="mini" @click="configurationStandard"
|
||
v-btn-permission="'590049684c0af005c6b3d1f0ebcf897e'"><i class="iconfont"></i>配置标准
|
||
</el-button>
|
||
<el-button class="common-button-default"
|
||
size="mini"
|
||
@click="deleteStandFromKind(2)"
|
||
v-btn-permission="'29bf24bbd156c06f136cc89b1c7b2bb0'"><i class="iconfont"></i>移除标准
|
||
</el-button>
|
||
<!--<!– <el-button class="common-button-default"
|
||
size="mini" :loading="searching"
|
||
@click="uploadImportModal(1)"
|
||
v-btn-permission="'4mFaJU3fTS'"><i class="iconfont"></i>模板下载–>
|
||
</el-button>-->
|
||
</div>
|
||
<div class="content">
|
||
<div class="table-wrap">
|
||
<el-table
|
||
ref="multipleTable"
|
||
:data="stahndinfoList"
|
||
tooltip-effect="dark"
|
||
border
|
||
style="width: 100%; flex: auto;"
|
||
class="drag-table"
|
||
height="100%"
|
||
:row-class-name="dragRowClassName"
|
||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||
fontWeight: 'bold', height: '48px'}"
|
||
@selection-change="standSelectChange"
|
||
@sort-change="sortChange">
|
||
<el-table-column
|
||
type="selection"
|
||
width="55"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
label="标准号"
|
||
width="200"
|
||
>
|
||
<template slot-scope="scope">
|
||
<a v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{
|
||
scope.row.standSortShow
|
||
}} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||
<a v-else-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" class="table-jump" @click="handlePreview(scope.row)">{{
|
||
scope.row.standSortShow
|
||
}} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||
<a v-else-if="scope.row.standYear" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{
|
||
scope.row.standSortShow
|
||
}} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }}
|
||
{{ scope.row.standNumber }}</a>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
show-overflow-tooltip
|
||
prop="standName"
|
||
label="标准名称"
|
||
>
|
||
<template slot-scope="scope">
|
||
<a v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="issueTime"
|
||
sortable="custom"
|
||
width="110px"
|
||
label="发布日期">
|
||
<template slot-scope="scope">
|
||
<div v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">
|
||
{{ formatIssueDate(scope.row.issueTime) }}
|
||
</div>
|
||
<div v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">
|
||
{{ formatIssueDate(scope.row.issueTime) }}
|
||
</div>
|
||
<div v-else style="color: #333333">
|
||
{{ formatIssueDate(scope.row.issueTime) }}
|
||
</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="SSRQ"
|
||
sortable="custom"
|
||
width="110px"
|
||
label="实施日期">
|
||
<template slot-scope="scope">
|
||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0,10) : '-' }}</span>
|
||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0,10) : '-' }}</span>
|
||
<span v-else style="color: #333333">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0,10) : '-' }}</span>
|
||
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="XCXSSRQ"
|
||
sortable="custom"
|
||
width="150px"
|
||
label="新车型实施日期">
|
||
<template slot-scope="scope">
|
||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0,10) : '-' }}</span>
|
||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0,10) : '-' }}</span>
|
||
<span v-else style="color: #333333">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0,10) : '-' }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="ZCCSSRQ"
|
||
sortable="custom"
|
||
width="150px"
|
||
label="在产车实施日期">
|
||
<template slot-scope="scope">
|
||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0,10) : '-' }}</span>
|
||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0,10) : '-' }}</span>
|
||
<span v-else style="color: #333333">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0,10) : '-' }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="textStatus"
|
||
sortable="custom"
|
||
width="120px"
|
||
label="文本状态">
|
||
<!-- <template slot="header" slot-scope="scope">-->
|
||
<!-- <el-tooltip class="item" effect="dark" content="计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。" placement="bottom">-->
|
||
<!-- <span>文本状态 <i class="el-icon-warning-outline"></i></span>-->
|
||
<!-- </el-tooltip>-->
|
||
<!-- </template>-->
|
||
<template slot-scope="scope">
|
||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ textStatusMap[scope.row.textStatus] }}</span>
|
||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ textStatusMap[scope.row.textStatus] }}</span>
|
||
<span v-else style="color: #333333">{{ textStatusMap[scope.row.textStatus] }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="操作" align="center" width="50" >
|
||
<template slot-scope="scope">
|
||
<div @click.stop style="display: inline-block">
|
||
<el-dropdown trigger="click" @command="handleCommand">
|
||
<i class="iconfont"></i>
|
||
<el-dropdown-menu slot="dropdown">
|
||
<el-dropdown-item
|
||
v-if="scope.row.collectBtn"
|
||
:command="[scope.row, '收藏']"
|
||
v-btn-permission="'f9745194958bc9ed3ee5127459795dbc'"
|
||
>
|
||
收藏
|
||
</el-dropdown-item>
|
||
<el-dropdown-item
|
||
v-else
|
||
:command="[scope.row, '取消收藏']"
|
||
v-btn-permission="'47e155667f521467ed941c89d118e770'"
|
||
>
|
||
取消收藏
|
||
</el-dropdown-item>
|
||
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'e8d690904ee1895dd0d17d9c794fbcd7'">
|
||
编辑
|
||
</el-dropdown-item>
|
||
<!-- <el-dropdown-item :command="[scope.row, '分享']" v-btn-permission="'413e676a155d6eb2dfbe08df8cbcf682'">分享</el-dropdown-item>-->
|
||
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'dbaf9df2990a595c8abea28e68b1a681'">
|
||
删除
|
||
</el-dropdown-item>
|
||
</el-dropdown-menu>
|
||
</el-dropdown>
|
||
</div>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
</div>
|
||
<pagination :page="standCommonlySearch.page" :total="total"
|
||
@pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||
</div>
|
||
<loading :loading="menuTreeLoading || loading">数据获取中</loading>
|
||
<!--导出文件改名字模态框-->
|
||
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
|
||
<el-form :inline="true" class="label-input-form search-area">
|
||
<el-form-item label="导出名称" class="search-item">
|
||
<el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
||
</el-form-item>
|
||
</el-form>
|
||
<span slot="footer" class="demo-drawer-footer">
|
||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="cancal">取消</el-button>
|
||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" @click="exportTestItem">提交</el-button>
|
||
</span>
|
||
</el-dialog>
|
||
<!-- <table-tools-bar v-model="isAdvancedSearch" @search="getDomesticStandardTableBtn(sarStandardsSearch)"-->
|
||
<!-- @reset="clearAllSearch('sarStandardsSearch')">-->
|
||
<!-- <div slot="content">-->
|
||
<!-- <el-form :model="sarStandardsSearch" :inline="true" class="label-input-form table-lattice" style="display: flex;flex-wrap: wrap">-->
|
||
<!-- <!– 标准号–>-->
|
||
<!-- <el-form-item :label="$t('m.standardNo')" class="serch-form-item">-->
|
||
<!-- <el-input v-model="sarStandardsSearch.standNumber" :placeholder="$t('m.lookUpByStandardNumber')" clearable :maxlength="100"-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 标准名称–>-->
|
||
<!-- <el-form-item :label="$t('m.standName')" class="serch-form-item">-->
|
||
<!-- <el-input v-model="sarStandardsSearch.standName" :placeholder="$t('m.searchByStandardName')" clearable :maxlength="500"-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 标准类别–>-->
|
||
<!-- <el-form-item :label="$t('m.standardCategory')" class="serch-form-item">-->
|
||
<!-- <search-select-->
|
||
<!-- v-model="sarStandardsSearch.standSort"-->
|
||
<!-- :placeholder="$t('m.standardCategoryTips')"-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"-->
|
||
<!-- :options="standSortOptions"-->
|
||
<!-- clearable/>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 文本状态–>-->
|
||
<!-- <el-form-item :label="$t('m.standStateShow')" class="serch-form-item">-->
|
||
<!-- <el-select v-model="sarStandardsSearch.textStatus" :placeholder="$t('m.lookupByStandardStatus')" clearable-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">-->
|
||
<!-- <el-option v-for="opt in standStateOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 代替标准号–>-->
|
||
<!-- <el-form-item :label="$t('m.substituteStandardNumber')" class="serch-form-item">-->
|
||
<!-- <el-input v-model="sarStandardsSearch.dtbjh" :placeholder="$t('m.lookUpByAlternativeCriteria')" clearable :maxlength="100"-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 适用车型–>-->
|
||
<!-- <el-form-item :label="$t('m.applicableModels')" class="serch-form-item">-->
|
||
<!-- <el-select v-model="sarStandardsSearch.cllx" :placeholder="$t('m.searchAccordingToThApplicableModel')" clearable-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">-->
|
||
<!-- <el-option v-for="opt in applyArcticOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 适用产品线(新增字段)–>-->
|
||
<!-- <el-form-item :label="$t('m.applicableProductLine')" class="serch-form-item">-->
|
||
<!-- <el-select v-model="sarStandardsSearch.nylx" :placeholder="$t('m.searchByApplicableProductLine')" clearable-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">-->
|
||
<!-- <el-option v-for="opt in categoryOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <!– 关联模块(新增字段)–>-->
|
||
<!-- <el-form-item :label="$t('m.associatedModule')" class="serch-form-item">-->
|
||
<!-- <el-select v-model="sarStandardsSearch.cycvppsbm" :placeholder="$t('m.SearchByAssociatedModule')" clearable-->
|
||
<!-- @keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">-->
|
||
<!-- <el-option v-for="opt in standNatureOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}-->
|
||
<!-- </el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- </el-form>-->
|
||
<!-- </div>-->
|
||
<!-- </table-tools-bar>-->
|
||
<!-- 高级筛选-->
|
||
<el-drawer
|
||
title="高级搜索"
|
||
size="700px"
|
||
:wrapperClosable="false"
|
||
:visible.sync="isAdvancedSearch">
|
||
<div class="demo-drawer-content">
|
||
<el-form :model="sarStandardsSearch" :inline="true" class="label-input-form table-lattice"
|
||
style="display: flex;flex-wrap: wrap">
|
||
<!-- 标准号-->
|
||
<el-form-item :label="$t('m.standardNo')" class="serch-form-item">
|
||
<el-input v-model="sarStandardsSearch.standNumber" :placeholder="$t('m.lookUpByStandardNumber')" clearable
|
||
:maxlength="100"
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>
|
||
</el-form-item>
|
||
<!-- 标准名称-->
|
||
<el-form-item :label="$t('m.standName')" class="serch-form-item">
|
||
<el-input v-model="sarStandardsSearch.standName" :placeholder="$t('m.searchByStandardName')" clearable
|
||
:maxlength="500"
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>
|
||
</el-form-item>
|
||
<!-- 标准英文名称-->
|
||
<el-form-item :label="$t('m.standardEnglishName')" class="serch-form-item">
|
||
<el-input v-model="sarStandardsSearch.standEnName"
|
||
:placeholder="$t('m.searchAccordingToStandardEnglishName')" clearable :maxlength="500"
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>
|
||
</el-form-item>
|
||
<!-- 标准类别-->
|
||
<el-form-item :label="$t('m.standardCategory')" class="serch-form-item">
|
||
<search-select
|
||
v-model="sarStandardsSearch.standSort"
|
||
:placeholder="$t('m.standardCategoryTips')"
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"
|
||
:options="standSortOptions"
|
||
clearable/>
|
||
</el-form-item>
|
||
<!-- 代替标准号-->
|
||
<el-form-item :label="$t('m.substituteStandardNumber')" class="serch-form-item">
|
||
<el-input v-model="sarStandardsSearch.replaceStandNum" :placeholder="$t('m.lookUpByAlternativeCriteria')"
|
||
clearable :maxlength="100"
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)"></el-input>
|
||
</el-form-item>
|
||
<!-- 被代替标准号-->
|
||
<el-form-item label="被代替标准号">
|
||
<el-input v-model="sarStandardsSearch.replacedStandNum" clearable placeholder="根据被代替标准号查找"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!-- 标准年份-->
|
||
<el-form-item :label="$t('m.standardYear')" class="serch-form-item">
|
||
<el-input
|
||
v-model="sarStandardsSearch.standYear"
|
||
placeholder="根据标准年份查找">
|
||
</el-input>
|
||
</el-form-item>
|
||
|
||
<!-- 标准发布日期-->
|
||
<el-form-item label="标准发布日期" class="serch-form-item">
|
||
<el-date-picker
|
||
v-model="sarStandardsSearch.issueTime"
|
||
type="date"
|
||
value-format="yyyy-MM-dd"
|
||
placeholder="根据标准发布日期查找">
|
||
</el-date-picker>
|
||
</el-form-item>
|
||
<!-- 适用车型-->
|
||
<el-form-item :label="$t('m.applicableModels')" class="serch-form-item">
|
||
<el-select v-model="sarStandardsSearch.applyArctic"
|
||
:placeholder="$t('m.searchAccordingToThApplicableModel')" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in applyArcticOptions" :value="opt.value === undefined ? '' :opt.value"
|
||
:key="opt.value" :label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
|
||
<!-- 是否纳入标准清单-->
|
||
<el-form-item label="是否纳入标准清单" class="serch-form-item">
|
||
<el-select v-model="sarStandardsSearch.isRelateAccess" placeholder="根据是否纳入标准清单查找">
|
||
<el-option value="1" label="是"></el-option>
|
||
<el-option value="0" label="否"></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
|
||
|
||
<!-- 文本状态-->
|
||
<el-form-item :label="$t('m.standStateShow')" class="serch-form-item">
|
||
<el-select v-model="sarStandardsSearch.textStatus" :placeholder="$t('m.lookupByStandardStatus')" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in standStateOptions" :value="opt.value === undefined ? '' :opt.value"
|
||
:key="opt.value" :label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 标准性质-->
|
||
<el-form-item :label="$t('m.standNatureShow')" class="serch-form-item">
|
||
<el-select v-model="sarStandardsSearch.standNature" placeholder="请选择标准性质" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in standNatureOptions" :value="opt.value === undefined ? '' :opt.value"
|
||
:key="opt.value" :label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
|
||
<!-- 自定义属性-->
|
||
<!-- 实施日期-->
|
||
<el-form-item label="实施日期">
|
||
<el-date-picker
|
||
v-model="advanceSearchMapping.SSRQ"
|
||
type="date"
|
||
value-format="yyyy-MM-dd"
|
||
placeholder="根据实施日期查找">
|
||
</el-date-picker>
|
||
</el-form-item>
|
||
<!-- 新车型实施日期-->
|
||
<el-form-item title="新车型实施日期" label="新车型实施日期">
|
||
<el-date-picker
|
||
value-format="yyyy-MM-dd"
|
||
v-model="advanceSearchMapping.XCXSSRQ"
|
||
type="date"
|
||
placeholder="根据新车型实施日期查找">
|
||
</el-date-picker>
|
||
</el-form-item>
|
||
<!-- 在产车实施日期-->
|
||
<el-form-item title="在产车实施日期" label="在产车实施日期">
|
||
<el-date-picker
|
||
v-model="advanceSearchMapping.ZCCSSRQ"
|
||
type="date"
|
||
value-format="yyyy-MM-dd"
|
||
placeholder="根据在产车实施日期查找">
|
||
</el-date-picker>
|
||
</el-form-item>
|
||
<!-- 归口管理部门-->
|
||
<el-form-item label="归口管理部门">
|
||
<el-select v-model="advanceSearchMapping.GKDW" placeholder="归口管理部门" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in gkglbmOptions" :value="opt.value === undefined ? '' :opt.value"
|
||
:key="opt.value" :label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 起草单位-->
|
||
<el-form-item label="起草单位">
|
||
<el-select v-model="advanceSearchMapping.QCDW" placeholder="根据起草单位查找" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in qcdwOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 我司参与深度-->
|
||
<el-form-item label="我司参与深度">
|
||
<el-select v-model="advanceSearchMapping.CYSD" placeholder="请选择我司参与深度" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in cysdOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
|
||
<!-- 能源类型-->
|
||
<el-form-item label="能源类型">
|
||
<el-select v-model="advanceSearchMapping.NYLX" placeholder="请选择能源类型" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in nylxOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 适用产品线(新增字段)-->
|
||
<el-form-item :label="$t('m.applicableProductLine')" class="serch-form-item">
|
||
<el-select v-model="advanceSearchMapping.SYCPX" :placeholder="$t('m.searchByApplicableProductLine')"
|
||
clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in sycpxOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 适用认证-->
|
||
<el-form-item label="适用认证">
|
||
<el-select v-model="advanceSearchMapping.SYRZ" placeholder="根据适用认证查找" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in syrzOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 责任部门-->
|
||
<el-form-item label="责任部门">
|
||
<el-select v-model="advanceSearchMapping.ZRBM" placeholder="根据责任部门查找" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in zrbmOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 责任工程师-->
|
||
<el-form-item label="责任工程师">
|
||
<el-select v-model="advanceSearchMapping.ZRGCS" placeholder="根据责任工程师查找" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in zrgcsOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- 采标编号-->
|
||
<el-form-item label="采标编号" prop="nameShow">
|
||
<el-input v-model="advanceSearchMapping.CBBH" clearable placeholder="根据采标编号查找"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!-- 采标程度-->
|
||
<el-form-item label="采标程度" prop="standNumber">
|
||
<el-input v-model="advanceSearchMapping.CBCD" clearable
|
||
placeholder="根据采标程度查找"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!-- 引用标准-->
|
||
<el-form-item label="引用标准">
|
||
<el-input v-model="advanceSearchMapping.YYBJ" clearable placeholder="根据引用标准查找"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!-- 被引用标准-->
|
||
<el-form-item label="被引用标准">
|
||
<el-input v-model="advanceSearchMapping.BYYBJ" clearable
|
||
placeholder="根据被引用标准查找"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
|
||
|
||
<!-- 体系类别-->
|
||
<el-form-item label="体系类别">
|
||
<el-select v-model="advanceSearchMapping.TXLB" placeholder="根据体系类别查找" clearable
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarStandardsSearch)">
|
||
<el-option v-for="opt in txlbOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value"
|
||
:label="opt.label">{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
|
||
<!-- 关联模块--乘用车VPPS编码-->
|
||
<el-form-item title=" 关联模块--乘用车VPPS编码" label=" 关联模块--乘用车VPPS编码" prop="standNumber">
|
||
<el-input v-model="advanceSearchMapping.CYCVPPSBM" clearable
|
||
placeholder=" 关联模块--乘用车VPPS编码"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!-- 关联模块--乘用车vpps中文名称-->
|
||
<el-form-item title="关联模块--乘用车vpps中文名称" label="关联模块--乘用车vpps中文名称" prop="standNumber">
|
||
<el-input v-model="advanceSearchMapping.CYCVPPSCN" clearable
|
||
placeholder="关联模块--乘用车vpps中文名称"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!--关联模块--卡车VPPS编码-->
|
||
<el-form-item title="关联模块--卡车VPPS编码" label="关联模块--卡车VPPS编码" prop="standNumber">
|
||
<el-input v-model="advanceSearchMapping.KCCVPPSBM" clearable
|
||
placeholder="关联模块--卡车VPPS编码"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
<!--关联模块--卡车vpps中文名称-->
|
||
<el-form-item title="关联模块--卡车vpps中文名称" label="关联模块--卡车vpps中文名称" prop="standNumber">
|
||
<el-input v-model="advanceSearchMapping.KCCVPPSCN" clearable
|
||
placeholder="关联模块--卡车vpps中文名称"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
|
||
|
||
<!-- 标记-->
|
||
<!-- 标签-->
|
||
<el-form-item label="标签">
|
||
<el-input v-model="advanceSearchMapping.GXHBQ" clearable
|
||
placeholder="根据被标签查找"
|
||
@keyup.enter.native="btnSearch"></el-input>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button
|
||
class="common-button-primary"
|
||
icon="el-icon-check"
|
||
type="primary"
|
||
@click="getDomesticStandardTableBtn(sarStandardsSearch)">搜索
|
||
</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
icon="el-icon-close"
|
||
@click="clearAllSearch('sarStandardsSearch')">取消
|
||
</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 新增海外标准 -->
|
||
<!-- 编辑海外标准-->
|
||
<el-drawer
|
||
:title="modalshowtitle"
|
||
:visible.sync="modalshowflag"
|
||
:wrapperClosable="false"
|
||
size="800px"
|
||
@close="resetForm"
|
||
>
|
||
<!-- 新增样式 -->
|
||
<div class="demo-drawer-content">
|
||
<el-form
|
||
v-if="reloadAddForm"
|
||
ref="sarStandardsInfoForm"
|
||
:model="sarStandardsInfoEO"
|
||
:rules="sarStandardsInfoRules"
|
||
class="label-input-form"
|
||
>
|
||
<!-- <el-form-item-->
|
||
<!-- prop="isRelateAccess"-->
|
||
<!-- label-width="150px"-->
|
||
<!-- class="add-form-item"-->
|
||
<!-- title="A类必填项多,仅A类可纳入法规清单。"-->
|
||
<!-- >-->
|
||
<!-- <template slot="label">重要度<i class="el-icon-warning-outline"></i></template>-->
|
||
<!-- <el-select v-model="sarStandardsInfoEO.isRelateAccess" @change="isRegulationsChange">-->
|
||
<!-- <el-option value="1" label="A" key="1"></el-option>-->
|
||
<!-- <el-option value="0" label="B" key="0"></el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <el-form-item label="适用区域" prop="country" label-width="150px" class="add-form-item form-item-disabled">-->
|
||
<!-- <el-select v-model="sarStandardsInfoEO.country" disabled >-->
|
||
<!-- <el-option v-for="opt in countryOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">{{ opt.label }}</el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- <el-form-item label="文本说明" prop="synopsis" label-width="150px" class="add-form-item">-->
|
||
<!-- <el-input-->
|
||
<!-- type="text"-->
|
||
<!-- v-model="sarStandardsInfoEO.synopsis"-->
|
||
<!-- placeholder="请输入"-->
|
||
<!-- clearable-->
|
||
<!-- ></el-input>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- 动态数据-->
|
||
<template v-for="(displayLocation, index) in dynamicFormField">
|
||
<el-col :span="24" :key="index">
|
||
<div class="divider-line">{{ displayLocation.label }}</div>
|
||
</el-col>
|
||
|
||
<template v-if="index === 0">
|
||
<el-form-item label="国家/地区" prop="" label-width="150px" class="add-form-item">
|
||
<el-select v-model="sarStandardsInfoEO.country" multiple filterable clearable>
|
||
<el-option
|
||
v-for="item in countryOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
>
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="标准类别" prop="standSort" label-width="150px" class="add-form-item">
|
||
<el-select v-model="sarStandardsInfoEO.standSort" filterable>
|
||
<el-option
|
||
v-for="item in standSortOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="标准编号" prop="standNumber" label-width="150px" class="add-form-item">
|
||
<el-input v-model="sarStandardsInfoEO.standNumber"
|
||
placeholder="请输入标准编号"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="标准年份" prop="standYear" label-width="150px" class="add-form-item">
|
||
<el-input v-model="sarStandardsInfoEO.standYear"
|
||
placeholder="请输入标准年份"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="标准中文名称" prop="standName" label-width="150px" class="add-form-item">
|
||
<el-input v-model="sarStandardsInfoEO.standName"
|
||
placeholder="请输入中文名称"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="标准英文名称" prop="standEnName" label-width="150px" class="add-form-item">
|
||
<el-input v-model="sarStandardsInfoEO.standEnName"
|
||
placeholder="请输入标准英文名称"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item prop="standNature" label-width="150px" class="add-form-item">
|
||
<template slot="label">标准性质</template>
|
||
<el-select v-model="sarStandardsInfoEO.standNature"
|
||
placeholder="请选择标准性质"
|
||
clearable>
|
||
<el-option
|
||
v-for="item in standNatureOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
>
|
||
{{ item.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。"
|
||
prop="standState" label-width="150px" class="add-form-item">
|
||
<template slot="label">文本状态</template>
|
||
<el-select v-model="sarStandardsInfoEO.textStatus"
|
||
placeholder="请选择文本状态"
|
||
clearable>
|
||
<el-option
|
||
v-for="opt in standStateOptions"
|
||
:disabled="opt.value !== 'ZTXXYX' && opt.value !== standState && modalshowtitle !== '编辑海外标准'"
|
||
:key="opt.value"
|
||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
||
>
|
||
{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<custom-date-pick
|
||
:config="{
|
||
attrName: '发布日期',
|
||
attrField: 'issueTime'
|
||
}"
|
||
v-model="sarStandardsInfoEO.issueTime"
|
||
:disabled="formdisableflag"
|
||
></custom-date-pick>
|
||
<!--</el-form-item>-->
|
||
<el-form-item
|
||
prop="isRelateAccess"
|
||
label-width="150px"
|
||
class="add-form-item"
|
||
>
|
||
<template slot="label">是否纳入认证清单</template>
|
||
<el-select v-model="sarStandardsInfoEO.isRelateAccess" @change="isRegulationsChange">
|
||
<el-option value="1" label="是" key="1"></el-option>
|
||
<el-option value="2" label="否" key="2"></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<!-- <el-form-item-->
|
||
<!-- prop="standSystem"-->
|
||
<!-- label-width="150px"-->
|
||
<!-- class="add-form-item"-->
|
||
<!-- >-->
|
||
<!-- <template slot="label">标准体系</template>-->
|
||
<!-- <tree-select-->
|
||
<!-- :data="standSystemOptions"-->
|
||
<!-- :defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"-->
|
||
<!-- :nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select>-->
|
||
<!-- </el-form-item>-->
|
||
</template>
|
||
<template v-for="field in displayLocation.child">
|
||
<template v-if="field.attrField === 'EOPSSRQ'">
|
||
<custom-eop-date-pick
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-eop-date-pick>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'SVPPS'">
|
||
<custom-SVPPS
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-SVPPS>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'XCXSSRQ' || field.attrField === 'ZCCSSRQ'">
|
||
<custom-date-pick
|
||
v-if="field.attrField !== 'ZCCSSRQGJ' && field.attrField !== 'XCXSSRQGJ' && field.attrField !== 'SSRQGJ' "
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-date-pick>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'DATE_PIC_OPTS'">
|
||
<custom-date-pick-group
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-date-pick-group>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'INPUT_STR' && field.attrField !== 'XGLC' && field.attrField !== 'CHJL'">
|
||
<template v-if="field.attrField === 'DTBJH' || field.attrField === 'YYBJ' || field.attrField === 'BYYBJ' || field.attrField === 'CBBH' || field.attrField === 'DXBZ'">
|
||
<custom-input-for-standards
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
:class="field.attrField === 'BYYBJ' ? 'classDisplay' : ''"
|
||
:data-source-from="field.attrField === 'CBBH' ? 'ALL' : 'INLAND'"
|
||
:data-source="field.attrField === 'CBBH'"
|
||
></custom-input-for-standards>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'CYCVPPSBM'">
|
||
<el-form-item
|
||
prop="CYCVPPSBM"
|
||
label-width="150px"
|
||
class="add-form-item"
|
||
>
|
||
<template slot="label">关联模块--乘用车VPPS编码</template>
|
||
<el-input v-model="sarStandardsInfoEO.CYCVPPSBM" placeholder="选择乘用车VPPS编码" @click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', sarStandardsInfoEO.cycvppsbm)"></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'KCCVPPSBM'">
|
||
<el-form-item
|
||
prop="KCCVPPSBM"
|
||
label-width="150px"
|
||
class="add-form-item"
|
||
>
|
||
<template slot="label">关联模块--卡车VPPS编码</template>
|
||
<el-input v-model="sarStandardsInfoEO.KCCVPPSBM" placeholder="选择卡车VPPS编码" @click.native="choiceZRR3('kccvppsbm', '卡车VPPS', sarStandardsInfoEO.kccvppsbm)"></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'DYBXH'">
|
||
<el-form-item
|
||
prop="DYBXH"
|
||
label-width="150px"
|
||
class="add-form-item"
|
||
>
|
||
<template slot="label">模块结构单元变型号</template>
|
||
<el-input v-model="sarStandardsInfoEO.DYBXH" placeholder="选择模块结构单元变型号" @click.native="choiceZRR4('dybxh', '模块结构单元', sarStandardsInfoEO.dybxh)"></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'CYCVPPSCN'">
|
||
<el-form-item label="关联模块--乘用车vpps中文名称" label-width="150px" prop="CYCVPPSCN" class="add-form-item">
|
||
<el-input
|
||
v-model="sarStandardsInfoEO.CYCVPPSCN" disabled
|
||
clearable
|
||
></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'KCCVPPSCN'">
|
||
<el-form-item label="关联模块--卡车vpps中文名称" label-width="150px" prop="KCCVPPSCN" class="add-form-item">
|
||
<el-input
|
||
v-model="sarStandardsInfoEO.KCCVPPSCN" disabled
|
||
clearable
|
||
></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'DYMC'">
|
||
<el-form-item label="模块结构单元名称" label-width="150px" prop="DYMC" class="add-form-item">
|
||
<el-input
|
||
v-model="sarStandardsInfoEO.DYMC" disabled
|
||
clearable
|
||
></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else>
|
||
<custom-input
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
v-if="field.attrField !== 'BDTBZBH'"
|
||
></custom-input>
|
||
</template>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'INPUT_NUM'">
|
||
<custom-input-num
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-input-num>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'DATE_PICKER'">
|
||
<custom-date-pick
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:class="field.attrName === '在产车实施日期(国家)' || field.attrName === '新车型实施日期(国家)'|| field.attrName === '实施日期(国际)' ? 'classDisplay' : ''"
|
||
:disabled="formdisableflag"
|
||
></custom-date-pick>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'FILE'">
|
||
<custom-file
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
@fileSuccess="fileSuccess"
|
||
></custom-file>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'TEXTAREA'">
|
||
<custom-textarea
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-textarea>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'SEL_OPTION'">
|
||
<custom-select
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-select>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'SEL_OPTS' && field.attrField !== 'ZRLX'">
|
||
<custom-select-array
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarStandardsInfoEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-select-array>
|
||
</template>
|
||
</template>
|
||
</template>
|
||
</el-form>
|
||
</div>
|
||
<!-- 提交/取消-->
|
||
<div class="demo-drawer-footer">
|
||
<el-button v-show="modalshowtitle === '新增海外标准'" type="primary" size="mini" class="common-button-primary" icon="el-icon-check" @click="saveBt">
|
||
保存
|
||
</el-button>
|
||
<el-button size="mini" class="common-button-primary" icon="el-icon-check" type="primary" @click="saveOrUpdateStands" :loading="isSubmit">
|
||
提交
|
||
</el-button>
|
||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="resetForm">取消</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 法规解读标准引用-->
|
||
<el-dialog title="法规解读标准引用" :visible.sync="lawsExplainQuoteModel" :close-on-click-modal="false" width="875px">
|
||
<el-form :modal="lawsExplainQuoteForm" :inline="true" class="label-input-form">
|
||
<el-formItem label="标准号/名称" class="serch-form-item">
|
||
<el-input v-model="lawsExplainQuoteForm.standNumber" placeholder="根据标准号/名称查找" clearable :maxlength="100"
|
||
@click.native="getDomesticStandardTableBtn(standCommonlySearch)"></el-input>
|
||
</el-formItem>
|
||
<el-button
|
||
:loading="searching"
|
||
icon="el-icon-search"
|
||
type="primary"
|
||
size="mini"
|
||
class="newSearchBtn"
|
||
@click="getLawsExplainQuoteRow(1,lawsExplainQuoteForm.pageSize, 'search')">
|
||
</el-button>
|
||
<el-button type="primary" @click="getLawsExplainQuoteRow('')" size="mini" class="searchAngNewBtn">清空查询
|
||
</el-button>
|
||
</el-form>
|
||
<el-table
|
||
ref="selections"
|
||
:data="lawsExplainQuoteRow"
|
||
:loading="lawsExplainQuoteFormLoading"
|
||
tooltip-effect="dark"
|
||
style="width: 100%;height:300px; overflow-y: auto;overflow-x: hidden;"
|
||
border
|
||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||
@selection-change="selectLawsExplainQuoteRowChange"
|
||
@select="(selection, row) =>selectLawsExplainQuoteRowSelect(selection,'select', row )"
|
||
@select-all="(selection) =>selectLawsExplainQuoteRowSelect(selection, 'all')">
|
||
<el-table-column
|
||
type="selection"
|
||
width="55"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standNumber"
|
||
label="标准号"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standName"
|
||
label="标准名称"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="issueTime"
|
||
label="发布日期"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="putTime"
|
||
label="实施日期"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="textStatus"
|
||
label="文本状态"
|
||
width="130"
|
||
align="center">
|
||
<template slot-scope="scope">
|
||
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
<!--分页-->
|
||
<pagination
|
||
:page="page"
|
||
:total="total"
|
||
@pageChange="pageChangeLaws"
|
||
@pageSizeChange="pageSizeChangeLaws"></pagination>
|
||
<div slot="footer" class="dialog-footer">
|
||
<el-button type="primary" size="mini" @click="canle">取消</el-button>
|
||
<el-button type="primary" size="mini" @click="lawsExplainQuoteModelBt">确定</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 试验项目-->
|
||
<el-dialog title="试验项目" :visible.sync="testItemsModel" :close-on-click-modal="false" width="1138px">
|
||
<el-form :modal="testItemsForm" :inline="true" class="label-input-form">
|
||
<el-formItem label="试验项目名称" class="serch-form-item">
|
||
<el-input v-model="testItemsForm.testItemName" placeholder="按试验项目名称查找" :maxlength="100" clearable
|
||
@keyup.enter.native="selectTestItemClassBtn"/>
|
||
</el-formItem>
|
||
<el-button class="common-button-primary" type="primary" icon="el-icon-search" size="mini" @click="getTestItemRow(1)"></el-button>
|
||
<el-button class="common-button-default" icon="el-icon-refresh-left" @click="getTestItemRow('')" size="mini"></el-button>
|
||
</el-form>
|
||
<el-table
|
||
ref="selections"
|
||
:data="testItemTableList"
|
||
:loading="testItemSearching"
|
||
tooltip-effect="dark"
|
||
style="width: 100%;height:300px; overflow-y: auto;overflow-x: hidden;"
|
||
border
|
||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||
@selection-change="selectTestItemRowChange"
|
||
@select="(selection, row) =>selectTestItemRowSelect(selection,'select', row )"
|
||
@select-all="(selection) =>selectTestItemRowSelect(selection, 'all')">
|
||
<el-table-column
|
||
type="selection"
|
||
width="55"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="testItemCode"
|
||
label="项目代码"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="testObj"
|
||
label="试验对象"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="testItemName"
|
||
label="试验项目名称"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="authTypeShow"
|
||
label="适用认证"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standCode"
|
||
label="标准号"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standName"
|
||
label="标准名称"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="creationUser"
|
||
label="创建人"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="creationTime"
|
||
label="创建日期"
|
||
width="130"
|
||
align="center">
|
||
</el-table-column>
|
||
</el-table>
|
||
<pagination
|
||
:page="pageItems"
|
||
:total="totalItems"
|
||
@pageChange="pageChangeItems"
|
||
@pageSizeChange="pageSizeChangeItems"></pagination>
|
||
<div slot="footer" class="demo-drawer-footer">
|
||
<el-button size="mini" class="common-button-primary" icon="el-icon-check" @click="testItemsModel=false">取消
|
||
</el-button>
|
||
<el-button type="primary" size="mini" class="common-button-default" icon="el-icon-close" @click="testItemsModellBt">
|
||
提交
|
||
</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 导入模态窗----失败有弹框 -->
|
||
<el-dialog width="400px" :visible.sync="importModalshowflag" title="导入文件">
|
||
<el-upload
|
||
multiple
|
||
drag
|
||
:action="importExcelUrl"
|
||
ref="importfile"
|
||
name="file"
|
||
accept=".ZIP, .zip"
|
||
:on-progress="onProgress"
|
||
:before-upload="beforeUploadTop"
|
||
:on-success="importFileSuccess"
|
||
:show-file-list="false">
|
||
<i class="el-icon-upload"></i>
|
||
<div class="el-upload__text">点击或拖拽上传文件</div>
|
||
</el-upload>
|
||
</el-dialog>
|
||
<!-- 配置标准 -->
|
||
<el-drawer
|
||
title="配置标准"
|
||
:wrapperClosable="false"
|
||
:visible.sync="configStandFlag"
|
||
size="1200px"
|
||
>
|
||
<div class="demo-drawer-content">
|
||
<div class="search-area">
|
||
<div class="left">
|
||
<el-form :model="sarConfigStandSearch" :inline="true" class="label-input-form">
|
||
<el-formItem label="标准类别" prop="standSort" class="search-item">
|
||
<el-select v-model="sarConfigStandSearch.standSort" placeholder="根据标准类别查找"
|
||
@keyup.enter.native="searchConfiguraStand" clearable>
|
||
<el-option v-for="opt in standSortOptions" :value="opt.value === undefined ? '' :opt.value" :key="opt.value" :label="opt.label">
|
||
{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-formItem>
|
||
<el-formItem label="标准号/名称" prop="standNumber" class="search-item">
|
||
<el-input v-model="sarConfigStandSearch.standNumber" @keyup.enter.native="searchConfiguraStand"
|
||
placeholder="根据标准号/名称查找" clearable/>
|
||
</el-formItem>
|
||
<el-form-item label="" class="search-item btn-box">
|
||
<el-button class="common-button-primary" type="primary" icon="el-icon-search" size="mini" @click="selectConfiguraStand"></el-button>
|
||
</el-form-item>
|
||
<el-form-item label="" class="search-item btn-box">
|
||
<el-button class="common-button-default" icon="el-icon-refresh-left" @click="clearAllSearch(3)" size="mini"></el-button>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
</div>
|
||
<div class="drawer-content">
|
||
<el-table
|
||
ref="selection"
|
||
:data="configStandList"
|
||
tooltip-effect="dark"
|
||
border
|
||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||
fontWeight: 'bold', height: '48px'}"
|
||
height="100%"
|
||
@selection-change="selectConfigStandChange">
|
||
<el-table-column
|
||
type="selection"
|
||
width="55"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standNumber"
|
||
label="标准号"
|
||
align="center"
|
||
>
|
||
<template slot-scope="scope">
|
||
<span>{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standName"
|
||
label="标准名称"
|
||
width="200"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="issueTime"
|
||
label="发布日期"
|
||
sortable
|
||
width="200"
|
||
align="center">
|
||
<template slot-scope="scope">
|
||
{{ scope.row.issueTime || '' }}
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="XCXSSRQ"
|
||
label="实施日期"
|
||
sortable
|
||
width="200"
|
||
align="center">
|
||
<template slot-scope="scope">
|
||
<span>{{ formatText(scope.row.XCXSSRQ) }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="textStatus"
|
||
label="文本状态"
|
||
width="200"
|
||
align="center">
|
||
<template slot-scope="scope">
|
||
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
</div>
|
||
<loading :loading="loading">加载中...</loading>
|
||
<pagination
|
||
style="position: static;"
|
||
:page="configPage"
|
||
:total="configTotal"
|
||
@pageChange="configuraPageChange"
|
||
@pageSizeChange="configuraPageSizeChange"></pagination>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" :loading="isSubmit" @click="saveConfigStand">
|
||
提交
|
||
</el-button>
|
||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="cancelConfigStand">取消
|
||
</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 树---新增二级菜单模态窗 -->
|
||
<el-dialog
|
||
:visible.sync="menuModalFlag"
|
||
width="500px"
|
||
:title="menuModalTitle"
|
||
destroy-on-close
|
||
:close-on-click-modal="false"
|
||
@closed="isSubmit = false"
|
||
>
|
||
<el-form ref="addMenuForm" :model="sarMenu" :rules="sarMenuRules" class="label-input-form" label-width="130px">
|
||
<el-formItem label="名称" prop="menuName" class="add-form-item">
|
||
<el-input v-model="sarMenu.menuName" placeholder="请输入名称"></el-input>
|
||
</el-formItem>
|
||
<el-formItem label="序号" prop="displaySeq" class="add-form-item">
|
||
<el-input v-model.number="sarMenu.displaySeq" placeholder="只允许输入正整数" maxlength="2"></el-input>
|
||
</el-formItem>
|
||
<el-formItem label="备注" prop="remarks" class="add-form-item">
|
||
<el-input v-model="sarMenu.remarks" placeholder="请输入备注信息"></el-input>
|
||
</el-formItem>
|
||
</el-form>
|
||
<div slot="footer" class="demo-drawer-footer">
|
||
<el-button
|
||
type="primary"
|
||
size="mini"
|
||
class="common-button-primary"
|
||
icon="el-icon-check"
|
||
:loading="isSubmit"
|
||
@click="newMenu"
|
||
>提交
|
||
</el-button>
|
||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="resetTreeDialog">取消
|
||
</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 分享 -->
|
||
<el-drawer title="分享标准" :visible.sync="drawerModal" size="300px" :styles="drawerModalstyles" @close="treeCancel">
|
||
<div class="demo-drawer-content">
|
||
<dept-tree treeDivId="drawerModalTree"
|
||
ref="drawerModalTree"
|
||
@treeOnCheck="(checkedList) => treeOnCheck(checkedList)"
|
||
allDept
|
||
showUser
|
||
check-enable
|
||
:editable="false"
|
||
style="padding: 0 15px">
|
||
</dept-tree>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check" @click="shareStandardBt">
|
||
提交
|
||
</el-button>
|
||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="treeCancel">取消</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 新建抽屉 -->
|
||
<el-drawer
|
||
:wrapperClosable="false"
|
||
:title="productTitle"
|
||
:visible.sync="productModal"
|
||
size="800px"
|
||
:before-close="closeDrawer"
|
||
label-width="130px"
|
||
>
|
||
<div class="demo-drawer-content">
|
||
<el-form :model="productModelAdd"
|
||
ref="productModelAdd"
|
||
:rules="productRules"
|
||
class="label-input-form"
|
||
label-width="130px">
|
||
<el-row>
|
||
<el-col>
|
||
<el-form-item label="菜单名称" prop="menuName" class="add-form-item">
|
||
<el-input v-model.trim="productModelAdd.menuName" placeholder="请输入菜单名称" clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col>
|
||
<el-form-item label="排序号" prop="displaySeq" class="add-form-item">
|
||
<el-input v-model.number="productModelAdd.displaySeq"
|
||
number
|
||
placeholder="请输入排序号"
|
||
:maxlength="4"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col>
|
||
<el-form-item v-if="modalType === 2" label="上级菜单" prop="parentIdsName" class="add-form-item">
|
||
<el-input v-model="productModelAdd.parentIdsName" disabled
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col>
|
||
<el-form-item label="描述" prop="remarks" class="add-form-item">
|
||
<el-input v-model.trim="productModelAdd.remarks"
|
||
placeholder="请输入描述"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
</el-form>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button
|
||
class="common-button-primary"
|
||
icon="el-icon-check"
|
||
type="primary"
|
||
@click="saveProduct('productModelAdd')">提交
|
||
</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
icon="el-icon-close"
|
||
@click="closeModal">取消
|
||
</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 组件树-->
|
||
<tree-select-new
|
||
width="500"
|
||
:lazy=true
|
||
:multiple=true
|
||
:check-strictly=true
|
||
:modalShowFlag="modalShowFlag2"
|
||
:drawerTitle="drawerTitle"
|
||
:url="url"
|
||
:urlChild="urlChild"
|
||
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
|
||
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select-new>
|
||
<tree-select-new
|
||
width="500"
|
||
:lazy=true
|
||
:multiple=true
|
||
:check-strictly=true
|
||
:modalShowFlag="modalShowFlag3"
|
||
:drawerTitle="drawerTitle"
|
||
:url="url"
|
||
:urlChild="urlChild"
|
||
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
|
||
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs"></tree-select-new>
|
||
<tree-select-new
|
||
width="500"
|
||
:lazy=true
|
||
:multiple=true
|
||
:check-strictly=true
|
||
:modalShowFlag="modalShowFlag4"
|
||
:drawerTitle="drawerTitle"
|
||
:url="url"
|
||
:urlChild="urlChild"
|
||
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
|
||
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel"></tree-select-new>
|
||
<!-- 导入失败 -->
|
||
<el-dialog :visible.sync="importFailed" :close-on-click-modal="false" 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 type="primary" size="mini" class="common-button-default" icon="el-icon-check" @click="importFailed = false">
|
||
确认
|
||
</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
</div>
|
||
<!-- 分享 全部选人 -->
|
||
<org-table
|
||
:visible.sync="visibleOrgTable"
|
||
title="分享人员"
|
||
dialog-model
|
||
:config="{
|
||
value: orgTableVal,
|
||
valueName: orgTableValName
|
||
}"
|
||
@confirm="isTreeOk"
|
||
></org-table>
|
||
<loading style="z-index: 2099;" :loading="exportLoading">导入中...</loading>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
import CustomInputForStandards from '@/components/CustomFormComponents/InputForStandardsForForeign'
|
||
import CustomInput from '@/components/CustomFormComponents/Input'
|
||
import CustomTextarea from '@/components/CustomFormComponents/Textarea'
|
||
import CustomSearchSelect from '@/components/CustomFormComponents/SearchSelect'
|
||
import CustomSelect from '@/components/CustomFormComponents/Select'
|
||
import CustomDatePick from '@/components/CustomFormComponents/DatePicker'
|
||
import CustomFile from '@/components/CustomFormComponents/File'
|
||
import CustomInputNum from '@/components/CustomFormComponents/InputNum'
|
||
import CustomDatePickGroup from '@/components/CustomFormComponents/DatePickerGroup'
|
||
import CustomSelectArray from '@/components/CustomFormComponents/SelectArray'
|
||
import CustomOrg from '@/components/CustomFormComponents/OrgTree'
|
||
import CustomEopDatePick from '@/components/CustomFormComponents/DatePickerWithText'
|
||
import CustomDatePickWithText, {formatText} from '@/components/CustomFormComponents/DatePickerGroupWithText'
|
||
import CustomSVPPS from '@/components/CustomFormComponents/SVPPS'
|
||
import CustomRoleTree from '@/components/CustomFormComponents/roleTree'
|
||
import CustomDatePickWithText2 from '@/components/CustomFormComponents/DatePickerWithText2'
|
||
import {interfaceUrl} from "@/sysConfig";
|
||
import TreeSelect from '@/components/treeSelect/treeSelect.vue';
|
||
import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
|
||
|
||
export default {
|
||
name: 'foreignStandardsAndRegulations',
|
||
components: {
|
||
CustomFile,
|
||
CustomInput,
|
||
CustomInputForStandards,
|
||
CustomTextarea,
|
||
CustomSearchSelect,
|
||
CustomDatePick,
|
||
CustomSelect,
|
||
CustomInputNum,
|
||
CustomDatePickGroup,
|
||
CustomSelectArray,
|
||
CustomOrg,
|
||
CustomEopDatePick,
|
||
CustomDatePickWithText,
|
||
CustomSVPPS,
|
||
CustomRoleTree,
|
||
CustomDatePickWithText2,
|
||
TreeSelect,
|
||
TreeSelectNew
|
||
},
|
||
data() {
|
||
return {
|
||
textStatusMap: {}, // 文本状态id与name对应
|
||
treeList: [],
|
||
props: {
|
||
label: 'menuName',
|
||
children: 'children'
|
||
},
|
||
defaultProps: {
|
||
children: 'children',
|
||
label: 'menuName'
|
||
},
|
||
nodeKeyCode: 'code',
|
||
nodeKeyModel: 'model',
|
||
modalShowFlag1: false, // drawer开关
|
||
modalShowFlag2: false, // drawer开关
|
||
modalShowFlag3: false, // drawer开关
|
||
modalShowFlag4: false, // drawer开关
|
||
url: '',
|
||
urlChild: '',
|
||
drawerTitle: '', //drawer标题
|
||
nodeKey: 'id',
|
||
defaultCheckedKeys1: [],
|
||
defaultCheckedKeys2: [],
|
||
defaultCheckedKeys3: [],
|
||
defaultCodeProps: {
|
||
children: 'children',
|
||
label: 'code'
|
||
},
|
||
defaultModelProps: {
|
||
children: 'children',
|
||
label: 'model'
|
||
},
|
||
busVppsOptions: [], // 车系体系架构
|
||
modelOptions: [], // 模块体系架构
|
||
productModal: false, // 模态框是否打开
|
||
modalType: '',
|
||
productTitle: '', // 模态框标题
|
||
menuTreeLoading: true,
|
||
orderBy: '',
|
||
nowOrder: '',
|
||
visibleOrgTable: false,
|
||
orgTableVal: '',
|
||
orgTableValName: '',
|
||
exportLoading: false,
|
||
twoOptions: [],
|
||
threeOptions: [],
|
||
sarType: 'FOREIGN_STAND',
|
||
// 收藏标准
|
||
personCollect: {
|
||
collectResId: '',
|
||
collectTitle: '',
|
||
collectType: ''
|
||
},
|
||
sarStandardsSearch: {
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
standType: 'INLAND',
|
||
validFlag: '0',
|
||
menuId: '',
|
||
country: '',
|
||
standNumber: '',//标准号
|
||
standName: '',//标准名称
|
||
standEnName: '',//标准英文名称
|
||
standSort: '', // 标准类别
|
||
replaceStandNum: '',//代替标准号
|
||
replacedStandNum: '',// 被代替标准号
|
||
standYear: '',//标准年份
|
||
issueTime: '',//标准发布时间
|
||
applyArctic: '',//适用车型
|
||
standState: '',
|
||
standNature: '',//标准性质
|
||
synopsis: '', // 内容摘要
|
||
textStatus: ''//文本状态
|
||
},
|
||
//高级搜索映射
|
||
advanceSearchMapping: {
|
||
txlbOption: '', //标准体系
|
||
GXHBQ: '', //标签
|
||
CYSD: '', //我司参与深度
|
||
GKDW: '', //归口管理部门
|
||
SSRQ: '',//实施日期
|
||
XCXSSRQ: ''//新车型实施日期
|
||
, ZCCSSRQ: ''//在产车实施日期
|
||
, QCDW: ''//起草单位
|
||
, NYLX: ''//能源类型
|
||
, SYRZ: ''//适用认证
|
||
, ZRGCS: ''//责任工程师
|
||
, CBBH: ''//采标编号
|
||
, CBCD: ''//采标程度
|
||
, YYBJ: ''//引用标准
|
||
, BYYBJ: ''//被引用标准
|
||
, TXLB: ''//体系类别
|
||
},
|
||
|
||
// 分页查询过程中用到的对象
|
||
loading: false,
|
||
isCollapse: true,
|
||
sideClose: false, // 边栏收展状态
|
||
isAdvancedSearch: false, // 高级检索窗口是否打开
|
||
replaceStandNumModel: false,
|
||
lawsExplainQuoteModel: false,
|
||
page: 1,
|
||
total: 0,
|
||
rows: 10,
|
||
replacePage: 1,
|
||
replaceTotal: 0,
|
||
replaceRows: 10,
|
||
pageItems: 1,
|
||
totalItems: 0,
|
||
itemsRows: 10,
|
||
configPage: 1,
|
||
configTotal: 0,
|
||
configRows: 10,
|
||
zNodesS: [], // 责任部门树结构
|
||
zNodesSItem: [],
|
||
searchInlandNodes: [], // 条目部门选择树形结构
|
||
// 一般检索搜索
|
||
standCommonlySearch: {
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
standType: 'FOREIGN',
|
||
validFlag: '0',
|
||
standSort: '',
|
||
standNumber: '',
|
||
menuId: '',
|
||
sarStandardsSearch: ''
|
||
},
|
||
searching: false,
|
||
stahndinfoList: [],
|
||
tableFlag: '',
|
||
countryOptions: [],
|
||
regionOptions: [], // 区域
|
||
standSortOptions: [], // 标准类别下拉框
|
||
standSystemOptions: [], // 标准体系下拉框
|
||
sycpxOptions: [], // 适用产品线下拉框
|
||
zrbmOptions: [], // 责任部门下拉框
|
||
zrgcsOptions: [], // 责任工程师下拉框
|
||
txlbOptions: [], // 体系类别下拉框
|
||
standSortConfigOptions: [], // 标准类别下拉框
|
||
applyArcticOptions: [], // 适用车型下拉框
|
||
standStateOptions: [], // 标准状态下拉框
|
||
standNatureOptions: [], // 标准性质下拉框
|
||
adoptExtentOptions: [], // 采标程度下拉框
|
||
emergyKindOptions: [], // 能源种类下拉框
|
||
applyAuthOptions: [], // 适用认证下拉框
|
||
categoryOptions: [], // 所属类别下拉框
|
||
categoryConfigOptions: [], // 所属类别下拉框
|
||
assemClassOptions: [], // 总成分类下拉框
|
||
standAttributeList: [],
|
||
qcdwOptions: [],//起草单位下拉框
|
||
cysdOptions: [], //我司参与深度下拉框
|
||
nylxOptions: [],//能源类型下拉框
|
||
syrzOptions: [],//适用认证下拉框
|
||
gkglbmOptions: [],//归口管理部门下拉框
|
||
// 树形结构
|
||
// tree function
|
||
MoveTest: '',
|
||
// tree setting
|
||
setting: '',
|
||
// tree zNodes
|
||
zNodes: [],
|
||
parentNode: {}, // 记录分类最外层的树结构
|
||
// ztree 拖拽标志
|
||
dragFlag: false,
|
||
defaultSarStandardsInfoEO: {
|
||
id: '',
|
||
standType: 'FOREIGN', // 标准分类
|
||
country: '',
|
||
isRelateAccess: '', // 是否添加进标准法规清单
|
||
standSort: '',
|
||
applyArctic: '',
|
||
standNumber: '',
|
||
standYear: '',
|
||
standName: '',
|
||
standEnName: '',
|
||
standState: '',
|
||
standNature: '',
|
||
replaceStandNum: '',
|
||
replacedStandNum: '',
|
||
interStandNum: '',
|
||
adoptExtent: '',
|
||
emergyKind: '',
|
||
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: '',
|
||
menuId: '',
|
||
upReplaceNumFlag: 0, // 记录是否修改了代替政策编号
|
||
upNumFlag: 0,
|
||
orgName: '', // 部门名称
|
||
registerPutTime: '' // 注册登记车实施日期
|
||
}, // 标准新增过程中用到的对象
|
||
standClass: [], // 标准类别
|
||
sarStandardsInfoEO: {
|
||
FOName: '',
|
||
regionShow: '亚洲',
|
||
region: '2T8PFTSYE7',
|
||
issueUnit: '', // 发布部门
|
||
assemClass: '',
|
||
isRelateAccess: '1', // 是否添加进标准法规清单
|
||
id: '',
|
||
standType: 'FOREIGN', // 标准分类
|
||
country: '',
|
||
countryArr: '',
|
||
standSort: '',
|
||
applyArctic: '',
|
||
standNumber: '',
|
||
standYear: '',
|
||
standName: '',
|
||
standEnName: '',
|
||
standState: '',
|
||
standNature: '',
|
||
replaceStandNum: '',
|
||
replaceStandNumId: '',
|
||
// replaceStandNumCope: '',
|
||
replaceStandNumList: [],
|
||
replacedStandNum: '',
|
||
interStandNum: '',
|
||
adoptExtent: '',
|
||
emergyKind: '',
|
||
applyAuth: '',
|
||
issueTime: '',
|
||
putTime: '',
|
||
newcarPutTime: '',
|
||
productPutTime: '',
|
||
newproductPutTime: '',
|
||
draftingUnit: '',
|
||
draftUser: '',
|
||
standFile: '',
|
||
standModifyFile: '',
|
||
draftFile: '',
|
||
opinionFile: '',
|
||
sentScreenFile: '',
|
||
approvalFile: '',
|
||
relevanceFile: '',
|
||
standFileList: [],
|
||
standModifyFileList: [],
|
||
draftFileList: [],
|
||
wtoPublicFileList: [],
|
||
finalizeFileList: [],
|
||
opinionFileList: [],
|
||
sentScreenFileList: [],
|
||
approvalFileList: [],
|
||
relevanceFileList: [],
|
||
firstDraftFileList: [],
|
||
lawsExplainFileList: [],
|
||
tags: '',
|
||
synopsis: '',
|
||
responsibleUnit: '',
|
||
category: '',
|
||
remark: '',
|
||
menuId: '',
|
||
upReplaceNumFlag: 0, // 记录是否修改了代替政策编号
|
||
upNumFlag: 0,
|
||
orgName: '', // 部门名称
|
||
registerPutTime: '', // 注册登记车实施日期
|
||
standExpirationTime: '', // 标准失效日期
|
||
issueTextTime: '', // 标准发布文本获得时间(印刷版)
|
||
revisionProjectNo: '', // 标准修订立项号
|
||
recieveConfirmResult: '', // 已收到以下部门适法性确认结果
|
||
trialFirstCar: '', // 试验首款车
|
||
domainAssume: '', // 领域担当
|
||
budgetBenchmark: '', // 预算基准
|
||
planCompletionTime: '', // 制修订计划完成时间
|
||
enterNextStageTime: '', // 预测进入下制修订阶段时间
|
||
firstDraftFile: '', // 初稿
|
||
standAttribute: '', // 法规种类
|
||
isCertiStand: '', // 是否为认证标准
|
||
isNoticeApply: '', // 是否公告适用
|
||
isNationRing: '',
|
||
isNorthRing: '', // 是否北环适用
|
||
isCccApply: '', // 是否CCC适用
|
||
isEnergyStand: '', // 是否为新能源专向标准
|
||
issueTimeCm: '', // 发布日期是否明确
|
||
newcarPutTimeCm: '', // 新车型实施日期 是否明确
|
||
productPutTimeCm: '', // 在产车实施日期 是否明确
|
||
isQuestion: '', // 是否结题
|
||
draftState: '', // 参与起草情况
|
||
reviseBasis: '', // 修订依据
|
||
unProjectTime: '', // 未立项—获稿时间
|
||
projectTime: '', // 立项—获稿时间
|
||
estimatedNextTime: '', // 预计进入下一阶段时间
|
||
finalizeTime: '', // 结题时间
|
||
wtoPublicFile: '',
|
||
finalizeFile: '', // 结题附件
|
||
noticeCertPutTime: '',
|
||
cccCertPutTime: '',
|
||
nationCertPutTime: '',
|
||
northCertPutTime: '',
|
||
noticeProductPutTime: '',
|
||
cccProductPutTime: '',
|
||
nationProductPutTime: '',
|
||
northProductPutTime: '',
|
||
lawsExplainText: '',
|
||
lawsExplainKeyword: '',
|
||
lawsExplainFile: '',
|
||
lawsExplainQuote: '',
|
||
testItems: '',
|
||
lawsExplainQuoteList: [],
|
||
testItemsList: [],
|
||
firstDraftFileTime: '',
|
||
firstDraftFileFeedback: '',
|
||
wtoPublicFileTime: '',
|
||
wtoPublicFileFeedback: '',
|
||
opinionFileTime: '',
|
||
opinionFileFeedback: '',
|
||
sentScreenFileTime: '',
|
||
sentScreenFileFeedback: '',
|
||
approvalFileTime: '',
|
||
approvalFileFeedback: '',
|
||
certPutTimeList: [],
|
||
CYCVPPSBM: '',
|
||
CYCVPPSCN: '',
|
||
KCCVPPSBM: '',
|
||
KCCVPPSCN: '',
|
||
DYBXH: '',
|
||
DYMC: '',
|
||
CYSD: '',
|
||
CLLX: '',
|
||
NYLX: '',
|
||
SYCPX: '',
|
||
SYRZ: '',
|
||
ZRBM: '',
|
||
ZRGCS: '',
|
||
WSSMR: '',
|
||
TXLB: '',
|
||
}, // 标准新增过程中用到的对象
|
||
currentFileList: '', // 当前操作的是哪个FormItem的上传
|
||
isList: [
|
||
{
|
||
label: '是',
|
||
value: '1'
|
||
},
|
||
{
|
||
label: '否',
|
||
value: '2'
|
||
}
|
||
],
|
||
// 导出文件模态框控制,和文件名称
|
||
saveExportType: '',
|
||
exportModelFlag: false,
|
||
exportName: '',
|
||
standType: 'FOREIGN',
|
||
selectedList: [], // 标准中选中的数据
|
||
modalshowflag: false,
|
||
standItemEO: {
|
||
id: '',
|
||
standId: '',
|
||
itemsNum: '',
|
||
itemsName: '',
|
||
parts: '',
|
||
tackTime: '',
|
||
applyArctic: '', // 试用车型
|
||
energyKind: '', // 能源种类
|
||
responsibleUnit: '',
|
||
remarks: '',
|
||
orgName: ''
|
||
}, // 标准条目新增过程中用到对象
|
||
menuModalTitle: '',
|
||
menuModalFlag: false,
|
||
deleteMenuModal: false,
|
||
// 规范
|
||
productRules: {
|
||
menuName: [
|
||
{required: true, message: '一级菜单不能为空', trigger: 'blur'},
|
||
{type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'}
|
||
],
|
||
displaySeq: [
|
||
{type: 'number', required: true, message: '排序号不能为空且为正整数', trigger: 'blur'},
|
||
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
|
||
],
|
||
remarks: [
|
||
{type: 'string', max: 500, message: '最多输入500位', trigger: 'blur'}
|
||
],
|
||
dicTypeName: [
|
||
{required: true, message: '选项不能为空', trigger: 'blur'},
|
||
{type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'}
|
||
],
|
||
showIndex: [
|
||
{type: 'number', required: true, message: '排序号不能为空且为正整数', trigger: 'blur'},
|
||
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
|
||
],
|
||
describes: [
|
||
{type: 'string', max: 500, message: '最多输入500位', trigger: 'blur'}
|
||
]
|
||
},
|
||
productModelAdd: {
|
||
id: "",
|
||
sorDivide: "FOREIGN_STAND",
|
||
menuName: "",
|
||
parentId: null,
|
||
parentIds: null,
|
||
parentIdsName: "",
|
||
displaySeq: "",
|
||
validFlag: "",
|
||
creationTime: "",
|
||
modifyTime: "",
|
||
remarks: "",
|
||
children: [],
|
||
// 模态框信息
|
||
dicTypeName: '',
|
||
showIndex: '',
|
||
// 描述
|
||
describes: '',
|
||
// 唯一辨识
|
||
dicId: ""
|
||
},
|
||
sarMenu: {
|
||
id: '',
|
||
parentId: '',
|
||
menuName: '',
|
||
sorDivide: 'FOREIGN_STAND',
|
||
displaySeq: 0,
|
||
parentIds: '',
|
||
remarks: ''
|
||
}, // 二级菜单对象,主要用于新增和修改
|
||
testItemsModel: false,
|
||
formdisableflag: false, // 查看标准不可编辑
|
||
modalshowtitle: '新增海外标准',
|
||
addOrUPdateFlag: 1, // 新增:1, 修改:2
|
||
itemAddOrUPdateFlag: 1, // 新增:1, 修改:2
|
||
menuAddOrUpdateFlag: 1, // 新增:1, 修改:2
|
||
standNumFlag: 1, // 新增:1, 修改:2
|
||
sarMenuRules: {
|
||
menuName: [
|
||
{required: true, message: '目录名称不能为空', trigger: 'blur'},
|
||
{type: 'string', max: 100, message: '目录名称不能超过100个字符', trigger: 'change'}
|
||
// {type: 'string', validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
],
|
||
displaySeq: [
|
||
{type: 'number', required: true, message: '序号不能为空且为正整数', trigger: 'change'},
|
||
{type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'}
|
||
],
|
||
remarks: [
|
||
{type: 'string', max: 100, message: '备注不能超过100个字符', trigger: 'change'}
|
||
]
|
||
},
|
||
defaultAddFormFieldRules: {
|
||
standSort: [
|
||
{required: true, message: '标准类别不能为空', trigger: 'change'}
|
||
],
|
||
standNumber: [
|
||
{required: true, type: 'string', message: '标准编号不能为空', trigger: 'change'},
|
||
{type: 'string', max: 100, message: '标准编号不能超过100个字符', trigger: 'change'},
|
||
{type: 'string', validator: this.verify.validateStandardItem, trigger: 'change'}
|
||
],
|
||
synopsis: [
|
||
{type: 'string', max: 1000, message: '文本说明不能超过1000个字符', trigger: 'change'}
|
||
],
|
||
standYear: [
|
||
{required: true, message: '标准年份不能为空', trigger: 'change'},
|
||
{validator: this.verify.testNumberCode, trigger: 'change'},
|
||
{type: 'string', max: 100, message: '标准年份不能超过100个字符', trigger: 'change'}
|
||
],
|
||
standName: [
|
||
{required: true, message: '中文名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 500, message: '中文名称不能超过500个字符', trigger: 'change'}
|
||
],
|
||
standEnName: [
|
||
{required: true, message: '英文名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change'}
|
||
// {validator: this.verify.valiateEnName, trigger: 'blur'}
|
||
],
|
||
textStatus: [
|
||
{required: true, message: '文本状态不能为空', trigger: 'change'}
|
||
],
|
||
replaceStandNum: [
|
||
{type: 'string', max: 100, message: '代替标准编号不能超过100个字符', trigger: 'change'}
|
||
],
|
||
isRelateAccess: [
|
||
{required: false, message: '重要度不能为空', trigger: 'change'}
|
||
],
|
||
issueTime: [
|
||
{required: true, message: '发布日期不能为空', trigger: 'change'}
|
||
]
|
||
},
|
||
sarStandardsInfoRules: {
|
||
standSort: [
|
||
{required: true, message: '标准类别不能为空', trigger: 'change'}
|
||
],
|
||
standNumber: [
|
||
{required: true, type: 'string', message: '标准编号不能为空', trigger: 'change'},
|
||
{type: 'string', max: 100, message: '标准编号不能超过100个字符', trigger: 'change'},
|
||
{type: 'string', validator: this.verify.validateStandardItem, trigger: 'change'}
|
||
],
|
||
standYear: [
|
||
// {required: true, message: '标准年份/系列不能为空', trigger: 'change'},
|
||
{validator: this.verify.testItemCode, trigger: 'change'},
|
||
{type: 'string', max: 20, message: '标准年份/系列不能超过20个字符', trigger: 'change'}
|
||
],
|
||
standName: [
|
||
{required: true, message: '标准名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 500, message: '标准名称不能超过500个字符', trigger: 'change'}
|
||
],
|
||
standEnName: [
|
||
{type: 'string', max: 1000, message: '标准英文名称不能超过1000个字符', trigger: 'change'},
|
||
{validator: this.verify.valiateEnName, trigger: 'blur'}
|
||
],
|
||
synopsis: [
|
||
{type: 'string', max: 1000, message: '文本说明不能超过1000个字符', trigger: 'change'}
|
||
],
|
||
issueTime: [
|
||
{required: true, message: '发布日期不能为空', trigger: 'change'}
|
||
]
|
||
},
|
||
// 代替标准号
|
||
replaceStandNumForm: {
|
||
standNumber: '',
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
total: 0,
|
||
standType: 'FOREIGN',
|
||
quoteIdList: '',
|
||
validFlag: '0'
|
||
},
|
||
replaceStandNumRow: [],
|
||
lawsExplainQuoteRow: [],
|
||
lawsExplainQuoteFormLoading: false,
|
||
testItemTableList: [],
|
||
testItemSearching: false,
|
||
testItemModelNum: [],
|
||
replaceStandNumModelNum: [],
|
||
lawsExplainQuoteModelNum: [],
|
||
selectedListRep: [],
|
||
quoteIdList1: '',
|
||
selectedList1: [],
|
||
selectedList2: [],
|
||
testItemsForm: {
|
||
testItemName: '',
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
total: 0,
|
||
testIdList: ''
|
||
},
|
||
lawsExplainQuoteForm: {
|
||
standNumber: '',
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
total: 0,
|
||
standType: 'FOREIGN',
|
||
quoteIdList: '',
|
||
validFlag: '0'
|
||
},
|
||
// 提交状态
|
||
isSubmit: false,
|
||
selectSarMenu: {}, // 用来记录当前选中的二级菜单对象
|
||
importModalshowflag: false,
|
||
showUploadlist: true, // 导入过程中新增数据时,如果数据错误,不出现导入列表
|
||
importExcelUrl: '', // 导入EXCEL文档
|
||
modalStandItemflag: false, // 标准条目显示
|
||
importFailed: false,
|
||
importForm: {
|
||
content: ''
|
||
},
|
||
standItemSearch: {
|
||
standId: '',
|
||
responsibleUnit: '',
|
||
orgName: '',
|
||
validFlag: '0'
|
||
},
|
||
standItemList: [],
|
||
drawerWidth: 1400,
|
||
// 配置标准相关 开始
|
||
configStandFlag: false, // 控制配置标准表格是否显示
|
||
// 分享数据
|
||
resType: '',
|
||
drawerModal: false, // 分享
|
||
drawerModalstyles: {
|
||
height: 'calc(100% - 55px)',
|
||
overflow: 'auto',
|
||
paddingBottom: '53px',
|
||
position: 'static'
|
||
},
|
||
// start 分享相关的
|
||
// 消息推送保存对象
|
||
personShareEO: {
|
||
id: '',
|
||
recipientId: '',
|
||
shareUserId: '',
|
||
resType: '',
|
||
resId: '',
|
||
resUri: '',
|
||
resTitle: '',
|
||
readFlag: '',
|
||
validFlag: '',
|
||
modifyTime: '',
|
||
creationTime: ''
|
||
},
|
||
// end 分享相关的
|
||
shareStandardModal: false,
|
||
shareStandardSelect: [],
|
||
resPk: '', // 分享,消息推送过程中记录要推送的标准
|
||
sarConfigStandSearch: {
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
standType: 'FOREIGN',
|
||
validFlag: '0',
|
||
menuId: '',
|
||
country: '',
|
||
standSort: '',
|
||
standNumber: '',
|
||
standName: '',
|
||
standState: '',
|
||
standNature: '',
|
||
category: '',
|
||
issueTime: '',
|
||
applyArctic: '',
|
||
replaceStandNum: '',
|
||
synopsis: '',
|
||
// replaceStandNumCope: '',
|
||
replacedStandNum: ''
|
||
}, // 分页查询过程中用到的对象
|
||
configStandList: [],
|
||
configStandtotal: 0,
|
||
selectConfigStand: [],
|
||
collectBtn: false,
|
||
formFieldList: [],
|
||
reloadAddForm: false,
|
||
allSelectOptions: {},
|
||
formFieldListData: [], // 存储从接口取过来的原始数据
|
||
dynamicFormField: [],
|
||
displayLocation: [],
|
||
orgData: [],
|
||
delLoading: false,
|
||
standState: '',
|
||
filterText: ''
|
||
}
|
||
},
|
||
props: {},
|
||
watch: {
|
||
'sarStandardsInfoEO.country': {
|
||
handler(val) {
|
||
if (val !== '' && val !== null && typeof (val) !== 'undefined') {
|
||
if (val instanceof Array) {
|
||
this.sarStandardsInfoEO.countryArr = val.join(",");
|
||
} else {
|
||
this.sarStandardsInfoEO.countryArr = val
|
||
}
|
||
} else if (val === '') {
|
||
this.sarStandardsInfoEO.countryArr = []
|
||
}
|
||
}
|
||
},
|
||
filterText(val) {
|
||
this.$refs.tree.filter(val);
|
||
}
|
||
},
|
||
methods: {
|
||
// 海外标签过滤
|
||
filterNode(value, data) {
|
||
if (!value) return true;
|
||
return data.menuName.indexOf(value) !== -1;
|
||
},
|
||
choiceZRR2(type, title, id) {
|
||
this.drawerTitle = title
|
||
this.modalShowFlag2 = true
|
||
this.url = ''
|
||
this.urlChild = ''
|
||
this.url = "sarVppsTree/list"
|
||
this.urlChild = "sarVppsTree/childByList"
|
||
},
|
||
choiceZRR3(type, title, id) {
|
||
this.drawerTitle = title
|
||
this.modalShowFlag3 = true
|
||
this.url = ''
|
||
this.urlChild = ''
|
||
this.url = "sarVppsTree/list"
|
||
this.urlChild = "sarVppsTree/childByList"
|
||
},
|
||
choiceZRR4(type, title, id) {
|
||
this.drawerTitle = title
|
||
this.modalShowFlag4 = true
|
||
this.url = ''
|
||
this.urlChild = ''
|
||
this.url = "sarModelTree/list"
|
||
this.urlChild = "sarModelTree/childByList"
|
||
},
|
||
popoverHideBusVs(checkedIds, checkedData, isShow, isLoadChild, topId) {
|
||
debugger
|
||
if (checkedData) {
|
||
if (checkedData.length > 0) {
|
||
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.map(item => item.code).join(",")
|
||
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.map(item => item.chineseName).join(",")
|
||
} else {
|
||
this.sarStandardsInfoEO.CYCVPPSBM = checkedData.code
|
||
this.sarStandardsInfoEO.CYCVPPSCN = checkedData.chineseName
|
||
}
|
||
}
|
||
this.modalShowFlag2 = false
|
||
this.$forceUpdate()
|
||
},
|
||
popoverHideCarVs(checkedIds, checkedData, isShow, isLoadChild, topId) {
|
||
if (checkedData) {
|
||
if (checkedData.length > 0) {
|
||
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.map(item => item.code).join(",")
|
||
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.map(item => item.chineseName).join(",")
|
||
} else {
|
||
this.sarStandardsInfoEO.KCCVPPSBM = checkedData.code
|
||
this.sarStandardsInfoEO.KCCVPPSCN = checkedData.chineseName
|
||
}
|
||
}
|
||
this.modalShowFlag3 = false
|
||
this.$forceUpdate()
|
||
},
|
||
popoverHideModel(checkedIds, checkedData, isShow, isLoadChild, topId) {
|
||
if (checkedData) {
|
||
if (checkedData.length > 0) {
|
||
this.sarStandardsInfoEO.DYBXH = checkedData.map(item => item.model).join(",")
|
||
this.sarStandardsInfoEO.DYMC = checkedData.map(item => item.name).join(",")
|
||
} else {
|
||
this.sarStandardsInfoEO.DYBXH = checkedData.model
|
||
this.sarStandardsInfoEO.DYMC = checkedData.name
|
||
}
|
||
}
|
||
this.modalShowFlag4 = false
|
||
this.$forceUpdate()
|
||
},
|
||
// 将文本状态的id与name对应
|
||
setMap(data) {
|
||
data.forEach(item => {
|
||
this.$set(this.textStatusMap, item.value, item.label)
|
||
})
|
||
},
|
||
busVsFunc() {
|
||
this.$http.get('sarVppsTree/list', '', {
|
||
_this: this
|
||
}, res => {
|
||
this.busVppsOptions = res.data
|
||
})
|
||
},
|
||
modelFunc() {
|
||
this.$http.get('sarModelTree/list', '', {
|
||
_this: this
|
||
}, res => {
|
||
this.modelOptions = res.data
|
||
})
|
||
},
|
||
popoverHide(checkedIds, checkedData) {
|
||
if (checkedData) {
|
||
this.sarStandardsInfoEO.standSystem = checkedData.id
|
||
}
|
||
},
|
||
closeModal() {
|
||
this.productModal = false
|
||
this.closeDrawer()
|
||
},
|
||
// 提交新增/修改
|
||
saveProduct(name) {
|
||
this.$refs[name].validate((valid) => {
|
||
if (valid) {
|
||
if (this.modalType === 1) {
|
||
this.$http.postData('sarResource/ts-resource/add', this.productModelAdd, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.selectMenu()
|
||
this.productModal = false
|
||
this.productModelAdd = {
|
||
// 模态框信息
|
||
dicTypeName: '',
|
||
showIndex: '',
|
||
// 描述
|
||
describes: '',
|
||
// 唯一辨识
|
||
dicId: this.$route.params.id
|
||
}
|
||
} else {
|
||
this.productModal = true
|
||
}
|
||
}, e => {
|
||
})
|
||
} else if (this.modalType === 2) {
|
||
this.$http.putData('sarResource/ts-resource', this.productModelAdd, {
|
||
_this: this
|
||
}, res => {
|
||
this.selectMenu()
|
||
this.productModal = false
|
||
this.productModelAdd = {
|
||
// 模态框信息
|
||
dicTypeName: '',
|
||
showIndex: '',
|
||
// 描述
|
||
describes: '',
|
||
// 唯一辨识
|
||
dicId: this.$route.params.id
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
} else {
|
||
}
|
||
})
|
||
},
|
||
closeDrawer() {
|
||
this.$nextTick(() => {
|
||
this.$refs['productModelAdd'].resetFields()
|
||
this.productModelAdd = {
|
||
// 模态框信息
|
||
dicTypeName: '',
|
||
showIndex: '',
|
||
// 描述
|
||
describes: '',
|
||
// 唯一辨识
|
||
dicId: this.$route.params.id
|
||
}
|
||
})
|
||
this.productModal = false
|
||
},
|
||
// 树点击
|
||
isTreeOk(checkedList) {
|
||
this.shareStandardSelect = []
|
||
checkedList.map((item, index) => {
|
||
if (!item.isParent) {
|
||
this.shareStandardSelect.push(item.userId)
|
||
}
|
||
})
|
||
if (this.shareStandardSelect.length === 0) {
|
||
this.$message({
|
||
message: '请选择要分享的人!',
|
||
type: 'warning'
|
||
})
|
||
} else {
|
||
this.personShareEO.resType = 'FOREIGN_STAND'
|
||
if (this.resPk.standYear != null && this.resPk.standYear !== '') {
|
||
this.personShareEO.resTitle = this.resPk.standName + ' ( 编号:' + this.resPk.standSort + ' ' + this.resPk.standNumber + '-' + this.resPk.standYear + ' )'
|
||
} else {
|
||
this.personShareEO.resTitle = this.resPk.standName + ' ( 编号:' + this.resPk.standSort + ' ' + this.resPk.standNumber + ' )'
|
||
}
|
||
this.personShareEO.resId = this.resPk.id
|
||
this.personShareEO.recipientId = this.shareStandardSelect.join(',')
|
||
this.$http.post('/person/personShare/savePersonShare', this.personShareEO, {
|
||
_this: this
|
||
}, res => {
|
||
this.$message({
|
||
message: '标准分享成功!',
|
||
type: 'success'
|
||
})
|
||
this.shareStandardModal = false
|
||
this.visibleOrgTable = false
|
||
this.shareStandardSelect = []
|
||
// this.$refs.drawerModalTree.treeReload()
|
||
}, e => {
|
||
this.$message.error('标准分享失败!')
|
||
})
|
||
}
|
||
|
||
},
|
||
// 更多
|
||
handleCommand(command) {
|
||
switch (command[1]) {
|
||
case '收藏':
|
||
this.collectStandard(command[0])
|
||
break
|
||
case '分享':
|
||
// this.drawerModal = true
|
||
// this.$nextTick(() => {
|
||
// this.$refs.drawerModalTree.clearSearch()
|
||
// })
|
||
this.visibleOrgTable = true
|
||
this.resPk = JSON.parse(JSON.stringify(command[0]))
|
||
break
|
||
case '编辑':
|
||
this.selectStandardPro(command[0], 'edit')
|
||
break
|
||
case '删除':
|
||
this.deleteStand(1, command[0].id)
|
||
break
|
||
case '流程':
|
||
break
|
||
case '取消收藏':
|
||
this.cancelCollectStandard(command[0])
|
||
break
|
||
}
|
||
},
|
||
collectStandard(item) {
|
||
item.isSubmit = true
|
||
this.personCollect.collectResId = item.id
|
||
if (item.standYear != null && item.standYear !== '') {
|
||
this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standNumber + '-' + item.standYear + ' )'
|
||
} else {
|
||
this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standNumber + ' )'
|
||
}
|
||
this.personCollect.collectType = 'FOREIGN_STAND'
|
||
this.personCollect.id = item.id
|
||
this.personCollect.userId = this.$store.getters.userInfo.userId
|
||
this.$http.postData('person/personCollect', this.personCollect, {
|
||
_this: this
|
||
}, res => {
|
||
item.isSubmit = false
|
||
if (res.ok) {
|
||
item.collectBtn = !item.collectBtn
|
||
item.cancelCollectBtn = !item.cancelCollectBtn
|
||
item.collectId = res.data.id
|
||
// this.$message.success(res.message)
|
||
} else {
|
||
this.$message.warning(res.message)
|
||
}
|
||
}, e => {
|
||
item.isSubmit = false
|
||
})
|
||
},
|
||
// 取消收藏法规
|
||
cancelCollectStandard(item) {
|
||
item.isSubmit = true
|
||
this.$http.put('person/personCollect/updateByUserId', {
|
||
id: item.collectId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
this.$message.success('取消收藏成功')
|
||
item.isSubmit = false
|
||
item.collectBtn = !item.collectBtn
|
||
item.cancelCollectBtn = !item.cancelCollectBtn
|
||
item.collectId = ''
|
||
this.getDomesticStandardTable()
|
||
}, e => {
|
||
item.isSubmit = false
|
||
})
|
||
},
|
||
// 点击查看
|
||
handlePreview(item) {
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'OtherStandardDetails',
|
||
params: {
|
||
id: item.id,
|
||
pageType: 'FOREIGN_STAND'
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
},
|
||
clickRow(row, event, column) {
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'OtherStandardDetails',
|
||
params: {
|
||
id: row.id,
|
||
pageType: 'FOREIGN_STAND'
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
},
|
||
// 编辑标准属性
|
||
selectStandardPro(item, state) {
|
||
// this.sarStandardsInfoEO.country=JSON.parse(item.country );
|
||
|
||
// console.log(this.sarStandardsInfoEO.country);
|
||
|
||
this.addOrUPdateFlag = 2
|
||
this.modalshowtitle = '编辑海外标准'
|
||
this.modalshowflag = true
|
||
this.resolveFormFieldList(item.isRelateAccess)
|
||
this.$nextTick(() => {
|
||
Promise.all([this.queryDisplayLocation()]).then((values) => {
|
||
const [displayLocation] = values
|
||
const formFieldList = this.formFieldList
|
||
this.sarStandardsInfoEO = JSON.parse(JSON.stringify(item))
|
||
this.defaultCheckedKeys = [this.sarStandardsInfoEO.standSystem];
|
||
if (item.country !== undefined && item.country !== null && item.country !== '') {
|
||
this.sarStandardsInfoEO.country = item.country.split(",");
|
||
}
|
||
this.sarStandardsInfoEO.standSort = item.standSort
|
||
if (this.sarStandardsInfoEO.putTime != null && this.sarStandardsInfoEO.putTime !== '') {
|
||
this.sarStandardsInfoEO.putTime = this.sarStandardsInfoEO.putTime.replace(new RegExp(/-/gm), '/')
|
||
this.sarStandardsInfoEO.putTime = new Date(this.sarStandardsInfoEO.putTime)
|
||
}
|
||
Object.keys(item.attrInfoMap || {}).forEach((key) => {
|
||
item.attrInfoMap[key] = item.attrInfoMap[key] === null ? '' : item.attrInfoMap[key]
|
||
if (item.attrInfoMap[key] || item.attrInfoMap[key] === '') {
|
||
this.$set(this.sarStandardsInfoEO, key, item.attrInfoMap[key] === '[]' ? '' : item.attrInfoMap[key])
|
||
}
|
||
})
|
||
const dynamicFormField = this.sarStandardsInfoEO
|
||
|
||
this.sarStandardsInfoEO.EOPSSRQ = this.sarStandardsInfoEO.EOPSSRQ !== 'N/A' && this.sarStandardsInfoEO.EOPSSRQ !== 'TBD' ? this.$moment(this.sarStandardsInfoEO.EOPSSRQ) : this.sarStandardsInfoEO.EOPSSRQ
|
||
this.sarStandardsInfoEO['id'] = item.id
|
||
this.standState = JSON.parse(JSON.stringify(this.sarStandardsInfoEO.standState))
|
||
formFieldList.forEach((field) => {
|
||
displayLocation.forEach((location) => {
|
||
let value = dynamicFormField[field.attrField]
|
||
let valueName = ''
|
||
if (value && field.attrType === 'DATE_PICKER') {
|
||
value = this.$moment(value).format('YYYY-MM-DD')
|
||
}
|
||
if (field.attrField === 'CYCVPPSBM') {
|
||
this.defaultCheckedKeys1 = [value]
|
||
}
|
||
if (field.attrField === 'KCCVPPSBM') {
|
||
this.defaultCheckedKeys2 = [value]
|
||
}
|
||
if (field.attrField === 'DYBXH') {
|
||
this.defaultCheckedKeys3 = [value]
|
||
}
|
||
field['value'] = value
|
||
// 追加用户名称和部门名称
|
||
if (field.selVal === 'ROLELIST' || field.selVal === 'ORGLIST' || field.selVal === 'USERLIST' || field.attrField === 'SVPPS' || field.attrField === 'XMPGJS') {
|
||
let attrFieldName = field.attrField + 'Name'
|
||
valueName = dynamicFormField[attrFieldName]
|
||
}
|
||
field['valueName'] = valueName
|
||
if (field.showRegionId === location.value) {
|
||
if (!location.child) {
|
||
location['child'] = []
|
||
}
|
||
location['child'].push(field)
|
||
}
|
||
})
|
||
})
|
||
this.dynamicFormField = displayLocation
|
||
this.loading = false
|
||
})
|
||
})
|
||
},
|
||
// 查询二级菜单
|
||
selectChildMenu(row) {
|
||
this.$http.get('sarResource/ts-resource/getMenuById', {
|
||
menuId: row.id
|
||
}, {}, res => {
|
||
if (res.ok) {
|
||
if (this.modalType === 1) {
|
||
let idsName = ""
|
||
if (row.parentIds !== null) {
|
||
if (row.parentIds.indexOf(res.data.id) != -1) {
|
||
this.productModelAdd.parentIds = row.parentIds
|
||
} else {
|
||
this.productModelAdd.parentIds = row.parentIds + ',' + res.data.id
|
||
idsName = row.parentIdsName + ',' + res.data.menuName
|
||
}
|
||
} else {
|
||
this.productModelAdd.parentIds = res.data.id
|
||
idsName = res.data.menuName;
|
||
}
|
||
this.productModelAdd.parentId = res.data.id
|
||
this.productModelAdd.parentIdsName = idsName
|
||
this.$forceUpdate()
|
||
} else {
|
||
this.productModelAdd = res.data
|
||
}
|
||
}
|
||
})
|
||
},
|
||
update(data) {
|
||
this.modalType = 2
|
||
this.selectChildMenu(data)
|
||
this.productModal = true
|
||
// 取消所有的选中效果
|
||
this.productTitle = '编辑体系'
|
||
this.handleSelectAll(false)
|
||
// const newChild = { id: this.id++, label: 'testtest', children: [] };
|
||
// if (!data.children) {
|
||
// this.$set(data, 'children', []);
|
||
// }
|
||
// data.children.push(newChild);
|
||
},
|
||
|
||
append(data) {
|
||
this.modalType = 1
|
||
this.selectChildMenu(data)
|
||
this.productModal = true
|
||
this.productTitle = '新增体系'
|
||
this.productModelAdd.dicTypeCode = ''
|
||
// 取消所有的选中效果
|
||
this.handleSelectAll(false)
|
||
// const newChild = { id: this.id++, label: 'testtest', children: [] };
|
||
// if (!data.children) {
|
||
// this.$set(data, 'children', []);
|
||
// }
|
||
// data.children.push(newChild);
|
||
},
|
||
|
||
remove(node, data) {
|
||
this.$confirm('是否删除菜单?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
roundButton: true,
|
||
type: 'warning'
|
||
}).then(() => {
|
||
this.$http.put("sarResource/ts-resource/delResourceById", {
|
||
resourceId: data.id
|
||
}, res => {
|
||
}, e => {
|
||
if (e.ok) {
|
||
this.$message({
|
||
type: 'success',
|
||
message: "删除成功"
|
||
})
|
||
this.selectMenu()
|
||
} else {
|
||
this.$message({
|
||
type: 'warning',
|
||
message: e.message
|
||
})
|
||
}
|
||
})
|
||
}).catch(() => {
|
||
this.$refs.selections.clearSelection()
|
||
this.$message({
|
||
type: 'info',
|
||
message: '已取消删除'
|
||
})
|
||
})
|
||
// const parent = node.parent;
|
||
// const children = parent.data.children || parent.data;
|
||
// const index = children.findIndex(d => d.id === data.id);
|
||
// children.splice(index, 1);
|
||
},
|
||
// 树节点鼠标移入移出
|
||
mouseenter(data) {
|
||
if (data.menuName !== '我的收藏') {
|
||
this.$set(data, 'show', true)
|
||
if (data.parentId !== null) {
|
||
this.$set(data, 'showDel', true)
|
||
}
|
||
}
|
||
},
|
||
mouseleave(data) {
|
||
this.$set(data, 'show', false)
|
||
this.$set(data, 'showDel', false)
|
||
},
|
||
treeClick(treeNode) {
|
||
this.selectSarMenu = treeNode
|
||
this.standCommonlySearch.menuId = treeNode.id
|
||
this.standCommonlySearch.page = 1
|
||
this.getDomesticStandardTable()
|
||
},
|
||
// 点击搜索按钮
|
||
searchBtnClick() {
|
||
this.getDomesticStandardTable()
|
||
},
|
||
// 搜索
|
||
getDomesticStandardTableBtn(item) {
|
||
item.page = 1
|
||
this.standCommonlySearch.page = 1
|
||
this.standCommonlySearch.sarStandardsSearch = JSON.stringify(item) || ''
|
||
this.getDomesticStandardTable(item)
|
||
},
|
||
// 清空搜索框
|
||
clearAllSearch(flag) {
|
||
if (flag === 'standCommonlySearch') {
|
||
this.standCommonlySearch.standNumber = '';
|
||
this.standCommonlySearch.standSort = '';
|
||
this.standCommonlySearch.page = 1;
|
||
|
||
}
|
||
this.getDomesticStandardTable(this.standCommonlySearch)
|
||
|
||
if (flag === 'sarStandardsSearch') {
|
||
this.sarStandardsSearch.standSort = ''
|
||
this.sarStandardsSearch.standNumber = ''
|
||
this.sarStandardsSearch.page = 1
|
||
this.getDomesticStandardTable()
|
||
} else if (flag === 2) {
|
||
// 标准条目搜索
|
||
this.standItemSearch.responsibleUnit = ''
|
||
this.standItemSearch.orgName = ''
|
||
} else {
|
||
this.configPage = 1
|
||
// 游离标准搜索清空
|
||
this.sarConfigStandSearch.standSort = ''
|
||
this.sarConfigStandSearch.standNumber = ''
|
||
this.sarConfigStandSearch.standName = ''
|
||
this.sarConfigStandSearch.category = ''
|
||
this.sarConfigStandSearch.standNature = ''
|
||
this.sarConfigStandSearch.synopsis = ''
|
||
this.sarConfigStandSearch.applyArctic = ''
|
||
this.sarConfigStandSearch.replaceStandNum = ''
|
||
this.selectConfiguraStand()
|
||
}
|
||
},
|
||
// 高级检索
|
||
selectMoreBtn() {
|
||
this.isAdvancedSearch = true
|
||
},
|
||
treeCollapse() {
|
||
this.sideClose = !this.sideClose
|
||
},
|
||
// 收展按钮
|
||
collapseIcon() {
|
||
return this.sideClose ? 'el-icon-arrow-left' : 'el-icon-arrow-right'
|
||
// return 'el-icon-arrow-left'
|
||
},
|
||
resetTreeDialog() {
|
||
this.menuModalFlag = false
|
||
this.$refs['addMenuForm'].resetFields()
|
||
},
|
||
// 点击二级菜单新增模态框中的保存
|
||
newMenu() {
|
||
this.isSubmit = true
|
||
this.$refs['addMenuForm'].validate((valid) => {
|
||
if (valid) {
|
||
if (this.menuAddOrUpdateFlag === 1) {
|
||
this.sarMenu.parentId = this.selectSarMenu.id
|
||
if (this.selectSarMenu.parentIds != null) {
|
||
this.sarMenu.parentIds = this.selectSarMenu.parentIds + ',' + this.selectSarMenu.id
|
||
} else {
|
||
this.sarMenu.parentIds = this.selectSarMenu.id
|
||
}
|
||
this.$http.post('lawss/sarMenu/addSarMenu', this.sarMenu, {
|
||
_this: this
|
||
}, res => {
|
||
this.selectMenu() // 新增成功后,更新二级菜单
|
||
this.menuModalFlag = false
|
||
}, e => {
|
||
})
|
||
} else {
|
||
this.$http.post('lawss/sarMenu/updateSarMenu', this.sarMenu, {
|
||
_this: this
|
||
}, res => {
|
||
this.selectMenu() // 修改成功后,更新二级菜单
|
||
this.selectSarMenu = res.data
|
||
this.menuModalFlag = false
|
||
}, e => {
|
||
})
|
||
}
|
||
} else {
|
||
this.$message.warning('请检查表单是否填写正确')
|
||
this.isSubmit = false
|
||
}
|
||
})
|
||
},
|
||
// 查询二级菜单
|
||
selectMenu() {
|
||
this.$http.get('sarResource/ts-resource/getList', {
|
||
sorDivide: 'FOREIGN_STAND',
|
||
userId: this.$store.getters.userInfo.userId
|
||
}, {}, res => {
|
||
if (res.ok) {
|
||
for (let i in res.data) {
|
||
let arr = res.data[i].children
|
||
arr.push(arr.shift())
|
||
this.treeList = res.data
|
||
}
|
||
}
|
||
})
|
||
},
|
||
// 树-删除
|
||
sureDeleteSarMenu() {
|
||
this.$confirm('是否删除?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
roundButton: false,
|
||
type: 'warning'
|
||
}).then(() => {
|
||
this.$http.post('lawss/sarMenu/deleteMenuAndChildren', this.selectSarMenu, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
this.selectMenu() // 删除成功后,更新二级菜单
|
||
// 获取下一个节点
|
||
let currentNode = this.$refs.domesticTree.getNextNode()
|
||
let nodeId = ''
|
||
// 如果这个节点为null, 本次删除了最后一个节点
|
||
if (currentNode === null) {
|
||
// 选中根节点
|
||
this.$refs.domesticTree.selectRootNode()
|
||
} else {
|
||
nodeId = currentNode.id
|
||
}
|
||
this.getDomesticStandardTable()
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
// this.$refs.selections.clearSelection()
|
||
})
|
||
},
|
||
// 树点击
|
||
treeOnCheck(checkedList) {
|
||
this.shareStandardSelect = []
|
||
checkedList.map((item, index) => {
|
||
if (!item.isParent) {
|
||
this.shareStandardSelect.push(item.id)
|
||
}
|
||
})
|
||
},
|
||
// 取消
|
||
treeCancel() {
|
||
this.drawerModal = false
|
||
this.$refs.drawerModalTree.treeReload()
|
||
},
|
||
// 消息推送
|
||
shareStandardBt() {
|
||
if (this.shareStandardSelect.length === 0) {
|
||
this.$message({
|
||
message: '请选择要分享的人!',
|
||
type: 'warning'
|
||
})
|
||
} else {
|
||
this.personShareEO.resType = 'FOREIGN_STAND'
|
||
if (this.resPk.standYear != null && this.resPk.standYear !== '') {
|
||
this.personShareEO.resTitle = this.resPk.standName + ' ( 编号:' + this.resPk.standSort + ' ' + this.resPk.standNumber + '-' + this.resPk.standYear + ' )'
|
||
} else {
|
||
this.personShareEO.resTitle = this.resPk.standName + ' ( 编号:' + this.resPk.standSort + ' ' + this.resPk.standNumber + ' )'
|
||
}
|
||
this.personShareEO.resId = this.resPk.id
|
||
this.personShareEO.recipientId = this.shareStandardSelect.join(',')
|
||
this.$http.post('/person/personShare/savePersonShare', this.personShareEO, {
|
||
_this: this
|
||
}, res => {
|
||
this.$message({
|
||
message: '标准分享成功!',
|
||
type: 'success'
|
||
})
|
||
this.shareStandardModal = false
|
||
this.drawerModal = false
|
||
this.shareStandardSelect = []
|
||
this.$refs.drawerModalTree.treeReload()
|
||
}, e => {
|
||
this.$message.error('标准分享失败!')
|
||
})
|
||
}
|
||
},
|
||
// 导出选中的标准 此处因为复选框没有设置好,所以先设置导出所有数据
|
||
exportStandard() {
|
||
// 区别是选择导出还是全部导出
|
||
// this.exportModelFlag = true
|
||
if (this.selectedList.length > 0) {
|
||
this.saveExportType = 'apart'
|
||
} else {
|
||
this.saveExportType = 'all'
|
||
}
|
||
// if (type === 'apart') {
|
||
// if (this.selectedList.length > 0) {
|
||
// this.exportName = ''
|
||
// this.exportModelFlag = true
|
||
// } else {
|
||
// this.$message({
|
||
// message: '请先选择要导出的数据',
|
||
// type: 'warning'
|
||
// })
|
||
// }
|
||
// } else {
|
||
// }
|
||
this.exportName = ''
|
||
this.exportModelFlag = true
|
||
},
|
||
// 获取拖拽行的id
|
||
dragRowClassName(row, index) {
|
||
return 'drag-row' + ' ' + 'id=' + row.row.id
|
||
},
|
||
// 拖拽事件
|
||
drag(treeNode, dragId) {
|
||
if (treeNode !== null) {
|
||
let search = {
|
||
menuId: treeNode.id,
|
||
idlist: this.selectedList.length ? this.selectedList : dragId
|
||
}
|
||
this.$http.postData('sarStandardsInfo/sar-standards-info/saveStandardsMenu', search, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.$message({
|
||
message: '操作成功',
|
||
type: 'success'
|
||
})
|
||
this.getDomesticStandardTable(this.tableFlag)
|
||
} else {
|
||
this.$message({
|
||
message: res.message,
|
||
type: 'warning'
|
||
})
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
// 修改成表格样式后,选择项勾选改变
|
||
standSelectChange(data) {
|
||
this.selectedList = []
|
||
for (let i = 0; i < data.length; i++) {
|
||
this.selectedList.push(data[i].id)
|
||
}
|
||
},
|
||
// 导出确定功能
|
||
exportTestItem() {
|
||
if (this.saveExportType === 'apart') {
|
||
if (this.selectedList != null && this.selectedList !== '') {
|
||
const exportURL = interfaceUrl + 'sarStandardsInfo/sar-standards-info/exportStandardsInfoExcel?' +
|
||
'exportType=' + this.saveExportType + '&exportContent=' + this.selectedList.join(',') + '&exportName=' + this.exportName + '&standType=' + this.standType + '&userId=' + this.$store.getters.userInfo.userId
|
||
window.open(exportURL)
|
||
this.$message.success('导出信息成功')
|
||
|
||
}
|
||
} else if (this.saveExportType === 'all') {
|
||
let exportEOStr = JSON.stringify(this.SarExportSearchEo)
|
||
window.open(interfaceUrl + 'sarStandardsInfo/sar-standards-info/exportStandardsInfoExcel?exportType=' + this.saveExportType + '&exportContent=' + exportEOStr + '&exportName=' + this.exportName + '&standType=' + this.standType + '&userId=' + this.$store.getters.userInfo.userId)
|
||
this.$message.success('导出信息成功')
|
||
}
|
||
this.exportModelFlag = false
|
||
},
|
||
// 导出取消按钮关闭模态、置空
|
||
cancal() {
|
||
this.exportModelFlag = false
|
||
},
|
||
// 点击新增按钮弹出新增模态框
|
||
addModal() {
|
||
this.getMenu().then(boolean => {
|
||
if (boolean) {
|
||
// 判断是否有缓存的数据
|
||
const item = JSON.parse(sessionStorage.getItem('FOREIGN_INLAND'))
|
||
this.sarStandardsInfoEO = item ? item : {...this.defaultSarStandardsInfoEO}
|
||
this.sarStandardsInfoEO.menuId = this.selectSarMenu.id
|
||
this.sarStandardsInfoEO.isRelateAccess = '1'
|
||
this.modalshowflag = true
|
||
this.formdisableflag = false
|
||
this.modalshowtitle = '新增海外标准'
|
||
this.addOrUPdateFlag = 1
|
||
this.standNumFlag = 1
|
||
this.$nextTick(() => {
|
||
// this.$refs['sarStandardsInfoForm'].resetFields()
|
||
})
|
||
this.getOrgTreeSource()
|
||
this.resolveFormFieldList()
|
||
Promise.all([this.queryDisplayLocation()]).then((values) => {
|
||
const [displayLocation] = values
|
||
const dynamicFormField = this.sarStandardsInfoEO
|
||
const formFieldList = this.formFieldList
|
||
formFieldList.forEach((field) => {
|
||
displayLocation.forEach((location) => {
|
||
let value = dynamicFormField[field.attrField]
|
||
if (value && typeof value === 'number') {
|
||
value = this.$dateFormat(value, 'yyyy-MM-dd')
|
||
}
|
||
field['value'] = value
|
||
// 法规维护人追加默认值
|
||
if (field.attrField === 'FGWHR') {
|
||
field['value'] = this.$store.getters.userInfo.userId
|
||
field['valueName'] = this.$store.getters.userInfo.uName
|
||
}
|
||
if (field.showRegionId === location.value) {
|
||
if (!location.child) {
|
||
location['child'] = []
|
||
}
|
||
location['child'].push(field)
|
||
}
|
||
})
|
||
})
|
||
this.dynamicFormField = displayLocation
|
||
this.sarStandardsInfoEO.FGWHR = this.$store.getters.userInfo.userId
|
||
this.sarStandardsInfoEO.EOPSSRQ = 'N/A'
|
||
this.sarStandardsInfoEO.XCXSSRQ = 'N/A'
|
||
this.sarStandardsInfoEO.ZCCSSRQ = 'N/A'
|
||
this.loading = false
|
||
})
|
||
}
|
||
})
|
||
},
|
||
testItemsClick() {
|
||
// if (this.testItemsModel) {
|
||
// return false
|
||
// }
|
||
this.testItemsModel = true
|
||
// $('#testItems').click()
|
||
// this.selectedList2 = []
|
||
// this.$refs.selection2.selectAll(false)
|
||
this.testItemsForm.testItemName = ''
|
||
this.getTestItemRow('')
|
||
},
|
||
beforeUploadTop(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 !== '.zip' && fileSuffix !== '.ZIP') {
|
||
this.$message.error('文件' + file.name + '格式不正确,请上传zip文件')
|
||
return false
|
||
}
|
||
// 判断文件上传大小
|
||
if (file.size / 1024 / 1024 > 200) {// eslint-disable-line
|
||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||
return false
|
||
}
|
||
return true
|
||
},
|
||
// 删除数组中的某个对象
|
||
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
|
||
}
|
||
}
|
||
}
|
||
},
|
||
handleAddFormatError(file) {
|
||
// this.$message.error('文件' + file.name + '格式不正确,请上传pdf、doc、docx、ppt、pptx文件')
|
||
this.$message({
|
||
showClose: true,
|
||
message: '文件' + file.name + '格式不正确,请上传pdf、doc、docx、ppt、pptx文件',
|
||
type: 'error'
|
||
})
|
||
},
|
||
// 导入文件大小超出范围
|
||
handleSizeError(file) {
|
||
this.$message({
|
||
showClose: true,
|
||
message: '文件' + file.name + '大小不超过200M',
|
||
type: 'error'
|
||
})
|
||
},
|
||
// 删除标准
|
||
deleteStand(flag, itemid) {
|
||
if (flag === 1) {
|
||
(
|
||
this.$confirm('确认删除这些数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
roundButton: false
|
||
}).then(() => {
|
||
this.$http.post('sarStandardsInfo/sar-standards-info/deleteSarStandards', {ids: itemid}, {
|
||
_this: this,
|
||
loading: 'delLoading'
|
||
}, res => {
|
||
this.getDomesticStandardTable(this.tableFlag)
|
||
this.selectedList = []
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
this.$refs.multipleTable.clearSelection()
|
||
})
|
||
)
|
||
} else {
|
||
if (this.selectedList.length === 0) {
|
||
this.$confirm('请选择一条数据进行删除', '提示', {
|
||
showCancelButton: false,
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
roundButton: false,
|
||
type: 'warning'
|
||
})
|
||
} else {
|
||
(
|
||
this.$confirm('确认删除这些数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
roundButton: false,
|
||
type: 'warning'
|
||
}).then(() => {
|
||
this.$http.post('sarStandardsInfo/sar-standards-info/deleteSarStandards', {ids: this.selectedList.join(',')}, {
|
||
_this: this
|
||
}, res => {
|
||
this.getDomesticStandardTable(this.tableFlag)
|
||
this.selectedList = []
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
this.$refs.multipleTable.clearSelection()
|
||
})
|
||
)
|
||
}
|
||
}
|
||
},
|
||
// 模板下载
|
||
uploadImportModal(flag) {
|
||
window.open('/api/sarStandardsInfo/sar-standards-info/exportTemplate?standType=FOREIGN')
|
||
// if (flag === 1) {
|
||
// } else {
|
||
// window.open('/api/lawss/sarStandardsInfo/exportTemplate?fileName=标准条目导入模板.xlsx')
|
||
// }
|
||
},
|
||
// 点击导入标准
|
||
addImportModal(flag) {
|
||
this.getMenu().then(boolean => {
|
||
if (boolean) {
|
||
// this.$refs.importfile.clearFiles()
|
||
if (flag === 1) {
|
||
let menuId = this.selectSarMenu.id
|
||
if (menuId == null || menuId === '') {
|
||
this.$message({
|
||
showClose: true,
|
||
message: '请选择标准导入的目录',
|
||
type: 'error'
|
||
})
|
||
} else {
|
||
this.importModalshowflag = true
|
||
this.showUploadlist = true
|
||
this.importExcelUrl = '/api/sarStandardsInfo/sar-standards-info/importZipStandardsInfo?standType=FOREIGN&menuId=' + menuId
|
||
}
|
||
} else {
|
||
this.importModalshowflag = true
|
||
this.importExcelUrl = '/api/lawss/sarStandItems/importSarStandItemsList?standId=' + this.standItemSearch.standId
|
||
}
|
||
}
|
||
})
|
||
},
|
||
handleClose(done) {
|
||
this.$confirm('确认关闭?')
|
||
.then(_ => {
|
||
done()
|
||
})
|
||
.catch(_ => {
|
||
})
|
||
},
|
||
// 表单清空
|
||
resetForm() {
|
||
this.modalshowflag = false
|
||
this.$refs['sarStandardsInfoForm'].resetFields()
|
||
},
|
||
// 标准号验证
|
||
validateStandNumber(standInfo) {
|
||
return new Promise((resolve, reject) => {
|
||
let obj = JSON.parse(JSON.stringify(standInfo))
|
||
this.$http.post('sarStandardsInfo/sar-standards-info/validateStandNumber', obj, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
resolve(true)
|
||
} else {
|
||
resolve(false)
|
||
}
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
/**
|
||
* 保存新增标准数据召浏览器缓存
|
||
* */
|
||
saveBt() {
|
||
sessionStorage.setItem('FOREIGN_INLAND', JSON.stringify(this.sarStandardsInfoEO))
|
||
this.$message.success('保存成功')
|
||
},
|
||
// 保存或修改标准
|
||
saveOrUpdateStands() {
|
||
this.isSubmit = true
|
||
this.$refs['sarStandardsInfoForm'].validate((valid) => {
|
||
if (valid) {
|
||
// 验证标准号是否唯一
|
||
this.validateStandNumber(this.sarStandardsInfoEO).then((flag) => {
|
||
if (flag) {
|
||
// 时间格式修改
|
||
this.sarStandardsInfoEO.country = this.sarStandardsInfoEO.countryArr;
|
||
let nowstandinfo = JSON.parse(JSON.stringify(this.sarStandardsInfoEO))
|
||
if (nowstandinfo.putTime != null && nowstandinfo.putTime !== '') {
|
||
nowstandinfo.putTime = this.$dateFormat(this.sarStandardsInfoEO.putTime, 'yyyy-MM-dd hh:mm:ss')
|
||
}
|
||
// 代替标准号
|
||
if (nowstandinfo.replaceStandNum != null) {
|
||
nowstandinfo.replaceStandNum = nowstandinfo.replaceStandNum.replace(/,/ig, ',')
|
||
}
|
||
if (nowstandinfo.replaceStandNum != null && nowstandinfo.replaceStandNum !== '') {
|
||
nowstandinfo.replaceStandNum = nowstandinfo.replaceStandNum.replace(/\r\n/g, '<br />')
|
||
nowstandinfo.replaceStandNum = nowstandinfo.replaceStandNum === '' ? '' : nowstandinfo.replaceStandNum.replace(/\n/g, '<br />')
|
||
}
|
||
// 处理动态表单的时间和下拉框格式
|
||
const formFieldList = this.formFieldList
|
||
const sarStandAttrObj = {}
|
||
|
||
formFieldList.forEach((item) => {
|
||
const value = nowstandinfo[item.attrField]
|
||
// 时间格式处理
|
||
if (item.attrType === 'DATE_PICKER' && value) {
|
||
nowstandinfo[item.attrField] = this.sarStandardsInfoEO[item.attrField]
|
||
}
|
||
// 数组处理
|
||
if (item.attrType === 'SEL_OPTION' || item.attrType === 'SEL_OPTS') {
|
||
if (value != null && (value instanceof Array)) {
|
||
nowstandinfo[item.attrField] = nowstandinfo[item.attrField].join(',')
|
||
}
|
||
}
|
||
sarStandAttrObj[item.attrField] = nowstandinfo[item.attrField]
|
||
})
|
||
|
||
|
||
nowstandinfo['sarStandAttrEOStr'] = JSON.stringify(sarStandAttrObj).replace(/"/g, "'")
|
||
this.$http.postData(this.addOrUPdateFlag === 1 ? 'sarStandardsInfo/sar-standards-info/addarStandardsInfo' : 'sarStandardsInfo/sar-standards-info/updateSarStandardsInfo', nowstandinfo, {
|
||
_this: this
|
||
}, res => {
|
||
this.isSubmit = false
|
||
if (res.ok) {
|
||
this.getDomesticStandardTable(this.tableFlag)
|
||
this.resetForm()
|
||
if (this.addOrUPdateFlag === 1) {
|
||
sessionStorage.removeItem('STAND_INLAND')
|
||
}
|
||
|
||
let standardToLawsInfo = {
|
||
'countryArea': '',
|
||
'standId': '',
|
||
'ssrq': '',
|
||
'zccssrqgj': '',
|
||
'xcxssrqgj': ''
|
||
}
|
||
standardToLawsInfo.countryArea = nowstandinfo.country;
|
||
standardToLawsInfo.standId = nowstandinfo.id;
|
||
standardToLawsInfo.ssrq = nowstandinfo.SSRQ;
|
||
standardToLawsInfo.zccssrqgj = nowstandinfo.ZCCSSRQ;
|
||
standardToLawsInfo.xcxssrqgj = nowstandinfo.XCXSSRQ;
|
||
|
||
this.$http.post('sarLawsDetailedList/sar-laws-detailed-list/standardToLaws',
|
||
standardToLawsInfo,
|
||
{_this: this}
|
||
)
|
||
|
||
|
||
}
|
||
}, e => {
|
||
this.isSubmit = false
|
||
})
|
||
|
||
|
||
} else {
|
||
this.isSubmit = false
|
||
}
|
||
}, e => {
|
||
})
|
||
} else {
|
||
this.isSubmit = false
|
||
this.$message({
|
||
message: '请检查表单是否填写正确',
|
||
type: 'warning'
|
||
})
|
||
}
|
||
})
|
||
},
|
||
// 表格排序
|
||
sortChange(sortObj) {
|
||
|
||
if (sortObj.column.order !== 'normal') {
|
||
this.nowOrder = ''
|
||
this.orderBy = ''
|
||
switch (sortObj.column.property) {
|
||
case 'issueTime' :
|
||
// 后台联调
|
||
this.orderBy = 1;
|
||
this.nowOrder = sortObj.column.order
|
||
if (this.nowOrder === 'ascending') {
|
||
this.nowOrder = 2
|
||
} else if (this.nowOrder === 'descending') {
|
||
this.nowOrder = 1
|
||
}
|
||
break
|
||
case 'XCXSSRQ' :
|
||
this.orderBy = 2;
|
||
this.nowOrder = sortObj.column.order
|
||
if (this.nowOrder === 'ascending') {
|
||
this.nowOrder = 2
|
||
} else if (this.nowOrder === 'descending') {
|
||
this.nowOrder = 1
|
||
}
|
||
break
|
||
case 'ZCCSSRQ' :
|
||
this.orderBy = 3;
|
||
this.nowOrder = sortObj.column.order
|
||
if (this.nowOrder === 'ascending') {
|
||
this.nowOrder = 2
|
||
} else if (this.nowOrder === 'descending') {
|
||
this.nowOrder = 1
|
||
}
|
||
break
|
||
case 'textStatus' :
|
||
this.orderBy = 5;
|
||
this.nowOrder = sortObj.column.order
|
||
if (this.nowOrder === 'ascending') {
|
||
this.nowOrder = 2
|
||
} else if (this.nowOrder === 'descending') {
|
||
this.nowOrder = 1
|
||
}
|
||
break
|
||
case 'SSRQ' :
|
||
this.orderBy = 6;
|
||
this.nowOrder = sortObj.column.order
|
||
if (this.nowOrder === 'ascending') {
|
||
this.nowOrder = 2
|
||
} else if (this.nowOrder === 'descending') {
|
||
this.nowOrder = 1
|
||
}
|
||
break
|
||
|
||
}
|
||
}
|
||
this.getDomesticStandardTable()
|
||
|
||
},
|
||
// 分页点击后方法
|
||
pageChange(page) {
|
||
this.standCommonlySearch.page = page
|
||
this.getDomesticStandardTable()
|
||
},
|
||
// 分页每页显示数改变后方法
|
||
pageSizeChange(pageSize) {
|
||
this.standCommonlySearch.pageSize = pageSize
|
||
this.standCommonlySearch.page = 1
|
||
this.getDomesticStandardTable()
|
||
},
|
||
/**
|
||
* // 分页查询标准
|
||
* item 判断是高级检索还是普通检索
|
||
* 1、空:普通检索 2:高级检索
|
||
* */
|
||
getDomesticStandardTable(item) {
|
||
|
||
// if (item === 2) {
|
||
// data.standSort = ''
|
||
// data.standNumber = ''
|
||
// } else {
|
||
// data.sarStandardsSearch = ''
|
||
// }
|
||
|
||
if (item !== '' && item !== null && item !== undefined) {
|
||
item.pageSize = this.$store.getters.userInfo.configContent
|
||
}
|
||
|
||
this.sarStandardsSearch.pageSize = this.$store.getters.userInfo.configContent
|
||
const data = item || this.standCommonlySearch || this.advanceSearchMapping
|
||
if (item) {
|
||
this.sarStandardsSearch.advanceSearchStr = item.advanceSearchStr
|
||
}
|
||
const formData = {...data}
|
||
if (!item) {
|
||
formData.menuId = this.selectSarMenu.id
|
||
} else {
|
||
formData.menuId = this.standCommonlySearch.menuId
|
||
}
|
||
formData.nowOrderBy = this.nowOrder ? this.orderBy : ''
|
||
formData.nowOrder = this.nowOrder
|
||
// 处理我的收藏和个性化标签传参
|
||
if (this.selectSarMenu.menuName === '我的收藏') {
|
||
formData.menuId = undefined
|
||
formData.labelMenuId = undefined
|
||
formData.collectMenuId = 'wdsc'
|
||
} else if (this.selectSarMenu.id === 'gxhbq' || this.selectSarMenu.pId === 'gxhbq') {
|
||
formData.menuId = undefined
|
||
formData.labelMenuId = this.selectSarMenu.id
|
||
formData.collectMenuId = undefined
|
||
} else {
|
||
formData.labelMenuId = undefined
|
||
formData.collectMenuId = undefined
|
||
}
|
||
formData.standType = 'FOREIGN'
|
||
formData.userId = this.$store.getters.userInfo.userId
|
||
|
||
// // 自定义属性字段高级搜索处理
|
||
//advanceSearchVOStr
|
||
const advanceSearchVOList = [];
|
||
for (let key in this.advanceSearchMapping) {
|
||
const value = this.advanceSearchMapping[key];
|
||
if (value !== null && value !== '') {
|
||
advanceSearchVOList.push({
|
||
connect: "and",
|
||
field: key || '',
|
||
type: 'like',
|
||
value: value
|
||
});
|
||
}
|
||
|
||
}
|
||
formData.advanceSearchVOStr = JSON.stringify(advanceSearchVOList);
|
||
|
||
this.SarExportSearchEo = formData
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
this.isAdvancedSearch = false
|
||
if (res.ok) {
|
||
for (let i = 0; i < res.data.list.length; i++) {
|
||
res.data.list[i].checked = false
|
||
if (res.data.list[i].collectId != null && res.data.list[i].collectId !== '') {
|
||
res.data.list[i].collectBtn = false
|
||
res.data.list[i].cancelCollectBtn = true
|
||
} else {
|
||
res.data.list[i].collectBtn = true
|
||
res.data.list[i].cancelCollectBtn = false
|
||
}
|
||
res.data.list[i].isSubmit = false
|
||
if (res.data.list[i].attrInfoMap && res.data.list[i].attrInfoMap.XCXSSRQ) {
|
||
res.data.list[i].XCXSSRQ = res.data.list[i].attrInfoMap.XCXSSRQ.split(',')[0]
|
||
}
|
||
if (res.data.list[i].attrInfoMap && res.data.list[i].attrInfoMap.ZCCSSRQ) {
|
||
res.data.list[i].ZCCSSRQ = res.data.list[i].attrInfoMap.ZCCSSRQ.split(',')[0]
|
||
}
|
||
if (res.data.list[i].attrInfoMap && res.data.list[i].attrInfoMap.SSRQ) {
|
||
res.data.list[i].SSRQ = res.data.list[i].attrInfoMap.SSRQ
|
||
}
|
||
}
|
||
this.stahndinfoList = res.data.list
|
||
this.total = res.data.count
|
||
} else {
|
||
this.$message.error(res.message)
|
||
}
|
||
}, e => {
|
||
this.stahndinfoList = []
|
||
this.total = 0
|
||
})
|
||
|
||
//清空自定义字段
|
||
for (let key in this.advanceSearchMapping) {
|
||
this.advanceSearchMapping[key] = ''
|
||
}
|
||
//情况基本字段
|
||
for (let key in this.sarStandardsSearch) {
|
||
this.sarStandardsSearch[key] = ''
|
||
}
|
||
},
|
||
// 查询处于游离态的标准
|
||
selectConfiguraStand() {
|
||
this.sarConfigStandSearch.page = this.configPage
|
||
// this.sarConfigStandSearch.pageSize = this.configRows
|
||
this.sarConfigStandSearch.pageSize = this.$store.getters.userInfo.configContent
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.sarConfigStandSearch, {
|
||
_this: this,
|
||
loading: 'loading'
|
||
}, res => {
|
||
for (let i = 0; i < res.data.list.length; i++) {
|
||
if (res.data.list[i].attrInfoMap && res.data.list[i].attrInfoMap.XCXSSRQ) {
|
||
res.data.list[i].XCXSSRQ = res.data.list[i].attrInfoMap.XCXSSRQ.split(',')[0]
|
||
}
|
||
}
|
||
this.configStandList = res.data.list
|
||
this.configTotal = res.data.count
|
||
this.selectConfigStand = []
|
||
}, e => {
|
||
})
|
||
},
|
||
// 获取组织机构数据
|
||
getOrgTreeSource() {
|
||
this.$http.get('sys/org/getTree', {}, {
|
||
_this: this
|
||
},
|
||
res => {
|
||
if (res.ok) {
|
||
let treeNode = []
|
||
res.data.forEach((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.zNodesS = JSON.parse(JSON.stringify(treeNode))
|
||
this.zNodesSItem = JSON.parse(JSON.stringify(treeNode))
|
||
this.searchInlandNodes = JSON.parse(JSON.stringify(treeNode))
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
// 所属部门选取
|
||
treeDblClick(treeId, treeNode) {
|
||
this.sarStandardsInfoEO.responsibleUnit = treeNode.id
|
||
this.sarStandardsInfoEO.orgName = treeNode.name
|
||
$('#deptBtn').click()
|
||
},
|
||
inputChange() {
|
||
this.modalshowflag = true
|
||
},
|
||
// 代替标准号搜索
|
||
selectStands() {
|
||
// if (this.standNumFlag === 1) {
|
||
// this.$refs.selections.selectAll(false)
|
||
// }
|
||
this.sarStandardsInfoEO.replaceStandNum = ''
|
||
this.replaceStandNumModel = true
|
||
this.getReplaceStandNumRow('')
|
||
},
|
||
selectReplaceStandNumRowChange(row) {
|
||
this.replaceStandNumModelNum = row
|
||
},
|
||
selectLawsExplainQuoteRowChange(row) {
|
||
this.lawsExplainQuoteModelNum = row
|
||
},
|
||
// 试验项目
|
||
selectTestItemRowChange(row) {
|
||
this.testItemModelNum = row
|
||
},
|
||
selectTestItemRowSelect(selection, flag, row) {
|
||
let index = ''
|
||
if (row) {
|
||
this.selectedList2.map((item, rowIndex) => {
|
||
if (row.id === item.id) {
|
||
index = rowIndex
|
||
}
|
||
})
|
||
}
|
||
if (flag === 'select') {
|
||
this.selectedList2.push(row)
|
||
const newobj = {}
|
||
this.selectedList2 = this.selectedList2.reduce((preVal, curVal) => {
|
||
newobj[curVal.id] ? '' : newobj[curVal.id] = preVal.push(curVal) // eslint-disable-line
|
||
return preVal
|
||
}, [])
|
||
}
|
||
if (flag === 'cancel') {
|
||
this.selectedList2.splice(index, 1)
|
||
}
|
||
if (flag === 'all') {
|
||
selection.map((item) => {
|
||
this.selectedList2.push(item)
|
||
})
|
||
const newobj = {}
|
||
this.selectedList2 = this.selectedList2.reduce((preVal, curVal) => {
|
||
newobj[curVal.id] ? '' : newobj[curVal.id] = preVal.push(curVal) // eslint-disable-line
|
||
return preVal
|
||
}, [])
|
||
}
|
||
if (flag === 'allCancel') {
|
||
this.testItemTableList.map((item) => {
|
||
this.selectedList2.map((list, index) => {
|
||
if (item.id === list.id) {
|
||
this.selectedList2.splice(index, 1)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
},
|
||
selectLawsExplainQuoteRowSelect(selection, flag, row) {
|
||
let index = ''
|
||
if (row) {
|
||
this.selectedList1.map((item, rowIndex) => {
|
||
if (row.id === item.id) {
|
||
index = rowIndex
|
||
}
|
||
})
|
||
}
|
||
if (flag === 'select') {
|
||
this.selectedList1.push(row)
|
||
const newobj = {}
|
||
this.selectedList1 = this.selectedList1.reduce((preVal, curVal) => {
|
||
newobj[curVal.id] ? '' : newobj[curVal.id] = preVal.push(curVal) // eslint-disable-line
|
||
return preVal
|
||
}, [])
|
||
}
|
||
if (flag === 'cancel') {
|
||
this.selectedList1.splice(index, 1)
|
||
}
|
||
if (flag === 'all') {
|
||
selection.map((item) => {
|
||
this.selectedList1.push(item)
|
||
})
|
||
const newobj = {}
|
||
this.selectedList1 = this.selectedList1.reduce((preVal, curVal) => {
|
||
newobj[curVal.id] ? '' : newobj[curVal.id] = preVal.push(curVal) // eslint-disable-line
|
||
return preVal
|
||
}, [])
|
||
}
|
||
if (flag === 'allCancel') {
|
||
this.lawsExplainQuoteRow.map((item) => {
|
||
this.selectedList1.map((list, index) => {
|
||
if (item.id === list.id) {
|
||
this.selectedList1.splice(index, 1)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
},
|
||
// 代替标准号
|
||
getReplaceStandNumRow(page = 1, pageSize = this.$store.getters.userInfo.configContent) {
|
||
this.replaceStandNumForm.page = this.replacePage
|
||
this.replaceStandNumForm.pageSize = this.$store.getters.userInfo.configContent
|
||
if (page === '') {
|
||
this.replaceStandNumForm.page = 1
|
||
this.replaceStandNumForm.standNumber = ''
|
||
}
|
||
// this.replaceStandNumForm.quoteIdList = this.quoteIdList1.toString() === '' ? '' : this.quoteIdList1
|
||
if (this.sarStandardsInfoEO.replaceStandNum !== null && this.sarStandardsInfoEO.replaceStandNum !== '') {
|
||
this.replaceStandNumForm.quoteIdList = this.quoteIdList1.toString() === '' ? '' : this.quoteIdList1
|
||
} else {
|
||
this.quoteIdList1 = []
|
||
this.replaceStandNumForm.quoteIdList = ''
|
||
}
|
||
// if (this.sarStandardsInfoEO.replaceStandNumId !== null && this.sarStandardsInfoEO.replaceStandNumId !== '') {
|
||
// this.replaceStandNumForm.quoteIdList = this.sarStandardsInfoEO.replaceStandNumId.toString()
|
||
// (this.replaceStandNumForm.quoteIdList)
|
||
// }
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.replaceStandNumForm, {
|
||
_this: this
|
||
// loading: 'lawsExplainQuoteFormLoading'
|
||
}, res => {
|
||
this.replaceStandNumRow = res.data.list
|
||
this.replaceTotal = res.data.count
|
||
if (this.selectedListRep.length !== 0) {
|
||
this.selectedListRep.map((list) => {
|
||
this.replaceStandNumRow.map((item) => {
|
||
if (list.id === item.id) {
|
||
item._checked = true
|
||
}
|
||
})
|
||
})
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
/**
|
||
*@desc:代替标准号
|
||
*@author: zhangRui
|
||
*@time: 2020/08/25 11:52:47
|
||
*/
|
||
selectReplaceStandNumRowSelect(selection, flag, row) {
|
||
let index = ''
|
||
if (row) {
|
||
this.selectedListRep.map((item, rowIndex) => {
|
||
if (row.id === item.id) {
|
||
index = rowIndex
|
||
}
|
||
})
|
||
}
|
||
if (flag === 'select') {
|
||
this.selectedListRep.push(row)
|
||
const newobj = {}
|
||
this.selectedListRep = this.selectedListRep.reduce((preVal, curVal) => {
|
||
newobj[curVal.id] ? '' : newobj[curVal.id] = preVal.push(curVal) // eslint-disable-line
|
||
return preVal
|
||
}, [])
|
||
}
|
||
if (flag === 'cancel') {
|
||
this.selectedListRep.splice(index, 1)
|
||
}
|
||
if (flag === 'all') {
|
||
selection.map((item) => {
|
||
this.selectedListRep.push(item)
|
||
})
|
||
const newobj = {}
|
||
this.selectedListRep = this.selectedListRep.reduce((preVal, curVal) => {
|
||
newobj[curVal.id] ? '' : newobj[curVal.id] = preVal.push(curVal) // eslint-disable-line
|
||
return preVal
|
||
}, [])
|
||
}
|
||
if (flag === 'allCancel') {
|
||
this.replaceStandNumRow.map((item) => {
|
||
this.selectedListRep.map((list, index) => {
|
||
if (item.id === list.id) {
|
||
this.selectedListRep.splice(index, 1)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
},
|
||
lawsExplainQuoteModelBt() {
|
||
if (typeof this.sarStandardsInfoEO.lawsExplainQuote === 'string') {
|
||
this.sarStandardsInfoEO.lawsExplainQuote = this.sarStandardsInfoEO.lawsExplainQuote.split('')
|
||
}
|
||
if (this.sarStandardsInfoEO.lawsExplainQuote === null) {
|
||
this.sarStandardsInfoEO.lawsExplainQuote = []
|
||
}
|
||
if (this.selectedList1.length === 0) {
|
||
// return this.$Message.warning('请先选择数据')
|
||
return this.$message({
|
||
message: '请先选择数据',
|
||
type: 'warning'
|
||
})
|
||
}
|
||
if (this.selectedList1.length + this.sarStandardsInfoEO.lawsExplainQuote.length > 20) {
|
||
// return this.$Message.warning('法规解读标准引用最多选择20项')
|
||
return this.$message({
|
||
message: '法规解读标准引用最多选择20项',
|
||
type: 'warning'
|
||
})
|
||
}
|
||
this.selectedList1.map((item) => {
|
||
let texts = ''
|
||
if (item.standYear != null && item.standYear !== '') {
|
||
texts = item.standSortShow + ' ' + item.standNumber + '-' + item.standYear
|
||
} else {
|
||
texts = item.standSortShow + ' ' + item.standNumber
|
||
}
|
||
if (this.sarStandardsInfoEO.lawsExplainQuoteList === null) {
|
||
this.sarStandardsInfoEO.lawsExplainQuoteList = []
|
||
}
|
||
this.sarStandardsInfoEO.lawsExplainQuoteList.push({
|
||
label: texts,
|
||
value: item.id
|
||
})
|
||
// ('this.sarStandardsInfoEO.lawsExplainQuoteList', this.sarStandardsInfoEO.lawsExplainQuoteList)
|
||
this.sarStandardsInfoEO.lawsExplainQuote.push(item.id)
|
||
this.sarStandardsInfoEO.lawsExplainQuote = [...new Set(this.sarStandardsInfoEO.lawsExplainQuote)]
|
||
this.lawsExplainQuoteModel = false
|
||
})
|
||
},
|
||
canle() {
|
||
this.lawsExplainQuoteModel = false
|
||
},
|
||
// 法规解读标准引用
|
||
lawsExplainQuoteClick() {
|
||
this.getLawsExplainQuoteRow('')
|
||
this.lawsExplainQuoteModel = true
|
||
if (this.lawsExplainQuoteModel) {
|
||
return false
|
||
}
|
||
this.lawsExplainQuoteModel = true
|
||
$('#lawsExplainQuote').click()
|
||
this.selectedList1 = []
|
||
// this.$refs.selection.selectAll(false)
|
||
this.testItemsForm.standNumber = ''
|
||
},
|
||
pageChangeLaws(page) {
|
||
this.page = page
|
||
this.getLawsExplainQuoteRow()
|
||
},
|
||
pageSizeChangeLaws(pageSize) {
|
||
this.rows = pageSize
|
||
this.getLawsExplainQuoteRow()
|
||
},
|
||
// 法规分页
|
||
pageChangeReplace(page) {
|
||
this.replacePage = page
|
||
this.getReplaceStandNumRow()
|
||
},
|
||
pageSizeChangeReplace(pageSize) {
|
||
this.replaceRows = pageSize
|
||
this.getReplaceStandNumRow()
|
||
},
|
||
// 试验项目分页
|
||
pageChangeItems(page) {
|
||
this.pageItems = page
|
||
this.getTestItemRow()
|
||
},
|
||
pageSizeChangeItems(pageSize) {
|
||
this.itemsRows = pageSize
|
||
this.getTestItemRow()
|
||
},
|
||
testItemsModellBt() {
|
||
if (this.selectedList2.length === 0) {
|
||
return this.$message({
|
||
message: '请先选择数据',
|
||
type: 'warning'
|
||
})
|
||
}
|
||
if (typeof this.sarStandardsInfoEO.testItems === 'string') {
|
||
this.sarStandardsInfoEO.testItems = this.sarStandardsInfoEO.testItems.split('')
|
||
}
|
||
if (this.sarStandardsInfoEO.testItems === null) {
|
||
this.sarStandardsInfoEO.testItems = []
|
||
}
|
||
if (this.selectedList2.length + this.sarStandardsInfoEO.testItems.length > 20) {
|
||
return this.$message({
|
||
message: '试验项目最多选择20项',
|
||
type: 'warning'
|
||
})
|
||
}
|
||
this.selectedList2.map((item) => {
|
||
if (this.sarStandardsInfoEO.testItemsList === null) {
|
||
this.sarStandardsInfoEO.testItemsList = []
|
||
}
|
||
this.sarStandardsInfoEO.testItemsList.push({
|
||
label: item.testItemName,
|
||
value: item.id
|
||
})
|
||
|
||
this.sarStandardsInfoEO.testItems.push(item.id)
|
||
this.sarStandardsInfoEO.testItems = [...new Set(this.sarStandardsInfoEO.testItems)]
|
||
this.testItemsModel = false
|
||
})
|
||
},
|
||
getLawsExplainQuoteRow(page = 1, pageSize = this.$store.getters.userInfo.configContent) {
|
||
this.lawsExplainQuoteForm.page = this.page
|
||
this.lawsExplainQuoteForm.pageSize = this.$store.getters.userInfo.configContent
|
||
if (page === '') {
|
||
this.lawsExplainQuoteForm.page = 1
|
||
this.lawsExplainQuoteForm.standNumber = ''
|
||
}
|
||
if (this.sarStandardsInfoEO.lawsExplainQuote !== null && this.sarStandardsInfoEO.lawsExplainQuote !== '') {
|
||
this.lawsExplainQuoteForm.quoteIdList = this.sarStandardsInfoEO.lawsExplainQuote.toString()
|
||
}
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.lawsExplainQuoteForm, {
|
||
_this: this,
|
||
loading: 'lawsExplainQuoteFormLoading'
|
||
}, res => {
|
||
this.lawsExplainQuoteRow = res.data.list
|
||
this.total = res.data.count
|
||
if (this.selectedList1.length !== 0) {
|
||
this.selectedList1.map((list) => {
|
||
this.lawsExplainQuoteRow.map((item) => {
|
||
if (list.id === item.id) {
|
||
item._checked = true
|
||
}
|
||
})
|
||
})
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
getTestItemRow(page = 1, pageSize = this.$store.getters.userInfo.configContent) {
|
||
this.testItemsForm.page = this.pageItems
|
||
this.testItemsForm.pageSize = this.$store.getters.userInfo.configContent
|
||
if (page === '') {
|
||
this.testItemsForm.page = 1
|
||
this.testItemsForm.testItemName = ''
|
||
}
|
||
if (this.sarStandardsInfoEO.testItems !== null && this.sarStandardsInfoEO.testItems !== '') {
|
||
this.testItemsForm.testIdList = this.sarStandardsInfoEO.testItems.toString()
|
||
}
|
||
this.$http.get('lawss/sarTestItem/page', this.testItemsForm, {
|
||
_this: this,
|
||
loading: 'testItemSearching'
|
||
}, res => {
|
||
this.testItemTableList = res.data.list
|
||
this.totalItems = res.data.count
|
||
if (this.selectedList2.length !== 0) {
|
||
this.selectedList2.map((list) => {
|
||
this.testItemTableList.map((item) => {
|
||
if (list.id === item.id) {
|
||
item._checked = true
|
||
}
|
||
})
|
||
})
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
// 文件上传时的钩子函数
|
||
onProgress(event, file, fileList) {
|
||
this.exportLoading = true
|
||
this.importModalshowflag = false
|
||
},
|
||
// 导入标准数据成功后执行
|
||
importFileSuccess(response, file) {
|
||
this.exportLoading = false
|
||
if (response.ok) {
|
||
this.showUploadlist = true
|
||
this.importModalshowflag = false
|
||
this.$message({
|
||
showClose: true,
|
||
message: response.message,
|
||
type: 'success'
|
||
})
|
||
// 使用字条目是否展示模态框判断导入的文件是标准,还是条目modalStandItemflag
|
||
if (this.modalStandItemflag) {
|
||
this.selectSarStandItems(this.standItemSearch.standId)
|
||
} else {
|
||
this.getDomesticStandardTable()
|
||
}
|
||
} else {
|
||
this.showUploadlist = false
|
||
this.importFailed = true
|
||
this.importForm.content = response.message
|
||
}
|
||
},
|
||
// 查看标准条目
|
||
selectSarStandItems(standid) {
|
||
this.modalStandItemflag = true
|
||
this.standItemSearch.standId = standid
|
||
this.$http.get('lawss/sarStandItems/getSarStandItemsList', this.standItemSearch, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
this.standItemList = res.data
|
||
// this.standitemTotal = res.data.count // 分页需要
|
||
}, e => {
|
||
})
|
||
},
|
||
// 点击配置标准弹出相应模态框
|
||
configurationStandard() {
|
||
// this.getMenu().then(boolean => {
|
||
// if (boolean) {
|
||
const winWidth = window.screen.width
|
||
if (winWidth > 1920) {
|
||
this.drawerWidth = 1400
|
||
} else {
|
||
this.drawerWidth = winWidth - 200
|
||
}
|
||
let menuId = this.selectSarMenu.id
|
||
if (menuId == null || menuId === '') {
|
||
this.$message({
|
||
showClose: true,
|
||
message: '请选择要配置的目录',
|
||
type: 'error'
|
||
})
|
||
} else {
|
||
if (this.selectSarMenu.parentId == null || this.selectSarMenu.parentId === '') {
|
||
this.$message({
|
||
showClose: true,
|
||
message: '请选择二级及以下目录',
|
||
type: 'error'
|
||
})
|
||
} else {
|
||
this.configStandFlag = true
|
||
this.sarConfigStandSearch.menuId = 'nomenu'
|
||
this.sarConfigStandSearch.page = 1
|
||
this.sarConfigStandSearch.country = ''
|
||
this.sarConfigStandSearch.standNumber = ''
|
||
this.sarConfigStandSearch.standName = ''
|
||
this.sarConfigStandSearch.standState = ''
|
||
this.sarConfigStandSearch.standNature = ''
|
||
this.sarConfigStandSearch.issueTime = ''
|
||
this.sarConfigStandSearch.applyArctic = ''
|
||
this.sarConfigStandSearch.replaceStandNum = ''
|
||
this.sarConfigStandSearch.replacedStandNum = ''
|
||
this.selectConfiguraStand()
|
||
}
|
||
}
|
||
// }
|
||
// })
|
||
},
|
||
// 判断当前左侧树节点是否是我的收藏和个性化标签
|
||
getMenu() {
|
||
return new Promise((resolve, reject) => {
|
||
let menu = this.selectSarMenu
|
||
if (menu.id === 'gxhbq' || menu.pId === 'gxhbq' || menu.id === 'wdsc' || menu.pId === 'wdsc') {
|
||
this.$message.warning('请选择海外标准法规及以下节点')
|
||
} else {
|
||
resolve(true)
|
||
}
|
||
})
|
||
},
|
||
// 取消配置标准
|
||
cancelConfigStand() {
|
||
this.configStandFlag = false
|
||
this.selectConfigStand = []
|
||
},
|
||
// 表对应标准移除分类到
|
||
deleteStandFromKind(flag, item) {
|
||
// this.getMenu().then(boolean => {
|
||
// if (boolean) {
|
||
if (this.selectSarMenu.parentId == null || this.selectSarMenu.parentId === '') {
|
||
this.$message({
|
||
showClose: true,
|
||
message: '请选择二级及以下目录',
|
||
type: 'error'
|
||
})
|
||
} else {
|
||
let search = {}
|
||
// 取最外层目录id
|
||
search.menuId = this.selectSarMenu.id
|
||
search.idlist = []
|
||
search.standType = 'FOREIGN'
|
||
if (flag === 1) {
|
||
this.$confirm('确定移除该条标准?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
roundButton: false
|
||
}).then(() => {
|
||
search.idlist.push(item)
|
||
this.$http.putData('lawss/sarStandMenu/removeStandInfo', search, {
|
||
_this: this
|
||
}, res => {
|
||
this.getDomesticStandardTable()
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
this.$refs.selection.clearSelection()
|
||
})
|
||
} else {
|
||
if (this.selectedList.length === 0) {
|
||
this.$message.error('请先选择要移除的数据!')
|
||
} else {
|
||
this.$confirm('确认移除选中数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
roundButton: false,
|
||
type: 'warning'
|
||
}).then(() => {
|
||
for (let i = 0; i < this.selectedList.length; i++) {
|
||
search.idlist.push(this.selectedList[i])
|
||
}
|
||
this.$http.putData('lawss/sarStandMenu/removeStandInfo', search, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.getDomesticStandardTable()
|
||
} else {
|
||
this.$message.warning(res.message)
|
||
}
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
this.$refs.selection.clearSelection()
|
||
})
|
||
}
|
||
}
|
||
}
|
||
// }
|
||
// })
|
||
},
|
||
// 分页点击后方法
|
||
configuraPageChange(page) {
|
||
this.configPage = page
|
||
this.selectConfiguraStand()
|
||
},
|
||
// 分页每页显示数改变后方法
|
||
configuraPageSizeChange(pageSize) {
|
||
this.configRows = pageSize
|
||
this.selectConfiguraStand()
|
||
// 此处需要调用接口,修改个人配置
|
||
},
|
||
searchConfiguraStand() {
|
||
this.sarConfigStandSearch.page = 1
|
||
this.selectConfiguraStand()
|
||
},
|
||
selectConfigStandChange(alldata) {
|
||
this.selectConfigStand = []
|
||
for (let i = 0; i < alldata.length; i++) {
|
||
this.selectConfigStand.push(alldata[i].id)
|
||
}
|
||
},
|
||
// 提交配置搜索项
|
||
saveConfigStand() {
|
||
let search = {}
|
||
search.menuId = this.selectSarMenu.id
|
||
if (this.selectConfigStand.length === 0) {
|
||
this.$message({
|
||
showClose: true,
|
||
message: '请至少选择一条标准',
|
||
type: 'warning'
|
||
})
|
||
} else {
|
||
search.idlist = this.selectConfigStand
|
||
this.$http.postData('sarStandardsInfo/sar-standards-info/saveStandardsMenu', search, {
|
||
_this: this,
|
||
loading: 'isSubmit'
|
||
}, res => {
|
||
this.configStandFlag = false
|
||
// this.$message({
|
||
// showClose: true,
|
||
// message: '配置标准成功!',
|
||
// type: 'success'
|
||
// })
|
||
this.getDomesticStandardTable()
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
/**
|
||
* 获取新增弹框的表单
|
||
*/
|
||
getAddFormFieldList(isEdit) {
|
||
this.$http.get('lawss/sarStandAttrDetails/list', {}, {
|
||
_this: this
|
||
},
|
||
res => {
|
||
if (res.ok) {
|
||
const {data = {}} = res
|
||
this.formFieldListData = data['FOREIGN_STAND'] || []
|
||
const formFieldListData = data['FOREIGN_STAND'] || []
|
||
// 追加高级查询动态下拉框数据s
|
||
const twoOptions = [
|
||
{
|
||
label: '标准类别',
|
||
value: 'stand_sort',
|
||
type: 'SEL_OPTION',
|
||
disabled: false
|
||
},
|
||
// {
|
||
// label: '标准性质',
|
||
// value: 'stand_nature',
|
||
// disabled: false
|
||
// },
|
||
{
|
||
label: '标准状态',
|
||
value: 'stand_state',
|
||
type: 'SEL_OPTION',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '适用区域',
|
||
value: 'country',
|
||
type: 'SEL_OPTION',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '重要度',
|
||
value: 'is_relate_access',
|
||
type: 'SEL_OPTION',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '标准编号',
|
||
value: 'stand_number',
|
||
type: 'INPUT',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '标准年份',
|
||
value: 'stand_year',
|
||
type: 'INPUT',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '中文名称',
|
||
value: 'stand_name',
|
||
type: 'INPUT',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '英文名称',
|
||
value: 'stand_en_name',
|
||
type: 'INPUT',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '发布日期',
|
||
value: 'issue_time',
|
||
type: 'DATE_PIC_OPTS',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '文本说明',
|
||
value: 'synopsis',
|
||
type: 'INPUT',
|
||
disabled: false
|
||
}
|
||
]
|
||
|
||
formFieldListData.forEach(item => {
|
||
if (item.attrType !== 'FILE' && item.attrField !== 'ZRLX') {
|
||
twoOptions.push({
|
||
value: item.attrField,
|
||
label: item.attrName,
|
||
selVal: item.selVal,
|
||
type: item.attrType,
|
||
disabled: false,
|
||
__wx__: item
|
||
})
|
||
}
|
||
})
|
||
this.twoOptions = twoOptions
|
||
// this.resolveFormFieldList()
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
/**
|
||
* 展示位置
|
||
*/
|
||
queryDisplayLocation() {
|
||
return new Promise((resolve, reject) => {
|
||
this.$http.get('lawssBase/utArea/getAreaList', {
|
||
sarType: 'FOREIGN_STAND'
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
resolve(res.data || [])
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
// 新增时不用
|
||
selectStandMessage() {
|
||
return new Promise((resolve, reject) => {
|
||
this.$http.get('lawss/sarStandardsInfo/getStandInfoById', {id: this.sarStandardsInfoEO.id}, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
this.sarStandardsInfoEO = res.data || []
|
||
// 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 !== null && 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(',')
|
||
}
|
||
Object.keys(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)
|
||
})
|
||
})
|
||
},
|
||
resolveFormFieldList(isEdit) {
|
||
const data = this.formFieldListData
|
||
this.formFieldList = data.map((item) => {
|
||
if (item.attrType === 'SEL_OPTION' || item.attrType === 'SEL_OPTS') {
|
||
if (item.attrField === 'WSSMR') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["WSSMR"]
|
||
})
|
||
} else if (item.attrField === 'QCDW') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["QCDW"]
|
||
})
|
||
} else if (item.attrField === 'CYSD') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["WSCYSD"]
|
||
})
|
||
} else if (item.attrField === 'CLLX') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["ENERGYTYPES"]
|
||
})
|
||
} else if (item.attrField === 'NYLX') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["NYLXCLASS"]
|
||
})
|
||
} else if (item.attrField === 'SYCPX') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["SYCPXCLASS"]
|
||
})
|
||
} else if (item.attrField === 'SYRZ') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["SYRZCLASS"]
|
||
})
|
||
} else if (item.attrField === 'ZRBM') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["ZRBMCLASS"]
|
||
})
|
||
} else if (item.attrField === 'ZRGCS') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["ZRGCSCLASS"]
|
||
})
|
||
} else if (item.attrField === 'TXLB') {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions["TXLBCLASS"]
|
||
})
|
||
} else {
|
||
return Object.assign({}, item, {
|
||
options: this.allSelectOptions[item.selVal]
|
||
})
|
||
}
|
||
} else {
|
||
return item
|
||
}
|
||
})
|
||
// 处理时间格式的数据
|
||
data.forEach(item => {
|
||
if (item.attrType === 'DATE_PICKER') {
|
||
const date = this.sarStandardsInfoEO[item.attrField] ? new Date(this.sarStandardsInfoEO[item.attrField]) : ''
|
||
this.$set(this.sarStandardsInfoEO, item.attrField, date)
|
||
} else {
|
||
this.$set(this.sarStandardsInfoEO, item.attrField, this.sarStandardsInfoEO[item.attrField] || '')
|
||
}
|
||
})
|
||
this.resolveFormFieldListRules(isEdit)
|
||
},
|
||
/**
|
||
* 生成校验规则
|
||
*/
|
||
resolveFormFieldListRules(isEdit) {
|
||
this.reloadAddForm = false
|
||
const formFieldList = this.formFieldList
|
||
const rules = {...this.defaultAddFormFieldRules}
|
||
formFieldList.forEach((item) => {
|
||
const rule = []
|
||
if (item.isMust === '0' && isEdit !== '0') {
|
||
if (item.attrType === 'DATE_PICKER') {
|
||
rule.push({required: true, type: 'date', message: `${item.attrName}不能为空`, trigger: 'blur'})
|
||
} else if (item.attrType === 'SEL_OPTION') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'DATE_PIC_OPTS') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'INPUT_NUM') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'blur'})
|
||
} else if (item.attrType === 'SEL_OPTS') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'INPUT_STR') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
}
|
||
}
|
||
// isEdit 为0 标准状态不是必填
|
||
if (isEdit === '0') {
|
||
rules.standState = [{required: false, message: '标准状态不能为空', trigger: 'change'}]
|
||
rules.issueTime = [{required: false, message: '发布日期不能为空', trigger: 'change'}]
|
||
}
|
||
if (item.attrLen && item.attrType !== 'INPUT_NUM' && item.attrType !== 'DATE_PICKER' && item.attrType !== 'SEL_OPTION' && item.attrType !== 'SEL_OPTS' && item.attrType !== 'DATE_PIC_OPTS') {
|
||
if (item.attrField === 'DTBJH' || item.attrField === 'YYBJ') {
|
||
rule.push({type: 'string', max: 100, message: `${item.attrName}不能超过100个字符`, trigger: 'blur'})
|
||
} else {
|
||
rule.push({
|
||
type: 'string',
|
||
max: item.attrLen,
|
||
message: `${item.attrName}不能超过${item.attrLen}个字符`,
|
||
trigger: 'blur'
|
||
})
|
||
}
|
||
}
|
||
if (item.attrField === 'DTBJH' || item.attrField === 'YYBJ' || item.attrField === 'BYYBJ' || item.attrField === 'CBBH' || item.attrField === 'DXBZ') {
|
||
if (item.attrField === 'CBBH') {
|
||
rule.push({type: 'string', validator: this.verify.validateStandardItemNoRepeat, trigger: 'blur'})
|
||
} else {
|
||
rule.push({type: 'string', validator: this.verify.validateStandardItem, trigger: 'blur'})
|
||
}
|
||
}
|
||
if (rule.length > 0) {
|
||
// this.$set(this.rules, item.attrField, rule)
|
||
rules[item.attrField] = rule
|
||
}
|
||
})
|
||
// this.rules = rules
|
||
this.$set(this, 'sarStandardsInfoRules', rules)
|
||
|
||
setTimeout(() => {
|
||
this.reloadAddForm = true
|
||
}, 1000)
|
||
// this.$nextTick(() => {
|
||
// this.$refs['sarStandardsInfoForm'].resetFields()
|
||
// })
|
||
},
|
||
/**
|
||
* 是否添加进标准法规清单change事件
|
||
* 动态改变必填项
|
||
* */
|
||
isRegulationsChange(val) {
|
||
if (val === '0') {
|
||
const formFieldList = this.formFieldList
|
||
const rules = {...this.defaultAddFormFieldRules}
|
||
formFieldList.forEach((item) => {
|
||
const rule = []
|
||
if (item.isMust === '0') {
|
||
if (item.attrType === 'DATE_PICKER') {
|
||
rule.push({required: false, type: 'date', message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'SEL_OPTION') {
|
||
rule.push({required: false, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'DATE_PIC_OPTS') {
|
||
rule.push({required: false, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'INPUT_NUM') {
|
||
rule.push({required: false, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'SEL_OPTS') {
|
||
rule.push({required: false, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
}
|
||
}
|
||
if (item.attrLen && item.attrType !== 'INPUT_NUM' && item.attrType !== 'DATE_PICKER' && item.attrType !== 'SEL_OPTION' && item.attrType !== 'SEL_OPTS' && item.attrType !== 'DATE_PIC_OPTS') {
|
||
rule.push({
|
||
type: 'string',
|
||
max: item.attrLen,
|
||
message: `${item.attrName}不能超过${item.attrLen}个字符`,
|
||
trigger: 'change'
|
||
})
|
||
}
|
||
if (rule.length > 0) {
|
||
rules[item.attrField] = rule
|
||
}
|
||
})
|
||
// rules.standState = [{required: false, message: '标准状态不能为空', trigger: 'change'}]
|
||
rules.issueTime = [{required: false, message: '发布日期不能为空', trigger: 'change'}]
|
||
this.$set(this, 'sarStandardsInfoRules', rules)
|
||
this.$nextTick(() => {
|
||
this.$refs.sarStandardsInfoForm.clearValidate()
|
||
})
|
||
} else {
|
||
const formFieldList = this.formFieldList
|
||
const rules = {...this.defaultAddFormFieldRules}
|
||
formFieldList.forEach((item) => {
|
||
const rule = []
|
||
if (item.isMust === '0') {
|
||
if (item.attrType === 'DATE_PICKER') {
|
||
rule.push({required: true, type: 'date', message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'SEL_OPTION') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'DATE_PIC_OPTS') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'INPUT_NUM') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'SEL_OPTS') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
} else if (item.attrType === 'INPUT_STR') {
|
||
rule.push({required: true, message: `${item.attrName}不能为空`, trigger: 'change'})
|
||
}
|
||
}
|
||
if (item.attrLen && item.attrType !== 'INPUT_NUM' && item.attrType !== 'DATE_PICKER' && item.attrType !== 'SEL_OPTION' && item.attrType !== 'SEL_OPTS' && item.attrType !== 'DATE_PIC_OPTS') {
|
||
rule.push({
|
||
type: 'string',
|
||
max: item.attrLen,
|
||
message: `${item.attrName}不能超过${item.attrLen}个字符`,
|
||
trigger: 'change'
|
||
})
|
||
}
|
||
if (rule.length > 0) {
|
||
rules[item.attrField] = rule
|
||
}
|
||
})
|
||
// rules.standState = [{required: true, message: '标准状态不能为空', trigger: 'change'}]
|
||
rules.issueTime = [{required: true, message: '发布日期不能为空', trigger: 'change'}]
|
||
this.$set(this, 'sarStandardsInfoRules', rules)
|
||
this.$nextTick(() => {
|
||
this.$refs.sarStandardsInfoForm.clearValidate()
|
||
})
|
||
}
|
||
},
|
||
// 获取工作组信息下拉框信息
|
||
getGzzOption() {
|
||
this.$http.get('lawss/sarGroupMenu/queryGroup', '', {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
let gzzxxOptions = []
|
||
res.data.map(item => {
|
||
gzzxxOptions.push({
|
||
value: item.id,
|
||
label: item.menuName
|
||
})
|
||
})
|
||
this.allSelectOptions.GZZXX = gzzxxOptions
|
||
}
|
||
})
|
||
},
|
||
getDept() {
|
||
return new Promise((resolve, reject) => {
|
||
let url = 'sys/org/getTree'
|
||
this.$http.get(url, {}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
let zNodesDept = []
|
||
res.data.forEach((item, i) => {
|
||
let zObj = {}
|
||
// 该节点为机构
|
||
zObj.name = item.orgName
|
||
zObj.icon = 'static/images/dept.png'
|
||
// zObj.isParent = true
|
||
zObj.shotName = item.shotName
|
||
zObj.remarks = item.remarks
|
||
zObj.id = item.id
|
||
zObj.pId = item.pId
|
||
zNodesDept[i] = zObj
|
||
})
|
||
this.orgData = zNodesDept
|
||
resolve(res.data)
|
||
}
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
formatIssueDate(str) {
|
||
const momentDate = this.$moment(str)
|
||
if (momentDate.isValid()) {
|
||
return this.$moment(str).format('YYYY-MM-DD')
|
||
} else {
|
||
return str
|
||
}
|
||
},
|
||
formatText(str) {
|
||
return formatText(str)
|
||
},
|
||
onChecked() {
|
||
this.sarStandardsInfoEO.FO = ''
|
||
this.sarStandardsInfoEO.XMPGJS = ''
|
||
},
|
||
// 编辑时文件上传成功更改标准状态
|
||
fileSuccess(boolean) {
|
||
// 判断当前是新增还是编辑
|
||
if (this.addOrUPdateFlag === 2) {
|
||
let sarStandardsInfoEO = this.sarStandardsInfoEO
|
||
let standState = sarStandardsInfoEO.standState
|
||
// 判断当前标准状态是否是:草稿、征求意见稿、送审稿、报批稿、发布稿
|
||
// switch循环已上传文件对应状态
|
||
switch (standState) {
|
||
case 'RADYSUBMIT':
|
||
if (sarStandardsInfoEO.FBGBJBD) {
|
||
sarStandardsInfoEO.standState = 'FJNVYX9Q7J'
|
||
}
|
||
break
|
||
case 'SUBMIT':
|
||
if (sarStandardsInfoEO.FBGBJBD) {
|
||
sarStandardsInfoEO.standState = 'FJNVYX9Q7J'
|
||
break
|
||
}
|
||
if (sarStandardsInfoEO.BPG) {
|
||
sarStandardsInfoEO.standState = 'RADYSUBMIT'
|
||
}
|
||
break
|
||
case 'ADVICE':
|
||
if (sarStandardsInfoEO.FBGBJBD) {
|
||
sarStandardsInfoEO.standState = 'FJNVYX9Q7J'
|
||
break
|
||
}
|
||
if (sarStandardsInfoEO.BPG) {
|
||
sarStandardsInfoEO.standState = 'RADYSUBMIT'
|
||
break
|
||
}
|
||
if (sarStandardsInfoEO.SSG) {
|
||
sarStandardsInfoEO.standState = 'SUBMIT'
|
||
}
|
||
break
|
||
case 'DRAFT':
|
||
if (sarStandardsInfoEO.FBGBJBD) {
|
||
sarStandardsInfoEO.standState = 'FJNVYX9Q7J'
|
||
break
|
||
}
|
||
if (sarStandardsInfoEO.BPG) {
|
||
sarStandardsInfoEO.standState = 'RADYSUBMIT'
|
||
break
|
||
}
|
||
if (sarStandardsInfoEO.SSG) {
|
||
sarStandardsInfoEO.standState = 'SUBMIT'
|
||
break
|
||
}
|
||
if (sarStandardsInfoEO.ZQYJG) {
|
||
sarStandardsInfoEO.standState = 'ADVICE'
|
||
}
|
||
break
|
||
}
|
||
}
|
||
}
|
||
},
|
||
computed: {
|
||
// 是否拥有拖拽权限
|
||
hasPermissionDrag() {
|
||
let has = false
|
||
let permissionList = this.$store.getters.getMenuList
|
||
permissionList.map((menu) => {
|
||
if (menu.id === '4EN5WW694V') {
|
||
has = true
|
||
}
|
||
})
|
||
return has
|
||
},
|
||
addBtnDisabled() {
|
||
if (this.selectSarMenu.id === 'wdsc' ||
|
||
this.selectSarMenu.id === 'gxhbq' ||
|
||
this.selectSarMenu.pId === 'gxhbq') {
|
||
return true
|
||
} else {
|
||
return false
|
||
}
|
||
}
|
||
},
|
||
async mounted() {
|
||
// 进入页面后查询树形结构目录
|
||
this.menuTreeLoading = true
|
||
await this.selectMenu()
|
||
this.menuTreeLoading = false
|
||
this.treeReload = true
|
||
// 从数据库中查询各下拉框数据
|
||
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
||
_this: this
|
||
}, res => {
|
||
this.allSelectOptions = res.data || {}
|
||
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
||
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
|
||
this.standStateOptions = res.data.WBZTCLASS // 文本状态
|
||
this.standSystemOptions = res.data.BZTXCLASS // 标准体系
|
||
this.categoryOptions = res.data.NYLXCLASS // 能源类型
|
||
this.applyAuthOptions = res.data.SYRZCLASS // 适用认证
|
||
this.sycpxOptions = res.data.SYCPXCLASS // 适用产品线
|
||
this.zrbmOptions = res.data.ZRBMCLASS // 责任部门
|
||
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
|
||
this.txlbOptions = res.data.TXLBCLASS // 体系类别
|
||
this.countryOptions = res.data.COUNTRY
|
||
this.regionOptions = res.data.REGION // 区域
|
||
this.applyArcticOptions = res.data.ENERGYTYPES // 根据需求文档,产品类别对应标准属性中的“适用车型”
|
||
this.adoptExtentOptions = res.data.DEGREESTANDARD
|
||
this.emergyKindOptions = res.data.ENERGYTYPES
|
||
this.assemClassOptions = res.data.ASSEMCLASSIFY // 总成分类
|
||
this.categoryConfigOptions = res.data.CATEGORY
|
||
this.standAttributeList = res.data.RULETYPE
|
||
this.qcdwOptions = res.data.QCDW
|
||
this.cysdOptions = res.data.WSCYSD;
|
||
this.nylxOptions = res.data.NYLXCLASS;//能源类型
|
||
this.syrzOptions = res.data.SYRZCLASS;//适用认证
|
||
this.gkglbmOptions = res.data.GKGLBM;//归口管理部门
|
||
|
||
this.getGzzOption()
|
||
this.setMap(this.standStateOptions)
|
||
}, e => {
|
||
})
|
||
this.getDomesticStandardTable()
|
||
// 加载所有的部门
|
||
this.getOrgTreeSource()
|
||
// 加载动态表单数据
|
||
this.getAddFormFieldList()
|
||
this.getDept()
|
||
this.busVsFunc()
|
||
this.modelFunc()
|
||
},
|
||
destroyed() {
|
||
this.allSelectOptions = {}
|
||
this.countryOptions = []
|
||
this.regionOptions = []
|
||
this.standSortOptions = []
|
||
this.applyArcticOptions = []
|
||
this.standStateOptions = []
|
||
this.standNatureOptions = []
|
||
this.adoptExtentOptions = []
|
||
this.emergyKindOptions = []
|
||
this.applyAuthOptions = []
|
||
this.categoryOptions = []
|
||
this.assemClassOptions = []
|
||
this.categoryConfigOptions = []
|
||
this.standAttributeList = []
|
||
this.zNodesS = []
|
||
this.zNodesSItem = []
|
||
this.searchInlandNodes = []
|
||
this.orgData = []
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="less" scoped>
|
||
/deep/ .icon-tree {
|
||
margin: 0 5px 0 10px;
|
||
position: relative;
|
||
background: url('~@/assets/images/shangqi/img/tree-add.png');
|
||
background-size: 100% 100%;
|
||
}
|
||
|
||
/deep/ .expanded {
|
||
background: url('~@/assets/images/shangqi/img/tree-sub.png');
|
||
background-size: 100% 100%;
|
||
}
|
||
|
||
/deep/ .is-leaf {
|
||
background-image: none;
|
||
background-size: 100% 100%;
|
||
}
|
||
|
||
/deep/ .is-leaf-none {
|
||
position: relative;
|
||
display: inline-block;
|
||
width: 15px;
|
||
height: 15px;
|
||
background: url('~@/assets/images/shangqi/img/none-file.png');
|
||
background-size: 100% 100%;
|
||
}
|
||
|
||
/deep/ .is-show {
|
||
position: relative;
|
||
display: inline-block;
|
||
width: 15px;
|
||
height: 15px;
|
||
background: url('~@/assets/images/shangqi/img/tree.png');
|
||
background-size: 100% 100%;
|
||
}
|
||
|
||
/deep/ .tree-line {
|
||
.el-tree-node {
|
||
position: relative;
|
||
padding-left: 0px; // 缩进量
|
||
}
|
||
|
||
.el-tree-node__children {
|
||
padding-left: 16px; // 缩进量
|
||
}
|
||
|
||
// 竖线
|
||
.el-tree-node::before {
|
||
content: "";
|
||
height: 100%;
|
||
width: 1px;
|
||
position: absolute;
|
||
left: -3px;
|
||
top: -26px;
|
||
border-width: 1px;
|
||
border-left: 1px dashed #858990e0;
|
||
}
|
||
|
||
// 当前层最后一个节点的竖线高度固定
|
||
.el-tree-node:last-child::before {
|
||
height: 38px; // 可以自己调节到合适数值
|
||
}
|
||
|
||
// 横线
|
||
.el-tree-node::after {
|
||
content: "";
|
||
width: 11px;
|
||
height: 20px;
|
||
position: absolute;
|
||
left: -3px;
|
||
top: 12px;
|
||
border-width: 1px;
|
||
border-top: 1px dashed #858990e0;
|
||
}
|
||
|
||
// 去掉最顶层的虚线,放最下面样式才不会被上面的覆盖了
|
||
& > .el-tree-node::after {
|
||
border-top: none;
|
||
}
|
||
|
||
& > .el-tree-node::before {
|
||
border-left: none;
|
||
}
|
||
|
||
// 展开关闭的icon
|
||
.el-tree-node__expand-icon {
|
||
font-size: 16px;
|
||
// 叶子节点(无子节点)
|
||
&.is-leaf {
|
||
color: transparent;
|
||
// display: none; // 也可以去掉
|
||
}
|
||
}
|
||
}
|
||
</style>
|
||
<style lang="less" scoped>
|
||
@import '~@/assets/styles/mixins';
|
||
@import '~@/assets/styles/style';
|
||
|
||
#foreignStandardsAndRegulations {
|
||
//background: #fff;
|
||
display: flex;
|
||
height: 100%;
|
||
position: relative;
|
||
|
||
.tree-content {
|
||
background: #fff;
|
||
width: 20%;
|
||
position: relative;
|
||
|
||
.tree {
|
||
/deep/ .el-card__body {
|
||
padding: 0 !important;
|
||
}
|
||
|
||
.el-card {
|
||
min-width: min-content;
|
||
}
|
||
height: 95%;
|
||
width: calc(~'100% - 15px');
|
||
position: absolute;
|
||
left: 0;
|
||
}
|
||
|
||
.tree-collapse {
|
||
position: absolute;
|
||
right: 0;
|
||
}
|
||
}
|
||
|
||
.tree-right {
|
||
overflow-y: hidden;
|
||
padding: 0;
|
||
position: relative;
|
||
width: 100%;
|
||
height: 100%;
|
||
display: flex;
|
||
flex-direction: column;
|
||
|
||
.content {
|
||
display: flex;
|
||
flex-direction: column;
|
||
position: relative;
|
||
flex: auto;
|
||
|
||
.table-wrap {
|
||
flex: auto;
|
||
overflow: hidden;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.pagination {
|
||
position: static;
|
||
|
||
/deep/ .pagination-slot {
|
||
padding: 0;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
.tree-close {
|
||
.tree {
|
||
left: -200px !important;
|
||
}
|
||
|
||
.tree-right {
|
||
width: calc(~'100% - 15px') !important;
|
||
}
|
||
|
||
.side-bar-collapse {
|
||
background: #5596CC !important;
|
||
color: #FFF;
|
||
}
|
||
}
|
||
|
||
.tree-closed {
|
||
width: 15px !important;
|
||
}
|
||
|
||
.el-popover {
|
||
height: 200px;
|
||
}
|
||
|
||
.el-col-12 {
|
||
//width: 50%;
|
||
//white-space: nowrap;
|
||
}
|
||
|
||
.form-upload-btn {
|
||
width: 224px;
|
||
//line-height: 20px;
|
||
}
|
||
|
||
.el-drawer__wrapper {
|
||
.demo-drawer-content {
|
||
.drawer-content {
|
||
//height: calc(~'100% - 52px - 56px');
|
||
flex: auto;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
.el-textarea__inner {
|
||
line-height: 28px !important;
|
||
}
|
||
|
||
.btn-col {
|
||
padding-top: 11px;
|
||
}
|
||
</style>
|
||
<style lang="less" scoped>
|
||
#foreignStandardsAndRegulations {
|
||
height: 100%;
|
||
|
||
.tools-bar-wrapper {
|
||
align-items: start;
|
||
margin-bottom: 5px;
|
||
}
|
||
|
||
.content {
|
||
height: calc(~'100% - 53px - 56px');
|
||
background-color: #fff;
|
||
padding: 0 10px;
|
||
|
||
.table {
|
||
}
|
||
}
|
||
|
||
.draw-form-item {
|
||
/deep/ .el-form-item__content {
|
||
//width: 220px;
|
||
}
|
||
}
|
||
|
||
.config-stands {
|
||
/deep/ .el-form-item {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.pagination {
|
||
bottom: 50px;
|
||
}
|
||
}
|
||
|
||
.config-drawer {
|
||
margin-top: 5px;
|
||
|
||
.content {
|
||
padding: 15px 0 0 0px;
|
||
|
||
.el-table {
|
||
overflow-y: auto;
|
||
}
|
||
}
|
||
}
|
||
|
||
.advanced-class {
|
||
visibility: hidden;
|
||
}
|
||
|
||
.advanced-one {
|
||
width: 80px;
|
||
}
|
||
|
||
.advanced-two {
|
||
//
|
||
}
|
||
|
||
.advancedSearch-btn {
|
||
padding: 12px 12px;
|
||
color: #ffffff;
|
||
background: #409EFF;
|
||
border: none;
|
||
border-radius: 20px;
|
||
}
|
||
|
||
.advancedSearch-btn-reduce {
|
||
padding: 12px 12px;
|
||
color: #999;
|
||
background: #fff;
|
||
border: 1px solid #DCDFE6;
|
||
border-radius: 20px;
|
||
}
|
||
|
||
button.el-button.advancedSearch-btn-reduce.el-button--default {
|
||
margin-left: 0;
|
||
}
|
||
|
||
.advance-dialog {
|
||
.advance-dialog-form {
|
||
/deep/ input.el-input__inner {
|
||
border-radius: 20px;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
::v-deep .el-drawer__header {
|
||
& > span:first-child {
|
||
outline: none !important;
|
||
}
|
||
}
|
||
|
||
::v-deep .el-drawer {
|
||
outline: none !important;
|
||
}
|
||
|
||
.label-input-form {
|
||
&.table-lattice {
|
||
/deep/ .el-form-item__label {
|
||
width: 100px;
|
||
height: 30px;
|
||
border: 1px solid #DCDFE6;
|
||
border-right: none;
|
||
line-height: 30px;
|
||
text-align: center;
|
||
margin-top: 6px;
|
||
background: #F9F9F9;
|
||
overflow: hidden;
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis
|
||
}
|
||
|
||
/deep/ .el-input__inner {
|
||
height: 30px;
|
||
line-height: 30px;
|
||
border-radius: 0 !important;
|
||
}
|
||
}
|
||
|
||
.el-date-editor.el-input, .el-date-editor.el-input__inner {
|
||
width: 190px
|
||
}
|
||
|
||
.classDisplay {
|
||
display: none;
|
||
}
|
||
}
|
||
</style>
|