This commit is contained in:
zhutianqi
2021-06-01 17:02:19 +08:00
parent 488312ebeb
commit bc3252387e
11 changed files with 4186 additions and 1752 deletions
+2 -2
View File
@@ -189,7 +189,7 @@
</template>
</el-form>
<div slot="footer">
<el-button type="primary" round class="common-button-primary" @click="getDomesticStandardTableBtn">高级检索</el-button>
<el-button type="primary" class="common-button-primary" @click="getDomesticStandardTableBtn">高级检索</el-button>
<el-button class="common-button-default" @click="clearAllSearch">重置</el-button>
</div>
</el-dialog>
@@ -381,7 +381,7 @@
</template>
</el-form>
<div class="search-condition-btn">
<el-button type="primary" round class="common-button-primary" @click="getDomesticStandardTableBtn">查询</el-button>
<el-button type="primary" class="common-button-primary" @click="getDomesticStandardTableBtn">查询</el-button>
<el-button class="common-button-default" @click="clearAllSearch">重置</el-button>
</div>
</div>
+5 -5
View File
@@ -158,11 +158,11 @@ export default {
// path: '/enterpriseStandardFiling',
// menuId: 'MQBAGJQMSRZDRX3X5AVR'
// },
// {
// title: '标准合规评估结果', // 把 标准涉及项目 这几个字 改成 标准合规评估结果
// path: '/standInvolveProject',
// menuId: 'JURHS3LVP35US88ABULS'
// }
{
title: '标准合规评估结果', // 把 标准涉及项目 这几个字 改成 标准合规评估结果
path: '/standInvolveProject',
menuId: 'JURHS3LVP35US88ABULS'
}
// {
// title: '动态信息',
// path: '/information',
@@ -1,627 +1,58 @@
x`<!-- 标准法规库 - 目标市场准入清单 -->
<!-- 标准法规库 - 目标市场准入清单 -->
<template>
<div id="accessStandardsAndRegulations" class="v-class">
<div class="search-area">
<div class="left">
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form" >
<!-- <el-form-item label="国内/海外" class="search-item">-->
<!-- <el-select-->
<!-- v-model="sarSarAccessEOSearch.type"-->
<!-- placeholder="请选择"-->
<!-- filterable-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="item in regionOptions"-->
<!-- :value="item.value"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="国家/地区" class="search-item search-item-last">
<el-select
v-model="sarSarAccessEOSearch.country"
placeholder="请选择"
filterable
>
<el-option
v-for="item in countryOptions"
:value="item.value"
:key="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
:loading="searching"
icon="el-icon-search"
type="primary"
class="common-button-primary"
round
@click="searchSarAccessBtn">
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
round
@click="clearSearch"></el-button>
</el-form-item>
<el-button
type="primary"
class="common-button-primary"
round
@click="selectMoreBtn"
><i class="iconfont">&#xe7a5;</i>高级查询</el-button>
<AdvancedQuery
:isAdvancedSearch.sync="isAdvancedSearch"
:twoOptions="twoOptions"
:threeOptions="threeOptions"
@twoSelectChange="twoSelectChange"
@getDomesticStandardTableBtn="getDomesticStandardTableBtn"
></AdvancedQuery>
</el-form>
</div>
</div>
<div class="action-bar">
<el-button
type="primary"
class="common-button-primary add-button"
round
@click="openModal(null,'addOpt')"
v-btn-permission="'J2YEFN9MH4KWW5HMR2QH'"
><i class="iconfont">&#xe84e;</i>新增</el-button>
<el-button
class="common-button-default delete-button"
:loading="delLoading"
round
@click="deleteSarAccess('demore',null)"
v-btn-permission="'WPNW79T3DNUZPJFNMHGP'"
><i class="iconfont">&#xe61b;</i>批量删除</el-button>
</div>
<div class="container">
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectOne"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="countryShow"
label="国家/地区"
align="center">
</el-table-column>
<el-table-column
prop="accessContent"
label="清单名称"
align="center"
width="260px"
>
<template slot-scope="scope">
<a class="table-jump" @click.stop="showTable(scope.row)">{{ scope.row.accessContent }}</a>
</template>
</el-table-column>
<el-table-column
prop="state"
label="清单状态"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.state === '1'">未发布</span>
<span v-if="scope.row.state === '2'">已发布</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="清单版本"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="modifyTime"
label="更新时间"
sortable
align="center">
<template slot-scope="scope">
<div>{{ scope.row.modifyTime ? scope.row.modifyTime.split(' ')[0] : '' }}</div>
</template>
</el-table-column>
<el-table-column
prop="uname"
label="更新人"
align="center">
</el-table-column>
<el-table-column label="操作" align="center" width="50" fixed="right">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'43UVH8AWGJLFDZT9WNTZ'">查看</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'HYY8NGY2RYT3VEDRSK5V'">编辑</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'X9HP9YQL2BRKBFCDMZQT'">删除</el-dropdown-item>
<!-- <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>-->
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
</el-table>
<loading :loading="loading">数据获取中</loading>
<pagination :page="sarSarAccessEOSearch.page" :total="sarAccessListTotal" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div>
<el-tabs v-model="tabValue" style="height: 100%;">
<el-tab-pane label="国家/地区清单" name="listOfCountries">
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;">
<list-of-countries v-if="tabValue === 'listOfCountries'"></list-of-countries>
</div>
</el-tab-pane>
<el-tab-pane label="项目类清单" name="listProject">
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;">
<list-project v-if="tabValue === 'listProject'"></list-project>
</div>
</el-tab-pane>
<el-tab-pane label="重点标准跟踪清单" name="listTracking">
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;">
<list-tracking v-if="tabValue === 'listTracking'"></list-tracking>
</div>
</el-tab-pane>
<el-tab-pane label="其他清单" name="listOther">
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;">
<list-other v-if="tabValue === 'listOther'"></list-other>
</div>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import listOfCountries from "../accessStandardsAndRegulations/page/listOfCountries"
import listProject from "../accessStandardsAndRegulations/page/listProject"
import listTracking from "../accessStandardsAndRegulations/page/listTracking"
import listOther from "../accessStandardsAndRegulations/page/listOther"
export default {
name: 'AccessStandardsAndRegulations',
data () {
return {
isAdvancedSearch: false,
twoOptions: [
{
label: '清单名称',
value: 'access_content',
type: 'INPUT',
disabled: false
},
{
label: '国家/地区',
value: 'country',
type: 'SEL_OPTION',
disabled: false
},
// {
// label: '文本说明',
// value: 'remark',
// type: 'INPUT',
// disabled: false
// },
{
label: '清单状态',
value: 'state',
type: 'SEL_OPTION',
disabled: false
},
{
label: '更新人',
value: 'creation_user',
type : 'SEL_OPTION',
selVal : 'USERLIST',
disabled: false
}
],
threeOptions: [],
showTableFlag: true,
dataLoading: false,
searching: false,
loadData: false,
moreSearchBtn: true,
moreSearchShow: false,
exportTestItemNameFlag: false, // 导出模态框
exportName: '',
total: 0,
page: 1,
rows: 10,
// 查询相关参数
sarSarAccessEOSearch: {
country: '',
accessContent: '',
energyKind: '',
applyArctic: '',
region: '',
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0
},
sarAccessListDatas: [],
sarAccessListTotal: 0,
loading: false,
selectedList: [],
// 新增、编辑 准入信息字段
sarAccessEO: {
country: '',
applyArctic: '',
energyKind: '',
accessContent: '',
region: ''
},
drawerPage: 1, // 当前抽屉分页的页码
drawerTotal: 0, // 抽屉分页的总条数
sarAccessEORules: {
region: [
{required: true, message: '区域不能为空', trigger: 'change'}
],
country: [
{required: true, message: '国家不能为空', trigger: 'change'}
],
accessContent: [
{required: true, message: '表格名称不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '表格名称不能超过100个字符', trigger: 'blur'}
]
},
countryOptions: [],
drawerCountryOptions: [], // 准入信息 国家下拉框
drawerCountryTwoOptions: [], // 数据搜索-多属性搜索国家下拉框
energyKindOptions: [],
categoryOptions: [],
applyArcticOptions: [],
applyAuthOptions: [], // 认证类型下拉框
// 区域
regionOptions: [
{
label: '国内',
value: 'INLAND'
},
{
label: '海外',
value: 'FOREIGN'
}
],
showModalTitle: '',
disabledFlag: false,
showModalFlag: false,
// 新增、编辑过程中数据搜索字段
sarAccessInfoSearch: {
region: '', // 区域
country: '', // 国家
keywords: '', // 关键字
energyKind: '', // 能源种类
category: '', // 所属专业领域
applyArctic: '', // 适用车型
deadLine: '', // 截止时间
applyAuth: '' // 认证类型
},
dataSourceOptions: [
{value: 'INLAND_STAND', label: '国内标准法规'},
{value: 'FOREIGN_STAND', label: '海外标准法规'},
{value: 'FOREIGN_LAWS', label: '国内外政策'},
{value: 'BUSINESS', label: '企业标准 '}
],
sarAccessInfoSearchList: [],
selectedAccInfoSearchList: [],
sarAccessInfoListArry: [],
sarAccessInfoList: [],
importExcelUrl: '/api/lawss/sarSarAccessInfo/importSarAccessInfo?accessId=',
importmodalFlag: false,
saveExportType: '',
seeModalFlag: false, // 查看抽屉显示隐藏
seeModalTitle: '', // 查看抽屉title
seeSarAccessInfoList: [], // 查看抽屉内 table
delLoading: false
tabValue: 'listOfCountries'
}
},
methods: {
// 更多
handleCommand (command) {
switch (command[1]) {
case '查看':
this.showTable(command[0])
break
case '编辑':
this.editTable(command[0])
break
case '删除':
this.deleteSarAccess('delOne', command[0].id)
break
}
},
// 主页 搜索条件 区域下拉 on-change事件
regionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.countryOptions = res.data.list
this.sarSarAccessEOSearch.country = ''
// eslint-disable-next-line
reslove()
}
})
})
},
// 主页 新增、编辑 准入信息 区域下拉 on-change事件
drawerRegionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.drawerCountryOptions = res.data.list
this.sarAccessEO.country = ''
resolve()
}
})
})
},
// 搜索
searchSarAccessBtn () {
this.page = 1
this.searchSarAccess()
},
// 分页查询相关
searchSarAccess (advanceSearch) {
const obj = advanceSearch || this.sarSarAccessEOSearch
if (advanceSearch) {
this.sarSarAccessEOSearch.advanceSearchVOStr = advanceSearch.advanceSearchVOStr
}
// obj.country = this.sarSarAccessEOSearch.country.join()
this.$http.get('lawss/sarSarAccess/page', obj, {
_this: this,
loading: 'loading'
}, res => {
this.sarAccessListDatas = res.data.list
this.sarAccessListTotal = res.data.count
if ((this.sarAccessListDatas.length === 0 || this.sarAccessListDatas === []) && this.sarSarAccessEOSearch.page !== 1) {
this.pageChange(1)
}
this.$nextTick(() => {
this.$refs.selection.doLayout()
})
}, e => {
})
// this.$refs.selection.selectAll(false)
},
pageChange (page) {
this.sarSarAccessEOSearch.page = page
this.searchSarAccess()
},
pageSizeChange (pageSize) {
this.sarSarAccessEOSearch.pageSize = this.$store.getters.userInfo.configContent
this.searchSarAccess()
},
clearSearch (search = true) {
// search 字段是为了处理高级查询时清空字段用的
this.sarSarAccessEOSearch.country = ''
this.sarSarAccessEOSearch.accessContent = ''
this.sarSarAccessEOSearch.applyArctic = ''
this.sarSarAccessEOSearch.energyKind = ''
this.sarSarAccessEOSearch.type = ''
this.sarSarAccessEOSearch.page = 1
search && this.searchSarAccess()
},
// 查看跳转详情页
detailsStandard (item) {
if (item.sarType === 'INLAND_STAND' || item.sarType === 'FOREIGN_STAND') {
if (this.$hasPermission('SSA6WR4HV8')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else if (item.sarType === 'INLAND_LAWS' || item.sarType === 'FOREIGN_LAWS') {
if (this.$hasPermission('A2HDHMEA6W')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherLawsDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else {
if (this.$hasPermission('YJUHC32R7G')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherBussStandardDetails',
params: {
id: item.resId,
pageType: 'BUSINESS_STAND'
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
}
},
// 新增相关
openModal (row, optType) {
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails'
})
},
swapItems (arr, index1, index2) {
arr[index1] = arr.splice(index2, 1, arr[index1])[0]
return arr
},
// 删除Access
deleteSarAccess (flag, id) {
if (flag === 'delOne') {
this.selectedList = []
this.selectedList[0] = id
}
if (this.selectedList.length < 1) {
this.$message.warning('请选择要删除的数据')
} else {
this.$confirm('确认删除选中数据?', '确认删除', {
confirmButtonText: '确定',
cancelButtonText: '取消',
confirmButtonClass: 'common-button-primary',
roundButton: true,
type: 'warning'
}).then(() => {
this.$http.post('lawss/sarSarAccess/deleteSarAccess', {ids: this.selectedList.join(',')}, {
_this: this,
loading: 'delLoading'
}, res => {
this.searchSarAccess()
this.selectedList = []
}, e => {
})
}).catch(() => {})
}
},
// 表格选择框
selectOne (alldata, nowdata) {
this.selectedList = []
for (let i = 0; i < alldata.length; i++) {
this.selectedList.push(alldata[i]['id'])
}
},
// 根据准入id查询标准法规详情
selectInfobyAccid () {
this.$http.get('lawss/sarSarAccessInfo/selectSarAccessInfoByAccessId', this.sarAccessInfoSearch, {
_this: this
}, res => {
this.sarAccessInfoList = res.data.list.SKILL
this.seeSarAccessInfoList = res.data.list.ADMIN
}, e => {
})
},
// 点击 table查看按钮 事件
showTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$store.commit('setDetailMap', this.$route.path)
this.$router.push({
name: 'AccessStandardDetails',
params: {
id: item.id
}
})
},
// 点击 table编辑按钮 事件
editTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails',
query: {
id: item.id
}
})
// this.showModalTitle = '编辑准入标准法规'
// // 赋值准入信息
// this.drawerRegionChange(row.region).then(() => {
// this.sarAccessEO.country = row.country.split(',') // 国家
// })
// this.sarAccessEO.accessContent = row.accessContent
// this.sarAccessEO.applyArctic = row.applyArctic
// this.sarAccessEO.energyKind = row.energyKind
// this.sarAccessEO.region = row.region // 区域
// this.sarAccessEO.id = row.id
// // 数据搜索
// this.sarAccessInfoSearch.validFlag = 0
// this.sarAccessInfoSearch.accessId = row.id
// this.sarAccessInfoSearch.dataSource = 'INLAND_STAND'
// // 查询数据
// this.selectInfobyAccid()
// this.showModalFlag = true
},
/**
* 高级检索
*/
selectMoreBtn () {
this.isAdvancedSearch = true
this.threeOptions = []
},
/**
* 高级检索
* 检索项修改时为了匹配对应的下拉菜单的
*/
twoSelectChange (val, obj) {
if (val === 'country') {
this.threeOptions = this.countryOptions
} else if (val === 'state') {
this.threeOptions = [
{
label: '未发布',
value: '1'
},
{
label: '已发布',
value: '2'
},
]
}
},
// 获取工作组信息下拉框信息
getGzzOption () {
this.$http.get('lawss/sarGroupMenu/queryGroup', '', {
_this: this
}, res => {
if (res.ok) {
let gzzxxOptions = []
res.data.map(item => {
gzzxxOptions.push({
value: item.id,
label: item.menuName
})
})
this.allSelectOptions.GZZXX = gzzxxOptions
}
})
},
// 高级检索搜索
getDomesticStandardTableBtn (advancedSearch) {
let formData = {}
formData.page = 1
formData.advanceSearchStr = ''
formData.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
formData.pageSize = this.$store.getters.userInfo.configContent
formData.validFlag = 0
// 重置页码
this.clearSearch(false)
this.searchSarAccess(formData)
},
methods: {},
components: {
listOfCountries,
listProject,
listTracking,
listOther
},
components: {},
props: {},
computed: {},
watch: {},
mounted () {
// 分页查询数据
this.searchSarAccess()
// this.loadDicTypeDatas()
// 从数据库中查询各下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
this.countryOptions = res.data.COUNTRY // 国家
this.applyArcticOptions = res.data.PRODUCTTYPE || []
this.energyKindOptions = res.data.ENERGYTYPES || []
this.categoryOptions = res.data.CATEGORY || []
this.applyAuthOptions = res.data.PROVETYPE || [] // 认证类型
}, e => {
})
}
mounted () {}
}
</script>
@@ -629,46 +60,31 @@ export default {
@import '~@/assets/styles/style';
@import '~@/assets/styles/mixins';
#accessStandardsAndRegulations {
height: 100%;
display: flex;
flex-direction: column;
.container {
height: 100%;
padding: 0 10px;
background: #fff;
display: flex;
flex-direction: column;
position: relative;
flex: auto;
width: 100%;
//height: calc(~'100% - 105px - 56px') !important;
.pagination {
position: static;
/deep/ .pagination-slot {
padding: 0;
}
/deep/.el-tabs{
flex: auto;
display: flex;
flex-direction: column;
/deep/ .el-tabs__header{
margin:0 !important;
}
.el-tabs__content {
height: 100% !important;
flex: auto;
position: relative;
display: flex;
flex-direction: column;
.el-tab-pane {
height: 100%;
flex: auto;
display: flex;
flex-direction: column;
}
}
}
}
.el-divider{
.el-divider__text{
font-size: 16px;
color: #0c91e5;
}
}
.standards-drawer-table-one{
position: relative;
height: 350px;
.pagination{
bottom: 0;
}
}
.standards-drawer-table{
margin-top: 10px;
}
.see-drawer{
.searchAngNewBtn{
float: right;
}
.el-divider{
clear: both;
}
}
}
</style>
@@ -0,0 +1,676 @@
<!-- 标准法规库 - 国家/地区清单 -->
<template>
<div id="listOfCountries" class="v-class">
<div class="search-area">
<div class="left">
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form" >
<el-form-item label="国家/地区" class="search-item search-item-last">
<el-select
v-model="sarSarAccessEOSearch.country"
placeholder="请选择"
filterable
>
<el-option
v-for="item in countryOptions"
:value="item.value"
:key="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="清单名称" class="search-item search-item-last">
<el-input
v-model="sarSarAccessEOSearch.ListName"
placeholder="请输入清单名称"
></el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
:loading="searching"
icon="el-icon-search"
type="primary"
class="common-button-primary"
size="small"
@click="searchSarAccessBtn">
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
size="small"
@click="clearSearch"></el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
type="primary"
class="common-button-primary"
@click="selectMoreBtn"
size="mini">
<i class="iconfont">&#xe7a5;</i>高级查询</el-button>
</el-form-item>
<AdvancedQuery
:isAdvancedSearch.sync="isAdvancedSearch"
:twoOptions="twoOptions"
:threeOptions="threeOptions"
@twoSelectChange="twoSelectChange"
@getDomesticStandardTableBtn="getDomesticStandardTableBtn"
></AdvancedQuery>
</el-form>
</div>
</div>
<div class="action-bar">
<el-button
type="primary"
class="common-button-primary add-button"
size="mini"
@click="openModal(null,'addOpt')"
v-btn-permission="'J2YEFN9MH4KWW5HMR2QH'"
><i class="iconfont">&#xe84e;</i>新增</el-button>
<el-button
class="common-button-default delete-button"
:loading="delLoading"
size="mini"
@click="deleteSarAccess('demore',null)"
v-btn-permission="'WPNW79T3DNUZPJFNMHGP'"
><i class="iconfont">&#xe61b;</i>批量删除</el-button>
</div>
<div class="container">
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectOne"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="countryShow"
label="国家/地区"
align="center">
</el-table-column>
<el-table-column
prop="accessContent"
label="清单名称"
align="center"
width="260px"
>
<template slot-scope="scope">
<a class="table-jump" @click.stop="showTable(scope.row)">{{ scope.row.accessContent }}</a>
</template>
</el-table-column>
<el-table-column
prop="state"
label="清单状态"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.state === '1'">未发布</span>
<span v-if="scope.row.state === '2'">已发布</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="清单版本"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="适用领域"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="modifyTime"
label="更新时间"
sortable
align="center">
<template slot-scope="scope">
<div>{{ scope.row.modifyTime ? scope.row.modifyTime.split(' ')[0] : '' }}</div>
</template>
</el-table-column>
<el-table-column
prop="uname"
label="更新人"
align="center">
</el-table-column>
<el-table-column label="操作" align="center" width="50" fixed="right">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'43UVH8AWGJLFDZT9WNTZ'">查看</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'HYY8NGY2RYT3VEDRSK5V'">编辑</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'X9HP9YQL2BRKBFCDMZQT'">删除</el-dropdown-item>
<!-- <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>-->
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
</el-table>
<loading :loading="loading">数据获取中</loading>
<pagination :page="sarSarAccessEOSearch.page" :total="sarAccessListTotal" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div>
</div>
</template>
<script>
export default {
name: 'listOfCountries',
data () {
return {
isAdvancedSearch: false,
twoOptions: [
{
label: '清单名称',
value: 'access_content',
type: 'INPUT',
disabled: false
},
{
label: '国家/地区',
value: 'country',
type: 'SEL_OPTION',
disabled: false
},
// {
// label: '文本说明',
// value: 'remark',
// type: 'INPUT',
// disabled: false
// },
{
label: '清单状态',
value: 'state',
type: 'SEL_OPTION',
disabled: false
},
{
label: '更新人',
value: 'creation_user',
type : 'SEL_OPTION',
selVal : 'USERLIST',
disabled: false
}
],
threeOptions: [],
showTableFlag: true,
dataLoading: false,
searching: false,
loadData: false,
moreSearchBtn: true,
moreSearchShow: false,
exportTestItemNameFlag: false, // 导出模态框
exportName: '',
total: 0,
page: 1,
rows: 10,
// 查询相关参数
sarSarAccessEOSearch: {
ListName: '',
country: '',
accessContent: '',
energyKind: '',
applyArctic: '',
region: '',
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0
},
sarAccessListDatas: [],
sarAccessListTotal: 0,
loading: false,
selectedList: [],
// 新增、编辑 准入信息字段
sarAccessEO: {
country: '',
applyArctic: '',
energyKind: '',
accessContent: '',
region: ''
},
drawerPage: 1, // 当前抽屉分页的页码
drawerTotal: 0, // 抽屉分页的总条数
sarAccessEORules: {
region: [
{required: true, message: '区域不能为空', trigger: 'change'}
],
country: [
{required: true, message: '国家不能为空', trigger: 'change'}
],
accessContent: [
{required: true, message: '表格名称不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '表格名称不能超过100个字符', trigger: 'blur'}
]
},
countryOptions: [],
drawerCountryOptions: [], // 准入信息 国家下拉框
drawerCountryTwoOptions: [], // 数据搜索-多属性搜索国家下拉框
energyKindOptions: [],
categoryOptions: [],
applyArcticOptions: [],
applyAuthOptions: [], // 认证类型下拉框
// 区域
regionOptions: [
{
label: '国内',
value: 'INLAND'
},
{
label: '海外',
value: 'FOREIGN'
}
],
showModalTitle: '',
disabledFlag: false,
showModalFlag: false,
// 新增、编辑过程中数据搜索字段
sarAccessInfoSearch: {
region: '', // 区域
country: '', // 国家
keywords: '', // 关键字
energyKind: '', // 能源种类
category: '', // 所属专业领域
applyArctic: '', // 适用车型
deadLine: '', // 截止时间
applyAuth: '' // 认证类型
},
dataSourceOptions: [
{value: 'INLAND_STAND', label: '国内标准法规'},
{value: 'FOREIGN_STAND', label: '海外标准法规'},
{value: 'FOREIGN_LAWS', label: '国内外政策'},
{value: 'BUSINESS', label: '企业标准 '}
],
sarAccessInfoSearchList: [],
selectedAccInfoSearchList: [],
sarAccessInfoListArry: [],
sarAccessInfoList: [],
importExcelUrl: '/api/lawss/sarSarAccessInfo/importSarAccessInfo?accessId=',
importmodalFlag: false,
saveExportType: '',
seeModalFlag: false, // 查看抽屉显示隐藏
seeModalTitle: '', // 查看抽屉title
seeSarAccessInfoList: [], // 查看抽屉内 table
delLoading: false
}
},
methods: {
// 更多
handleCommand (command) {
switch (command[1]) {
case '查看':
this.showTable(command[0])
break
case '编辑':
this.editTable(command[0])
break
case '删除':
this.deleteSarAccess('delOne', command[0].id)
break
}
},
// 主页 搜索条件 区域下拉 on-change事件
regionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.countryOptions = res.data.list
this.sarSarAccessEOSearch.country = ''
// eslint-disable-next-line
reslove()
}
})
})
},
// 主页 新增、编辑 准入信息 区域下拉 on-change事件
drawerRegionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.drawerCountryOptions = res.data.list
this.sarAccessEO.country = ''
resolve()
}
})
})
},
// 搜索
searchSarAccessBtn () {
this.page = 1
this.searchSarAccess()
},
// 分页查询相关
searchSarAccess (advanceSearch) {
const obj = advanceSearch || this.sarSarAccessEOSearch
if (advanceSearch) {
this.sarSarAccessEOSearch.advanceSearchVOStr = advanceSearch.advanceSearchVOStr
}
// obj.country = this.sarSarAccessEOSearch.country.join()
this.$http.get('lawss/sarSarAccess/page', obj, {
_this: this,
loading: 'loading'
}, res => {
this.sarAccessListDatas = res.data.list
this.sarAccessListTotal = res.data.count
if ((this.sarAccessListDatas.length === 0 || this.sarAccessListDatas === []) && this.sarSarAccessEOSearch.page !== 1) {
this.pageChange(1)
}
this.$nextTick(() => {
this.$refs.selection.doLayout()
})
}, e => {
})
// this.$refs.selection.selectAll(false)
},
pageChange (page) {
this.sarSarAccessEOSearch.page = page
this.searchSarAccess()
},
pageSizeChange (pageSize) {
this.sarSarAccessEOSearch.pageSize = this.$store.getters.userInfo.configContent
this.searchSarAccess()
},
clearSearch (search = true) {
// search 字段是为了处理高级查询时清空字段用的
this.sarSarAccessEOSearch.country = ''
this.sarSarAccessEOSearch.accessContent = ''
this.sarSarAccessEOSearch.applyArctic = ''
this.sarSarAccessEOSearch.energyKind = ''
this.sarSarAccessEOSearch.type = ''
this.sarSarAccessEOSearch.page = 1
search && this.searchSarAccess()
},
// 查看跳转详情页
detailsStandard (item) {
if (item.sarType === 'INLAND_STAND' || item.sarType === 'FOREIGN_STAND') {
if (this.$hasPermission('SSA6WR4HV8')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else if (item.sarType === 'INLAND_LAWS' || item.sarType === 'FOREIGN_LAWS') {
if (this.$hasPermission('A2HDHMEA6W')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherLawsDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else {
if (this.$hasPermission('YJUHC32R7G')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherBussStandardDetails',
params: {
id: item.resId,
pageType: 'BUSINESS_STAND'
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
}
},
// 新增相关
openModal (row, optType) {
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails'
})
},
swapItems (arr, index1, index2) {
arr[index1] = arr.splice(index2, 1, arr[index1])[0]
return arr
},
// 删除Access
deleteSarAccess (flag, id) {
if (flag === 'delOne') {
this.selectedList = []
this.selectedList[0] = id
}
if (this.selectedList.length < 1) {
this.$message.warning('请选择要删除的数据')
} else {
this.$confirm('确认删除选中数据?', '确认删除', {
confirmButtonText: '确定',
cancelButtonText: '取消',
confirmButtonClass: 'common-button-primary',
roundButton: true,
type: 'warning'
}).then(() => {
this.$http.post('lawss/sarSarAccess/deleteSarAccess', {ids: this.selectedList.join(',')}, {
_this: this,
loading: 'delLoading'
}, res => {
this.searchSarAccess()
this.selectedList = []
}, e => {
})
}).catch(() => {})
}
},
// 表格选择框
selectOne (alldata, nowdata) {
this.selectedList = []
for (let i = 0; i < alldata.length; i++) {
this.selectedList.push(alldata[i]['id'])
}
},
// 根据准入id查询标准法规详情
selectInfobyAccid () {
this.$http.get('lawss/sarSarAccessInfo/selectSarAccessInfoByAccessId', this.sarAccessInfoSearch, {
_this: this
}, res => {
this.sarAccessInfoList = res.data.list.SKILL
this.seeSarAccessInfoList = res.data.list.ADMIN
}, e => {
})
},
// 点击 table查看按钮 事件
showTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$store.commit('setDetailMap', this.$route.path)
this.$router.push({
name: 'AccessStandardDetails',
params: {
id: item.id
}
})
},
// 点击 table编辑按钮 事件
editTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails',
query: {
id: item.id
}
})
// this.showModalTitle = '编辑准入标准法规'
// // 赋值准入信息
// this.drawerRegionChange(row.region).then(() => {
// this.sarAccessEO.country = row.country.split(',') // 国家
// })
// this.sarAccessEO.accessContent = row.accessContent
// this.sarAccessEO.applyArctic = row.applyArctic
// this.sarAccessEO.energyKind = row.energyKind
// this.sarAccessEO.region = row.region // 区域
// this.sarAccessEO.id = row.id
// // 数据搜索
// this.sarAccessInfoSearch.validFlag = 0
// this.sarAccessInfoSearch.accessId = row.id
// this.sarAccessInfoSearch.dataSource = 'INLAND_STAND'
// // 查询数据
// this.selectInfobyAccid()
// this.showModalFlag = true
},
/**
* 高级检索
*/
selectMoreBtn () {
this.isAdvancedSearch = true
this.threeOptions = []
},
/**
* 高级检索
* 检索项修改时为了匹配对应的下拉菜单的
*/
twoSelectChange (val, obj) {
if (val === 'country') {
this.threeOptions = this.countryOptions
} else if (val === 'state') {
this.threeOptions = [
{
label: '未发布',
value: '1'
},
{
label: '已发布',
value: '2'
},
]
}
},
// 获取工作组信息下拉框信息
getGzzOption () {
this.$http.get('lawss/sarGroupMenu/queryGroup', '', {
_this: this
}, res => {
if (res.ok) {
let gzzxxOptions = []
res.data.map(item => {
gzzxxOptions.push({
value: item.id,
label: item.menuName
})
})
this.allSelectOptions.GZZXX = gzzxxOptions
}
})
},
// 高级检索搜索
getDomesticStandardTableBtn (advancedSearch) {
let formData = {}
formData.page = 1
formData.advanceSearchStr = ''
formData.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
formData.pageSize = this.$store.getters.userInfo.configContent
formData.validFlag = 0
// 重置页码
this.clearSearch(false)
this.searchSarAccess(formData)
},
},
components: {},
props: {},
computed: {},
watch: {},
mounted () {
// 分页查询数据
this.searchSarAccess()
// this.loadDicTypeDatas()
// 从数据库中查询各下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
this.countryOptions = res.data.COUNTRY // 国家
this.applyArcticOptions = res.data.PRODUCTTYPE || []
this.energyKindOptions = res.data.ENERGYTYPES || []
this.categoryOptions = res.data.CATEGORY || []
this.applyAuthOptions = res.data.PROVETYPE || [] // 认证类型
}, e => {
})
}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
@import '~@/assets/styles/mixins';
#listOfCountries {
height: 100%;
display: flex;
flex-direction: column;
.container {
display: flex;
flex-direction: column;
position: relative;
flex: auto;
width: 100%;
//height: calc(~'100% - 105px - 56px') !important;
.pagination {
position: static;
/deep/ .pagination-slot {
padding: 0;
}
}
}
.el-divider{
.el-divider__text{
font-size: 16px;
color: #0c91e5;
}
}
.standards-drawer-table-one{
position: relative;
height: 350px;
.pagination{
bottom: 0;
}
}
.standards-drawer-table{
margin-top: 10px;
}
.see-drawer{
.searchAngNewBtn{
float: right;
}
.el-divider{
clear: both;
}
}
}
</style>
@@ -0,0 +1,661 @@
<!-- 标准法规库 - 其他清单 -->
<template>
<div id="listOther" class="v-class">
<div class="search-area">
<div class="left">
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form" >
<el-form-item label="清单名称" class="search-item search-item-last">
<el-input
v-model="sarSarAccessEOSearch.ListName"
placeholder="请输入清单名称"
></el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
:loading="searching"
icon="el-icon-search"
type="primary"
class="common-button-primary"
size="small"
@click="searchSarAccessBtn">
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
size="small"
@click="clearSearch"></el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
type="primary"
class="common-button-primary"
@click="selectMoreBtn"
size="mini">
<i class="iconfont">&#xe7a5;</i>高级查询</el-button>
</el-form-item>
<AdvancedQuery
:isAdvancedSearch.sync="isAdvancedSearch"
:twoOptions="twoOptions"
:threeOptions="threeOptions"
@twoSelectChange="twoSelectChange"
@getDomesticStandardTableBtn="getDomesticStandardTableBtn"
></AdvancedQuery>
</el-form>
</div>
</div>
<div class="action-bar">
<el-button
type="primary"
class="common-button-primary add-button"
size="mini"
@click="openModal(null,'addOpt')"
v-btn-permission="'J2YEFN9MH4KWW5HMR2QH'"
><i class="iconfont">&#xe84e;</i>新增</el-button>
<el-button
class="common-button-default delete-button"
:loading="delLoading"
size="mini"
@click="deleteSarAccess('demore',null)"
v-btn-permission="'WPNW79T3DNUZPJFNMHGP'"
><i class="iconfont">&#xe61b;</i>批量删除</el-button>
</div>
<div class="container">
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectOne"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="countryShow"
label="清单类别"
align="center">
</el-table-column>
<el-table-column
prop="accessContent"
label="清单名称"
align="center"
width="260px"
>
<template slot-scope="scope">
<a class="table-jump" @click.stop="showTable(scope.row)">{{ scope.row.accessContent }}</a>
</template>
</el-table-column>
<el-table-column
prop="state"
label="清单状态"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.state === '1'">未发布</span>
<span v-if="scope.row.state === '2'">已发布</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="清单版本"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="适用领域"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="modifyTime"
label="更新时间"
sortable
align="center">
<template slot-scope="scope">
<div>{{ scope.row.modifyTime ? scope.row.modifyTime.split(' ')[0] : '' }}</div>
</template>
</el-table-column>
<el-table-column
prop="uname"
label="更新人"
align="center">
</el-table-column>
<el-table-column label="操作" align="center" width="50" fixed="right">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'43UVH8AWGJLFDZT9WNTZ'">查看</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'HYY8NGY2RYT3VEDRSK5V'">编辑</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'X9HP9YQL2BRKBFCDMZQT'">删除</el-dropdown-item>
<!-- <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>-->
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
</el-table>
<loading :loading="loading">数据获取中</loading>
<pagination :page="sarSarAccessEOSearch.page" :total="sarAccessListTotal" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div>
</div>
</template>
<script>
export default {
name: 'listOther',
data () {
return {
isAdvancedSearch: false,
twoOptions: [
{
label: '清单名称',
value: 'access_content',
type: 'INPUT',
disabled: false
},
{
label: '国家/地区',
value: 'country',
type: 'SEL_OPTION',
disabled: false
},
// {
// label: '文本说明',
// value: 'remark',
// type: 'INPUT',
// disabled: false
// },
{
label: '清单状态',
value: 'state',
type: 'SEL_OPTION',
disabled: false
},
{
label: '更新人',
value: 'creation_user',
type : 'SEL_OPTION',
selVal : 'USERLIST',
disabled: false
}
],
threeOptions: [],
showTableFlag: true,
dataLoading: false,
searching: false,
loadData: false,
moreSearchBtn: true,
moreSearchShow: false,
exportTestItemNameFlag: false, // 导出模态框
exportName: '',
total: 0,
page: 1,
rows: 10,
// 查询相关参数
sarSarAccessEOSearch: {
ListName: '',
country: '',
accessContent: '',
energyKind: '',
applyArctic: '',
region: '',
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0
},
sarAccessListDatas: [],
sarAccessListTotal: 0,
loading: false,
selectedList: [],
// 新增、编辑 准入信息字段
sarAccessEO: {
country: '',
applyArctic: '',
energyKind: '',
accessContent: '',
region: ''
},
drawerPage: 1, // 当前抽屉分页的页码
drawerTotal: 0, // 抽屉分页的总条数
sarAccessEORules: {
region: [
{required: true, message: '区域不能为空', trigger: 'change'}
],
country: [
{required: true, message: '国家不能为空', trigger: 'change'}
],
accessContent: [
{required: true, message: '表格名称不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '表格名称不能超过100个字符', trigger: 'blur'}
]
},
countryOptions: [],
drawerCountryOptions: [], // 准入信息 国家下拉框
drawerCountryTwoOptions: [], // 数据搜索-多属性搜索国家下拉框
energyKindOptions: [],
categoryOptions: [],
applyArcticOptions: [],
applyAuthOptions: [], // 认证类型下拉框
// 区域
regionOptions: [
{
label: '国内',
value: 'INLAND'
},
{
label: '海外',
value: 'FOREIGN'
}
],
showModalTitle: '',
disabledFlag: false,
showModalFlag: false,
// 新增、编辑过程中数据搜索字段
sarAccessInfoSearch: {
region: '', // 区域
country: '', // 国家
keywords: '', // 关键字
energyKind: '', // 能源种类
category: '', // 所属专业领域
applyArctic: '', // 适用车型
deadLine: '', // 截止时间
applyAuth: '' // 认证类型
},
dataSourceOptions: [
{value: 'INLAND_STAND', label: '国内标准法规'},
{value: 'FOREIGN_STAND', label: '海外标准法规'},
{value: 'FOREIGN_LAWS', label: '国内外政策'},
{value: 'BUSINESS', label: '企业标准 '}
],
sarAccessInfoSearchList: [],
selectedAccInfoSearchList: [],
sarAccessInfoListArry: [],
sarAccessInfoList: [],
importExcelUrl: '/api/lawss/sarSarAccessInfo/importSarAccessInfo?accessId=',
importmodalFlag: false,
saveExportType: '',
seeModalFlag: false, // 查看抽屉显示隐藏
seeModalTitle: '', // 查看抽屉title
seeSarAccessInfoList: [], // 查看抽屉内 table
delLoading: false
}
},
methods: {
// 更多
handleCommand (command) {
switch (command[1]) {
case '查看':
this.showTable(command[0])
break
case '编辑':
this.editTable(command[0])
break
case '删除':
this.deleteSarAccess('delOne', command[0].id)
break
}
},
// 主页 搜索条件 区域下拉 on-change事件
regionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.countryOptions = res.data.list
this.sarSarAccessEOSearch.country = ''
// eslint-disable-next-line
reslove()
}
})
})
},
// 主页 新增、编辑 准入信息 区域下拉 on-change事件
drawerRegionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.drawerCountryOptions = res.data.list
this.sarAccessEO.country = ''
resolve()
}
})
})
},
// 搜索
searchSarAccessBtn () {
this.page = 1
this.searchSarAccess()
},
// 分页查询相关
searchSarAccess (advanceSearch) {
const obj = advanceSearch || this.sarSarAccessEOSearch
if (advanceSearch) {
this.sarSarAccessEOSearch.advanceSearchVOStr = advanceSearch.advanceSearchVOStr
}
// obj.country = this.sarSarAccessEOSearch.country.join()
this.$http.get('lawss/sarSarAccess/page', obj, {
_this: this,
loading: 'loading'
}, res => {
this.sarAccessListDatas = res.data.list
this.sarAccessListTotal = res.data.count
if ((this.sarAccessListDatas.length === 0 || this.sarAccessListDatas === []) && this.sarSarAccessEOSearch.page !== 1) {
this.pageChange(1)
}
this.$nextTick(() => {
this.$refs.selection.doLayout()
})
}, e => {
})
// this.$refs.selection.selectAll(false)
},
pageChange (page) {
this.sarSarAccessEOSearch.page = page
this.searchSarAccess()
},
pageSizeChange (pageSize) {
this.sarSarAccessEOSearch.pageSize = this.$store.getters.userInfo.configContent
this.searchSarAccess()
},
clearSearch (search = true) {
// search 字段是为了处理高级查询时清空字段用的
this.sarSarAccessEOSearch.country = ''
this.sarSarAccessEOSearch.accessContent = ''
this.sarSarAccessEOSearch.applyArctic = ''
this.sarSarAccessEOSearch.energyKind = ''
this.sarSarAccessEOSearch.type = ''
this.sarSarAccessEOSearch.page = 1
search && this.searchSarAccess()
},
// 查看跳转详情页
detailsStandard (item) {
if (item.sarType === 'INLAND_STAND' || item.sarType === 'FOREIGN_STAND') {
if (this.$hasPermission('SSA6WR4HV8')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else if (item.sarType === 'INLAND_LAWS' || item.sarType === 'FOREIGN_LAWS') {
if (this.$hasPermission('A2HDHMEA6W')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherLawsDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else {
if (this.$hasPermission('YJUHC32R7G')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherBussStandardDetails',
params: {
id: item.resId,
pageType: 'BUSINESS_STAND'
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
}
},
// 新增相关
openModal (row, optType) {
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails'
})
},
swapItems (arr, index1, index2) {
arr[index1] = arr.splice(index2, 1, arr[index1])[0]
return arr
},
// 删除Access
deleteSarAccess (flag, id) {
if (flag === 'delOne') {
this.selectedList = []
this.selectedList[0] = id
}
if (this.selectedList.length < 1) {
this.$message.warning('请选择要删除的数据')
} else {
this.$confirm('确认删除选中数据?', '确认删除', {
confirmButtonText: '确定',
cancelButtonText: '取消',
confirmButtonClass: 'common-button-primary',
roundButton: true,
type: 'warning'
}).then(() => {
this.$http.post('lawss/sarSarAccess/deleteSarAccess', {ids: this.selectedList.join(',')}, {
_this: this,
loading: 'delLoading'
}, res => {
this.searchSarAccess()
this.selectedList = []
}, e => {
})
}).catch(() => {})
}
},
// 表格选择框
selectOne (alldata, nowdata) {
this.selectedList = []
for (let i = 0; i < alldata.length; i++) {
this.selectedList.push(alldata[i]['id'])
}
},
// 根据准入id查询标准法规详情
selectInfobyAccid () {
this.$http.get('lawss/sarSarAccessInfo/selectSarAccessInfoByAccessId', this.sarAccessInfoSearch, {
_this: this
}, res => {
this.sarAccessInfoList = res.data.list.SKILL
this.seeSarAccessInfoList = res.data.list.ADMIN
}, e => {
})
},
// 点击 table查看按钮 事件
showTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$store.commit('setDetailMap', this.$route.path)
this.$router.push({
name: 'AccessStandardDetails',
params: {
id: item.id
}
})
},
// 点击 table编辑按钮 事件
editTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails',
query: {
id: item.id
}
})
// this.showModalTitle = '编辑准入标准法规'
// // 赋值准入信息
// this.drawerRegionChange(row.region).then(() => {
// this.sarAccessEO.country = row.country.split(',') // 国家
// })
// this.sarAccessEO.accessContent = row.accessContent
// this.sarAccessEO.applyArctic = row.applyArctic
// this.sarAccessEO.energyKind = row.energyKind
// this.sarAccessEO.region = row.region // 区域
// this.sarAccessEO.id = row.id
// // 数据搜索
// this.sarAccessInfoSearch.validFlag = 0
// this.sarAccessInfoSearch.accessId = row.id
// this.sarAccessInfoSearch.dataSource = 'INLAND_STAND'
// // 查询数据
// this.selectInfobyAccid()
// this.showModalFlag = true
},
/**
* 高级检索
*/
selectMoreBtn () {
this.isAdvancedSearch = true
this.threeOptions = []
},
/**
* 高级检索
* 检索项修改时为了匹配对应的下拉菜单的
*/
twoSelectChange (val, obj) {
if (val === 'country') {
this.threeOptions = this.countryOptions
} else if (val === 'state') {
this.threeOptions = [
{
label: '未发布',
value: '1'
},
{
label: '已发布',
value: '2'
},
]
}
},
// 获取工作组信息下拉框信息
getGzzOption () {
this.$http.get('lawss/sarGroupMenu/queryGroup', '', {
_this: this
}, res => {
if (res.ok) {
let gzzxxOptions = []
res.data.map(item => {
gzzxxOptions.push({
value: item.id,
label: item.menuName
})
})
this.allSelectOptions.GZZXX = gzzxxOptions
}
})
},
// 高级检索搜索
getDomesticStandardTableBtn (advancedSearch) {
let formData = {}
formData.page = 1
formData.advanceSearchStr = ''
formData.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
formData.pageSize = this.$store.getters.userInfo.configContent
formData.validFlag = 0
// 重置页码
this.clearSearch(false)
this.searchSarAccess(formData)
},
},
components: {},
props: {},
computed: {},
watch: {},
mounted () {
// 分页查询数据
this.searchSarAccess()
// this.loadDicTypeDatas()
// 从数据库中查询各下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
this.countryOptions = res.data.COUNTRY // 国家
this.applyArcticOptions = res.data.PRODUCTTYPE || []
this.energyKindOptions = res.data.ENERGYTYPES || []
this.categoryOptions = res.data.CATEGORY || []
this.applyAuthOptions = res.data.PROVETYPE || [] // 认证类型
}, e => {
})
}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
@import '~@/assets/styles/mixins';
#listOther {
height: 100%;
display: flex;
flex-direction: column;
.container {
display: flex;
flex-direction: column;
position: relative;
flex: auto;
width: 100%;
//height: calc(~'100% - 105px - 56px') !important;
.pagination {
position: static;
/deep/ .pagination-slot {
padding: 0;
}
}
}
.el-divider{
.el-divider__text{
font-size: 16px;
color: #0c91e5;
}
}
.standards-drawer-table-one{
position: relative;
height: 350px;
.pagination{
bottom: 0;
}
}
.standards-drawer-table{
margin-top: 10px;
}
.see-drawer{
.searchAngNewBtn{
float: right;
}
.el-divider{
clear: both;
}
}
}
</style>
@@ -0,0 +1,667 @@
<!-- 标准法规库 - 项目清单 -->
<template>
<div id="listProject" class="v-class">
<div class="search-area">
<div class="left">
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form" >
<el-form-item label="项目名称" class="search-item search-item-last">
<el-input
v-model="sarSarAccessEOSearch.ListName"
placeholder="请输入项目名称"
></el-input>
</el-form-item>
<el-form-item label="清单名称" class="search-item search-item-last">
<el-input
v-model="sarSarAccessEOSearch.ListName"
placeholder="请输入清单名称"
></el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
:loading="searching"
icon="el-icon-search"
type="primary"
class="common-button-primary"
size="small"
@click="searchSarAccessBtn">
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
size="small"
@click="clearSearch"></el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
type="primary"
class="common-button-primary"
@click="selectMoreBtn"
size="mini">
<i class="iconfont">&#xe7a5;</i>高级查询</el-button>
</el-form-item>
<AdvancedQuery
:isAdvancedSearch.sync="isAdvancedSearch"
:twoOptions="twoOptions"
:threeOptions="threeOptions"
@twoSelectChange="twoSelectChange"
@getDomesticStandardTableBtn="getDomesticStandardTableBtn"
></AdvancedQuery>
</el-form>
</div>
</div>
<div class="action-bar">
<el-button
type="primary"
class="common-button-primary add-button"
size="mini"
@click="openModal(null,'addOpt')"
v-btn-permission="'J2YEFN9MH4KWW5HMR2QH'"
><i class="iconfont">&#xe84e;</i>新增</el-button>
<el-button
class="common-button-default delete-button"
:loading="delLoading"
size="mini"
@click="deleteSarAccess('demore',null)"
v-btn-permission="'WPNW79T3DNUZPJFNMHGP'"
><i class="iconfont">&#xe61b;</i>批量删除</el-button>
</div>
<div class="container">
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectOne"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="countryShow"
label="项目名称"
align="center">
</el-table-column>
<el-table-column
prop="accessContent"
label="清单名称"
align="center"
width="260px"
>
<template slot-scope="scope">
<a class="table-jump" @click.stop="showTable(scope.row)">{{ scope.row.accessContent }}</a>
</template>
</el-table-column>
<el-table-column
prop="state"
label="清单状态"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.state === '1'">未发布</span>
<span v-if="scope.row.state === '2'">已发布</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="清单版本"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="适用领域"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="modifyTime"
label="更新时间"
sortable
align="center">
<template slot-scope="scope">
<div>{{ scope.row.modifyTime ? scope.row.modifyTime.split(' ')[0] : '' }}</div>
</template>
</el-table-column>
<el-table-column
prop="uname"
label="更新人"
align="center">
</el-table-column>
<el-table-column label="操作" align="center" width="50" fixed="right">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'43UVH8AWGJLFDZT9WNTZ'">查看</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'HYY8NGY2RYT3VEDRSK5V'">编辑</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'X9HP9YQL2BRKBFCDMZQT'">删除</el-dropdown-item>
<!-- <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>-->
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
</el-table>
<loading :loading="loading">数据获取中</loading>
<pagination :page="sarSarAccessEOSearch.page" :total="sarAccessListTotal" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div>
</div>
</template>
<script>
export default {
name: 'listProject',
data () {
return {
isAdvancedSearch: false,
twoOptions: [
{
label: '清单名称',
value: 'access_content',
type: 'INPUT',
disabled: false
},
{
label: '国家/地区',
value: 'country',
type: 'SEL_OPTION',
disabled: false
},
// {
// label: '文本说明',
// value: 'remark',
// type: 'INPUT',
// disabled: false
// },
{
label: '清单状态',
value: 'state',
type: 'SEL_OPTION',
disabled: false
},
{
label: '更新人',
value: 'creation_user',
type : 'SEL_OPTION',
selVal : 'USERLIST',
disabled: false
}
],
threeOptions: [],
showTableFlag: true,
dataLoading: false,
searching: false,
loadData: false,
moreSearchBtn: true,
moreSearchShow: false,
exportTestItemNameFlag: false, // 导出模态框
exportName: '',
total: 0,
page: 1,
rows: 10,
// 查询相关参数
sarSarAccessEOSearch: {
ListName: '',
country: '',
accessContent: '',
energyKind: '',
applyArctic: '',
region: '',
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0
},
sarAccessListDatas: [],
sarAccessListTotal: 0,
loading: false,
selectedList: [],
// 新增、编辑 准入信息字段
sarAccessEO: {
country: '',
applyArctic: '',
energyKind: '',
accessContent: '',
region: ''
},
drawerPage: 1, // 当前抽屉分页的页码
drawerTotal: 0, // 抽屉分页的总条数
sarAccessEORules: {
region: [
{required: true, message: '区域不能为空', trigger: 'change'}
],
country: [
{required: true, message: '国家不能为空', trigger: 'change'}
],
accessContent: [
{required: true, message: '表格名称不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '表格名称不能超过100个字符', trigger: 'blur'}
]
},
countryOptions: [],
drawerCountryOptions: [], // 准入信息 国家下拉框
drawerCountryTwoOptions: [], // 数据搜索-多属性搜索国家下拉框
energyKindOptions: [],
categoryOptions: [],
applyArcticOptions: [],
applyAuthOptions: [], // 认证类型下拉框
// 区域
regionOptions: [
{
label: '国内',
value: 'INLAND'
},
{
label: '海外',
value: 'FOREIGN'
}
],
showModalTitle: '',
disabledFlag: false,
showModalFlag: false,
// 新增、编辑过程中数据搜索字段
sarAccessInfoSearch: {
region: '', // 区域
country: '', // 国家
keywords: '', // 关键字
energyKind: '', // 能源种类
category: '', // 所属专业领域
applyArctic: '', // 适用车型
deadLine: '', // 截止时间
applyAuth: '' // 认证类型
},
dataSourceOptions: [
{value: 'INLAND_STAND', label: '国内标准法规'},
{value: 'FOREIGN_STAND', label: '海外标准法规'},
{value: 'FOREIGN_LAWS', label: '国内外政策'},
{value: 'BUSINESS', label: '企业标准 '}
],
sarAccessInfoSearchList: [],
selectedAccInfoSearchList: [],
sarAccessInfoListArry: [],
sarAccessInfoList: [],
importExcelUrl: '/api/lawss/sarSarAccessInfo/importSarAccessInfo?accessId=',
importmodalFlag: false,
saveExportType: '',
seeModalFlag: false, // 查看抽屉显示隐藏
seeModalTitle: '', // 查看抽屉title
seeSarAccessInfoList: [], // 查看抽屉内 table
delLoading: false
}
},
methods: {
// 更多
handleCommand (command) {
switch (command[1]) {
case '查看':
this.showTable(command[0])
break
case '编辑':
this.editTable(command[0])
break
case '删除':
this.deleteSarAccess('delOne', command[0].id)
break
}
},
// 主页 搜索条件 区域下拉 on-change事件
regionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.countryOptions = res.data.list
this.sarSarAccessEOSearch.country = ''
// eslint-disable-next-line
reslove()
}
})
})
},
// 主页 新增、编辑 准入信息 区域下拉 on-change事件
drawerRegionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.drawerCountryOptions = res.data.list
this.sarAccessEO.country = ''
resolve()
}
})
})
},
// 搜索
searchSarAccessBtn () {
this.page = 1
this.searchSarAccess()
},
// 分页查询相关
searchSarAccess (advanceSearch) {
const obj = advanceSearch || this.sarSarAccessEOSearch
if (advanceSearch) {
this.sarSarAccessEOSearch.advanceSearchVOStr = advanceSearch.advanceSearchVOStr
}
// obj.country = this.sarSarAccessEOSearch.country.join()
this.$http.get('lawss/sarSarAccess/page', obj, {
_this: this,
loading: 'loading'
}, res => {
this.sarAccessListDatas = res.data.list
this.sarAccessListTotal = res.data.count
if ((this.sarAccessListDatas.length === 0 || this.sarAccessListDatas === []) && this.sarSarAccessEOSearch.page !== 1) {
this.pageChange(1)
}
this.$nextTick(() => {
this.$refs.selection.doLayout()
})
}, e => {
})
// this.$refs.selection.selectAll(false)
},
pageChange (page) {
this.sarSarAccessEOSearch.page = page
this.searchSarAccess()
},
pageSizeChange (pageSize) {
this.sarSarAccessEOSearch.pageSize = this.$store.getters.userInfo.configContent
this.searchSarAccess()
},
clearSearch (search = true) {
// search 字段是为了处理高级查询时清空字段用的
this.sarSarAccessEOSearch.country = ''
this.sarSarAccessEOSearch.accessContent = ''
this.sarSarAccessEOSearch.applyArctic = ''
this.sarSarAccessEOSearch.energyKind = ''
this.sarSarAccessEOSearch.type = ''
this.sarSarAccessEOSearch.page = 1
search && this.searchSarAccess()
},
// 查看跳转详情页
detailsStandard (item) {
if (item.sarType === 'INLAND_STAND' || item.sarType === 'FOREIGN_STAND') {
if (this.$hasPermission('SSA6WR4HV8')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else if (item.sarType === 'INLAND_LAWS' || item.sarType === 'FOREIGN_LAWS') {
if (this.$hasPermission('A2HDHMEA6W')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherLawsDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else {
if (this.$hasPermission('YJUHC32R7G')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherBussStandardDetails',
params: {
id: item.resId,
pageType: 'BUSINESS_STAND'
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
}
},
// 新增相关
openModal (row, optType) {
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails'
})
},
swapItems (arr, index1, index2) {
arr[index1] = arr.splice(index2, 1, arr[index1])[0]
return arr
},
// 删除Access
deleteSarAccess (flag, id) {
if (flag === 'delOne') {
this.selectedList = []
this.selectedList[0] = id
}
if (this.selectedList.length < 1) {
this.$message.warning('请选择要删除的数据')
} else {
this.$confirm('确认删除选中数据?', '确认删除', {
confirmButtonText: '确定',
cancelButtonText: '取消',
confirmButtonClass: 'common-button-primary',
roundButton: true,
type: 'warning'
}).then(() => {
this.$http.post('lawss/sarSarAccess/deleteSarAccess', {ids: this.selectedList.join(',')}, {
_this: this,
loading: 'delLoading'
}, res => {
this.searchSarAccess()
this.selectedList = []
}, e => {
})
}).catch(() => {})
}
},
// 表格选择框
selectOne (alldata, nowdata) {
this.selectedList = []
for (let i = 0; i < alldata.length; i++) {
this.selectedList.push(alldata[i]['id'])
}
},
// 根据准入id查询标准法规详情
selectInfobyAccid () {
this.$http.get('lawss/sarSarAccessInfo/selectSarAccessInfoByAccessId', this.sarAccessInfoSearch, {
_this: this
}, res => {
this.sarAccessInfoList = res.data.list.SKILL
this.seeSarAccessInfoList = res.data.list.ADMIN
}, e => {
})
},
// 点击 table查看按钮 事件
showTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$store.commit('setDetailMap', this.$route.path)
this.$router.push({
name: 'AccessStandardDetails',
params: {
id: item.id
}
})
},
// 点击 table编辑按钮 事件
editTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails',
query: {
id: item.id
}
})
// this.showModalTitle = '编辑准入标准法规'
// // 赋值准入信息
// this.drawerRegionChange(row.region).then(() => {
// this.sarAccessEO.country = row.country.split(',') // 国家
// })
// this.sarAccessEO.accessContent = row.accessContent
// this.sarAccessEO.applyArctic = row.applyArctic
// this.sarAccessEO.energyKind = row.energyKind
// this.sarAccessEO.region = row.region // 区域
// this.sarAccessEO.id = row.id
// // 数据搜索
// this.sarAccessInfoSearch.validFlag = 0
// this.sarAccessInfoSearch.accessId = row.id
// this.sarAccessInfoSearch.dataSource = 'INLAND_STAND'
// // 查询数据
// this.selectInfobyAccid()
// this.showModalFlag = true
},
/**
* 高级检索
*/
selectMoreBtn () {
this.isAdvancedSearch = true
this.threeOptions = []
},
/**
* 高级检索
* 检索项修改时为了匹配对应的下拉菜单的
*/
twoSelectChange (val, obj) {
if (val === 'country') {
this.threeOptions = this.countryOptions
} else if (val === 'state') {
this.threeOptions = [
{
label: '未发布',
value: '1'
},
{
label: '已发布',
value: '2'
},
]
}
},
// 获取工作组信息下拉框信息
getGzzOption () {
this.$http.get('lawss/sarGroupMenu/queryGroup', '', {
_this: this
}, res => {
if (res.ok) {
let gzzxxOptions = []
res.data.map(item => {
gzzxxOptions.push({
value: item.id,
label: item.menuName
})
})
this.allSelectOptions.GZZXX = gzzxxOptions
}
})
},
// 高级检索搜索
getDomesticStandardTableBtn (advancedSearch) {
let formData = {}
formData.page = 1
formData.advanceSearchStr = ''
formData.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
formData.pageSize = this.$store.getters.userInfo.configContent
formData.validFlag = 0
// 重置页码
this.clearSearch(false)
this.searchSarAccess(formData)
},
},
components: {},
props: {},
computed: {},
watch: {},
mounted () {
// 分页查询数据
this.searchSarAccess()
// this.loadDicTypeDatas()
// 从数据库中查询各下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
this.countryOptions = res.data.COUNTRY // 国家
this.applyArcticOptions = res.data.PRODUCTTYPE || []
this.energyKindOptions = res.data.ENERGYTYPES || []
this.categoryOptions = res.data.CATEGORY || []
this.applyAuthOptions = res.data.PROVETYPE || [] // 认证类型
}, e => {
})
}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
@import '~@/assets/styles/mixins';
#listProject {
height: 100%;
display: flex;
flex-direction: column;
.container {
display: flex;
flex-direction: column;
position: relative;
flex: auto;
width: 100%;
//height: calc(~'100% - 105px - 56px') !important;
.pagination {
position: static;
/deep/ .pagination-slot {
padding: 0;
}
}
}
.el-divider{
.el-divider__text{
font-size: 16px;
color: #0c91e5;
}
}
.standards-drawer-table-one{
position: relative;
height: 350px;
.pagination{
bottom: 0;
}
}
.standards-drawer-table{
margin-top: 10px;
}
.see-drawer{
.searchAngNewBtn{
float: right;
}
.el-divider{
clear: both;
}
}
}
</style>
@@ -0,0 +1,661 @@
<!-- 标准法规库 - 重点标准跟踪清单 -->
<template>
<div id="listTracking" class="v-class">
<div class="search-area">
<div class="left">
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form" >
<el-form-item label="清单名称" class="search-item search-item-last">
<el-input
v-model="sarSarAccessEOSearch.ListName"
placeholder="请输入清单名称"
></el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
:loading="searching"
icon="el-icon-search"
type="primary"
class="common-button-primary"
size="small"
@click="searchSarAccessBtn">
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
size="small"
@click="clearSearch"></el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
type="primary"
class="common-button-primary"
@click="selectMoreBtn"
size="mini">
<i class="iconfont">&#xe7a5;</i>高级查询</el-button>
</el-form-item>
<AdvancedQuery
:isAdvancedSearch.sync="isAdvancedSearch"
:twoOptions="twoOptions"
:threeOptions="threeOptions"
@twoSelectChange="twoSelectChange"
@getDomesticStandardTableBtn="getDomesticStandardTableBtn"
></AdvancedQuery>
</el-form>
</div>
</div>
<div class="action-bar">
<el-button
type="primary"
class="common-button-primary add-button"
size="mini"
@click="openModal(null,'addOpt')"
v-btn-permission="'J2YEFN9MH4KWW5HMR2QH'"
><i class="iconfont">&#xe84e;</i>新增</el-button>
<el-button
class="common-button-default delete-button"
:loading="delLoading"
size="mini"
@click="deleteSarAccess('demore',null)"
v-btn-permission="'WPNW79T3DNUZPJFNMHGP'"
><i class="iconfont">&#xe61b;</i>批量删除</el-button>
</div>
<div class="container">
<el-table
:data="sarAccessListDatas"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectOne"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="countryShow"
label="国家/地区"
align="center">
</el-table-column>
<el-table-column
prop="accessContent"
label="清单名称"
align="center"
width="260px"
>
<template slot-scope="scope">
<a class="table-jump" @click.stop="showTable(scope.row)">{{ scope.row.accessContent }}</a>
</template>
</el-table-column>
<el-table-column
prop="state"
label="清单状态"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.state === '1'">未发布</span>
<span v-if="scope.row.state === '2'">已发布</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="清单版本"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="version"
label="适用领域"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.version != null && scope.row.version !== ''">V{{ scope.row.version }}</span>
</template>
</el-table-column>
<el-table-column
prop="modifyTime"
label="更新时间"
sortable
align="center">
<template slot-scope="scope">
<div>{{ scope.row.modifyTime ? scope.row.modifyTime.split(' ')[0] : '' }}</div>
</template>
</el-table-column>
<el-table-column
prop="uname"
label="更新人"
align="center">
</el-table-column>
<el-table-column label="操作" align="center" width="50" fixed="right">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</i>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'43UVH8AWGJLFDZT9WNTZ'">查看</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '编辑']" v-btn-permission="'HYY8NGY2RYT3VEDRSK5V'">编辑</el-dropdown-item>
<el-dropdown-item :command="[scope.row, '删除']" v-btn-permission="'X9HP9YQL2BRKBFCDMZQT'">删除</el-dropdown-item>
<!-- <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>-->
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
</el-table>
<loading :loading="loading">数据获取中</loading>
<pagination :page="sarSarAccessEOSearch.page" :total="sarAccessListTotal" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
</div>
</div>
</template>
<script>
export default {
name: 'listTracking',
data () {
return {
isAdvancedSearch: false,
twoOptions: [
{
label: '清单名称',
value: 'access_content',
type: 'INPUT',
disabled: false
},
{
label: '国家/地区',
value: 'country',
type: 'SEL_OPTION',
disabled: false
},
// {
// label: '文本说明',
// value: 'remark',
// type: 'INPUT',
// disabled: false
// },
{
label: '清单状态',
value: 'state',
type: 'SEL_OPTION',
disabled: false
},
{
label: '更新人',
value: 'creation_user',
type : 'SEL_OPTION',
selVal : 'USERLIST',
disabled: false
}
],
threeOptions: [],
showTableFlag: true,
dataLoading: false,
searching: false,
loadData: false,
moreSearchBtn: true,
moreSearchShow: false,
exportTestItemNameFlag: false, // 导出模态框
exportName: '',
total: 0,
page: 1,
rows: 10,
// 查询相关参数
sarSarAccessEOSearch: {
ListName: '',
country: '',
accessContent: '',
energyKind: '',
applyArctic: '',
region: '',
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
validFlag: 0
},
sarAccessListDatas: [],
sarAccessListTotal: 0,
loading: false,
selectedList: [],
// 新增、编辑 准入信息字段
sarAccessEO: {
country: '',
applyArctic: '',
energyKind: '',
accessContent: '',
region: ''
},
drawerPage: 1, // 当前抽屉分页的页码
drawerTotal: 0, // 抽屉分页的总条数
sarAccessEORules: {
region: [
{required: true, message: '区域不能为空', trigger: 'change'}
],
country: [
{required: true, message: '国家不能为空', trigger: 'change'}
],
accessContent: [
{required: true, message: '表格名称不能为空', trigger: 'blur'},
{type: 'string', max: 100, message: '表格名称不能超过100个字符', trigger: 'blur'}
]
},
countryOptions: [],
drawerCountryOptions: [], // 准入信息 国家下拉框
drawerCountryTwoOptions: [], // 数据搜索-多属性搜索国家下拉框
energyKindOptions: [],
categoryOptions: [],
applyArcticOptions: [],
applyAuthOptions: [], // 认证类型下拉框
// 区域
regionOptions: [
{
label: '国内',
value: 'INLAND'
},
{
label: '海外',
value: 'FOREIGN'
}
],
showModalTitle: '',
disabledFlag: false,
showModalFlag: false,
// 新增、编辑过程中数据搜索字段
sarAccessInfoSearch: {
region: '', // 区域
country: '', // 国家
keywords: '', // 关键字
energyKind: '', // 能源种类
category: '', // 所属专业领域
applyArctic: '', // 适用车型
deadLine: '', // 截止时间
applyAuth: '' // 认证类型
},
dataSourceOptions: [
{value: 'INLAND_STAND', label: '国内标准法规'},
{value: 'FOREIGN_STAND', label: '海外标准法规'},
{value: 'FOREIGN_LAWS', label: '国内外政策'},
{value: 'BUSINESS', label: '企业标准 '}
],
sarAccessInfoSearchList: [],
selectedAccInfoSearchList: [],
sarAccessInfoListArry: [],
sarAccessInfoList: [],
importExcelUrl: '/api/lawss/sarSarAccessInfo/importSarAccessInfo?accessId=',
importmodalFlag: false,
saveExportType: '',
seeModalFlag: false, // 查看抽屉显示隐藏
seeModalTitle: '', // 查看抽屉title
seeSarAccessInfoList: [], // 查看抽屉内 table
delLoading: false
}
},
methods: {
// 更多
handleCommand (command) {
switch (command[1]) {
case '查看':
this.showTable(command[0])
break
case '编辑':
this.editTable(command[0])
break
case '删除':
this.deleteSarAccess('delOne', command[0].id)
break
}
},
// 主页 搜索条件 区域下拉 on-change事件
regionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.countryOptions = res.data.list
this.sarSarAccessEOSearch.country = ''
// eslint-disable-next-line
reslove()
}
})
})
},
// 主页 新增、编辑 准入信息 区域下拉 on-change事件
drawerRegionChange (value) {
return new Promise((resolve, reject) => {
this.$http.get('sys/dictype/pageRegion', {
dicTypeCode: value
}, {
_this: this
}, res => {
if (res.ok) {
this.drawerCountryOptions = res.data.list
this.sarAccessEO.country = ''
resolve()
}
})
})
},
// 搜索
searchSarAccessBtn () {
this.page = 1
this.searchSarAccess()
},
// 分页查询相关
searchSarAccess (advanceSearch) {
const obj = advanceSearch || this.sarSarAccessEOSearch
if (advanceSearch) {
this.sarSarAccessEOSearch.advanceSearchVOStr = advanceSearch.advanceSearchVOStr
}
// obj.country = this.sarSarAccessEOSearch.country.join()
this.$http.get('lawss/sarSarAccess/page', obj, {
_this: this,
loading: 'loading'
}, res => {
this.sarAccessListDatas = res.data.list
this.sarAccessListTotal = res.data.count
if ((this.sarAccessListDatas.length === 0 || this.sarAccessListDatas === []) && this.sarSarAccessEOSearch.page !== 1) {
this.pageChange(1)
}
this.$nextTick(() => {
this.$refs.selection.doLayout()
})
}, e => {
})
// this.$refs.selection.selectAll(false)
},
pageChange (page) {
this.sarSarAccessEOSearch.page = page
this.searchSarAccess()
},
pageSizeChange (pageSize) {
this.sarSarAccessEOSearch.pageSize = this.$store.getters.userInfo.configContent
this.searchSarAccess()
},
clearSearch (search = true) {
// search 字段是为了处理高级查询时清空字段用的
this.sarSarAccessEOSearch.country = ''
this.sarSarAccessEOSearch.accessContent = ''
this.sarSarAccessEOSearch.applyArctic = ''
this.sarSarAccessEOSearch.energyKind = ''
this.sarSarAccessEOSearch.type = ''
this.sarSarAccessEOSearch.page = 1
search && this.searchSarAccess()
},
// 查看跳转详情页
detailsStandard (item) {
if (item.sarType === 'INLAND_STAND' || item.sarType === 'FOREIGN_STAND') {
if (this.$hasPermission('SSA6WR4HV8')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else if (item.sarType === 'INLAND_LAWS' || item.sarType === 'FOREIGN_LAWS') {
if (this.$hasPermission('A2HDHMEA6W')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherLawsDetails',
params: {
id: item.resId,
pageType: item.sarType
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
} else {
if (this.$hasPermission('YJUHC32R7G')) {
this.$store.commit('setDetailMap', this.$route.path)
let routeUrl = this.$router.resolve({
name: 'OtherBussStandardDetails',
params: {
id: item.resId,
pageType: 'BUSINESS_STAND'
}
})
window.open(routeUrl.href, '_blank')
} else {
this.$message.warning('无权访问')
}
}
},
// 新增相关
openModal (row, optType) {
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails'
})
},
swapItems (arr, index1, index2) {
arr[index1] = arr.splice(index2, 1, arr[index1])[0]
return arr
},
// 删除Access
deleteSarAccess (flag, id) {
if (flag === 'delOne') {
this.selectedList = []
this.selectedList[0] = id
}
if (this.selectedList.length < 1) {
this.$message.warning('请选择要删除的数据')
} else {
this.$confirm('确认删除选中数据?', '确认删除', {
confirmButtonText: '确定',
cancelButtonText: '取消',
confirmButtonClass: 'common-button-primary',
roundButton: true,
type: 'warning'
}).then(() => {
this.$http.post('lawss/sarSarAccess/deleteSarAccess', {ids: this.selectedList.join(',')}, {
_this: this,
loading: 'delLoading'
}, res => {
this.searchSarAccess()
this.selectedList = []
}, e => {
})
}).catch(() => {})
}
},
// 表格选择框
selectOne (alldata, nowdata) {
this.selectedList = []
for (let i = 0; i < alldata.length; i++) {
this.selectedList.push(alldata[i]['id'])
}
},
// 根据准入id查询标准法规详情
selectInfobyAccid () {
this.$http.get('lawss/sarSarAccessInfo/selectSarAccessInfoByAccessId', this.sarAccessInfoSearch, {
_this: this
}, res => {
this.sarAccessInfoList = res.data.list.SKILL
this.seeSarAccessInfoList = res.data.list.ADMIN
}, e => {
})
},
// 点击 table查看按钮 事件
showTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$store.commit('setDetailMap', this.$route.path)
this.$router.push({
name: 'AccessStandardDetails',
params: {
id: item.id
}
})
},
// 点击 table编辑按钮 事件
editTable (item) {
sessionStorage.setItem('accessRow', JSON.stringify(item))
this.$router.push({
name: 'ListOfStandardsAndRegulationsDetails',
query: {
id: item.id
}
})
// this.showModalTitle = '编辑准入标准法规'
// // 赋值准入信息
// this.drawerRegionChange(row.region).then(() => {
// this.sarAccessEO.country = row.country.split(',') // 国家
// })
// this.sarAccessEO.accessContent = row.accessContent
// this.sarAccessEO.applyArctic = row.applyArctic
// this.sarAccessEO.energyKind = row.energyKind
// this.sarAccessEO.region = row.region // 区域
// this.sarAccessEO.id = row.id
// // 数据搜索
// this.sarAccessInfoSearch.validFlag = 0
// this.sarAccessInfoSearch.accessId = row.id
// this.sarAccessInfoSearch.dataSource = 'INLAND_STAND'
// // 查询数据
// this.selectInfobyAccid()
// this.showModalFlag = true
},
/**
* 高级检索
*/
selectMoreBtn () {
this.isAdvancedSearch = true
this.threeOptions = []
},
/**
* 高级检索
* 检索项修改时为了匹配对应的下拉菜单的
*/
twoSelectChange (val, obj) {
if (val === 'country') {
this.threeOptions = this.countryOptions
} else if (val === 'state') {
this.threeOptions = [
{
label: '未发布',
value: '1'
},
{
label: '已发布',
value: '2'
},
]
}
},
// 获取工作组信息下拉框信息
getGzzOption () {
this.$http.get('lawss/sarGroupMenu/queryGroup', '', {
_this: this
}, res => {
if (res.ok) {
let gzzxxOptions = []
res.data.map(item => {
gzzxxOptions.push({
value: item.id,
label: item.menuName
})
})
this.allSelectOptions.GZZXX = gzzxxOptions
}
})
},
// 高级检索搜索
getDomesticStandardTableBtn (advancedSearch) {
let formData = {}
formData.page = 1
formData.advanceSearchStr = ''
formData.advanceSearchVOStr = JSON.stringify(advancedSearch) || ''
formData.pageSize = this.$store.getters.userInfo.configContent
formData.validFlag = 0
// 重置页码
this.clearSearch(false)
this.searchSarAccess(formData)
},
},
components: {},
props: {},
computed: {},
watch: {},
mounted () {
// 分页查询数据
this.searchSarAccess()
// this.loadDicTypeDatas()
// 从数据库中查询各下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
this.countryOptions = res.data.COUNTRY // 国家
this.applyArcticOptions = res.data.PRODUCTTYPE || []
this.energyKindOptions = res.data.ENERGYTYPES || []
this.categoryOptions = res.data.CATEGORY || []
this.applyAuthOptions = res.data.PROVETYPE || [] // 认证类型
}, e => {
})
}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
@import '~@/assets/styles/mixins';
#listTracking {
height: 100%;
display: flex;
flex-direction: column;
.container {
display: flex;
flex-direction: column;
position: relative;
flex: auto;
width: 100%;
//height: calc(~'100% - 105px - 56px') !important;
.pagination {
position: static;
/deep/ .pagination-slot {
padding: 0;
}
}
}
.el-divider{
.el-divider__text{
font-size: 16px;
color: #0c91e5;
}
}
.standards-drawer-table-one{
position: relative;
height: 350px;
.pagination{
bottom: 0;
}
}
.standards-drawer-table{
margin-top: 10px;
}
.see-drawer{
.searchAngNewBtn{
float: right;
}
.el-divider{
clear: both;
}
}
}
</style>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -1,35 +1,9 @@
<!--项目评估结果-->
<template>
<div class="stand-involve-project-detail">
<!-- <div class="laws-details-header">-->
<!-- &lt;!&ndash; <div class="back" title="返回" @click="back">&ndash;&gt;-->
<!-- &lt;!&ndash; <i class="el-icon-back"></i>&ndash;&gt;-->
<!-- &lt;!&ndash; </div>&ndash;&gt;-->
<!-- <div class="title">技术涉及项目</div>-->
<!-- </div>-->
<div class="search-area">
<div class="left">
<el-form ref="sarProject" :model="sarProject" inline @keyup.enter.native="searchStandAndLaws">
<!-- <el-form-item label="国家/地区" class="search-item">-->
<!-- <el-input v-model="sarProject.country"-->
<!-- placeholder="根据国家/地区查找"-->
<!-- clearable></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="国家/地区" class="search-item search-item-last">-->
<!-- <el-select-->
<!-- v-model="sarProject.country"-->
<!-- placeholder="请选择"-->
<!-- filterable-->
<!-- clearable-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="item in countryOptions"-->
<!-- :value="item.value"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="标准/政策号" class="search-item">
<el-input v-model="sarProject.standCode"
placeholder="标准/政策号查找"
@@ -43,16 +17,12 @@
clearable></el-input>
</el-form-item>
<el-form-item label="" class="search-item btn-box">
<el-button class="common-button-primary" type="primary" icon="el-icon-search" round @click="searchStandAndLaws"></el-button>
<el-button class="common-button-primary" type="primary" icon="el-icon-search" size="mini" @click="searchStandAndLaws"></el-button>
</el-form-item>
<el-form-item label="" class="search-item btn-box">
<el-button class="common-button-default" icon="el-icon-refresh-left" @click="resetSelect" round></el-button>
<el-button class="common-button-default" icon="el-icon-refresh-left" @click="resetSelect" size="mini"></el-button>
</el-form-item>
<!-- <el-form-item label="" class="search-item btn-box">-->
<!-- <el-button class="common-button-default export-button" icon="export" @click="showExportModal('apart')">导出</el-button>-->
<!-- </el-form-item>-->
<!-- <Button type="primary" @click="showExportModal('apart')">导出</Button>-->
<!-- <Button type="primary" @click="showExportModal('all')">全部导出</Button>-->
<!-- <Button type="primary" @click="showExportModal('all')">全部导出</Button>&ndash;&gt;-->
</el-form>
</div>
<div class="right">
@@ -131,7 +101,7 @@
title="标准涉及项目符合性"
:visible.sync="showSarProStateModal"
:wrapperClosable="false"
size="800px"
size="1100px"
:before-close="clearSearchPro"
class="not-footer-drawer"
>
@@ -152,14 +122,14 @@
icon="el-icon-search"
type="primary"
class="common-button-primary"
round
size="mini"
@click="querySarProStateZero"></el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
round
size="mini"
@click="clearSearchProState"></el-button>
</el-form-item>
</el-form>
@@ -183,59 +153,86 @@
width="55"
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- prop="accessType"-->
<!-- label="清单类型">-->
<!-- <template slot-scope="scope">-->
<!-- <div v-if="scope.row.accessType === 'first'">研发合规法规清单</div>-->
<!-- <div v-if="scope.row.accessType === 'second'">认证合规法规清单</div>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column
prop="productName"
label="项目名称">
prop="carModel"
label="产品线">
</el-table-column>
<el-table-column
prop="carModel"
label="公告车型号">
label="项目编号">
</el-table-column>
<!--<el-table-column-->
<!-- prop="itemName"-->
<!-- label="标准名称">-->
<!-- <template slot-scope="scope">-->
<!-- <div>{{ exportShowName }}</div>-->
<!-- </template>-->
<!--</el-table-column>-->
<el-table-column
prop="sarState"
label="符合性状态">
<template slot-scope="scope">
<!-- <div class="table-jump" @click="handleSarStateClick(scope.row)">-->
<div class="table-jump" @click="changeState(scope.row)">
<div v-if="scope.row.sarState === 1">待验证</div>
<div v-if="scope.row.sarState === 2">符合</div>
<div v-if="scope.row.sarState === 3">不符合</div>
<div v-if="scope.row.sarState === 4">部分符合</div>
<div v-if="scope.row.sarState === 5">不涉及</div>
<div v-if="scope.row.sarState === 6">评估中</div>
<div v-if="scope.row.sarState === 7">整改中</div>
<div v-if="scope.row.sarState === 8"></div>
</div>
</template>
prop="carModel"
label="项目名称">
</el-table-column>
<el-table-column
prop="carModel"
label="标准编号">
</el-table-column>
<el-table-column
prop="carModel"
label="标准名称">
</el-table-column>
<el-table-column
prop="carModel"
label="标准章节">
</el-table-column>
<el-table-column
prop="carModel"
label="标准主要内容">
</el-table-column>
<el-table-column
align="center"
label="在研产品">
<el-table-column
prop=""
label="实施时间">
</el-table-column>
<el-table-column
prop=""
label="合规">
</el-table-column>
<el-table-column
align="center"
label="不合规">
<el-table-column
prop=""
label="不合规项目">
</el-table-column>
<el-table-column
prop=""
label="应对措施">
</el-table-column>
<el-table-column
prop=""
label="完成时间">
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column
align="center"
label="在产产品">
<el-table-column
prop=""
label="实施时间">
</el-table-column>
<el-table-column
prop=""
label="合规(具体情况)">
</el-table-column>
<el-table-column
align="center"
label="不合规">
<el-table-column
prop=""
label="应对措施">
</el-table-column>
<el-table-column
prop=""
label="完成时间">
</el-table-column>
</el-table-column>
</el-table-column>
<!-- <el-table-column label="操作" align="center" width="50" fixed="right">-->
<!-- <template slot-scope="scope">-->
<!-- <div @click.stop style="display: inline-block">-->
<!-- <el-dropdown trigger="click" @command="handleCommandInside">-->
<!-- <i class="iconfont">&#xe61e;</i>-->
<!-- <el-dropdown-menu slot="dropdown">-->
<!-- <el-dropdown-item :command="[scope.row, '编辑']">编辑</el-dropdown-item>-->
<!--&lt;!&ndash; <el-dropdown-item :command="[scope.row, '查看']">查看</el-dropdown-item>&ndash;&gt;-->
<!-- </el-dropdown-menu>-->
<!-- </el-dropdown>-->
<!-- </div>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table>
<pagination
:page="sarProStateTotalPage"
@@ -243,10 +240,6 @@
@pageChange="pageProStateChange"
@pageSizeChange="pageProStateSizeChange"></pagination>
</div>
<!-- <div class="demo-drawer-footer">-->
<!-- <el-button class="common-button-primary" icon="el-icon-check" type="primary" @click="saveCopyInfor" :loading="isSubmit">提交</el-button>-->
<!-- <el-button class="common-button-default" icon="el-icon-close" @click="resetForm">取消</el-button>-->
<!-- </div>-->
</div>
<!-- 编辑符合性-->
@@ -690,23 +683,7 @@ export default {
this.exportShowName = row.standName
this.sarItem.productCode = ''
this.sarItem.productName = ''
// this.queryItemsBySar()
this.row = row
// 原方案
// if (this.row.isExistItems === 1) {
// this.isExistItems = 1
// this.standNum = this.row.standCode
// // this.querySarProStateFirst()
// this.saveSarId = this.row.standId
// this.queryItemsBySar()
// this.showSarProStateModal = true
// } else {
// this.isExistItems = 0
// this.querySarProStateZero()
// this.showSarProStateModal = true
// }
this.$http.get('lawss/sarProductStand/isPermission', {standId: this.saveSarId}, {
_this: this,
loading: 'loading3'
@@ -1,35 +1,9 @@
<!--技术评估结果-->
<template>
<div class="technology-involve-project">
<!-- <div class="laws-details-header">-->
<!-- &lt;!&ndash; <div class="back" title="返回" @click="back">&ndash;&gt;-->
<!-- &lt;!&ndash; <i class="el-icon-back"></i>&ndash;&gt;-->
<!-- &lt;!&ndash; </div>&ndash;&gt;-->
<!-- <div class="title">标准涉及项目</div>-->
<!-- </div>-->
<div class="search-area">
<div class="left">
<el-form ref="sarProject" :model="sarProject" inline @keyup.enter.native="searchStandAndLaws">
<!-- <el-form-item label="国家/地区" class="search-item">-->
<!-- <el-input v-model="sarProject.country"-->
<!-- placeholder="根据国家/地区查找"-->
<!-- clearable></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="国家/地区" class="search-item search-item-last">-->
<!-- <el-select-->
<!-- v-model="sarProject.country"-->
<!-- placeholder="请选择"-->
<!-- filterable-->
<!-- clearable-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="item in countryOptions"-->
<!-- :value="item.value"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="标准/政策号" class="search-item">
<el-input v-model="sarProject.standCode"
placeholder="标准/政策号查找"
@@ -43,16 +17,11 @@
clearable></el-input>
</el-form-item>
<el-form-item label="" class="search-item btn-box">
<el-button class="common-button-primary" type="primary" icon="el-icon-search" round @click="searchStandAndLaws"></el-button>
<el-button class="common-button-primary" type="primary" icon="el-icon-search" size="mini" @click="searchStandAndLaws"></el-button>
</el-form-item>
<el-form-item label="" class="search-item btn-box">
<el-button class="common-button-default" icon="el-icon-refresh-left" @click="resetSelect" round></el-button>
<el-button class="common-button-default" icon="el-icon-refresh-left" @click="resetSelect" size="mini"></el-button>
</el-form-item>
<!-- <el-form-item label="" class="search-item btn-box">-->
<!-- <el-button class="common-button-default export-button" icon="export" @click="showExportModal('apart')">导出</el-button>-->
<!-- </el-form-item>-->
<!-- <Button type="primary" @click="showExportModal('apart')">导出</Button>-->
<!-- <Button type="primary" @click="showExportModal('all')">全部导出</Button>-->
</el-form>
</div>
<div class="right">
@@ -88,11 +57,6 @@
<div v-if="scope.row.standType === 'BUSINESS_STAND'">企业标准</div>
</template>
</el-table-column>
<!-- <el-table-column-->
<!-- prop="country"-->
<!-- label="国家/地区"-->
<!-- >-->
<!-- </el-table-column>-->
<el-table-column
prop="standCode"
label="标准/政策号"
@@ -111,15 +75,6 @@
align="center">
<template slot-scope="scope">
<i class="el-icon-view btn-i" v-btn-permission="'WWVT239CTACWUGHMMQVY'" @click="handleProjectCompliance(scope.row)"></i>
<!--<div @click.stop style="display: inline-block">-->
<!-- <el-dropdown trigger="click" @command="handleCommand">-->
<!-- <i class="iconfont">&#xe61e;</i>-->
<!-- <el-dropdown-menu slot="dropdown">-->
<!-- <el-dropdown-item :command="[scope.row, '查看项目符合性']">查看项目符合性</el-dropdown-item>-->
<!-- &lt;!&ndash; <el-dropdown-item :command="[scope.row, '流程']">流程</el-dropdown-item>&ndash;&gt;-->
<!-- </el-dropdown-menu>-->
<!-- </el-dropdown>-->
<!--</div>-->
</template>
</el-table-column>
</el-table>
@@ -131,7 +86,7 @@
title="标准涉及项目符合性"
:visible.sync="showSarProStateModal"
:wrapperClosable="false"
size="800px"
size="1100px"
:before-close="clearSearchPro"
class="not-footer-drawer"
>
@@ -152,14 +107,14 @@
icon="el-icon-search"
type="primary"
class="common-button-primary"
round
size="mini"
@click="querySarProStateZero"></el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
icon="el-icon-refresh-left"
round
size="mini"
@click="clearSearchProState"></el-button>
</el-form-item>
</el-form>
@@ -168,7 +123,6 @@
</div>
</div>
<el-table
v-if="this.isExistItems === 0"
ref="multipleTable"
:data="sarProStateListDatas"
tooltip-effect="dark"
@@ -183,58 +137,51 @@
width="55"
align="center">
</el-table-column>
<!-- <el-table-column-->
<!-- prop="accessType"-->
<!-- label="清单类型">-->
<!-- <template slot-scope="scope">-->
<!-- <div v-if="scope.row.accessType === 'first'">研发合规法规清单</div>-->
<!-- <div v-if="scope.row.accessType === 'second'">认证合规法规清单</div>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column
prop="productName"
label="标准编号">
</el-table-column>
<el-table-column
prop="carModel"
label="标准名称">
</el-table-column>
<el-table-column
v-if="SarProStateType === 'INLAND'"
prop="productName"
label="上一版本标准编号">
</el-table-column>
<el-table-column
v-if="SarProStateType !== 'INLAND'"
prop="productName"
label="对应国行标">
</el-table-column>
<el-table-column
prop="productName"
label="项目名称">
label="具体章条">
</el-table-column>
<el-table-column
prop="carModel"
label="公告车型号">
align="center"
label="解读内容">
<el-table-column
prop="carModel"
label="核心技术要求(简述、请勿抄写标准)">
</el-table-column>
<el-table-column
v-if="SarProStateType === 'INLAND'"
prop="carModel"
label="相对于上一版本变化点">
</el-table-column>
<el-table-column
v-if="SarProStateType !== 'INLAND'"
prop="carModel"
label="相对于国行标差异点">
</el-table-column>
<el-table-column
prop="carModel"
label="合规性分析">
</el-table-column>
</el-table-column>
<!--<el-table-column-->
<!-- prop="itemName"-->
<!-- label="标准名称">-->
<!-- <template slot-scope="scope">-->
<!-- <div>{{ exportShowName }}</div>-->
<!-- </template>-->
<!--</el-table-column>-->
<el-table-column
prop="sarState"
label="符合性状态">
<template slot-scope="scope">
<div class="table-jump" @click="changeState(scope.row)">
<div v-if="scope.row.sarState === 1">待验证</div>
<div v-if="scope.row.sarState === 2">符合</div>
<div v-if="scope.row.sarState === 3">不符合</div>
<div v-if="scope.row.sarState === 4">部分符合</div>
<div v-if="scope.row.sarState === 5">不涉及</div>
<div v-if="scope.row.sarState === 6">评估中</div>
<div v-if="scope.row.sarState === 7">整改中</div>
<div v-if="scope.row.sarState === 8">未评估</div>
</div>
</template>
</el-table-column>
<!-- <el-table-column label="操作" align="center" width="50" fixed="right">-->
<!-- <template slot-scope="scope">-->
<!-- <div @click.stop style="display: inline-block">-->
<!-- <el-dropdown trigger="click" @command="handleCommandInside">-->
<!-- <i class="iconfont">&#xe61e;</i>-->
<!-- <el-dropdown-menu slot="dropdown">-->
<!-- <el-dropdown-item :command="[scope.row, '编辑']">编辑</el-dropdown-item>-->
<!--&lt;!&ndash; <el-dropdown-item :command="[scope.row, '查看']">查看</el-dropdown-item>&ndash;&gt;-->
<!-- </el-dropdown-menu>-->
<!-- </el-dropdown>-->
<!-- </div>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table>
<pagination
:page="sarProStateTotalPage"
@@ -431,6 +378,7 @@ export default {
name: "technologyInvolveProject",
data () {
return {
SarProStateType: '',
// 条件查询
sarProject: {
// 国家地区
@@ -691,45 +639,9 @@ name: "technologyInvolveProject",
this.exportShowName = row.standName
this.sarItem.productCode = ''
this.sarItem.productName = ''
// this.queryItemsBySar()
this.row = row
// 原方案
// if (this.row.isExistItems === 1) {
// this.isExistItems = 1
// this.standNum = this.row.standCode
// // this.querySarProStateFirst()
// this.saveSarId = this.row.standId
// this.queryItemsBySar()
// this.showSarProStateModal = true
// } else {
// this.isExistItems = 0
// this.querySarProStateZero()
// this.showSarProStateModal = true
// }
this.$http.get('lawss/sarProductStand/isPermission', {standId: this.saveSarId}, {
_this: this,
loading: 'loading3'
}, res => {
if (res.ok){
// 现阶段方案
this.isExistItems = 0
this.querySarProStateZero()
// this.showSarProStateModal = true]
let routeUrl = this.$router.resolve({
name: 'ComplianceDetails',
query: {
sarId: row.standId,
sarType: row.standType
}
})
window.open(routeUrl.href, '_blank')
} else{
this.$message.warning('无权访问')
}
}, e => {
})
this.SarProStateType = row.standType
this.showSarProStateModal = true
},
handleProjectPreview (row) {
this.saveClickProductId = row.productId