4526 lines
183 KiB
Vue
4526 lines
183 KiB
Vue
<!--企业标准库-->
|
||
<template>
|
||
<div id="EnterpriseStandardDatabase" :class="{ 'tree-close': sideClose }" class="v-class">
|
||
<!--左侧树-->
|
||
<div id="left" 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;overflow-y:auto">
|
||
<el-tree
|
||
ref="tree"
|
||
node-key="id"
|
||
class="tree-line"
|
||
icon-class="icon-tree"
|
||
:indent="0"
|
||
:props="props"
|
||
:data="treeList"
|
||
default-expanded-keys="['3']"
|
||
highlight-current
|
||
@node-click="treeClick"
|
||
:filter-node-method="filterNode">
|
||
<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 style="font-size:12px"> {{ 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 id="resize"></div>
|
||
<!--右侧内容-->
|
||
<div id="right" class="tree-right v-class">
|
||
<table-tools-bar
|
||
@search="getBussionStandTableBtn(sarBussionessSearch)"
|
||
@reset="clearAllSearch('sarBussionessSearch')"
|
||
>
|
||
<!-- 高级检索项 -->
|
||
<div slot="content">
|
||
<el-form :modal="sarBussionessSearch" :inline="true" class="high-search-form" label-width="110px">
|
||
<el-row>
|
||
<el-col :span="8">
|
||
<el-form-item label="标准号" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.standCode" placeholder="根据标准号查找" clearable :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="8">
|
||
<el-form-item label="中文名称" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.standName" placeholder="根据标准名称查找" clearable :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="8">
|
||
<el-form-item label="英文名称" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.standEnName" placeholder="根据英文名称查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
<el-row style="margin-top: 15px">
|
||
<!-- <el-col :span="8">-->
|
||
<!-- <el-form-item label="企标类别" class="search-item">-->
|
||
<!-- <el-select v-model="sarBussionessSearch.standSort" placeholder="根据企标类别查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)">-->
|
||
<!-- <el-option v-for="opt in standSortOptions" :value="opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<!-- </el-col>-->
|
||
<el-col :span="8">
|
||
<el-form-item label="代替标准号" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.replaceStandNum" placeholder="根据代替标准号查找" clearable :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="8">
|
||
<el-form-item label="被代替标准号" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.replacedStandNum" placeholder="根据被代替标准号查找" clearable :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
<el-row style="margin-top: 15px">
|
||
<el-col :span="8">
|
||
<el-form-item
|
||
label="起草部门"
|
||
prop="responsibleUnit"
|
||
class="search-item"
|
||
>
|
||
<el-input v-model="sarBussionessSearch.ZRBM" />
|
||
<!-- <el-popover-->
|
||
<!-- placement="bottom"-->
|
||
<!-- popper-class="user-dept-popper"-->
|
||
<!-- trigger="click"-->
|
||
<!-- :value="false"-->
|
||
<!-- >-->
|
||
<!-- <el-input-->
|
||
<!-- slot="reference"-->
|
||
<!-- v-model="sarBussionessSearch.orgName"-->
|
||
<!-- placeholder="根据责任部门查找"-->
|
||
<!-- readonly-->
|
||
<!-- clearable-->
|
||
<!-- id="deptBtn1"-->
|
||
<!-- />-->
|
||
<!-- <div class="api">-->
|
||
<!-- <laws-tree-->
|
||
<!-- :zNodes="searchNodes"-->
|
||
<!-- treeDivId="domesticTree1" deptSelect-->
|
||
<!-- showRMenu-->
|
||
<!-- @treeDblClick="SearchTreeDblClick"-->
|
||
<!-- class="ztree" style="width: 200px;height: 400px;overflow: auto">-->
|
||
<!-- </laws-tree>-->
|
||
<!-- </div>-->
|
||
<!-- </el-popover>-->
|
||
<!--<ul id="orgTree" class="ztree" style="width: 200px;height: 500px;overflow: auto"></ul>-->
|
||
</el-form-item>
|
||
|
||
</el-col>
|
||
<el-col :span="8">
|
||
<el-form-item label="标准状态" class="search-item">
|
||
<el-select v-model="sarBussionessSearch.standStatus" placeholder="根据标准状态查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)">
|
||
<el-option v-for="opt in standStateOptions" :value="opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="8">
|
||
<el-form-item label="SVPPS" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.SVPPS" placeholder="根据SVPPS查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
<el-row style="margin-top: 15px">
|
||
<el-col :span="8">
|
||
<el-form-item label="密级" class="search-item">
|
||
<el-select v-model="sarBussionessSearch.MJ" placeholder="根据密级查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)">
|
||
<el-option v-for="opt in allSelectOptions['MJ']" :value="opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="8">
|
||
<el-form-item label="授权" class="search-item">
|
||
<el-select v-model="sarBussionessSearch.SQ" placeholder="根据授权查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)">
|
||
<el-option v-for="opt in allSelectOptions['SHIFOU']" :value="opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
</el-form>
|
||
</div>
|
||
<div slot="left">
|
||
<div class="search-area">
|
||
<div class="left">
|
||
<el-form :modal="sarBussionessSearch" :inline="true" class="label-input-form" @submit.native.prevent="getBussionStandTableBtn(sarBussionessSearch)">
|
||
<!-- <el-form-item label="企标类别" class="search-item search-item-last">-->
|
||
<!-- <el-select v-model="sarBussionessSearch.standSort" placeholder="根据企标类别查找" clearable @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)">-->
|
||
<!-- <el-option v-for="opt in standSortOptions" :value="opt.value" :key="opt.value" :label="opt.label">{{ opt.label}}</el-option>-->
|
||
<!-- </el-select>-->
|
||
<!-- </el-form-item>-->
|
||
<el-formItem label="标准号" prop="numberName" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.standCode" clearable placeholder="根据标准号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"/>
|
||
</el-formItem>
|
||
<el-formItem label="标准名称" prop="standName" class="search-item">
|
||
<el-input v-model="sarBussionessSearch.standName" clearable placeholder="根据标准名称查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(sarBussionessSearch)"/>
|
||
</el-formItem>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
:loading="searching"
|
||
type="primary"
|
||
size="mini"
|
||
class="common-button-primary"
|
||
v-btn-permission="'d451a3e980f0536386a09443f40af772'"
|
||
@click="getBussionStandTableBtn(sarBussionessSearch)">
|
||
查询
|
||
</el-button>
|
||
<el-button
|
||
size="mini"
|
||
class="common-button-default"
|
||
v-btn-permission="'4819e2ee2a92fdcba7643e27dba4a41b'"
|
||
@click="clearAllSearch('sarBussionessSearch')">清空
|
||
</el-button>
|
||
<el-button size="mini" type="primary" class="common-button-primary"
|
||
v-btn-permission="'62f5582b71835d1a0486d3109ff24698'" @click="selectMoreBtn"><i
|
||
class="iconfont"></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" round @click="isAdvancedSearch = true">高级检索</el-button>-->
|
||
</div>
|
||
</table-tools-bar>
|
||
<div class="action-bar">
|
||
<!-- <el-button-->
|
||
<!-- type="primary"-->
|
||
<!-- class="common-button-primary add-button"-->
|
||
<!-- round-->
|
||
<!-- @click="addModal"-->
|
||
<!-- v-btn-permission="'RKK25EG2WD'"-->
|
||
<!-- ><i class="el-icon-plus"></i>新增</el-button>-->
|
||
<!-- <el-button-->
|
||
<!-- class="common-button-default in-button"-->
|
||
<!-- round-->
|
||
<!-- :loading="searching"-->
|
||
<!-- @click="addImportModal(1)"-->
|
||
<!-- v-btn-permission="'SKNTPDKZFF'"-->
|
||
<!-- ><i class="iconfont"></i>导入</el-button>-->
|
||
<el-button
|
||
class="common-button-default export-button"
|
||
round
|
||
@click="exportStandard"
|
||
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
|
||
v-btn-permission="'784d26f527a659eefe84d5e5a53deb96'"
|
||
><i class="iconfont"></i>导出</el-button>
|
||
<!-- <el-button-->
|
||
<!-- class="common-button-default"-->
|
||
<!-- round-->
|
||
<!-- :loading="searching"-->
|
||
<!-- @click="uploadImportModal(1)"-->
|
||
<!-- v-btn-permission="'afX1p2gh3c'"-->
|
||
<!-- ><i class="iconfont"></i>模板下载</el-button>-->
|
||
<el-button
|
||
class="common-button-default delete-button"
|
||
round
|
||
@click="deleteStand(2)"
|
||
v-btn-permission="'374205ce36a859a158ca4db196d151b7'"
|
||
><i class="iconfont"></i>批量删除
|
||
</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
round
|
||
@click="configurationStandard"
|
||
v-btn-permission="'381d34443196ca840118ae577ff30d5e'"
|
||
><i class="iconfont"></i>配置标准</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
round
|
||
@click="deleteEnterStandFromKind(2)"
|
||
v-btn-permission="'2d41ebdb6150ba1af52fd753086d77dc'"
|
||
><i class="iconfont"></i>移除标准</el-button>
|
||
<el-button class="common-button-default"
|
||
size="mini" @click="OCRAdd('2')"
|
||
v-btn-permission="'247cebaefa7cf1683092af160af11502'"><i class="iconfont"></i>编辑
|
||
</el-button>
|
||
</div>
|
||
<!--表格-->
|
||
<div class="content">
|
||
|
||
<el-table
|
||
ref="selection"
|
||
:data="standinfoList"
|
||
tooltip-effect="dark"
|
||
style="width:100%;"
|
||
:height="tableHeight"
|
||
border
|
||
class="drag-table"
|
||
:row-class-name="dragRowClassName"
|
||
@sort-change="sortChange"
|
||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||
fontWeight: 'bold', height: '48px'}"
|
||
@selection-change="standSelectChange"
|
||
>
|
||
<el-table-column
|
||
v-if="isPermission('374205ce36a859a158ca4db196d151b7,784d26f527a659eefe84d5e5a53deb96,2d41ebdb6150ba1af52fd753086d77dc')>0"
|
||
type="selection"
|
||
min-width="5%"
|
||
align="center">
|
||
</el-table-column>
|
||
|
||
<!-- <el-table-column-->
|
||
<!-- show-overflow-tooltip-->
|
||
<!-- prop="standSortShow"-->
|
||
<!-- label="企标类别"-->
|
||
<!-- width="110"-->
|
||
<!-- >-->
|
||
<!-- </el-table-column>-->
|
||
<el-table-column
|
||
show-overflow-tooltip
|
||
label="企标编号"
|
||
width="150"
|
||
>
|
||
<template slot-scope="scope">
|
||
<!-- <a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSortShow }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>-->
|
||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standCode }}</a>
|
||
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standCode }}</a>
|
||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standCode }}</a>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
show-overflow-tooltip
|
||
prop="standName"
|
||
label="中文名称"
|
||
min-width="300"
|
||
>
|
||
<template slot-scope="scope">
|
||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
show-overflow-tooltip
|
||
prop="standEnName"
|
||
label="英文名称"
|
||
min-width="300"
|
||
>
|
||
<template slot-scope="scope">
|
||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
|
||
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
|
||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="issueTime"
|
||
label="发布日期"
|
||
sortable
|
||
width="120"
|
||
>
|
||
<template slot-scope="scope">
|
||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="putTime"
|
||
label="实施日期"
|
||
sortable
|
||
width="120"
|
||
>
|
||
<template slot-scope="scope">
|
||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column
|
||
show-overflow-tooltip
|
||
sortable
|
||
prop="standStatusShow"
|
||
label="文本状态"
|
||
width="110"
|
||
>
|
||
|
||
<template slot-scope="scope">
|
||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||
{{scope.row.standStatusShow}}
|
||
</span>
|
||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||
{{scope.row.standStatusShow}}
|
||
</span>
|
||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||
{{scope.row.standStatusShow}}
|
||
</span>
|
||
</template>
|
||
</el-table-column>
|
||
|
||
<el-table-column fixed="right"
|
||
v-if="isPermission('d9730d984627af948053df56a2db7997,dd4ea796dab7a01b105ba657b1968a84,a7a38a95ea374695fc3128037f6feccf')>0" label="收藏" align="center" width="50">
|
||
<template slot-scope="scope">
|
||
<div v-if="isPermission('d9730d984627af948053df56a2db7997,dd4ea796dab7a01b105ba657b1968a84,a7a38a95ea374695fc3128037f6feccf') == 1"
|
||
@command="handleCommand"
|
||
>
|
||
<el-button type="text" v-btn-permission="'d9730d984627af948053df56a2db7997'"
|
||
v-if="scope.row.collectBtn"
|
||
@click="handleCommand([scope.row, '收藏'])"
|
||
>收藏
|
||
</el-button>
|
||
<el-button type="text" v-btn-permission="'d9730d984627af948053df56a2db7997'"
|
||
v-else
|
||
@click="handleCommand([scope.row, '取消收藏'])"
|
||
>取消收藏
|
||
</el-button>
|
||
<el-button type="text" @click="handleCommand([scope.row, '编辑'])"
|
||
v-btn-permission="'dd4ea796dab7a01b105ba657b1968a84'">编辑
|
||
</el-button>
|
||
<el-button type="text" @click="handleCommand([scope.row, '删除']) "
|
||
v-btn-permission="'a7a38a95ea374695fc3128037f6feccf'">删除
|
||
</el-button>
|
||
</div>
|
||
|
||
<div v-else>
|
||
|
||
<div @click.stop style="display: inline-block">
|
||
<el-dropdown trigger="click" @command="handleCommand">
|
||
<el-button title="收藏" class="collection-btn" icon="el-icon-star-off" v-btn-permission="'d9730d984627af948053df56a2db7997'"
|
||
v-if="scope.row.collectBtn"
|
||
@click="handleCommand([scope.row, '收藏'])"
|
||
>
|
||
</el-button>
|
||
<el-button title="取消收藏" class="collection-btn" icon="el-icon-star-on" v-btn-permission="'d9730d984627af948053df56a2db7997'"
|
||
v-else
|
||
@click="handleCommand([scope.row, '取消收藏'])"
|
||
>
|
||
</el-button>
|
||
<!-- <i class="iconfont"></i>-->
|
||
<!-- <el-dropdown-menu slot="dropdown">-->
|
||
<!-- <el-dropdown-item-->
|
||
<!-- v-if="scope.row.collectBtn"-->
|
||
<!-- :command="[scope.row, '收藏']"-->
|
||
<!-- v-btn-permission="'d9730d984627af948053df56a2db7997'"-->
|
||
<!-- >-->
|
||
<!-- 收藏-->
|
||
<!-- </el-dropdown-item>-->
|
||
<!-- <el-dropdown-item-->
|
||
<!-- v-else-->
|
||
<!-- :command="[scope.row, '取消收藏']"-->
|
||
<!-- v-btn-permission="'d9730d984627af948053df56a2db7997'"-->
|
||
<!-- >-->
|
||
<!-- 取消收藏-->
|
||
<!-- </el-dropdown-item>-->
|
||
<!-- <el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'dd4ea796dab7a01b105ba657b1968a84'">编辑</el-dropdown-item>-->
|
||
<!-- <!– <el-dropdown-item :command="[scope.row, '分享']" v-btn-permission="'ESPMBSD4ZP'">分享</el-dropdown-item>–>-->
|
||
<!-- <!– <el-dropdown-item :command="[scope.row, '授权']" v-btn-permission="'CWBPST294ZH7HSKD4452'" v-if="scope.row.attrInfoMap && scope.row.attrInfoMap.QBMJ === 'ACF675Z88W'">授权</el-dropdown-item>–>-->
|
||
<!-- <el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'a7a38a95ea374695fc3128037f6feccf'">删除</el-dropdown-item>-->
|
||
<!-- <!– <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>–>-->
|
||
<!-- </el-dropdown-menu>-->
|
||
</el-dropdown>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</template>
|
||
|
||
|
||
</el-table-column>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</el-table>
|
||
<pagination :page="tableFlag === '' ? sarBussionessSearch.page : tableFlag.page " :total="total"
|
||
@pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||
<loading :loading="loading">数据获取中</loading>
|
||
</div>
|
||
<!-- 新增、编辑模态窗 -->
|
||
<el-drawer :title="drawerTitle"
|
||
:visible.sync="modalshowflag"
|
||
:wrapperClosable="false"
|
||
@close="resetForm"
|
||
size="800px">
|
||
<!-- @on-visible-change="modalStandItemVisibleChange"-->
|
||
<!-- 新增样式 -->
|
||
<div class="demo-drawer-content">
|
||
<el-form
|
||
v-if="reloadAddForm && modalshowflag"
|
||
ref="sarBussionessStandForm"
|
||
:model="sarBussionessStandEO"
|
||
:rules="sarBussionessStandRules"
|
||
class="label-input-form"
|
||
>
|
||
<!-- <custom-input-for-standards-->
|
||
<!-- :config="{-->
|
||
<!-- attrName: '代替企标编号',-->
|
||
<!-- attrField: 'replaceStandNum',-->
|
||
<!-- }"-->
|
||
<!-- v-model="sarBussionessStandEO.replaceStandNum"-->
|
||
<!-- :disabled="formdisableflag"-->
|
||
<!-- ></custom-input-for-standards>-->
|
||
<!-- 动态数据-->
|
||
<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="displayLocation.label === '基础信息'" >
|
||
<el-form-item label="企标类别" prop="standSort" label-width="150px" class="add-form-item">
|
||
<el-select v-model="sarBussionessStandEO.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="sarBussionessStandEO.standNumber"
|
||
:maxlength="100"
|
||
placeholder="请输入企标编号"
|
||
clearable
|
||
></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="标准年份" prop="standYear" label-width="150px" class="add-form-item">
|
||
<el-input v-model.number="sarBussionessStandEO.standYear"
|
||
placeholder="请输入标准年份"
|
||
value-format="yyyy-MM-dd"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="企标名称" prop="standName" label-width="150px" class="add-form-item">
|
||
<el-input v-model="sarBussionessStandEO.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="sarBussionessStandEO.standEnName"
|
||
placeholder="请输入企标英文名称"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。"
|
||
prop="textStatusBuss" label-width="150px" class="add-form-item">
|
||
<template slot="label">文本状态</template>
|
||
<el-select v-model="sarBussionessStandEO.textStatusBuss"
|
||
placeholder="请选择文本状态"
|
||
clearable>
|
||
<el-option
|
||
v-for="opt in standStateOptions"
|
||
:key="opt.value"
|
||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
||
>
|
||
{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="发布日期" prop="issueTime" label-width="150px" class="add-form-item">
|
||
<el-datePicker v-model="sarBussionessStandEO.issueTime"
|
||
:editable="false"
|
||
placeholder="请选择发布日期"></el-datePicker>
|
||
</el-form-item>
|
||
<el-form-item label="企标实施日期" prop="putTime" label-width="150px" class="add-form-item">
|
||
<el-datePicker v-model="sarBussionessStandEO.putTime"
|
||
:editable="false"
|
||
placeholder="请选择实施日期"
|
||
clearable
|
||
></el-datePicker>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-for="field in displayLocation.child">
|
||
<template v-if="field.attrField === 'SVPPS'">
|
||
<custom-SVPPS
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-SVPPS>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'INPUT_STR' && field.attrField !== 'XGLC' && field.attrField !== 'XGJLBUSS' && field.attrField !== 'XGJH'">
|
||
<template v-if="field.attrField === 'GFXYYWJ'">
|
||
<custom-input-for-standards
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-input-for-standards>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'FSRQBUSS'">
|
||
<custom-input
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="true"
|
||
></custom-input>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'TXLBBUSS'">
|
||
<el-form-item
|
||
prop="TXLBBUSS"
|
||
label-width="150px"
|
||
class="add-form-item"
|
||
>
|
||
<template slot="label">体系类别</template>
|
||
<el-input v-model="sarBussionessStandEO.TXLBBUSS" placeholder="选择体系类别" @click.native="choiceZRR1('TXLBBUSS', '体系类别', sarBussionessStandEO.TXLBBUSS)"></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'VPPSBMBUSS'">
|
||
<el-form-item
|
||
prop="VPPSBMBUSS"
|
||
label-width="150px"
|
||
class="add-form-item"
|
||
>
|
||
<template slot="label">关联模块--VPPS编码</template>
|
||
<el-input v-model="sarBussionessStandEO.VPPSBMBUSS" placeholder="选择VPPS编码" @click.native="choiceZRR2('VPPSBMBUSS', 'VPPS编码', sarBussionessStandEO.VPPSBMBUSS,true)"></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'VPPSCNBUSS'">
|
||
<el-form-item title="关联模块--中文名称" label="关联模块--中文名称" label-width="150px" prop="VPPSCNBUSS" class="add-form-item">
|
||
<el-input
|
||
v-model="sarBussionessStandEO.VPPSCNBUSS" disabled
|
||
clearable
|
||
></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'DTQBBHBUSS'">
|
||
<custom-input-for-standards
|
||
:key="field.attrField"
|
||
:config="field"
|
||
:class="field.attrField === 'BYYBJ' ? 'classDisplay' : ''"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
@popoverHide="popoverHideQuery"
|
||
></custom-input-for-standards>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'BDTQBBHBUSS'">
|
||
<custom-input
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="true"
|
||
></custom-input>
|
||
</template>
|
||
<template v-else-if="field.attrField === 'XCSJBUSS'">
|
||
<custom-input
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="true"
|
||
></custom-input>
|
||
</template>
|
||
<template v-else>
|
||
<custom-input
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-input>
|
||
</template>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'DATE_PICKER'">
|
||
<custom-date-pick
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-date-pick>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'FILE'">
|
||
<custom-file
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-file>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'TEXTAREA'">
|
||
<custom-textarea
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-textarea>
|
||
</template>
|
||
<template v-else-if="field.selVal === 'ORGLIST' || field.selVal === 'USERLIST' || field.selVal === 'ROLELIST'">
|
||
<template v-if="field.attrField === 'ZQCBM' || field.attrField === 'ZRBM'">
|
||
<el-form-item :label="field.attrName" :prop="field.attrField" label-width="150px" class="add-form-item form-item-disabled">
|
||
<input
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
type="hidden"
|
||
></input>
|
||
<el-input
|
||
v-model="field.valueName"
|
||
disabled
|
||
placeholder="选择对应起草人后自动带出"
|
||
></el-input>
|
||
</el-form-item>
|
||
</template>
|
||
<template v-else>
|
||
<custom-org
|
||
v-if="field.attrField !== 'WFSPJS'"
|
||
:key="field.attrField"
|
||
:config="field"
|
||
:zNodes="orgData"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
:data-model="sarBussionessStandEO"
|
||
@on-dept="(pOrgId, pOrgName) => onDept(pOrgId, pOrgName, field)"
|
||
></custom-org>
|
||
</template>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'SEL_OPTION'">
|
||
<custom-select
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag"
|
||
></custom-select>
|
||
</template>
|
||
<template v-else-if="field.attrType === 'SEL_OPTS'">
|
||
<custom-select-array
|
||
:key="field.attrField"
|
||
:config="field"
|
||
v-model="sarBussionessStandEO[field.attrField]"
|
||
:disabled="formdisableflag || field.attrField === 'YQLX'"
|
||
></custom-select-array>
|
||
</template>
|
||
</template>
|
||
</template>
|
||
</el-form>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button class="common-button-primary" icon="el-icon-check" type="primary" @click="saveOrUpdateStands" :loading="isSubmit">提交</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="resetForm">取消</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 导入模态窗 -->
|
||
<el-dialog width='400px' :visible.sync="importModalshowflag" title="导入文件">
|
||
<el-upload
|
||
multiple
|
||
drag
|
||
:action="importExcelUrl"
|
||
ref="importfile"
|
||
name="file"
|
||
accept=".ZIP, .zip"
|
||
:before-upload="beginImportFile"
|
||
:on-success="importFileSuccess"
|
||
:show-file-list="false"
|
||
>
|
||
<div style="padding: 20px 0">
|
||
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||
<p>点击或拖拽上传文件</p>
|
||
</div>
|
||
</el-upload>
|
||
</el-dialog>
|
||
<!-- 配置标准 -->
|
||
<el-drawer
|
||
title="配置标准"
|
||
:wrapperClosable="false"
|
||
:visible.sync="configStandFlag"
|
||
size="1200px"
|
||
@close="cancelConfigStand"
|
||
>
|
||
<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="standName" class="search-item">-->
|
||
<!-- <el-input v-model="sarConfigStandSearch.standName" @keyup.enter.native="searchConfiguraStand"-->
|
||
<!-- placeholder="根据标准名称查找" clearable/>-->
|
||
<!-- </el-formItem>-->
|
||
<el-formItem label="企标编号" prop="standCode" class="search-item">
|
||
<el-input v-model="sarConfigStandSearch.standCode" @keyup.enter.native="searchConfiguraStand"
|
||
placeholder="根据企标编号查找" clearable/>
|
||
</el-formItem>
|
||
<!-- <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="replaceStandNum" class="search-item">
|
||
<el-input v-model="sarConfigStandSearch.replaceStandNum" @keyup.enter.native="searchConfiguraStand" placeholder="根据代替企标编号查找" clearable :maxlength="100"/>
|
||
</el-formItem>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
type="primary"
|
||
class="common-button-primary"
|
||
round
|
||
:loading="searching"
|
||
@click="searchConfiguraStand">
|
||
查询
|
||
</el-button>
|
||
</el-form-item>
|
||
<el-form-item class="search-item btn-box">
|
||
<el-button
|
||
class="common-button-default"
|
||
round
|
||
@click="clearAllSearch(3)"
|
||
>
|
||
清空
|
||
</el-button>
|
||
</el-form-item>
|
||
</el-form>
|
||
</div>
|
||
</div>
|
||
<div class="drawer-content">
|
||
<el-table
|
||
ref="selection"
|
||
:data="configStandList"
|
||
tooltip-effect="dark"
|
||
style="width: 100%; flex: auto;"
|
||
height="100%"
|
||
border
|
||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||
@sort-change="sortChangeConfig"
|
||
@selection-change="selectConfigStandChange">
|
||
<el-table-column
|
||
type="selection"
|
||
width="55"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
show-overflow-tooltip
|
||
prop="standCode"
|
||
label="标准号"
|
||
align="center"
|
||
>
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="standName"
|
||
label="标准名称"
|
||
width="200"
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="issueTime"
|
||
label="发布日期"
|
||
width="180"
|
||
sortable
|
||
align="center">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="putTime"
|
||
label="实施日期"
|
||
width="180"
|
||
sortable
|
||
align="center">
|
||
</el-table-column>
|
||
<!-- <el-table-column-->
|
||
<!-- prop="standNatrueShow"-->
|
||
<!-- label="标准性质"-->
|
||
<!-- width="200"-->
|
||
<!-- align="center">-->
|
||
<!-- </el-table-column>-->
|
||
<el-table-column
|
||
prop="standStatusShow"
|
||
label="标准状态"
|
||
width="200"
|
||
align="center">
|
||
</el-table-column>
|
||
</el-table>
|
||
</div>
|
||
<pagination
|
||
style="position: relative;"
|
||
:page="configPage"
|
||
:pageSize="configRows"
|
||
:total="configTotal"
|
||
@pageChange="configuraPageChange"
|
||
@pageSizeChange="configuraPageSizeChange"></pagination>
|
||
<loading :loading="configLoading">加载中...</loading>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button
|
||
type="primary"
|
||
round class="common-button-primary"
|
||
icon="el-icon-check"
|
||
@click="saveConfigStand"
|
||
:loading="isSubmit"
|
||
>提交</el-button>
|
||
<el-button class="common-button-default" style="padding: 7px 12px;" icon="el-icon-close" type="primary"
|
||
round @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">
|
||
<el-formItem label="名称" prop="menuName" class="add-form-item" label-width="130px">
|
||
<el-input v-model="sarMenu.menuName" placeholder="请输入名称"></el-input>
|
||
</el-formItem>
|
||
<el-formItem label="序号" prop="displaySeq" class="add-form-item" label-width="130px">
|
||
<el-input v-model.number="sarMenu.displaySeq" placeholder="只允许输入正整数" maxlength="2"
|
||
></el-input>
|
||
</el-formItem>
|
||
<el-formItem label="备注" prop="remarks" class="add-form-item" label-width="130px">
|
||
<el-input v-model="sarMenu.remarks" placeholder="请输入备注信息"></el-input>
|
||
</el-formItem>
|
||
</el-form>
|
||
<div slot="footer" class="demo-drawer-footer">
|
||
<el-button type="primary" round class="common-button-primary" icon="el-icon-check" @click="newMenu" :loading="isSubmit">提交</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="resetTreeDialog">取消</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!-- 树----删除 -->
|
||
<el-dialog
|
||
title="确认删除"
|
||
width="300px"
|
||
:visible.sync="deleteMenuModal"
|
||
>
|
||
<p>该节点下有记录,是否删除?</p>
|
||
<div slot="footer">
|
||
<el-button class="common-button-default" @click="deleteMenuModal = false">取消</el-button>
|
||
<el-button class="common-button-primary" type="primary" @click="sureDeleteSarMenu">确定</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
<!--导出文件改名字模态框-->
|
||
<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 class="common-button-default" icon="el-icon-close" @click="cancal">取消</el-button>
|
||
<el-button type="primary" round class="common-button-primary" icon="el-icon-check" @click="exportTestItem">提交</el-button>
|
||
</span>
|
||
</el-dialog>
|
||
<!-- 分享 -->
|
||
<el-drawer title="分享标准" :visible.sync="drawerModal" width="300" :styles="drawerModalstyles" @close="treeCancel">
|
||
<div class="demo-drawer-content">
|
||
<dept-tree treeDivId="drawerModalTree"
|
||
ref="drawerModalTree"
|
||
@treeOnCheck="(checkedList) => treeOnCheck(checkedList)"
|
||
check-enable
|
||
allDept
|
||
showUser
|
||
:editable="false"
|
||
style="padding: 0 15px">
|
||
</dept-tree>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button type="primary" round class="common-button-primary" icon="el-icon-check" @click="shareStandardBt">提交</el-button>
|
||
<el-button class="common-button-default" icon="el-icon-close" @click="treeCancel">取消</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!-- 导入失败-->
|
||
<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" round class="common-button-default" icon="el-icon-check" @click="importFailed = false">确认</el-button>
|
||
</div>
|
||
</el-dialog>
|
||
</div>
|
||
<el-drawer
|
||
title="高级搜索"
|
||
size="700px"
|
||
:wrapperClosable="false"
|
||
:visible.sync="isAdvancedSearch">
|
||
<div class="demo-drawer-content">
|
||
<el-form
|
||
:model="sarBussionessSearch"
|
||
:inline="true"
|
||
class="label-input-form table-lattice"
|
||
label-width="76px"
|
||
style="display: flex;flex-wrap: wrap">
|
||
<ProcessTitle>
|
||
<template slot="title">基础信息</template>
|
||
</ProcessTitle>
|
||
<div class="prc-content-border">
|
||
<el-row :gutter="24">
|
||
<el-col :span="12">
|
||
<el-form-item label="企标类别" title="企标类别" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.standSort" filterable clearable>
|
||
<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="中文名称" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.standName"
|
||
placeholder="请输入企标名称"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="英文名称" title="企标英文名称" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.standEnName"
|
||
placeholder="请输入企标英文名称"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="废止日期" class="add-form-item form-item-disabled">
|
||
<el-datePicker v-model="sarBussionessSearch.FZRQBUSS"
|
||
:editable="false"
|
||
placeholder="请选择废止日期"
|
||
value-format="yyyy-MM-dd"
|
||
clearable></el-datePicker>
|
||
</el-form-item>
|
||
<el-form-item label="复审日期" class="add-form-item form-item-disabled">
|
||
<el-datePicker v-model="sarBussionessSearch.FSRQBUSS"
|
||
:editable="false"
|
||
placeholder="请选择复审日期"
|
||
value-format="yyyy-MM-dd"
|
||
clearable></el-datePicker>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="12">
|
||
<el-form-item label="企标编号" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.standCode" clearable
|
||
placeholder="请输入企标编号"
|
||
@keyup.enter.native="getDomesticStandardTableBtn(sarBussionessSearch)"></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="标准年份" class="add-form-item form-item-disabled">
|
||
<el-input v-model.number="sarBussionessSearch.standYear"
|
||
placeholder="请输入标准年份"
|
||
value-format="yyyy-MM-dd"
|
||
clearable></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="文本状态" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.textStatusBuss"
|
||
placeholder="请选择文本状态"
|
||
clearable>
|
||
<el-option
|
||
v-for="opt in standStateOptions"
|
||
:key="opt.value"
|
||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
||
>
|
||
{{ opt.label }}
|
||
</el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="发布日期" class="add-form-item form-item-disabled">
|
||
<el-datePicker v-model="sarBussionessSearch.issueTime"
|
||
:editable="false"
|
||
placeholder="请选择发布日期"
|
||
value-format="yyyy-MM-dd"
|
||
clearable></el-datePicker>
|
||
</el-form-item>
|
||
<el-form-item label="实施日期" title="企标实施日期" class="add-form-item form-item-disabled">
|
||
<el-datePicker v-model="sarBussionessSearch.putTime"
|
||
:editable="false"
|
||
placeholder="请选择实施日期"
|
||
value-format="yyyy-MM-dd"
|
||
clearable
|
||
></el-datePicker>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
</div>
|
||
<ProcessTitle>
|
||
<template slot="title">适用范围</template>
|
||
</ProcessTitle>
|
||
<div class="prc-content-border">
|
||
<el-row :gutter="24">
|
||
<el-col :span="12">
|
||
<el-form-item label="起草部门" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.QCDW" filterable clearable>
|
||
<el-option
|
||
v-for="item in qcdwOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="适用车型" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.SYCXCLASS" filterable clearable>
|
||
<el-option
|
||
v-for="item in applyArcticOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="体系类别" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.TXLBBUSS" placeholder="选择体系类别" clearable @click.native="choiceZRR1('TXLBBUSS', '体系类别', sarBussionessStandEO.TXLBBUSS)"></el-input>
|
||
</el-form-item>
|
||
<el-form-item label="模块VPPS编码" title="模块VPPS编码" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.VPPSBMBUSS" placeholder="选择VPPS编码" @click.native="choiceZRR2('VPPSBMBUSS', 'VPPS编码', sarBussionessStandEO.VPPSBMBUSS,false)"></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="12">
|
||
<el-form-item label="起草人" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.QCRBUSS" filterable clearable>
|
||
<el-option
|
||
v-for="item in qcrOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="能源类型" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.NYLXCLASS" filterable clearable>
|
||
<el-option
|
||
v-for="item in categoryOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="适用产品线" title="适用产品线" class="add-form-item form-item-disabled">
|
||
<el-select v-model="sarBussionessSearch.SYCPXCLASS" filterable clearable>
|
||
<el-option
|
||
v-for="item in sycpxOptions"
|
||
placeholder="请选择"
|
||
:key="item.value"
|
||
:value="item.value"
|
||
:label="item.label"
|
||
></el-option>
|
||
</el-select>
|
||
</el-form-item>
|
||
<el-form-item label="模块中文名称" title="模块中文名称" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.VPPSCNBUSS" placeholder="请输入模块中文名称" clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
</div>
|
||
<ProcessTitle>
|
||
<template slot="title">关联信息</template>
|
||
</ProcessTitle>
|
||
<div class="prc-content-border">
|
||
<el-row :gutter="24">
|
||
<el-col :span="12">
|
||
<el-form-item label="代替企标编号" title="代替企标编号" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.DTQBBHBUSS" placeholder="请输入模块中文名称" clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="12">
|
||
<el-form-item label="被代替企标编号" title="被代替企标编号" class="add-form-item form-item-disabled">
|
||
<el-input v-model="sarBussionessSearch.BDTQBBHBUSS" placeholder="请输入模块中文名称" clearable></el-input>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
</div>
|
||
</el-form>
|
||
</div>
|
||
<div class="demo-drawer-footer">
|
||
<el-button
|
||
class="common-button-primary"
|
||
icon="el-icon-check"
|
||
type="primary"
|
||
@click="getBussionStandTableBtn(sarBussionessSearch,'','sel')">搜索
|
||
</el-button>
|
||
<el-button
|
||
class="common-button-default"
|
||
icon="el-icon-close"
|
||
@click="clearAllSearch('sarBussionessSearch')">取消
|
||
</el-button>
|
||
</div>
|
||
</el-drawer>
|
||
<!--高级查询-->
|
||
<!-- <AdvancedQuery-->
|
||
<!-- :isAdvancedSearch.sync="isAdvancedSearch"-->
|
||
<!-- :twoOptions="twoOptions"-->
|
||
<!-- :threeOptions="threeOptions"-->
|
||
<!-- @twoSelectChange="twoSelectChange"-->
|
||
<!-- @getDomesticStandardTableBtn="(advancedSearch) => getBussionStandTableBtn(sarBussionessSearch, advancedSearch)"-->
|
||
<!-- ></AdvancedQuery>-->
|
||
<!--企标编号生成组件-->
|
||
<GenerationNumber
|
||
:is-show.sync="isShow"
|
||
@isOk="isOk"
|
||
></GenerationNumber>
|
||
|
||
<!-- 授权人员(上汽全公司选人解决方案) -->
|
||
<!-- :max-selected="1"-->
|
||
<!-- max-selected-tips="采购处理人只能为一个人"-->
|
||
<org-table
|
||
title="人员授权"
|
||
:visible.sync="visibleOrgTable"
|
||
dialog-model
|
||
:config="orgTableConfig"
|
||
@confirm="handleOrgTableConfirm"
|
||
></org-table>
|
||
<!-- 分享 全部选人 -->
|
||
<org-table
|
||
:visible.sync="visibleShare"
|
||
title="分享人员"
|
||
dialog-model
|
||
:config="{
|
||
value: orgTableVal,
|
||
valueName: orgTableValName
|
||
}"
|
||
@confirm="isTreeOk"
|
||
></org-table>
|
||
<!-- 新建抽屉 -->
|
||
<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"
|
||
v-if="productModal"
|
||
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
|
||
:multiple=false
|
||
:lazy=false
|
||
:modalShowFlag="modalShowFlag1"
|
||
:drawerTitle="drawerTitle1"
|
||
width = "500"
|
||
:data="standSystemOptions"
|
||
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
|
||
:nodeKey="nodeKey" @popoverHide="popoverHide"></tree-select-new>
|
||
<tree-select-new
|
||
width = "500"
|
||
:lazy=true
|
||
:multiple="multipleFlag2"
|
||
:check-strictly=true
|
||
:modalShowFlag="modalShowFlag2"
|
||
:drawerTitle="drawerTitle"
|
||
:url="url"
|
||
:urlChild="urlChild"
|
||
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
|
||
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs"></tree-select-new>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
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 CustomInputForStandards from '@/components/CustomFormComponents/InputForStandardsForEnterprise'
|
||
import customSelectArray from '@/components/CustomFormComponents/SelectArray'
|
||
import CustomOrg from '@/components/CustomFormComponents/OrgTree'
|
||
import CustomSVPPS from '@/components/CustomFormComponents/SVPPS'
|
||
import TreeSelect from '@/components/treeSelect/treeSelect.vue';
|
||
import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
|
||
import ProcessTitle from '@/pages/processCenter/pages/components/ProcessTitle'
|
||
|
||
import {mapGetters} from 'vuex'
|
||
import store from "@/store";
|
||
export default {
|
||
name: 'EnterpriseStandardDatabase',
|
||
components: {
|
||
CustomFile,
|
||
CustomInput,
|
||
CustomTextarea,
|
||
CustomSearchSelect,
|
||
CustomDatePick,
|
||
CustomSelect,
|
||
CustomInputForStandards,
|
||
customSelectArray,
|
||
CustomOrg,
|
||
CustomSVPPS,
|
||
TreeSelect,
|
||
TreeSelectNew,
|
||
ProcessTitle
|
||
},
|
||
props: {
|
||
},
|
||
data () {
|
||
return {
|
||
OCRType: '',
|
||
OCRTitle: '',
|
||
ocrList: [],
|
||
orderBy: '',
|
||
nowOrder: '',
|
||
nowOrderBy: '',
|
||
props: {
|
||
label: 'menuName',
|
||
children: 'children'
|
||
},
|
||
defaultProps: {
|
||
children: 'children',
|
||
label: 'menuName'
|
||
},
|
||
|
||
advancedSearch:[],
|
||
nodeKey: 'id',
|
||
nodeKeyCode: 'code',
|
||
nodeKeyModel: 'model',
|
||
defaultCheckedKeys: [],
|
||
productModal: false, // 模态框是否打开
|
||
modalType: '',
|
||
productTitle: '', // 模态框标题
|
||
// 规范
|
||
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 : "INLAND_STAND",
|
||
menuName : "",
|
||
parentId : null,
|
||
parentIds : null,
|
||
parentIdsName : "",
|
||
displaySeq : "",
|
||
validFlag : "",
|
||
creationTime : "",
|
||
modifyTime : "",
|
||
remarks : "",
|
||
children : [],
|
||
// 模态框信息
|
||
dicTypeName: '',
|
||
showIndex: '',
|
||
// 描述
|
||
describes: '',
|
||
// 唯一辨识
|
||
dicId: ""
|
||
},
|
||
filterText: '', // 企业标准库过滤
|
||
treeList: [],
|
||
standId: '',
|
||
visibleOrgTable: false,
|
||
visibleShare: false,
|
||
orgTableVal: '',
|
||
orgTableValName: '',
|
||
orgTableConfig: {
|
||
value: '',
|
||
valueName: ''
|
||
},
|
||
// 代替标准号
|
||
replaceStandNumForm: {
|
||
standNumber: '',
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
total: 0,
|
||
standType: 'INLAND',
|
||
quoteIdList: '',
|
||
validFlag: '0'
|
||
},
|
||
// 一般检索搜索
|
||
standCommonlySearch: {
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
standType: 'INLAND',
|
||
validFlag: '0',
|
||
standSort: '',
|
||
standNumber: ''
|
||
},
|
||
replaceStandNumRow: [],
|
||
lawsExplainQuoteFormLoading: false,
|
||
replacePage: 1,
|
||
replaceTotal: 0,
|
||
replaceRows: 10,
|
||
quoteIdList1: '',
|
||
selectedListRep: [],
|
||
replaceStandNumModelNum: [],
|
||
sarType: 'BUSS',
|
||
dynamicFormField: [],
|
||
reloadAddForm: false,
|
||
showRegionOptions: [],
|
||
formFieldListData: {},
|
||
formFieldList: [],
|
||
allSelectOptions: {},
|
||
configPage: 1,
|
||
configPageNow: 1,
|
||
loading: false,
|
||
configTotal: 0,
|
||
configRows: this.$store.getters.userInfo.configContent,
|
||
saveExportType: '',
|
||
currentFileList: '', // 当前操作的是哪个FormItem的上传
|
||
currentFile: '', // 当前操作的是哪个FormItem的上传
|
||
tableHeight: null,
|
||
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'}
|
||
// {validator: this.verify.checkSpecialCharacter2, trigger: 'blur'}
|
||
]
|
||
},
|
||
sarMenu: {
|
||
id: '',
|
||
parentId: '',
|
||
menuName: '',
|
||
sorDivide: 'BUSINESS_STAND',
|
||
displaySeq: '',
|
||
parentIds: '',
|
||
remarks: ''
|
||
}, // 二级菜单对象,主要用于新增和修改
|
||
// 组织机构
|
||
bussionessStandNodes: [],
|
||
sarBussionessStandEO: {
|
||
TXLBBUSS:'',
|
||
VPPSBMBUSS:'',
|
||
VPPSCNBUSS:'',
|
||
regionShow: '亚洲',
|
||
region: '2T8PFTSYE7',
|
||
issueUnit: '', // 发布部门
|
||
assemClass: '',
|
||
id: '',
|
||
standType: 'INLAND', // 标准分类
|
||
textStatusBuss:'',
|
||
country: 'CN',
|
||
standSort: '',
|
||
applyArctic: '',
|
||
standNumber: '',
|
||
standYear: '',
|
||
standName: '',
|
||
standEnName: '',
|
||
standStatus: '',
|
||
standCode: '',
|
||
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: []
|
||
}, // 标准新增过程中用到的对象
|
||
defaultAddFormField: {
|
||
regionShow: '亚洲',
|
||
region: '2T8PFTSYE7',
|
||
issueUnit: '', // 发布部门
|
||
assemClass: '',
|
||
id: '',
|
||
standType: 'INLAND', // 标准分类
|
||
country: 'CN',
|
||
standSort: '',
|
||
applyArctic: '',
|
||
standNumber: '',
|
||
standYear: '',
|
||
standName: '',
|
||
standEnName: '',
|
||
standStatus: '',
|
||
standCode: '',
|
||
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: []
|
||
}, // 标准新增过程中用到的对象
|
||
energyKindOptions: [], // 能源种类下拉框
|
||
applyCountryOptions: [], // 国家/地区下拉框
|
||
formdisableflag: false,
|
||
defaultAddFormFieldRules: {
|
||
textStatusBuss:[
|
||
{required: true, message: '文本状态不能为空', trigger: 'change'}
|
||
],
|
||
standYear:[
|
||
{required: true, message: '标准年份不能为空', trigger: 'change'}
|
||
],
|
||
standSort: [
|
||
{required: true, message: '企标类别不能为空', trigger: 'change'}
|
||
],
|
||
standCode: [
|
||
{required: true, type: 'string', message: '企标编号不能为空', 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: false, message: '英文名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 1000, message: '英文名称不能超过1000个字符', trigger: 'change'},
|
||
{validator: this.verify.valiateEnName, trigger: 'change'}
|
||
],
|
||
standStatus: [
|
||
{required: true, message: '标准状态不能为空', trigger: 'change'}
|
||
],
|
||
issueTime: [
|
||
{required: false, message: '发布日期不能为空', trigger: 'change'}
|
||
],
|
||
putTime: [
|
||
{required: false, message: '企标实施日期不能为空', trigger: 'change'}
|
||
],
|
||
replaceStandNum: [
|
||
{type: 'string', max: 100, message: '代替企标编号不能超过100个字符', trigger: 'change'}
|
||
]
|
||
},
|
||
sarBussionessStandRules: {
|
||
// standSort: [
|
||
// {required: true, message: '企标类别不能为空', trigger: 'change'}
|
||
// ],
|
||
standNumber: [
|
||
{required: true, type: 'string', message: '企标编号不能为空', trigger: 'change'},
|
||
{type: 'string', max: 100, message: '企标编号不能超过100个字符', trigger: 'change'}
|
||
],
|
||
standName: [
|
||
{required: true, message: '中文名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 500, message: '中文名称不能超过500个字符', trigger: 'change'},
|
||
{validator: this.verify.valiateName, trigger: 'change'}
|
||
],
|
||
standEnName: [
|
||
{required: true, message: '英文名称不能为空', trigger: 'change'},
|
||
{type: 'string', max: 1000, message: '英文名称不能超过1000个字符', trigger: 'change'},
|
||
{validator: this.verify.valiateEnName, trigger: 'change'}
|
||
],
|
||
standState: [
|
||
{required: true, message: '标准状态不能为空', trigger: 'change'}
|
||
],
|
||
issueTime: [
|
||
{required: true, message: '发布日期不能为空', trigger: 'change'}
|
||
],
|
||
putTime: [
|
||
{required: true, message: '标准实施日期不能为空', trigger: 'change'}
|
||
],
|
||
replaceStandNum: [
|
||
{type: 'string', max: 100, message: '代替企标编号不能超过100个字符', trigger: 'change'}
|
||
]
|
||
},
|
||
// 提交状态
|
||
isSubmit: false,
|
||
lawsZNodes: [],
|
||
// keep-alive重新加载树组件
|
||
treeReload: false,
|
||
// 树
|
||
menuModalFlag: false,
|
||
menuModalTitle: '', // 新增目录模态框的title
|
||
selectSarMenu: {}, // 用来记录当前选中的二级菜单对象
|
||
importModalshowflag: false,
|
||
importExcelUrl: '', // 导入EXCEL文档
|
||
showUploadlist: true, // 导入过程中新增数据时,如果数据错误,不出现导入列表
|
||
importFailed: false,
|
||
importForm: {
|
||
content: ''
|
||
},
|
||
spinShow: false,
|
||
drawerWidth: 1400,
|
||
// 配置标准相关 开始
|
||
configStandFlag: false, // 控制配置标准表格是否显示
|
||
// 一般检索
|
||
// sarBussionessSearch: {
|
||
// page: 1,
|
||
// pageSize: this.$store.getters.userInfo.configContent,
|
||
// validFlag: '0',
|
||
// classifyCode: '',
|
||
// numberName: ''
|
||
// },
|
||
isAdvancedSearch: false, // 高级检索窗口是否打开
|
||
standinfoList: [],
|
||
selectedList: [],
|
||
// 导出文件模态框控制,和文件名称
|
||
exportModelFlag: false,
|
||
exportName: '',
|
||
countRootId: 0,
|
||
parentNode: [],
|
||
deleteMenuModal: false,
|
||
goSearch: '',
|
||
SarExportSearchEo: {},
|
||
sarBussionessSearch: {
|
||
orgName: '', // 部门名称
|
||
page: 1,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
validFlag: '0',
|
||
menuId: '', // 最开始进入页面
|
||
standCode: '',
|
||
standName: '',
|
||
numberName: '',
|
||
standGenera: '',
|
||
standSubclass: '',
|
||
standStatus: '',
|
||
issueTime: '',
|
||
putTime: '',
|
||
responsibleUnit: '', // 存储责任部门Name
|
||
id: '', // 存储责任部门Id
|
||
replaceStandNum: '', // 代替标准号
|
||
classifyCode: '', // 分类代号
|
||
quoteStand: '', // 引用标准
|
||
applyCountry: '', // 国家/地区
|
||
standNature: '', // 标准性质
|
||
standSort: '', // 企标类别
|
||
synopsis: '', // 内容摘要
|
||
// 基础信息
|
||
FZRQBUSS:'',
|
||
FSRQBUSS:'',
|
||
// 文本信息
|
||
FBGBUSS:'',
|
||
BZSMBUSS:'',
|
||
LSBBBUSS:'',
|
||
QTWJBUSS:'',
|
||
// 适用范围
|
||
QCDW:'',
|
||
QCRBUSS:'',
|
||
WJSCRYBUSS:'',
|
||
SYCXCLASS:'',
|
||
NYLXCLASS:'',
|
||
SYCPXCLASS:'',
|
||
TXLBBUSS:'',
|
||
VPPSBMBUSS:'',
|
||
VPPSCNBUSS:'',
|
||
// 关联信息
|
||
DTQBBHBUSS:'',
|
||
BDTQBBHBUSS:'',
|
||
XGJLBUSS:'',
|
||
XGLC:'',
|
||
GLWJBUSS:'',
|
||
XCSJBUSS:'',
|
||
}, // 分页查询过程中用到的对象
|
||
total: 0,
|
||
configStandList: [],
|
||
configStandtotal: 0,
|
||
height: null,
|
||
selectConfigStand: [],
|
||
configLoading: false, // 配置表格加载中
|
||
searchConfigNodes: [], // 责任部门树结构
|
||
zNodesSItem: [],
|
||
sarConfigStandSearch: {
|
||
page: this.configPage,
|
||
pageSize: this.$store.getters.userInfo.configContent,
|
||
standType: 'INLAND',
|
||
validFlag: '0',
|
||
menuId: '',
|
||
classifyCode: '',
|
||
quoteStand: '',
|
||
standCode: '',
|
||
standName: '',
|
||
standGenera: '',
|
||
standSubclass: '',
|
||
issueTime: '',
|
||
putTime: '',
|
||
orgName: '',
|
||
responsibleUnit: '',
|
||
standSort: '',
|
||
replaceStandNum: ''
|
||
}, // 分页查询过程中用到的对象
|
||
standGeneraOptions: [], // 企标大类下拉框
|
||
standSubclassOptions: [], // 企标细类下拉框-所有数据
|
||
standSubclassSelectOptions: [], // 企业细类下拉框-选中大类后 所有数据
|
||
searchNodes: [], // 高级检索中责任部门
|
||
defaultCheckedKeys1: [],
|
||
defaultCheckedKeys2: [],
|
||
defaultCheckedKeys3: [],
|
||
defaultCodeProps: {
|
||
children: 'children',
|
||
label: 'code'
|
||
},
|
||
defaultModelProps: {
|
||
children: 'children',
|
||
label: 'model'
|
||
},
|
||
busVppsOptions: [], // 车系体系架构
|
||
modelOptions: [], // 模块体系架构
|
||
searching: false,
|
||
stahndinfoList: [],
|
||
tableFlag: '',
|
||
// sycpxOptions: [], // 适用产品线
|
||
syzrOptions: [], // 适用认证
|
||
// zrgcsOptions: [], // 责任工程师
|
||
|
||
countryOptions: [],
|
||
regionOptions: [], // 区域
|
||
standSortOptions: [], // 标准类别下拉框
|
||
standSystemOptions: [], // 标准体系下拉框
|
||
sycpxOptions: [], // 适用产品线下拉框
|
||
zrbmOptions: [], // 责任部门下拉框
|
||
zrgcsOptions: [], // 责任工程师下拉框
|
||
txlbOptions: [], // 体系类别下拉框
|
||
standSortConfigOptions: [], // 标准类别下拉框
|
||
applyArcticOptions: [], // 适用车型下拉框
|
||
standStateOptions: [], // 标准状态下拉框
|
||
standNatureOptions: [], // 标准性质下拉框
|
||
adoptExtentOptions: [], // 采标程度下拉框
|
||
emergyKindOptions: [], // 能源种类下拉框
|
||
applyAuthOptions: [], // 适用认证下拉框
|
||
categoryOptions: [], // 所属类别下拉框
|
||
categoryConfigOptions: [], // 所属类别下拉框
|
||
assemClassOptions: [], // 总成分类下拉框
|
||
qcdwOptions:[],//起草单位下拉框
|
||
qcrOptions:[],//起草人下拉框
|
||
cysdOptions:[], //我司参与深度下拉框
|
||
nylxOptions:[],//能源类型下拉框
|
||
syrzOptions:[],//适用认证下拉框
|
||
gkglbmOptions:[],//归口管理部门下拉框
|
||
drawerTitle: '',
|
||
addOrUPdateFlag: 1, // 新增:1, 修改:2
|
||
modalshowflag: false,
|
||
standSubclassConfigOptions: [], // 企标细类下拉框-所有数据
|
||
collectBtn: false,
|
||
collect: '收藏',
|
||
// 收藏标准
|
||
personCollect: {
|
||
collectResId: '',
|
||
collectTitle: '',
|
||
collectType: ''
|
||
},
|
||
// 分享数据
|
||
resType: '',
|
||
drawerModal: false, // 分享
|
||
drawerModalstyles: {
|
||
height: 'calc(100% - 55px)',
|
||
overflow: 'auto',
|
||
paddingBottom: '53px',
|
||
position: 'static'
|
||
},
|
||
// end 分享相关的
|
||
shareStandardModal: false,
|
||
shareStandardSelect: [],
|
||
resPk: '', // 分享,消息推送过程中记录要推送的标准
|
||
// 消息推送保存对象
|
||
personShareEO: {
|
||
id: '',
|
||
recipientId: '',
|
||
shareUserId: '',
|
||
resType: '',
|
||
resId: '',
|
||
resUri: '',
|
||
resTitle: '',
|
||
readFlag: '',
|
||
validFlag: '',
|
||
modifyTime: '',
|
||
creationTime: ''
|
||
},
|
||
removeOneId: '',
|
||
sideClose: false, // 边栏收展状态
|
||
twoOptions: [],
|
||
threeOptions: [],
|
||
orgData: [],
|
||
isShow: false,
|
||
standStatus: '',
|
||
qcbm: '',
|
||
qcbmName: '',
|
||
drawerTitle1:'',
|
||
multipleFlag2:'',
|
||
modalShowFlag1: false,
|
||
modalShowFlag2: false, // drawer开关
|
||
modalShowFlag3: false, // drawer开关
|
||
modalShowFlag4: false, // drawer开关
|
||
url:'',
|
||
urlChild:'',
|
||
}
|
||
},
|
||
methods: {
|
||
// 左右拖动事件
|
||
dragControllerLR: function() {
|
||
var resize = document.getElementById("resize");
|
||
var left = document.getElementById("left");
|
||
var right = document.getElementById("right");
|
||
var box = document.getElementById("EnterpriseStandardDatabase");
|
||
resize.onmousedown = function(e){
|
||
var startX = e.clientX;
|
||
resize.left = resize.offsetLeft;
|
||
document.onmousemove = function(e){
|
||
var endX = e.clientX;
|
||
|
||
var moveLen = resize.left + (endX - startX);
|
||
var maxT = box.clientWidth - resize.offsetWidth;
|
||
if(moveLen<150) moveLen = 150;
|
||
if(moveLen>maxT-150) moveLen = maxT-150;
|
||
|
||
resize.style.left = moveLen;
|
||
left.style.width = moveLen + "px";
|
||
right.style.width = (box.clientWidth - moveLen - 5) + "px";
|
||
}
|
||
document.onmouseup = function(evt){
|
||
document.onmousemove = null;
|
||
document.onmouseup = null;
|
||
resize.releaseCapture && resize.releaseCapture();
|
||
}
|
||
resize.setCapture && resize.setCapture();
|
||
return false;
|
||
}
|
||
},
|
||
isPermission (value) {
|
||
let hasCount = 0
|
||
let set =new Set( value.split(","))
|
||
let menuList = store.getters.getMenuList
|
||
if (menuList === '') {
|
||
return hasCount
|
||
} else {
|
||
menuList.map((menu) => {
|
||
if ( set.has(menu.id)|| value === undefined || value === '') {
|
||
hasCount++
|
||
}
|
||
})
|
||
}
|
||
return hasCount
|
||
},
|
||
dateFormatter () {
|
||
//默认返回yyyy-MM-dd HH-mm-ss
|
||
const d = new Date();
|
||
const year = d.getFullYear();//得到年
|
||
const month = (d.getMonth()+1)<10 ? '0'+(d.getMonth()+1) : (d.getMonth()+1);//得到月
|
||
const day = d.getDate()<10 ? '0'+d.getDate() : d.getDate();//得到日
|
||
const hour = d.getHours()<10 ? '0'+d.getHours() : d.getHours();//得到时
|
||
const minute = d.getMinutes()<10 ? '0'+d.getMinutes() : d.getMinutes();//得到分
|
||
const second = d.getSeconds()<10 ? '0'+d.getSeconds() : d.getSeconds();//得到秒
|
||
return [year, month, day].join('-') + " " + [hour, minute, second].join(':');//格式为:YY-MM-DD hh:mm:ss(当前时间)
|
||
},
|
||
popoverHideQuery(ids,attrField){
|
||
console.log(ids)
|
||
console.log("-----------------------------")
|
||
console.log(attrField)
|
||
},
|
||
popoverHideBusVs (checkedIds, checkedData,isShow,isLoadChild,topId) {
|
||
if(checkedData) {
|
||
if(checkedData.length > 0){
|
||
this.sarBussionessStandEO.VPPSBMBUSS = checkedData.map(item => item.code).join(",")
|
||
this.sarBussionessStandEO.VPPSCNBUSS = checkedData.map(item => item.chineseName).join(",")
|
||
this.sarBussionessSearch.VPPSBMBUSS = checkedData.map(item => item.code).join(",")
|
||
this.sarBussionessSearch.VPPSCNBUSS = checkedData.map(item => item.chineseName).join(",")
|
||
}else {
|
||
this.sarBussionessStandEO.VPPSBMBUSS = checkedData.code
|
||
this.sarBussionessStandEO.VPPSCNBUSS = checkedData.chineseName
|
||
this.sarBussionessSearch.VPPSBMBUSS = checkedData.code
|
||
this.sarBussionessSearch.VPPSCNBUSS = checkedData.chineseName
|
||
}
|
||
}
|
||
this.modalShowFlag2 = false
|
||
this.$forceUpdate()
|
||
},
|
||
popoverHide (checkedIds, checkedData,isShow,isLoadChild,topId) {
|
||
if(checkedData) {
|
||
if(checkedData.length > 0){
|
||
this.sarBussionessStandEO.TXLBBUSS = checkedData.map(item => item.menuName).join(",")
|
||
this.sarBussionessSearch.TXLBBUSS = checkedData.map(item => item.menuName).join(",")
|
||
}else {
|
||
this.sarBussionessStandEO.TXLBBUSS = checkedData.menuName
|
||
this.sarBussionessSearch.TXLBBUSS = checkedData.menuName
|
||
}
|
||
}
|
||
this.modalShowFlag1 = false
|
||
this.$forceUpdate()
|
||
},
|
||
choiceZRR2 (type, title, id,multFlag) {
|
||
this.drawerTitle = title
|
||
this.modalShowFlag2 = true
|
||
this.multipleFlag2 = multFlag
|
||
this.url = ''
|
||
this.urlChild = ''
|
||
this.url="sarVppsTree/list"
|
||
this.urlChild="sarVppsTree/childByList"
|
||
},
|
||
choiceZRR1 (type, title, id) {
|
||
this.drawerTitle1 = title
|
||
this.modalShowFlag1 = true
|
||
},
|
||
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.selectMenuList()
|
||
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.selectMenuList()
|
||
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
|
||
},
|
||
// 查询二级菜单
|
||
selectMenuList () {
|
||
this.$http.get('sarResource/ts-resource/getList', {
|
||
sorDivide: 'BUSINESS_STAND',
|
||
userId: this.$store.getters.userInfo.userId
|
||
}, {}, res => {
|
||
if (res.ok) {
|
||
this.treeList = res.data
|
||
}
|
||
})
|
||
},
|
||
// 查询二级菜单
|
||
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 = '编辑体系'
|
||
// 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 = ''
|
||
// 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.selectMenuList()
|
||
}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){
|
||
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)
|
||
},
|
||
/**
|
||
* @description: 起草人名称展示
|
||
* @author: chenxiaoxi
|
||
* @time: 2021-03-17 16:47:41
|
||
*/
|
||
getQCRName(dataItem) {
|
||
if (dataItem.attrInfoMap === null){return ''}
|
||
const testName = dataItem.attrInfoMap.ZYQCRName || dataItem.attrInfoMap.QTQCRName || dataItem.attrInfoMap.QTQCR || ''
|
||
if (testName !== '') {
|
||
const NAME_LIST = testName.split(',')
|
||
const _SHOW_NAME_LIST = []
|
||
NAME_LIST.map(item => {})
|
||
NAME_LIST.map(userName => {
|
||
_SHOW_NAME_LIST.push(userName.split(' ')[userName.split(' ').length - 1])
|
||
})
|
||
return _SHOW_NAME_LIST.join(',')
|
||
} else {
|
||
return ''
|
||
}
|
||
},
|
||
isOk (val) {
|
||
this.sarBussionessStandEO.standCode = val
|
||
this.isShow = false
|
||
},
|
||
// 高级检索
|
||
selectMoreBtn () {
|
||
this.isAdvancedSearch = true
|
||
this.sarBussionessSearch = {}
|
||
// this.isAdvancedSearch = true
|
||
// this.threeOptions = []
|
||
},
|
||
// 高级检索类型change事件
|
||
twoSelectChange (val) {
|
||
if (val === 'stand_sort') {
|
||
this.threeOptions = this.standSortOptions
|
||
} else if (val === 'stand_status') {
|
||
this.threeOptions = this.standStateOptions
|
||
} else {
|
||
this.twoOptions.map((item, index) => {
|
||
if (item.value === val) {
|
||
this.threeOptions = this.allSelectOptions[item.selVal]
|
||
}
|
||
})
|
||
}
|
||
},
|
||
// 新增区域先择国家地区
|
||
getAddSelectCountry (data) {
|
||
//
|
||
this.sarBussionessStandEO.applyCountry = ''
|
||
let obj = {}
|
||
obj.dicTypeCode = data
|
||
this.$http.get('sys/dictype/pageRegion', obj, {
|
||
_this: this
|
||
}, res => {
|
||
const data = res.data.list
|
||
const arr = []
|
||
data.map((item) => {
|
||
const obj = {}
|
||
obj.label = item.dicTypeName
|
||
obj.value = item.dicTypeCode
|
||
arr.push(obj)
|
||
})
|
||
this.applyCountryOptions = arr
|
||
})
|
||
},
|
||
// 取消
|
||
treeCancel () {
|
||
this.drawerModal = false
|
||
this.$refs.drawerModalTree.treeReload()
|
||
},
|
||
// 树点击
|
||
treeOnCheck (checkedList) {
|
||
this.shareStandardSelect = []
|
||
checkedList.map((item, index) => {
|
||
if (!item.isParent) {
|
||
this.shareStandardSelect.push(item.id)
|
||
}
|
||
})
|
||
},
|
||
// 树点击
|
||
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 = 'BUSINESS_STAND'
|
||
this.personShareEO.resTitle = this.resPk.standName + ' ( 编号:' + this.resPk.standCode + ' )'
|
||
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.visibleShare = false
|
||
this.shareStandardSelect = []
|
||
// this.$refs.drawerModalTree.treeReload()
|
||
}, e => {
|
||
this.$message.error('企标分享失败!')
|
||
})
|
||
}
|
||
|
||
},
|
||
// 消息推送
|
||
shareStandardBt () {
|
||
if (this.shareStandardSelect.length === 0) {
|
||
this.$message({
|
||
message: '请选择要分享的人!',
|
||
type: 'warning'
|
||
})
|
||
} else {
|
||
this.personShareEO.resType = 'BUSINESS_STAND'
|
||
this.personShareEO.resTitle = this.resPk.standName + ' ( 编号:' + this.resPk.standCode + ' )'
|
||
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('企标分享失败!')
|
||
})
|
||
}
|
||
},
|
||
beforeHandleCommand (row, command) {
|
||
return { row, command }
|
||
},
|
||
// 更多
|
||
handleCommand (command) {
|
||
switch (command[1]) {
|
||
case '编辑':
|
||
this.selectStandardPro(command[0], 'edit')
|
||
break
|
||
case '收藏':
|
||
this.collectStandard(command[0])
|
||
break
|
||
case '分享':
|
||
// this.drawerModal = true
|
||
// this.$nextTick(() => {
|
||
// this.$refs.drawerModalTree.clearSearch()
|
||
// })
|
||
this.visibleShare = true
|
||
this.resPk = JSON.parse(JSON.stringify(command[0]))
|
||
break
|
||
case '移除标准':
|
||
this.deleteEnterStandFromKind(1, command[0].id)
|
||
break
|
||
case '删除':
|
||
this.deleteStand(1, command[0].id)
|
||
break
|
||
case '流程':
|
||
break
|
||
case '取消收藏':
|
||
this.cancelCollectStandard(command[0])
|
||
break
|
||
case '授权':
|
||
this.givePower(command[0])
|
||
break
|
||
}
|
||
},
|
||
// 授权-查询权限
|
||
givePower (item) {
|
||
this.standId = item.id
|
||
this.visibleOrgTable = true
|
||
},
|
||
// 人员授权-确定
|
||
handleOrgTableConfirm(checkedList, checkedIdList) {
|
||
const idList = []
|
||
const nameList = []
|
||
checkedList.map(item => {
|
||
idList.push(item.userId)
|
||
nameList.push(item.userName)
|
||
})
|
||
this.$http.post('lawss/sarBussionessStand/insertPerson', {
|
||
qbid: this.standId,
|
||
userIds: idList.join(',')
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.visibleOrgTable = false
|
||
}
|
||
}, e => {
|
||
|
||
})
|
||
|
||
},
|
||
// 取消收藏法规
|
||
cancelCollectStandard (item) {
|
||
this.spinShow = true
|
||
item.isSubmit = true
|
||
this.$http.put('person/personCollect/updateByUserId', {
|
||
id: item.collectId
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
this.$message.success('取消收藏成功')
|
||
this.spinShow = false
|
||
item.isSubmit = false
|
||
item.collectBtn = !item.collectBtn
|
||
item.cancelCollectBtn = !item.cancelCollectBtn
|
||
item.collectId = ''
|
||
this.getBussionStandTable()
|
||
}, e => {
|
||
item.isSubmit = false
|
||
})
|
||
// this.collect = '收藏'
|
||
},
|
||
collectStandard (item) {
|
||
this.spinShow = true
|
||
item.isSubmit = true
|
||
this.personCollect.collectResId = item.id
|
||
this.personCollect.collectTitle = item.standName + ' ( 编号:' + item.standSort + ' ' + item.standCode + ' )'
|
||
this.personCollect.collectType = 'BUSINESS_STAND'
|
||
this.personCollect.userId = this.$store.getters.userInfo.userId
|
||
this.$http.postData('person/personCollect', this.personCollect, {
|
||
_this: this
|
||
}, res => {
|
||
this.spinShow = false
|
||
item.isSubmit = false
|
||
item.collectBtn = !item.collectBtn
|
||
item.cancelCollectBtn = !item.cancelCollectBtn
|
||
item.collectId = res.data.id
|
||
}, e => {
|
||
item.isSubmit = false
|
||
})
|
||
// this.collect = '取消收藏'
|
||
},
|
||
searchConfiguraStand () {
|
||
this.configPage = 1
|
||
this.sarConfigStandSearch.page = 1
|
||
this.selectConfiguraStand()
|
||
},
|
||
dataConfigChange () {
|
||
this.sarConfigStandSearch.standSubclass = ''
|
||
this.$http.get('sys/dictype/getDicTypeByParentCode', {
|
||
dicTypeCode: this.sarConfigStandSearch.standGenera
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
this.standSubclassConfigOptions = res.data
|
||
}, e => {
|
||
})
|
||
},
|
||
// 分页点击后方法
|
||
configuraPageChange (page) {
|
||
this.configPage = page
|
||
this.sarConfigStandSearch.page = page
|
||
this.selectConfiguraStand()
|
||
},
|
||
// 分页每页显示数改变后方法
|
||
configuraPageSizeChange (pageSize) {
|
||
this.configRows = pageSize
|
||
this.sarConfigStandSearch.pageSize = pageSize
|
||
this.selectConfiguraStand()
|
||
this.getBussionStandTable(this.tableFlag)
|
||
// 此处需要调用接口,修改个人配置
|
||
},
|
||
// 取消配置标准
|
||
cancelConfigStand () {
|
||
this.configStandFlag = false
|
||
this.sarConfigStandSearch.standCode = ''
|
||
this.sarConfigStandSearch.standSort = ''
|
||
this.sarConfigStandSearch.replaceStandNum = ''
|
||
this.configPage = 1
|
||
this.selectConfigStand = []
|
||
},
|
||
// 提交配置搜索项
|
||
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('lawss/sarBussionessStand/saveStandardsMenu', search, {
|
||
_this: this,
|
||
loading: 'isSubmit'
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.$message.success('配置成功')
|
||
this.configStandFlag = false
|
||
this.getBussionStandTable(this.tableFlag)
|
||
} else {
|
||
this.$message.warning(res.message)
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
// 配置标准-表格排序
|
||
sortChangeConfig(sortObj) {
|
||
if (sortObj.column.order !== 'normal') {
|
||
switch (sortObj.prop) {
|
||
case 'issueTime' :
|
||
// 后台联调
|
||
if (sortObj.order === null) {
|
||
this.sarConfigStandSearch.nowOrderBy = ''
|
||
} else {
|
||
this.sarConfigStandSearch.nowOrderBy = '1'
|
||
}
|
||
break;
|
||
case 'putTime' :
|
||
// 后台联调
|
||
if (sortObj.order === null) {
|
||
this.sarConfigStandSearch.nowOrderBy = ''
|
||
} else {
|
||
this.sarConfigStandSearch.nowOrderBy = '2'
|
||
}
|
||
break;
|
||
}
|
||
switch (sortObj.order) {
|
||
case 'ascending' :
|
||
this.sarConfigStandSearch.nowOrder = '2'
|
||
break;
|
||
case 'descending' :
|
||
this.sarConfigStandSearch.nowOrder = '1'
|
||
break;
|
||
default:
|
||
this.sarConfigStandSearch.nowOrder = ''
|
||
break;
|
||
}
|
||
}
|
||
this.selectConfiguraStand()
|
||
},
|
||
// 表格
|
||
selectConfigStandChange (alldata) {
|
||
this.selectConfigStand = []
|
||
for (let i = 0; i < alldata.length; i++) {
|
||
this.selectConfigStand.push(alldata[i].id)
|
||
}
|
||
},
|
||
SearchTreeConfigDblClick (treeId, treeNode) {
|
||
this.sarConfigStandSearch.responsibleUnit = treeNode.id
|
||
this.sarConfigStandSearch.orgName = treeNode.name
|
||
$('#deptBtnConfig').click()
|
||
},
|
||
// 导入按钮 上传之前的钩子
|
||
beginImportFile (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') {
|
||
return true
|
||
} else {
|
||
this.spinShow = false
|
||
this.$message.error('文件' + file.name + '格式不正确,请上传ZIP压缩文件')
|
||
return false
|
||
}
|
||
// 判断文件上传大小
|
||
// eslint-disable-next-line no-unreachable
|
||
if (file.size / 1024 / 1024 <= 200) {
|
||
return true
|
||
} else {
|
||
this.$message.error('文件' + file.name + '大小不超过200M')
|
||
return false
|
||
}
|
||
return true
|
||
},
|
||
// 导入标准数据成功后执行
|
||
importFileSuccess (response, file) {
|
||
if (response.ok) {
|
||
this.showUploadlist = true
|
||
this.spinShow = false
|
||
this.importModalshowflag = false
|
||
this.$message({
|
||
showClose: true,
|
||
message: response.message,
|
||
type: 'success'
|
||
})
|
||
// 使用字条目是否展示模态框判断导入的文件是标准,还是条目modalStandItemflag
|
||
if (this.modalStandItemflag) {
|
||
this.selectSarStandItems(this.standItemSearch.standId)
|
||
} else {
|
||
this.getBussionStandTable(this.tableFlag)
|
||
}
|
||
} else {
|
||
this.showUploadlist = false
|
||
this.spinShow = false
|
||
this.importFailed = true
|
||
this.importForm.content = response.message
|
||
}
|
||
},
|
||
// 树
|
||
resetTreeDialog () {
|
||
this.menuModalFlag = false
|
||
this.$refs['addMenuForm'].resetFields()
|
||
},
|
||
// 点击二级菜单新增模态框中的保存
|
||
newMenu () {
|
||
this.isSubmit = true
|
||
this.$refs['addMenuForm'].validate((valid) => {
|
||
if (valid) {
|
||
if (this.menuAddOrUpdateFlag === 1) {
|
||
if (this.selectSarMenu.id === 'others') {
|
||
this.$message.warning('未分配节点下不能新增节点')
|
||
} else {
|
||
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.error('请检查表单是否填写正确')
|
||
this.isSubmit = false
|
||
}
|
||
})
|
||
},
|
||
// 点击查看
|
||
handlePreview (item) {
|
||
// const mj = item.attrInfoMap.QBMJ
|
||
// if (mj === 'GXNX7D6H59') {
|
||
// // C1所有人都可查看
|
||
// let routeUrl = this.$router.resolve({
|
||
// name: 'OtherBussStandardDetails',
|
||
// params: {
|
||
// id: item.id,
|
||
// pageType: 'BUSINESS_STAND'
|
||
// }
|
||
// })
|
||
// window.open(routeUrl.href, '_blank')
|
||
// } else if (mj === 'JLAPYG7YCT') {
|
||
// // C2只能让起草部门人员即填写中的相关部门/涉及会签部门人员可看
|
||
// // (起草部门、相关部门、会签部门,部门下所有人员)
|
||
// const attrInfoMap = item.attrInfoMap || {}
|
||
// const xgbm = attrInfoMap.XGBM || '' // 相关部门
|
||
// const qcbm = attrInfoMap.ZRBM || '' // 起草部门
|
||
// const xghqbm = attrInfoMap.XHQBM || '' // 相关会签部门
|
||
// const bm = [xgbm, qcbm, xghqbm].join(',') // 全部部门 字符串拼接
|
||
// const currentUserInfo = this.userInfo
|
||
// const currentBm = [currentUserInfo.orgId, currentUserInfo.pOrgId] // 当前用户的部门和科室
|
||
// const inBm = currentBm.some(item => {
|
||
// return bm.indexOf(item) > -1
|
||
// })
|
||
// // 如果当前用户的部门和科室不在全部部门里 就不允许查看
|
||
// if (!inBm) {
|
||
// this.$message.warning('当前用户无权限查看此详情')
|
||
// return false
|
||
// }
|
||
// let routeUrl = this.$router.resolve({
|
||
// name: 'OtherBussStandardDetails',
|
||
// params: {
|
||
// id: item.id,
|
||
// pageType: 'BUSINESS_STAND'
|
||
// }
|
||
// })
|
||
// window.open(routeUrl.href, '_blank')
|
||
// } else if (mj === 'ACF675Z88W') {
|
||
// // C3采取单独授权查看(当前实现只能主起草人、其他起草人看即可,后续的授权4月份开发)
|
||
// const attrInfoMap = item.attrInfoMap || {}
|
||
// const zyqcr = attrInfoMap.ZYQCR || '' // 主要起草人
|
||
// const qtqcr = attrInfoMap.QTQCR || '' // 主要起草人
|
||
// const qcr = [zyqcr, qtqcr].join(',') // 全部起草人 字符串拼接
|
||
// const userInfo = this.userInfo
|
||
// const currentId = userInfo.userId // 当前用户的id
|
||
// // 如果当前用户的部门和科室不在全部部门里 就不允许查看
|
||
// if (!(qcr.indexOf(currentId) > -1)) {
|
||
// // this.$message.warning('当前用户无权限查看此详情')
|
||
// this.$http.get('lawss/sarBussionessStand/selectPerson', {
|
||
// qbid: item.id
|
||
// }, {
|
||
// _this: this
|
||
// }, res => {
|
||
// if (res.data === "1") {
|
||
// // 为1有权限
|
||
// let routeUrl = this.$router.resolve({
|
||
// name: 'OtherBussStandardDetails',
|
||
// params: {
|
||
// id: item.id,
|
||
// pageType: 'BUSINESS_STAND'
|
||
// }
|
||
// })
|
||
// window.open(routeUrl.href, '_blank')
|
||
// } else {
|
||
// this.$message.warning('当前用户无权限查看此详情')
|
||
// return false
|
||
// }
|
||
// }, e => {
|
||
// return false
|
||
//
|
||
// })
|
||
//
|
||
// }
|
||
// }
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'OtherBussStandardDetails',
|
||
params: {
|
||
id: item.id,
|
||
pageType: 'BUSINESS_STAND'
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
},
|
||
// 编辑
|
||
selectStandardPro (row, state) {
|
||
this.$http.get('lawss/sarBussionessStand/getStandInfoUpdateById', {id: row.id}, {
|
||
_this: this
|
||
}, res => {
|
||
const item = res.data || {}
|
||
this.drawerTitle = '修改企业标准'
|
||
this.modalshowflag = true
|
||
this.resolveFormFieldList(true)
|
||
this.$nextTick(() => {
|
||
Promise.all([this.queryDisplayLocation()]).then((values) => {
|
||
const [displayLocation] = values
|
||
const dynamicFormField = this.sarBussionessStandEO
|
||
const formFieldList = this.formFieldList
|
||
formFieldList.forEach((field) => {
|
||
displayLocation.forEach((location) => {
|
||
let value = dynamicFormField[field.attrField]
|
||
let valueName = ''
|
||
if (value && typeof value === 'number') {
|
||
value = this.$dateFormat(value, 'yyyy-MM-dd')
|
||
}
|
||
field['value'] = value
|
||
// 追加用户名称和部门名称
|
||
if (field.selVal === 'ORGLIST' || field.selVal === 'USERLIST' || field.attrField === 'SVPPS') {
|
||
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
|
||
})
|
||
this.sarBussionessStandEO = JSON.parse(JSON.stringify(item))
|
||
this.sarBussionessStandEO["XCSJBUSS"] = this.dateFormatter()
|
||
this.standStatus = JSON.parse(JSON.stringify(this.sarBussionessStandEO.standStatus))
|
||
let subClass = item.standSubclass
|
||
this.sarBussionessStandEO.standSubclass = subClass
|
||
if (this.sarBussionessStandEO.issueTime != null && this.sarBussionessStandEO.issueTime !== '') {
|
||
this.sarBussionessStandEO.issueTime = new Date(this.sarBussionessStandEO.issueTime)
|
||
}
|
||
if (this.sarBussionessStandEO.putTime != null && this.sarBussionessStandEO.putTime !== '') {
|
||
this.sarBussionessStandEO.putTime = new Date(this.sarBussionessStandEO.putTime)
|
||
}
|
||
Object.keys(item.attrInfoMap || {}).forEach((key) => {
|
||
if (item.attrInfoMap[key]) {
|
||
// this.sarStandardsInfoEO[key] = item.attrInfoMap[key]
|
||
this.$set(this.sarBussionessStandEO, key, item.attrInfoMap[key])
|
||
}
|
||
})
|
||
this.sarBussionessStandEO['id'] = item.id
|
||
if (state === 'show') {
|
||
this.formdisableflag = true
|
||
} else {
|
||
// this.standGeneraSelectChange() // 负责细类初始化
|
||
// this.getOrgTreeSource()
|
||
this.addOrUPdateFlag = 2
|
||
this.formdisableflag = false
|
||
this.saveOldNum = item.standCode // 记录修改之前的标准编号
|
||
this.saveOldReplaceNum = item.replaceStandNum // 记录修改之前的代替标准编号
|
||
// let selectNode = this.getTreeNameByid(this.sarBussionessStandEO.responsibleUnit)
|
||
this.sarBussionessStandEO.orgName = item.responsibleUnitShow
|
||
}
|
||
})
|
||
})
|
||
},
|
||
// 部门树结构,通过id,查出对应的树节点
|
||
getTreeNameByid (treeid) {
|
||
for (let i = 0; i < this.bussionessStandNodes.length; i++) {
|
||
if (this.bussionessStandNodes[i].id === treeid) {
|
||
return this.bussionessStandNodes[i]
|
||
}
|
||
}
|
||
},
|
||
// 所属部门选取
|
||
treeDblClick (treeId, treeNode) {
|
||
this.sarBussionessStandEO.responsibleUnit = treeNode.id
|
||
this.sarBussionessStandEO.orgName = treeNode.name
|
||
// $('#deptBtn').click()
|
||
$('#deptBtn2').click()
|
||
},
|
||
// 新增-表单空
|
||
resetForm () {
|
||
this.modalshowflag = false
|
||
this.$refs['sarBussionessStandForm'].resetFields()
|
||
$('.ivu-drawer-body').scrollTop(0)
|
||
},
|
||
// 保存或修改标准
|
||
saveOrUpdateStands () {
|
||
this.$refs['sarBussionessStandForm'].validate((valid) => {
|
||
if (valid) {
|
||
// alert(7)
|
||
// 验证标准号是否唯一
|
||
this.validateStandNumber(this.sarBussionessStandEO).then((flag) => {
|
||
if (flag) {
|
||
// 时间格式修改
|
||
let nowstandinfo = JSON.parse(JSON.stringify(this.sarBussionessStandEO))
|
||
console.log(nowstandinfo)
|
||
if (nowstandinfo.issueTime != null && nowstandinfo.issueTime !== '') {
|
||
nowstandinfo.issueTime = this.$dateFormat(this.sarBussionessStandEO.issueTime, 'yyyy-MM-dd hh:mm:ss')
|
||
}
|
||
if (nowstandinfo.putTime != null && nowstandinfo.putTime !== '') {
|
||
nowstandinfo.putTime = this.$dateFormat(this.sarBussionessStandEO.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
|
||
console.log(this.formFieldList)
|
||
const sarStandAttrObj = {}
|
||
formFieldList.forEach((item) => {
|
||
const value = nowstandinfo[item.attrField]
|
||
// 时间格式处理
|
||
if (item.attrType === 'DATE_PICKER' && value) {
|
||
nowstandinfo[item.attrField] = this.$moment(this.sarBussionessStandEO[item.attrField]).format('YYYY-MM-DD')
|
||
} else if (item.attrType === 'DATE_PICKER' && !value) {
|
||
delete nowstandinfo[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, "'")
|
||
// 新增
|
||
if (this.addOrUPdateFlag === 1) {
|
||
if (this.selectSarMenu.pId != null && this.selectSarMenu.pId !== '') {
|
||
nowstandinfo.menuId = this.selectSarMenu.id // 新建过程中标准所属目录是当前目录
|
||
} else {
|
||
nowstandinfo.menuId = '897c1e6fbbd2427591f0'
|
||
}
|
||
// 预警信息判断
|
||
if (nowstandinfo.replaceStandNum != null && nowstandinfo.standNumber !== '') {
|
||
nowstandinfo.upReplaceNumFlag = 1
|
||
}
|
||
if (nowstandinfo.firstPutTime != null && nowstandinfo.firstPutTime !== '') {
|
||
nowstandinfo.firstPutTime = nowstandinfo.firstPutTime.toString()
|
||
}
|
||
this.$http.postData('lawss/sarBussionessStand/addSarBussionessStand', nowstandinfo, {
|
||
_this: this,
|
||
loading: 'isSubmit'
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.getBussionStandTable(this.tableFlag)
|
||
this.resetForm()
|
||
}
|
||
}, e => {
|
||
})
|
||
} else {
|
||
// 修改
|
||
// 预警信息判断
|
||
if (nowstandinfo.replaceStandNum !== this.saveOldReplaceNum) {
|
||
nowstandinfo.upReplaceNumFlag = 1
|
||
}
|
||
if (nowstandinfo.standCode !== this.saveOldNum) {
|
||
nowstandinfo.upNumFlag = 1
|
||
}
|
||
if (nowstandinfo.firstPutTime != null && nowstandinfo.firstPutTime !== '') {
|
||
nowstandinfo.firstPutTime = this.$dateFormat(this.sarBussionessStandEO.firstPutTime, 'yyyy-MM-dd hh:mm:ss')
|
||
}
|
||
nowstandinfo.standCode = nowstandinfo.standSort + ' ' + nowstandinfo.standNumber + ( nowstandinfo.standYear === '' ? '' : '-' + nowstandinfo.standYear)
|
||
this.$http.postData('lawss/sarBussionessStand/updateSarBussionessStand', nowstandinfo, {
|
||
_this: this,
|
||
loading: 'isSubmit'
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.getBussionStandTable(this.tableFlag)
|
||
// this.pageChange(1)
|
||
this.resetForm()
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
} else {
|
||
this.isSubmit = false
|
||
}
|
||
})
|
||
} else {
|
||
this.$message.error('请检查表单是否填写正确!')
|
||
}
|
||
})
|
||
},
|
||
// 删除数组中的某个对象
|
||
removeArray (_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
|
||
}
|
||
}
|
||
}
|
||
},
|
||
// 标准号验证
|
||
validateStandNumber (standinfo) {
|
||
return new Promise((resolve, reject) => {
|
||
let obj = JSON.parse(JSON.stringify(standinfo))
|
||
this.$http.post('lawss/sarBussionessStand/validateStandNumber', obj, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
resolve(true)
|
||
} else {
|
||
/* this.$Modal.error({
|
||
title: '提示消息',
|
||
content: res.message
|
||
}); */
|
||
resolve(false)
|
||
}
|
||
}, e => {
|
||
reject(e)
|
||
})
|
||
})
|
||
},
|
||
// 高级检索责任部门选取
|
||
SearchTreeDblClick (treeId, treeNode) {
|
||
this.sarBussionessSearch.responsibleUnit = treeNode.id
|
||
this.sarBussionessSearch.orgName = treeNode.name
|
||
$('#deptBtn1').click()
|
||
},
|
||
// 获取组织机构数据
|
||
// getOrgTreeSource () {
|
||
// this.$http.get('sys/org/getTree', {}, {},
|
||
// res => {
|
||
// if (res.ok) {
|
||
// let treeNode = []
|
||
// res.data.map((item, index) => {
|
||
// let treeItem = {}
|
||
// for (let key in item) {
|
||
// if (key === 'orgName') {
|
||
// treeItem.name = item[key]
|
||
// } else {
|
||
// treeItem[key] = item[key]
|
||
// }
|
||
// }
|
||
// treeNode[index] = treeItem
|
||
// })
|
||
// this.bussionessStandNodes = treeNode // 1
|
||
// this.bussNodesItem = JSON.parse(JSON.stringify(treeNode))
|
||
// this.searchBussNodes = JSON.parse(JSON.stringify(treeNode))
|
||
// this.searchNodes = [ ...treeNode ] // 1
|
||
// this.searchConfigNodes = Object.freeze(JSON.parse(JSON.stringify(treeNode))) // 1
|
||
// }
|
||
// })
|
||
// },
|
||
treeCollapse () {
|
||
this.sideClose = !this.sideClose
|
||
},
|
||
// 导出选中的标准 此处因为复选框没有设置好,所以先设置导出所有数据
|
||
exportStandard () {
|
||
// 区别是选择导出还是全部导出
|
||
if (this.selectedList.length > 0) {
|
||
this.saveExportType = 'apart'
|
||
} else {
|
||
this.saveExportType = 'all'
|
||
}
|
||
this.exportName = ''
|
||
this.exportModelFlag = true
|
||
},
|
||
addModal () {
|
||
this.getMenu().then(boolean => {
|
||
if (boolean) {
|
||
this.sarBussionessStandEO = {...this.defaultAddFormField}
|
||
this.sarBussionessStandEO.menuId = this.selectSarMenu.id
|
||
// this.getOrgTreeSource()
|
||
this.drawerTitle = '新增企业标准'
|
||
this.formdisableflag = false
|
||
this.addOrUPdateFlag = 1
|
||
this.sarBussionessStandEO.orgName = ''
|
||
this.resolveFormFieldList()
|
||
Promise.all([this.queryDisplayLocation()]).then((values) => {
|
||
const [displayLocation] = values
|
||
const dynamicFormField = this.sarBussionessStandEO
|
||
const formFieldList = this.formFieldList
|
||
formFieldList.forEach((field) => {
|
||
displayLocation.forEach((location) => {
|
||
let value = dynamicFormField[field.attrField]
|
||
let valueName = ''
|
||
if (value && typeof value === 'number') {
|
||
value = this.$dateFormat(value, 'yyyy-MM-dd')
|
||
}
|
||
field['value'] = value
|
||
// 追加用户名称和部门名称
|
||
if (field.selVal === 'ORGLIST' || field.selVal === 'USERLIST') {
|
||
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
|
||
this.modalshowflag = true
|
||
})
|
||
}
|
||
})
|
||
},
|
||
// 删除标准
|
||
deleteStand (flag, itemid) {
|
||
if (flag === 1) {
|
||
(
|
||
this.$confirm('确认删除这些数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
confirmButtonClass: 'common-button-primary',
|
||
roundButton: true
|
||
}).then(() => {
|
||
this.$http.post('lawss/sarBussionessStand/deleteSarBussionessStand', {ids: itemid}, {
|
||
_this: this
|
||
}, res => {
|
||
this.getBussionStandTable(this.tableFlag)
|
||
this.selectedList = []
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
// this.$refs.multipleTable.clearSelection()
|
||
})
|
||
)
|
||
} else {
|
||
if (this.selectedList.length === 0) {
|
||
this.$confirm('请选择一条数据进行删除', '提示', {
|
||
showCancelButton: false,
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
confirmButtonClass: 'common-button-primary',
|
||
roundButton: true
|
||
})
|
||
} else {
|
||
(
|
||
this.$confirm('确认删除这些数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
confirmButtonClass: 'common-button-primary',
|
||
roundButton: true
|
||
}).then(() => {
|
||
this.$http.post('lawss/sarBussionessStand/deleteSarBussionessStand', {ids: this.selectedList.join(',')}, {
|
||
_this: this
|
||
}, res => {
|
||
this.getBussionStandTable(this.tableFlag)
|
||
this.selectedList = []
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
this.$refs.multipleTable.clearSelection()
|
||
})
|
||
)
|
||
}
|
||
}
|
||
},
|
||
// 点击配置标准弹出相应模态框
|
||
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.error('请选择要配置的目录')
|
||
} else {
|
||
if (this.selectSarMenu.parentId == null || this.selectSarMenu.parentId === '') {
|
||
this.$message.error('请选择二级及以下目录')
|
||
} else {
|
||
this.configStandFlag = true
|
||
this.sarConfigStandSearch.menuId = 'nomenu'
|
||
this.sarConfigStandSearch.page = 1
|
||
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)
|
||
}
|
||
})
|
||
},
|
||
// 表对应标准移除分类到-----用的这个方法
|
||
deleteEnterStandFromKind (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.menuId = this.removeOneId
|
||
search.idlist = []
|
||
// search.menuId = this.removeOneId
|
||
if (this.selectedList.length === 0) {
|
||
this.$message.error('请先选择要移除的数据!')
|
||
} else {
|
||
this.$confirm('确认移除选中数据?', '提示', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
confirmButtonClass: 'common-button-primary',
|
||
roundButton: true
|
||
}).then(() => {
|
||
for (let i = 0; i < this.selectedList.length; i++) {
|
||
search.idlist.push(this.selectedList[i])
|
||
}
|
||
this.$http.putData('lawss/sarBussStandMenu/removeStandInfo', search, {
|
||
_this: this
|
||
}, res => {
|
||
// this.$message({
|
||
// showClose: true,
|
||
// message: '取消配置成功!',
|
||
// type: 'success'
|
||
// })
|
||
this.getBussionStandTable(this.tableFlag)
|
||
}, e => {
|
||
})
|
||
}).catch(() => {
|
||
})
|
||
}
|
||
}
|
||
}
|
||
})
|
||
},
|
||
// 模板下载
|
||
uploadImportModal (flag) {
|
||
window.open('/api/lawss/sarBussionessStand/exportTemplate')
|
||
// if (flag === 1) {
|
||
// window.open('/api/att/attFile/uploadModalFile?fileName=企业标准导入模板.zip')
|
||
// } else {
|
||
// window.open('/api/att/attFile/uploadModalFile?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/lawss/sarBussionessStand/importZipSarBussionessStand?menuId=' + menuId
|
||
}
|
||
} else {
|
||
this.importModalshowflag = true
|
||
this.importExcelUrl = '/api/lawss/sarBussStandItems/importSarBussStandItemsList?standId=' + this.standItemSearch.standId
|
||
}
|
||
}
|
||
})
|
||
},
|
||
// 二级菜单新建,编辑,删除
|
||
clickDropMenu (name, treeNode) {
|
||
this.selectSarMenu = JSON.parse(JSON.stringify(treeNode))
|
||
if (undefined !== this.selectSarMenu.id) { // 当前有选中节点
|
||
if (name === 'newMenu') {
|
||
this.menuModalTitle = '新增目录'
|
||
this.menuModalFlag = true
|
||
this.menuAddOrUpdateFlag = 1
|
||
this.sarMenu = {
|
||
id: '',
|
||
parentId: '',
|
||
menuName: '',
|
||
sorDivide: 'BUSINESS_STAND',
|
||
displaySeq: '',
|
||
remarks: '',
|
||
parentIds: ''
|
||
}
|
||
this.$nextTick(() => {
|
||
this.$refs['addMenuForm'].resetFields()
|
||
})
|
||
} else if (name === 'editMenu') {
|
||
this.menuModalTitle = '编辑目录'
|
||
this.menuModalFlag = true
|
||
this.menuAddOrUpdateFlag = 2
|
||
this.sarMenu.id = treeNode.id
|
||
this.sarMenu.parentId = treeNode.pId
|
||
this.sarMenu.menuName = treeNode.oldname || treeNode.name
|
||
this.sarMenu.displaySeq = treeNode.displaySeq
|
||
if (treeNode.remarks == null || treeNode.remarks === '' || treeNode.remarks === 'null') {
|
||
this.sarMenu.remarks = ''
|
||
} else {
|
||
this.sarMenu.remarks = treeNode.remarks
|
||
}
|
||
} else {
|
||
if (this.selectSarMenu.parentId == null) { // 如果父id为null 说明是根目录
|
||
this.$Modal.info({
|
||
title: '提示',
|
||
content: '根目录不可删除!'
|
||
})
|
||
} else {
|
||
// deleteMenu 删除二级菜单,先判断是否选中,选中项目,然后调用删除方法
|
||
// 先判断目录下是否有菜单
|
||
this.$http.post('lawss/sarMenu/judgequeryMenuByPid', this.selectSarMenu, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
if (res.data) {
|
||
// this.deleteMenuModal = true
|
||
this.$confirm('该节点下有记录,确定删除?', '提示', {
|
||
confirmButtonText: '确定',
|
||
confirmButtonClass: 'common-button-primary',
|
||
cancelButtonText: '取消',
|
||
type: 'warning',
|
||
roundButton: true
|
||
}).then(() => {
|
||
this.sureDeleteSarMenu()
|
||
}).catch(() => {
|
||
// 取消删除,清空选择
|
||
// this.$refs.selections.clearSelection()
|
||
})
|
||
} else {
|
||
this.$confirm('确认删除该条数据', '确认删除', {
|
||
confirmButtonText: '确定',
|
||
cancelButtonText: '取消',
|
||
confirmButtonClass: 'common-button-primary',
|
||
roundButton: true,
|
||
type: 'warning'
|
||
}).then(() => {
|
||
this.sureDeleteSarMenu()
|
||
}).catch(() => {})
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
}
|
||
} else {
|
||
this.$Modal.info({
|
||
title: '提示',
|
||
content: '请选择节点!'
|
||
})
|
||
}
|
||
},
|
||
filterNode(value, data) {
|
||
if (!value) return true;
|
||
return data.menuName.indexOf(value) !== -1;
|
||
},
|
||
treeClick (treeNode) {
|
||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
||
this.sarBussionessSearch.menuId = treeNode.id
|
||
this.sarBussionessSearch.menuId = treeNode.id // 将当前二级菜单的id传回后台做标准的条件查询
|
||
this.sarBussionessSearch.page = 1
|
||
this.sarBussionessSearch.page = 1
|
||
this.getBussionStandTable(this.tableFlag) // 根据选中的二级菜单查询对应的标准列表
|
||
},
|
||
// 右击选中
|
||
treeRightClick (treeNode) {
|
||
this.selectSarMenu = treeNode // 记录当前选中的二级菜单
|
||
this.sarBussionessSearch.menuId = treeNode.id // 将当前二级菜单的id传回后台做标准的条件查询
|
||
this.sarBussionessSearch.menuId = treeNode.id
|
||
this.sarBussionessSearch.page = 1
|
||
this.sarBussionessSearch.page = 1
|
||
},
|
||
// 树-删除
|
||
sureDeleteSarMenu () {
|
||
this.deleteMenuModal = false
|
||
this.$http.post('lawss/sarMenu/deleteMenuAndChildren', this.selectSarMenu, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
this.selectMenu() // 删除成功后,更新二级菜单
|
||
// 获取下一个节点
|
||
let currentNode = this.$refs.enterpriseStandardTree.getNextNode()
|
||
let nodeId = ''
|
||
// 如果这个节点为null, 本次删除了最后一个节点
|
||
if (currentNode === null) {
|
||
// 选中根节点
|
||
this.$refs.enterpriseStandardTree.selectRootNode()
|
||
} else {
|
||
nodeId = currentNode.id
|
||
}
|
||
this.getBussionStandTable(null, nodeId)
|
||
}, e => {
|
||
})
|
||
},
|
||
// 导出确定功能
|
||
exportTestItem () {
|
||
if (this.saveExportType === 'apart') {
|
||
if (this.selectedList != null && this.selectedList !== '') {
|
||
window.open('/api/lawss/sarBussionessStand/exportSarBussionessStand?exportContent=' + this.selectedList.join(',') + '&exportType=' + this.saveExportType + '&exportName=' + this.exportName + '&userId=' + this.$store.getters.userInfo.userId)
|
||
// this.$refs.selection.selectAll(false)
|
||
this.$message({
|
||
message: '导出信息成功',
|
||
type: 'success'
|
||
})
|
||
}
|
||
} else if (this.saveExportType === 'all') {
|
||
let exportEOStr = JSON.stringify(this.SarExportSearchEo)
|
||
exportEOStr = exportEOStr.replace(/""/g, null)
|
||
window.open('/api/lawss/sarBussionessStand/exportSarBussionessStand?exportContent=' + exportEOStr + '&exportType=' + this.saveExportType + '&exportName=' + this.exportName + '&userId=' + this.$store.getters.userInfo.userId)
|
||
this.$message({
|
||
message: '导出信息成功',
|
||
type: 'success'
|
||
})
|
||
}
|
||
this.exportModelFlag = false
|
||
},
|
||
// 导出取消按钮关闭模态、置空
|
||
cancal () {
|
||
this.exportModelFlag = false
|
||
},
|
||
// 搜索
|
||
getBussionStandTableBtn (item, advancedSearch,type) {
|
||
item.page = 1
|
||
this.tableFlag = item
|
||
// item.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
|
||
this.getBussionStandTable(item,'',type)
|
||
},
|
||
// 清空搜索框
|
||
clearAllSearch (flag) {
|
||
if (flag === 'sarBussionessSearch') {
|
||
// 标准搜索
|
||
this.sarBussionessSearch.applyCountry = ''
|
||
this.sarBussionessSearch.standGenera = ''
|
||
this.sarBussionessSearch.standSubclass = ''
|
||
this.sarBussionessSearch.issueTime = ''
|
||
this.sarBussionessSearch.putTime = ''
|
||
this.sarBussionessSearch.responsibleUnit = ''
|
||
this.sarBussionessSearch.classifyCode = ''
|
||
this.sarBussionessSearch.standCode = ''
|
||
this.sarBussionessSearch.standName = ''
|
||
this.sarBussionessSearch.numberName = ''
|
||
this.sarBussionessSearch.standSort = ''
|
||
this.sarBussionessSearch.replaceStandNum = ''
|
||
this.sarBussionessSearch.orgName = ''
|
||
this.sarBussionessSearch.id = ''
|
||
this.sarBussionessSearch.synopsis = ''
|
||
this.sarBussionessSearch.classifyCode = ''
|
||
this.sarBussionessSearch.quoteStand = ''
|
||
this.sarBussionessSearch.standStatus = ''
|
||
this.sarBussionessSearch.citationUser = ''
|
||
this.sarBussionessSearch.TXLBBUSS = ''
|
||
this.sarBussionessSearch.VPPSBMBUSS = ''
|
||
this.sarBussionessSearch.advanceSearchVOStr = ''
|
||
this.sarBussionessSearch.standEnName=''
|
||
this.isAdvancedSearch = false
|
||
} else if (flag === 2) {
|
||
// 标准条目搜索
|
||
// 标准条目搜索
|
||
this.standItemSearch.responsibleUnit = ''
|
||
this.standItemSearch.orgName = ''
|
||
} else {
|
||
// 游离标准搜索清空
|
||
// this.$nextTick(() => {
|
||
// this.$refs['configEnterPriseForm'].resetFields()
|
||
// this.selectConfiguraStand()
|
||
// })
|
||
this.sarConfigStandSearch.standCode = ''
|
||
this.sarConfigStandSearch.standName = ''
|
||
this.sarConfigStandSearch.standSort = ''
|
||
this.sarConfigStandSearch.standGenera = ''
|
||
this.sarConfigStandSearch.standSubclass = ''
|
||
this.sarConfigStandSearch.classifyCode = ''
|
||
this.sarConfigStandSearch.synopsis = ''
|
||
this.sarConfigStandSearch.quoteStand = ''
|
||
this.sarConfigStandSearch.replaceStandNum = ''
|
||
this.sarConfigStandSearch.responsibleUnit = ''
|
||
this.sarConfigStandSearch.orgName = ''
|
||
this.configPage = 1
|
||
this.sarConfigStandSearch.page = 1
|
||
this.selectConfiguraStand()
|
||
}
|
||
},
|
||
// 分页点击后方法
|
||
pageChange (page) {
|
||
if (this.tableFlag !== '') {
|
||
this.tableFlag.page = page
|
||
this.sarConfigStandSearch.page = this.tableFlag.page
|
||
} else {
|
||
this.sarBussionessSearch.page = page
|
||
this.sarConfigStandSearch.page = this.sarBussionessSearch.page
|
||
}
|
||
// this.selectConfiguraStand()
|
||
this.getBussionStandTable(this.tableFlag)
|
||
},
|
||
// 分页每页显示数改变后方法
|
||
pageSizeChange (pageSize) {
|
||
this.sarBussionessSearch.pageSize = pageSize
|
||
this.getBussionStandTable(this.tableFlag)
|
||
// this.sarConfigStandSearch.pageSize = this.$store.getters.userInfo.configContent
|
||
this.sarConfigStandSearch.pageSize = this.sarBussionessSearch.pageSize
|
||
this.selectConfiguraStand()
|
||
// 此处需要调用接口,修改个人配置
|
||
},
|
||
// 查询处于游离态的标准
|
||
selectConfiguraStand () {
|
||
// this.sarConfigStandSearch.menuId = 'others'
|
||
this.$http.get('lawss/sarBussionessStand/getSarBussionStandPage', this.sarConfigStandSearch, {
|
||
_this: this,
|
||
loading: 'configLoading'
|
||
}, res => {
|
||
this.configStandList = res.data.list
|
||
this.configTotal = res.data.count
|
||
this.selectConfigStand = []
|
||
}, e => {
|
||
})
|
||
},
|
||
// 分页查询企业标准---表格
|
||
getBussionStandTable (item, nodeId,type) {
|
||
if (item !== '' && item !== null && item !== undefined) {
|
||
item.pageSize = this.$store.getters.userInfo.configContent
|
||
}
|
||
this.sarBussionessSearch.pageSize = this.$store.getters.userInfo.configContent
|
||
const data = item || this.lawsStandInfoSearch
|
||
const formData = {...data}
|
||
if (!item) {
|
||
formData.menuId = this.sarBussionessSearch.menuId
|
||
} else {
|
||
formData.menuId = this.selectSarMenu.id
|
||
}
|
||
if (nodeId !== undefined) {
|
||
formData.menuId = nodeId
|
||
}
|
||
if (this.sarBussionessSearch.menuId == null || this.sarBussionessSearch.menuId === '') {
|
||
if (this.countRootId === 1) {
|
||
formData.menuId = this.parentNode.id
|
||
}
|
||
}
|
||
// 处理我的收藏和个性化标签传参
|
||
if (this.selectSarMenu.id === 'qbwdsc') {
|
||
formData.labelMenuId = undefined
|
||
formData.menuId = 'qbwdsc'
|
||
formData.collectMenuId = 'qbwdsc'
|
||
} 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.nowOrderBy = this.nowOrder ? this.orderBy : ''
|
||
formData.nowOrder = this.nowOrder
|
||
formData.userId = this.$store.getters.userInfo.userId
|
||
if(type === 'sel'){
|
||
const advanceSearchVOList = [];
|
||
if(this.formFieldListData !== undefined && this.formFieldListData !== null){
|
||
const formFieldList = this.formFieldListData
|
||
formFieldList.forEach((item) => {
|
||
const value = this.sarBussionessSearch[item.attrField]
|
||
// 时间格式处理
|
||
if (value !== undefined && value !== null && value !== '') {
|
||
advanceSearchVOList.push({
|
||
connect: advanceSearchVOList.length > 0 ? "and" : "",
|
||
field: item.attrField || '',
|
||
type: 'like',
|
||
value: value
|
||
})
|
||
}
|
||
})
|
||
}
|
||
formData.advanceSearchVOStr = JSON.stringify(advanceSearchVOList);
|
||
}
|
||
this.SarExportSearchEo = formData
|
||
this.$http.get('lawss/sarBussionessStand/getSarBussionStandPage', formData, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
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
|
||
}
|
||
this.standinfoList = res.data.list
|
||
this.total = res.data.count
|
||
if ((this.standinfoList.length === 0 || this.standinfoList === []) && this.sarBussionessSearch.page !== 1) {
|
||
this.pageChange(1)
|
||
}
|
||
this.isAdvancedSearch = false
|
||
}, e => {
|
||
})
|
||
// this.$refs.selection.selectAll(false)
|
||
},
|
||
// 获取拖拽行的id
|
||
dragRowClassName (row, index) {
|
||
return 'drag-row' + ' ' + 'id=' + row.row.id
|
||
},
|
||
// 表格排序
|
||
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 'putTime' :
|
||
// 后台联调
|
||
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 'standStatusShow' :
|
||
this.orderBy = 3;
|
||
this.nowOrder = sortObj.column.order
|
||
if (this.nowOrder === 'ascending') {
|
||
this.nowOrder = 2
|
||
} else if (this.nowOrder === 'descending') {
|
||
this.nowOrder = 1
|
||
}
|
||
break
|
||
}
|
||
}
|
||
// this.getDomesticStandardTable(this.tableFlag)
|
||
//搜索后排序,应该以被搜索后的数据排序
|
||
this.getBussionStandTable(this.sarBussionessSearch)
|
||
|
||
},
|
||
// 修改成表格样式后,选择项勾选改变
|
||
standSelectChange (data) {
|
||
this.ocrList = data
|
||
this.selectedList = []
|
||
for (let i = 0; i < data.length; i++) {
|
||
this.selectedList.push(data[i].id)
|
||
}
|
||
},
|
||
// 点击表格行--跳转详情页
|
||
clickRow (row, event, column) {
|
||
let routeUrl = this.$router.resolve({
|
||
name: 'OtherBussStandardDetails',
|
||
params: {
|
||
id: row.id,
|
||
pageType: 'BUSINESS_STAND'
|
||
}
|
||
})
|
||
window.open(routeUrl.href, '_blank')
|
||
},
|
||
OCRAdd (type) {
|
||
let text = ''
|
||
this.OCRType = type
|
||
if (type === '0') {
|
||
text = 'OCR识别'
|
||
this.OCRTitle = '选择OCR实别文件'
|
||
} else if(type === '1') {
|
||
text = '拆分'
|
||
this.OCRTitle = '选择拆分文件'
|
||
}else if(type === '2') {
|
||
text = '编辑'
|
||
this.OCRTitle = '选择编辑文件'
|
||
}
|
||
if (this.ocrList.length > 1 && (type === '0' || type === '1' || type === '2')) {
|
||
this.$message.warning('仅能选择一条数据进行' + text)
|
||
} else if (this.ocrList.length === 0 && (type === '0' || type === '1' || type === '2')) {
|
||
this.$message.warning('请选择一条数据进行' + text)
|
||
} else if (this.ocrList.length === 1 && (type === '0' || type === '1')) {
|
||
this.OCRModel = true
|
||
this.OCRLoading = true
|
||
this.$http.get('lawss/sarStandFile/queryFileInfoNew', {
|
||
type: type,
|
||
standId: this.selectedList[0]
|
||
},{
|
||
_this: this
|
||
}, res => {
|
||
this.OCRLoading = false
|
||
if (res.ok) {
|
||
if (res.data.length > 0) {
|
||
this.OCRData = res.data
|
||
} else {
|
||
this.$message.warning('当前标准没有' + text + '文件')
|
||
this.this.OCRData = []
|
||
}
|
||
}
|
||
})
|
||
} else if (this.ocrList.length === 1 && type === '2'){
|
||
console.log('4228',this.ocrList)
|
||
this.selectStandardPro(this.ocrList[0], 'edit')
|
||
}
|
||
},
|
||
// 查询二级菜单
|
||
selectMenu () {
|
||
this.countRootId = 0
|
||
this.$http.get('lawss/sarMenu/selectMenuByRole', {sorDivide: 'BUSINESS_STAND'}, {
|
||
_this: this
|
||
}, res => {
|
||
let treeNode = []
|
||
this.parentNode = {}
|
||
res.data.map((item, index) => {
|
||
let treeItem = {}
|
||
for (let key in item) {
|
||
if (key === 'parentId') {
|
||
treeItem.pId = item[key]
|
||
treeItem.parentId = item[key]
|
||
} else if (key === 'menuName') {
|
||
treeItem.name = item[key]
|
||
} else {
|
||
treeItem[key] = item[key]
|
||
}
|
||
}
|
||
treeNode[index] = treeItem
|
||
// 记录最外层父节点
|
||
if (treeItem.parentId === '' || treeItem.parentId == null) {
|
||
this.parentNode = treeItem
|
||
this.countRootId += 1
|
||
}
|
||
})
|
||
this.lawsZNodes = JSON.parse(JSON.stringify(treeNode))
|
||
// 查完左侧目录后,如果没有选中的,设置最外层选中
|
||
if (JSON.stringify(this.selectSarMenu) === '{}') {
|
||
this.selectSarMenu = this.parentNode
|
||
}
|
||
}, e => {
|
||
})
|
||
},
|
||
// 拖拽事件
|
||
drag (treeNode, dragId) {
|
||
if (treeNode !== null) {
|
||
let search = {}
|
||
search.menuId = treeNode.id
|
||
search.idlist = this.selectedList.length ? this.selectedList : dragId
|
||
this.$http.postData('lawss/sarBussionessStand/saveStandardsMenu', search, {
|
||
_this: this
|
||
}, res => {
|
||
if (res.ok) {
|
||
this.$message({
|
||
message: '配置标准成功!',
|
||
type: 'success'
|
||
})
|
||
this.selectedList = []
|
||
this.getBussionStandTable(this.tableFlag)
|
||
} else {
|
||
this.$message({
|
||
message: res.message,
|
||
type: 'warning'
|
||
})
|
||
}
|
||
}, e => {
|
||
})
|
||
}
|
||
},
|
||
/**
|
||
* 获取新增弹框的表单
|
||
*/
|
||
getAddFormFieldList (isEdit) {
|
||
this.$http.get('lawss/sarStandAttrDetails/list', {}, {_this: this},
|
||
res => {
|
||
if (res.ok) {
|
||
const { data = {} } = res
|
||
this.formFieldListData = data['BUSS']
|
||
// 追加高级查询动态下拉框数据s
|
||
this.twoOptions = [
|
||
// {
|
||
// label: '企标类别',
|
||
// value: 'stand_sort',
|
||
// type: 'SEL_OPTION',
|
||
// disabled: false
|
||
// },
|
||
{
|
||
label: '标准状态',
|
||
value: 'stand_status',
|
||
type: 'SEL_OPTION',
|
||
disabled: false
|
||
},
|
||
{
|
||
label: '企标编号',
|
||
value: 'stand_code',
|
||
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: 'put_time',
|
||
type: 'DATE_PIC_OPTS',
|
||
disabled: false
|
||
},
|
||
// {
|
||
// label: '代替企标编号',
|
||
// value: 'replace_stand_num',
|
||
// type: 'INPUT',
|
||
// disabled: false
|
||
// },
|
||
// {
|
||
// label: '被代替企标编号',
|
||
// value: 'replaced_stand_num',
|
||
// type: 'INPUT',
|
||
// disabled: false
|
||
// }
|
||
]
|
||
this.formFieldListData.map(item => {
|
||
if (item.attrType !== 'FILE' && item.attrField !== 'FZRQ' && item.attrField !== 'ZYQCR'
|
||
&& item.attrField !== 'QTQCR' && item.attrField !== 'WFSPJS' && item.attrField !== 'XGLC' && item.attrField !== 'XGJH') {
|
||
this.twoOptions.push({
|
||
value: item.attrField,
|
||
label: item.attrName,
|
||
selVal: item.selVal,
|
||
type: item.attrType,
|
||
disabled: false,
|
||
__wx__: item
|
||
})
|
||
}
|
||
})
|
||
}
|
||
}, e => {})
|
||
},
|
||
/**
|
||
* 展示位置
|
||
*/
|
||
queryDisplayLocation () {
|
||
return new Promise((resolve, reject) => {
|
||
this.$http.get('lawssBase/utArea/getAreaList', {
|
||
sarType: this.sarType
|
||
}, {
|
||
_this: this
|
||
}, res => {
|
||
console.log('getAreaList',res.data)
|
||
this.showRegionOptions = res.data || []
|
||
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 === 'SYCXCLASS'){
|
||
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.sarBussionessStandEO[item.attrField] ? new Date(this.sarBussionessStandEO[item.attrField]) : ''
|
||
this.$set(this.sarBussionessStandEO, item.attrField, date)
|
||
} else {
|
||
this.$set(this.sarBussionessStandEO, item.attrField, this.sarBussionessStandEO[item.attrField] || '')
|
||
}
|
||
})
|
||
this.resolveFormFieldListRules()
|
||
},
|
||
/**
|
||
* 生成校验规则
|
||
*/
|
||
resolveFormFieldListRules () {
|
||
this.reloadAddForm = false
|
||
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' || item.attrType === 'SEL_OPTS') {
|
||
rule.push({ required: true, message: `${item.attrName}不能为空`, trigger: 'change' })
|
||
} else {
|
||
rule.push({ required: true, message: `${item.attrName}不能为空`, trigger: 'change' })
|
||
}
|
||
}
|
||
if (item.attrLen && item.attrType !== 'DATE_PICKER' && item.attrType !== 'SEL_OPTION' && item.attrType !== 'SEL_OPTS') {
|
||
rule.push({type: 'string', max: item.attrLen, message: `${item.attrName}不能超过${item.attrLen}个字符`, trigger: 'change'})
|
||
}
|
||
if (rule.length > 0) {
|
||
// this.$set(this.rules, item.attrField, rule)
|
||
rules[item.attrField] = rule
|
||
}
|
||
})
|
||
// this.rules = rules
|
||
this.$set(this, 'sarBussionessStandRules', rules)
|
||
|
||
setTimeout(() => {
|
||
this.reloadAddForm = true
|
||
}, 1000)
|
||
// this.$nextTick(() => {
|
||
// this.$refs['sarStandardsInfoForm'].resetFields()
|
||
// })
|
||
},
|
||
// 搜索
|
||
getDomesticStandardTableBtn (item) {
|
||
this.tableFlag = item
|
||
item.page = 1
|
||
// this.pageChange(1)
|
||
this.getDomesticStandardTable(item)
|
||
},
|
||
// 分页查询国内标准
|
||
getDomesticStandardTable (item) {
|
||
if (item !== '' && item !== null && item !== undefined) {
|
||
item.pageSize = this.$store.getters.userInfo.configContent
|
||
}
|
||
this.sarBussionessSearch.pageSize = this.$store.getters.userInfo.configContent
|
||
const data = item || this.sarBussionessSearch
|
||
const formData = {...data}
|
||
formData.menuId = this.selectSarMenu.id
|
||
// 处理我的收藏和个性化标签传参
|
||
if (this.selectSarMenu.id === 'wdsc') {
|
||
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
|
||
}
|
||
const attrSearchMap = {
|
||
applyArctic: formData.applyArctic
|
||
}
|
||
formData['attrSearchStr'] = JSON.stringify(attrSearchMap)
|
||
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', formData, {
|
||
_this: this, loading: 'loading'
|
||
}, res => {
|
||
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
|
||
}
|
||
this.stahndinfoList = res.data.list
|
||
this.total = res.data.count
|
||
if ((this.stahndinfoList.length === 0 || this.stahndinfoList === []) && this.sarBussionessSearch.page !== 1) {
|
||
this.pageChange(1)
|
||
}
|
||
}, e => {
|
||
this.stahndinfoList = []
|
||
this.total = 0
|
||
})
|
||
},
|
||
selectReplaceStandNumRowChange (row) {
|
||
this.replaceStandNumModelNum = row
|
||
},
|
||
/**
|
||
*@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)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
},
|
||
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.map((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)
|
||
})
|
||
})
|
||
},
|
||
// 人员选择事件
|
||
onDept (pOrgId, pOrgName, field) {
|
||
let deptTitleName = field.attrField === 'ZYQCR' ? 'ZQCBM' : 'ZRBM'
|
||
let dynamicFormFieldIndex = null
|
||
let zrbmIndex = null
|
||
let zqcbmIndex = null
|
||
// 判断赋值部门字段
|
||
if (field.attrField === 'ZYQCR' || field.attrField === 'QTQCR') {
|
||
this.dynamicFormField.map((item, indexs) => {
|
||
if (item.value === '2YVQYFS332W5XWAAY25F') {
|
||
dynamicFormFieldIndex = indexs
|
||
item.child.map((items, index) => {
|
||
if (items.attrField === deptTitleName) {
|
||
items.valueName = pOrgName
|
||
items.value = pOrgId
|
||
// 存贮起草部门原始信息
|
||
if (deptTitleName === 'ZRBM') {
|
||
this.qcbm = pOrgId
|
||
this.qcbmName = pOrgName
|
||
}
|
||
}
|
||
switch (items.attrField) {
|
||
case 'ZQCBM':
|
||
zqcbmIndex = index
|
||
this.sarBussionessStandEO.ZQCBM = items.value
|
||
break
|
||
case 'ZRBM':
|
||
zrbmIndex = index
|
||
break
|
||
}
|
||
})
|
||
}
|
||
})
|
||
// 拼接起草部门信息(起草部门 + 主起草部门)
|
||
let zqcbmId = this.dynamicFormField[dynamicFormFieldIndex].child[zqcbmIndex].value ? this.dynamicFormField[dynamicFormFieldIndex].child[zqcbmIndex].value : ''
|
||
let zqcbmName = this.dynamicFormField[dynamicFormFieldIndex].child[zqcbmIndex].valueName ? this.dynamicFormField[dynamicFormFieldIndex].child[zqcbmIndex].valueName : ''
|
||
let orgIdList = (this.qcbm !== '' ? this.qcbm + ',' + zqcbmId : zqcbmId).split(',')
|
||
let orgNameList = (this.qcbmName !== '' ? this.qcbmName + ',' + zqcbmName : zqcbmName).split(',')
|
||
this.dynamicFormField[dynamicFormFieldIndex].child[zrbmIndex].valueName = [...new Set(orgNameList)].join(',')
|
||
this.dynamicFormField[dynamicFormFieldIndex].child[zrbmIndex].value = [...new Set(orgIdList)].join(',')
|
||
// this.sarBussionessStandEO.ZRBM = [...new Set(orgIdList)].join(',')
|
||
this.$set(this.sarBussionessStandEO, 'ZRBM', [...new Set(orgIdList)].join(','))
|
||
}
|
||
}
|
||
},
|
||
watch: {
|
||
filterText(val) {
|
||
this.$refs.tree.filter(val);
|
||
},
|
||
'sarBussionessStandEO.issueTime': {
|
||
handler: function() {
|
||
if(this.sarBussionessStandEO.issueTime !== undefined && this.sarBussionessStandEO.issueTime !== null && this.sarBussionessStandEO.issueTime !== ''){
|
||
let date = new Date(this.$moment(this.sarBussionessStandEO.issueTime).format('YYYY-MM-DD'))
|
||
// const FSRQBUSS = date.getFullYear()+ 5 + '-' + date.getMonth() + '-' + date.getDate()
|
||
// this.sarBussionessStandEO["FSRQBUSS"] = FSRQBUSS
|
||
|
||
let year = date.getFullYear()+5;
|
||
let month =(date.getMonth() + 1).toString();
|
||
let day = (date.getDate()).toString();
|
||
if (month.length == 1) {
|
||
month = "0" + month;
|
||
}
|
||
if (day.length == 1) {
|
||
day = "0" + day;
|
||
}
|
||
const FSRQBUSS = year + "-" + month + "-" + day;
|
||
console.log(FSRQBUSS,"FSRQBUSS");
|
||
this.sarBussionessStandEO["FSRQBUSS"] = FSRQBUSS
|
||
|
||
}
|
||
},
|
||
},
|
||
},
|
||
computed: {
|
||
// 是否拥有拖拽权限
|
||
hasPermissionDrag () {
|
||
let has = false
|
||
let permissionList = this.$store.getters.getMenuList
|
||
permissionList.map((menu) => {
|
||
// if (menu.id === 'VR7ND88UDT') {
|
||
if (menu.id === '4EN5WW694V') {
|
||
has = true
|
||
}
|
||
})
|
||
return has
|
||
},
|
||
...mapGetters(['userInfo'])
|
||
},
|
||
mounted () {
|
||
this.treeReload = true
|
||
// 进入页面后查询树形结构目录
|
||
this.selectMenuList()
|
||
this.dragControllerLR()
|
||
// 查询各下拉框数据
|
||
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
||
_this: this
|
||
}, res => {
|
||
this.allSelectOptions = res.data || {}
|
||
|
||
this.countryOptions = res.data.COUNTRY
|
||
this.applyCountryOptions = res.data.COUNTRY
|
||
this.regionOptions = res.data.REGION // 区域
|
||
this.standStateOptions = res.data.BUSSSTATE
|
||
this.energyKindOptions = res.data.ENERGYTYPES
|
||
this.standGeneraOptions = res.data.BUSSBIGCLASS
|
||
this.standSubclassOptions = res.data.BUSSFINECLASS
|
||
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
|
||
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
|
||
this.standStateOptions = res.data.TEXTSTATUSBUSS // 文本状态
|
||
this.standSystemOptions = res.data.TXLBBUSS // 标准体系
|
||
this.applyArcticOptions = res.data.ENERGYTYPES // 适用车型
|
||
this.categoryOptions = res.data.NYLXCLASS // 能源类型
|
||
this.applyAuthOptions = res.data.SYRZCLASS // 适用认证
|
||
this.cysdOptions = res.data.WSCYSD // 我司参与深度
|
||
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
|
||
this.txlbOptions = res.data.TXLBCLASS // 体系类别
|
||
this.qcdwOptions = res.data.QCDW // 起草单位
|
||
this.qcrOptions = res.data.QCRBUSS // 起草人
|
||
this.nylxOptions = res.data.NYLXCLASS // 能源类型
|
||
this.syrzOptions = res.data.SYRZCLASS // 适用认证
|
||
this.sycpxOptions = res.data.SYCPXCLASS // 适用产品线
|
||
this.zrgcsOptions = res.data.ZRGCSCLASS // 责任工程师
|
||
this.zrbmOptions = res.data.ZRBMCLASS // 责任部门
|
||
this.gkglbmOptions=res.data.GKGLBM;//归口管理部门
|
||
// this.classifyCodeOptions = res.data.STANDCLASSIFY
|
||
}, e => {
|
||
})
|
||
// 加载动态表单数据
|
||
this.getAddFormFieldList()
|
||
this.getBussionStandTable(this.tableFlag)
|
||
// this.getOrgTreeSource()
|
||
this.tableHeight = $('.content').height() - 44 - 20
|
||
window.onresize = () => {
|
||
this.tableHeight = $('.content').height() - 44 - 20
|
||
}
|
||
this.getDept()
|
||
},
|
||
destroyed() {
|
||
window.onresize = null
|
||
this.tableHeight = ''
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="less" scoped>
|
||
/deep/ .el-table--scrollable-x .el-table__body-wrapper {
|
||
overflow-x: scroll;
|
||
}
|
||
#left{
|
||
width:calc(30% - 5px);
|
||
height:100%;
|
||
float:left;
|
||
}
|
||
|
||
#resize{
|
||
width:5px;
|
||
height:100%;
|
||
cursor: w-resize;
|
||
float:left;
|
||
}
|
||
|
||
#right{
|
||
float:right;
|
||
width:70%;
|
||
height:100%;
|
||
}
|
||
/deep/.contentTitle{
|
||
width: 100%;
|
||
}
|
||
/deep/.el-drawer__container {
|
||
.prc-content-border {
|
||
/*border: none;*/
|
||
width: 100%;
|
||
padding: 0 20px 0;
|
||
}
|
||
}
|
||
/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; // 缩进量
|
||
line-height: 30px;
|
||
}
|
||
.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';
|
||
#EnterpriseStandardDatabase{
|
||
display: flex;
|
||
position: relative;
|
||
height: 100%;
|
||
//background: #fff;
|
||
.tree-content {
|
||
width: 20%;
|
||
position: relative;
|
||
/*height: 100%;*/
|
||
background: #fff;
|
||
|
||
.tree {
|
||
/deep/ .el-card__body{
|
||
padding: 0 !important;
|
||
}
|
||
.el-card{
|
||
width: 500px;
|
||
min-width: 2000px;
|
||
max-width: 100%;
|
||
//min-width: min-content;
|
||
}
|
||
height: 95%;
|
||
width: 95%;
|
||
position: absolute;
|
||
left: 0;
|
||
}
|
||
|
||
.tree-collapse {
|
||
position: absolute;
|
||
right: 0;
|
||
}
|
||
}
|
||
.tree-right {
|
||
overflow-y: hidden;
|
||
padding:0 0;
|
||
position: relative;
|
||
width: 84%;
|
||
height: 100%;
|
||
display: flex;
|
||
flex-direction: column;
|
||
// 表格
|
||
.content{
|
||
//height: calc(~'100% - 43.5px - 56px');
|
||
display: flex;
|
||
flex-direction: column;
|
||
position: relative;
|
||
flex: auto;
|
||
.collection-btn {
|
||
padding: 0;
|
||
border: none;
|
||
color: #F2CB51;
|
||
font-size: 18px;
|
||
width: 18px;
|
||
height: 18px;
|
||
background-color: transparent;
|
||
/*background: rgba(244, 162, 39, 0.1);*/
|
||
|
||
//.icon-collection {
|
||
// background-image: url("~assets/images/shangqi/standardDetails/collection.png");
|
||
//}
|
||
|
||
}
|
||
.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-drawer__wrapper{
|
||
.demo-drawer-content{
|
||
.drawer-content{
|
||
//height: calc(~'100% - 52px - 56px');
|
||
flex: auto;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
}
|
||
}
|
||
.searchAngNewBtn {
|
||
margin-top: 10px !important;
|
||
}
|
||
}
|
||
</style>
|
||
<style lang="less" scoped>
|
||
#EnterpriseStandardDatabase{
|
||
.tools-bar-wrapper {
|
||
align-items: start;
|
||
}
|
||
}
|
||
::v-deep .el-drawer__header{
|
||
&>span:first-child{
|
||
outline: none!important;
|
||
}
|
||
}
|
||
::v-deep .el-drawer{
|
||
outline: none!important;
|
||
}
|
||
</style>
|