Merge branch 'hi-ucs-pre' of http://192.168.124.50:80/wuhongjian/hi-ucs into hi-ucs-pre

This commit is contained in:
gongjiale 2022-11-02 10:54:31 +08:00
commit ef095da37f
11 changed files with 470 additions and 190 deletions

View File

@ -3,8 +3,8 @@ const t = {}
t.loading = '加载中...' t.loading = '加载中...'
t.brand = {} t.brand = {}
t.brand.lg = '能力管理中心' t.brand.lg = '生态运营平台'
t.brand.mini = '一体化综合指挥' t.brand.mini = '政务信息系统'
t.add = '新增' t.add = '新增'
t.delete = '删除' t.delete = '删除'
@ -576,4 +576,4 @@ t.infrastructure.street = '所在街道'
t.infrastructure.department = '所属部门' t.infrastructure.department = '所属部门'
t.infrastructure.associatedApplication = '关联应用' t.infrastructure.associatedApplication = '关联应用'
export default t export default t

View File

@ -3,10 +3,8 @@ const t = {}
t.loading = '加載中...' t.loading = '加載中...'
t.brand = {} t.brand = {}
// t.brand.lg = '能力管理中心' t.brand.lg = '生态运营平台'
// t.brand.mini = '一体化综合指挥' t.brand.mini = '政务信息系统'
t.brand.lg = '通用服务平台'
t.brand.mini = '城市云脑'
t.add = '新增' t.add = '新增'
t.delete = '刪除' t.delete = '刪除'

View File

@ -12,7 +12,7 @@
$t("brand.lg") $t("brand.lg")
}}</a> }}</a>
<span></span> <span></span>
<span class="back-title-text">后台管理系统</span> <span class="back-title-text">能力知识库</span>
</h1> </h1>
</div> </div>
<div class="aui-navbar__body"> <div class="aui-navbar__body">

View File

@ -29,7 +29,7 @@
</el-form-item> --> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button type="primary" @click="showPutOnTheShelf()" <el-button type="primary" @click="showPutOnTheShelf()"
>上架</el-button >盘点入库</el-button
> >
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -48,7 +48,6 @@
v-loading="dataListLoading" v-loading="dataListLoading"
:data="dataList" :data="dataList"
border border
style="width: 100%"
height="650px" height="650px"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
@ -60,7 +59,6 @@
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="name" prop="name"
label="图层名称" label="图层名称"
header-align="center" header-align="center"
@ -68,29 +66,40 @@
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="description" prop="description"
label="描述" label="能力描述"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="deptName" prop="deptName"
label="上架部门" label="归属项目"
header-align="center"
align="center"
></el-table-column>
<el-table-column
:show-overflow-tooltip="true"
prop="deptName"
label="归属系统"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280" prop="deptName"
prop="deptContacts" label="归属部门"
label="联系人"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true"
prop="deptContacts"
label="注册者"
header-align="center"
align="center"
></el-table-column>
<!-- <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280" width="280"
prop="deptPhone" prop="deptPhone"
@ -105,13 +114,12 @@
label="上架时间" label="上架时间"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column> -->
<el-table-column <el-table-column
label="操作" label="操作"
fixed="right" fixed="right"
header-align="center" header-align="center"
align="center" align="center"
width="150"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -120,17 +128,17 @@
@click="UpdateData(scope.row)" @click="UpdateData(scope.row)"
>{{ $t('update') }}</el-button >{{ $t('update') }}</el-button
> >
<el-button <!-- <el-button
type="text" type="text"
size="small" size="small"
@click="deleteHandle2(scope.row.id)" @click="deleteHandle2(scope.row.id)"
>{{ $t('delete') }}</el-button >{{ $t('delete') }}</el-button
> > -->
<el-button type="text" size="small" @click="showDetail(scope.row)" <el-button type="text" size="small" @click="showDetail(scope.row)"
>详情</el-button >详情</el-button
> >
<el-button type="text" size="small" @click="showDocument(scope.row)" <el-button type="text" size="small"
>设置</el-button >标签化</el-button
> >
</template> </template>
</el-table-column> </el-table-column>
@ -294,7 +302,7 @@ export default {
orderField: 'total', orderField: 'total',
orderType: 'DESC', orderType: 'DESC',
pageNum: this.currentPage, pageNum: this.currentPage,
pageSize: 15, pageSize: 10,
type: '组件服务', type: '组件服务',
}; };
this.$http.post(`/resource/pageWithAttrs`, params).then((res) => { this.$http.post(`/resource/pageWithAttrs`, params).then((res) => {

View File

@ -31,7 +31,7 @@
<el-button <el-button
type="primary" type="primary"
@click="showPutOnTheShelf()" @click="showPutOnTheShelf()"
>上架</el-button >盘点入库</el-button
> >
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -51,7 +51,6 @@
:data="dataList" :data="dataList"
border border
@selection-change="dataListSelectionChangeHandle" @selection-change="dataListSelectionChangeHandle"
style="width: 100%"
height="650px" height="650px"
> >
<el-table-column <el-table-column
@ -62,56 +61,58 @@
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="name" prop="name"
label="应用名称" label="系统名称"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<af-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="description" prop="description"
label="应用描述" label="能力描述"
header-align="center" header-align="center"
align="center" align="center"
></af-table-column> ></el-table-column>
<af-table-column <el-table-column
:show-overflow-tooltip="true"
prop="deptName"
label="归属项目"
header-align="center"
align="center"
></el-table-column>
<el-table-column
:show-overflow-tooltip="true"
prop="deptName"
label="归属系统"
header-align="center"
align="center"
></el-table-column>
<el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="deptName" prop="deptName"
label="归属部门" label="归属部门"
header-align="center" header-align="center"
align="center" align="center"
></af-table-column> ></el-table-column>
<af-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="deptContacts" prop="deptContacts"
label="部门联系人" label="注册者"
header-align="center" header-align="center"
align="center" align="center"
></af-table-column> ></el-table-column>
<af-table-column <!-- <el-table-column
:show-overflow-tooltip="true"
width="280"
prop="deptPhone"
label="部门联系人电话"
header-align="center"
align="center"
></af-table-column>
<af-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280" width="280"
prop="shareCondition" prop="shareCondition"
label="共享条件" label="共享条件"
header-align="center" header-align="center"
align="center" align="center"
></af-table-column> ></el-table-column>
<template v-if="dataList[0] && dataList[0].infoList2"> <template v-if="dataList[0] && dataList[0].infoList2">
<el-table-column <el-table-column
v-for="(item, index) in dataList[0].infoList2" v-for="(item, index) in dataList[0].infoList2"
:key="index" :key="Math.random()"
:label="item.attrType" :label="item.attrType"
header-align="center" header-align="center"
align="center" align="center"
@ -122,29 +123,20 @@
{{ findValue(scope.row.infoList2, item.attrType) }} {{ findValue(scope.row.infoList2, item.attrType) }}
</template> </template>
</el-table-column> </el-table-column>
</template> </template>-->
<el-table-column <el-table-column
:label="$t('handle')" label="操作"
fixed="right" fixed="right"
header-align="center" header-align="center"
align="center" align="center"
width="300"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
v-if="$hasPermission('ability:bsabilityai:update')"
type="text" type="text"
size="small" size="small"
@click="UpdateData(scope.row)" @click="UpdateData(scope.row)"
>{{ $t("update") }}</el-button >{{ $t("update") }}</el-button
> >
<el-button
v-if="$hasPermission('ability:bsabilityai:delete')"
type="text"
size="small"
@click="deleteHandle2(scope.row.id)"
>{{ $t("delete") }}</el-button
>
<el-button type="text" size="small" @click="showDetail(scope.row)" <el-button type="text" size="small" @click="showDetail(scope.row)"
>详情</el-button >详情</el-button
> >
@ -152,30 +144,7 @@
type="text" type="text"
size="small" size="small"
@click="applyAndAssembly(scope.row)" @click="applyAndAssembly(scope.row)"
>应用与GIS图层</el-button >标签化</el-button
>
<el-button
type="text"
size="small"
@click="applyAndDataResource(scope.row)"
>应用与数据</el-button
>
<el-button
type="text"
size="small"
@click="applyAndProject(scope.row)"
>应用与项目</el-button
>
<el-button
type="text"
size="small"
@click="applyAndInfrastructure(scope.row)"
>应用与视频资源</el-button
>
<el-button
type="text"
size="small"
>设置</el-button
> >
</template> </template>
</el-table-column> </el-table-column>

View File

@ -29,7 +29,7 @@
</el-form-item> --> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button type="primary" @click="showPutOnTheShelf()" <el-button type="primary" @click="showPutOnTheShelf()"
>上架</el-button >盘点入库</el-button
> >
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -48,7 +48,6 @@
v-loading="dataListLoading" v-loading="dataListLoading"
:data="dataList" :data="dataList"
border border
style="width: 100%"
height="650px" height="650px"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
@ -60,37 +59,47 @@
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="name" prop="name"
label="图层名称" label="组件名称"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="description" prop="description"
label="描述" label="能力描述"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="deptName" prop="deptName"
label="上架部门" label="归属项目"
header-align="center"
align="center"
></el-table-column>
<el-table-column
:show-overflow-tooltip="true"
prop="deptName"
label="归属系统"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280" prop="deptName"
prop="deptContacts" label="归属部门"
label="联系人"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true"
prop="deptContacts"
label="注册者"
header-align="center"
align="center"
></el-table-column>
<!-- <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280" width="280"
prop="deptPhone" prop="deptPhone"
@ -105,13 +114,12 @@
label="上架时间" label="上架时间"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column> -->
<el-table-column <el-table-column
label="操作" label="操作"
fixed="right" fixed="right"
header-align="center" header-align="center"
align="center" align="center"
width="150"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -120,17 +128,17 @@
@click="UpdateData(scope.row)" @click="UpdateData(scope.row)"
>{{ $t('update') }}</el-button >{{ $t('update') }}</el-button
> >
<el-button <!-- <el-button
type="text" type="text"
size="small" size="small"
@click="deleteHandle2(scope.row.id)" @click="deleteHandle2(scope.row.id)"
>{{ $t('delete') }}</el-button >{{ $t('delete') }}</el-button
> > -->
<el-button type="text" size="small" @click="showDetail(scope.row)" <el-button type="text" size="small" @click="showDetail(scope.row)"
>详情</el-button >详情</el-button
> >
<el-button type="text" size="small" @click="showDocument(scope.row)" <el-button type="text" size="small"
>设置</el-button >标签化</el-button
> >
</template> </template>
</el-table-column> </el-table-column>
@ -294,7 +302,7 @@ export default {
orderField: 'total', orderField: 'total',
orderType: 'DESC', orderType: 'DESC',
pageNum: this.currentPage, pageNum: this.currentPage,
pageSize: 15, pageSize: 10,
type: '组件服务', type: '组件服务',
}; };
this.$http.post(`/resource/pageWithAttrs`, params).then((res) => { this.$http.post(`/resource/pageWithAttrs`, params).then((res) => {
@ -302,13 +310,12 @@ export default {
this.total = parseInt(res.data.data.total); this.total = parseInt(res.data.data.total);
}) })
}, },
//
handleCurrentChange (val) { handleCurrentChange (val) {
console.log('val------------>', val) console.log('val------------>', val)
this.currentPage = val; this.currentPage = val;
this.getDataList(); this.getDataList();
}, },
// //
deleteHandle2 (id) { deleteHandle2 (id) {
console.log('删除========================》', id, this.dataListSelections) console.log('删除========================》', id, this.dataListSelections)
const ids = [] const ids = []
@ -326,7 +333,7 @@ export default {
this.getDataList() this.getDataList()
}) })
}, },
// //
handleSelectionChange(val){ handleSelectionChange(val){
this.dataListSelections = val; this.dataListSelections = val;
}, },
@ -348,7 +355,7 @@ export default {
}) })
}, },
reset () { reset () {
this.getDataList(); this.getDataList();
}, },
findValue (list, type) { findValue (list, type) {
const found = list.find((item) => item.attrType === type) const found = list.find((item) => item.attrType === type)
@ -513,6 +520,7 @@ export default {
this.$message.error('查询信息不能为空') this.$message.error('查询信息不能为空')
} }
}, },
// fullScreen () {
// if (window.outerHeight === screen.availHeight) { // if (window.outerHeight === screen.availHeight) {
// if (window.outerWidth === screen.availWidth) { // if (window.outerWidth === screen.availWidth) {
// this.qp = false // this.qp = false

View File

@ -5,7 +5,7 @@
<el-form-item> <el-form-item>
<el-input <el-input
v-model="dataForm.name" v-model="dataForm.name"
placeholder="图层名称" placeholder="名称"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
@ -29,7 +29,7 @@
</el-form-item> --> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button type="primary" @click="showPutOnTheShelf()" <el-button type="primary" @click="showPutOnTheShelf()"
>上架</el-button >盘点入库</el-button
> >
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -48,7 +48,6 @@
v-loading="dataListLoading" v-loading="dataListLoading"
:data="dataList" :data="dataList"
border border
style="width: 100%"
height="650px" height="650px"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
@ -60,37 +59,36 @@
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="name" prop="name"
label="图层名称" label="组件名称"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="description" prop="description"
label="描述" label="能力描述"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="deptName" prop="deptName"
label="上架部门" label="归属部门"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280"
prop="deptContacts" prop="deptContacts"
label="联系人" label="注册者"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column>
<el-table-column <!-- <el-table-column
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
width="280" width="280"
prop="deptPhone" prop="deptPhone"
@ -105,13 +103,13 @@
label="上架时间" label="上架时间"
header-align="center" header-align="center"
align="center" align="center"
></el-table-column> ></el-table-column> -->
<el-table-column <el-table-column
label="操作" label="操作"
fixed="right" fixed="right"
header-align="center" header-align="center"
align="center" align="center"
width="150"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -120,17 +118,17 @@
@click="UpdateData(scope.row)" @click="UpdateData(scope.row)"
>{{ $t('update') }}</el-button >{{ $t('update') }}</el-button
> >
<el-button <!-- <el-button
type="text" type="text"
size="small" size="small"
@click="deleteHandle2(scope.row.id)" @click="deleteHandle2(scope.row.id)"
>{{ $t('delete') }}</el-button >{{ $t('delete') }}</el-button
> > -->
<el-button type="text" size="small" @click="showDetail(scope.row)" <el-button type="text" size="small" @click="showDetail(scope.row)"
>详情</el-button >详情</el-button
> >
<el-button type="text" size="small" @click="showDocument(scope.row)" <el-button type="text" size="small"
>设置</el-button >标签化</el-button
> >
</template> </template>
</el-table-column> </el-table-column>
@ -294,7 +292,7 @@ export default {
orderField: 'total', orderField: 'total',
orderType: 'DESC', orderType: 'DESC',
pageNum: this.currentPage, pageNum: this.currentPage,
pageSize: 15, pageSize: 10,
type: '组件服务', type: '组件服务',
}; };
this.$http.post(`/resource/pageWithAttrs`, params).then((res) => { this.$http.post(`/resource/pageWithAttrs`, params).then((res) => {
@ -307,7 +305,7 @@ export default {
this.currentPage = val; this.currentPage = val;
this.getDataList(); this.getDataList();
}, },
// //
deleteHandle2 (id) { deleteHandle2 (id) {
console.log('删除========================》', id, this.dataListSelections) console.log('删除========================》', id, this.dataListSelections)
const ids = [] const ids = []
@ -325,7 +323,7 @@ export default {
this.getDataList() this.getDataList()
}) })
}, },
// //
handleSelectionChange(val){ handleSelectionChange(val){
this.dataListSelections = val; this.dataListSelections = val;
}, },
@ -347,7 +345,7 @@ export default {
}) })
}, },
reset () { reset () {
this.getDataList(); this.getDataList();
}, },
findValue (list, type) { findValue (list, type) {
const found = list.find((item) => item.attrType === type) const found = list.find((item) => item.attrType === type)
@ -512,6 +510,7 @@ export default {
this.$message.error('查询信息不能为空') this.$message.error('查询信息不能为空')
} }
}, },
// fullScreen () {
// if (window.outerHeight === screen.availHeight) { // if (window.outerHeight === screen.availHeight) {
// if (window.outerWidth === screen.availWidth) { // if (window.outerWidth === screen.availWidth) {
// this.qp = false // this.qp = false

View File

@ -0,0 +1,144 @@
<template>
<div class="tag-directory-box">
<div class="left-tree-box">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.dictName" placeholder="标签名称" clearable></el-input>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<div class="tree-box">
<el-tree class="filter-tree" :data="dataListCopy" :props="defaultProps" default-expand-all
@node-click="handleNodeClick" :filter-node-method="filterNode" ref="tree">
</el-tree>
</div>
</el-form>
</div>
<div class="right-detail">
<div class="title">标签详情</div>
<el-form :model="dataForm" label-width="120px">
<el-form-item prop="dictName" label="标签名称">
<el-input v-model="dataForm.dictName" :placeholder="$t('dict.dictName')"></el-input>
</el-form-item>
<el-form-item prop="dictType" label="标签编号">
<el-input v-model="dataForm.dictType" placeholder="标签编号"></el-input>
</el-form-item>
<el-form-item prop="dictType" label="标签分类" style="width:100%">
<el-input v-model="dataForm.dictType" placeholder="标签分类"></el-input>
</el-form-item>
<el-form-item prop="remark" :label="$t('dict.remark')" style="width:100%">
<el-input type="textarea" :rows="4" v-model="dataForm.remark" :placeholder="$t('dict.remark')">
</el-input>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
import AddOrUpdate from '../tag-type-add-or-update'
import TagSysBuildLife from './tag-sys-build-life'
import { addDynamicRoute } from '@/router'
export default {
mixins: [mixinViewModule],
data() {
return {
mixinViewModuleOptions: {
getDataListURL: '/sys/dict/type/page',
getDataListIsPage: true,
deleteURL: '/sys/dict/type',
deleteIsBatch: true
},
dataForm: {
id: '0',
dictName: '',
dictType: '',
dictLabel: '',
},
filterText: '',
dataList: [],
dataListCopy: [],
defaultProps: {
children: 'sysDictDataDTOList',
label: 'dictName'
}
}
},
watch: {
filterText(val) {
this.$refs.tree.filter(val);
},
dataList: {
handler(newVal) {
this.dataListCopy = []
newVal.map(v => {
if (v.sysDictDataDTOList && v.sysDictDataDTOList.length && v.sysDictDataDTOList.length > 0) {
v.sysDictDataDTOList.map(x => {
x.dictName = x.dictLabel;
return x
})
}
this.dataListCopy.push(v)
})
}
}
},
methods: {
filterNode(value, data) {
if (!value) return true;
return data.label.indexOf(value) !== -1;
},
handleNodeClick(data) {
console.log('data------------>', data);
this.dataForm = data
}
},
}
</script>
<style scoped lang="scss">
.tag-directory-box {
display: flex;
align-items: flex-start;
width: 100%;
}
.left-tree-box {
width: 350px;
background: #fff;
padding: 20px 0;
}
.right-detail {
flex: 1;
margin-left: 20px;
background: #fff;
padding: 20px;
}
.right-detail {
.el-form {
display: flex;
width: 100%;
align-items: center;
flex-wrap: wrap;
}
.el-form-item {
width: 50%;
}
}
.title {
line-height: 24px;
font-size: 20px;
color: #303133;
padding-bottom: 25px;
}
</style>

View File

@ -0,0 +1,62 @@
<template>
<el-dialog :visible.sync="visible" title="生命周期管理" :close-on-click-modal="false" :close-on-press-escape="false">
<div class="title">{{ rowData.dictName }}</div>
<el-table v-loading="dataListLoading" :data="dataList" border style="width: 100%;">
<el-table-column prop="status" label="状态" header-align="center" align="center"></el-table-column>
<el-table-column prop="time" label="时间" header-align="center" align="center"></el-table-column>
<el-table-column prop="remark" label="备注" header-align="center" align="center"></el-table-column>
<el-table-column prop="operator" label="操作者" header-align="center" align="center"></el-table-column>
</el-table>
<template slot="footer">
<el-button @click="visible = false">{{ $t('cancel') }}</el-button>
</template>
</el-dialog>
</template>
<script>
export default {
data() {
return {
visible: false,
dataList: [
{
status: '创建',
time: '2022-10-11',
remark: '创建',
operator: '管理员'
},
{
status: '修改',
time: '2022-09-24',
remark: '修改标签描述',
operator: '管理员'
},
{
status: '修改',
time: '2022-09-19',
remark: '补充城市管理标签页',
operator: '城管账号'
},
{
status: '删除',
time: '2022-08-11',
remark: '停止使用',
operator: '管理员'
},
],
rowData: {}
}
},
methods: {
}
}
</script>
<style scoped>
.title {
line-height: 24px;
font-size: 20px;
color: #303133;
padding-bottom: 25px;
}
</style>

View File

@ -0,0 +1,103 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__dict">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.dictName" placeholder="标签名称" clearable></el-input>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="addOrUpdateHandle()">新增分类</el-button>
</el-form-item>
</el-form>
<el-table v-loading="dataListLoading" :data="dataList" border
@selection-change="dataListSelectionChangeHandle" @sort-change="dataListSortChangeHandle"
style="width: 100%;">
<el-table-column prop="dictName" label="分类名称" header-align="center" align="center"></el-table-column>
<el-table-column prop="remark" label="描述" header-align="center" align="center"></el-table-column>
<el-table-column prop="dictType" label="编号" header-align="center" align="center"></el-table-column>
<el-table-column label="状态" header-align="center" align="center">
<template slot-scope="scope">
<span>{{ scope.row.status == 1 ? '启用' : '禁用' }}</span>
</template>
</el-table-column>
<el-table-column prop="createDate" label="创建时间" header-align="center" align="center"></el-table-column>
<el-table-column label="操作" fixed="right" header-align="center" align="center" width="280">
<template slot-scope="scope">
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">修改</el-button>
<el-button type="text" size="small" @click="handleClick()">{{ scope.row.status
== 1 ? '禁用' : '启用'
}}</el-button>
<el-button type="text" @click="childHandle(scope.row)">新建标签</el-button>
<el-button type="text" size="small" @click="showLife(scope.row)">生命周期管理</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination :current-page="page" :page-sizes="[10, 20, 50, 100]" :page-size="limit" :total="total"
layout="total, sizes, prev, pager, next, jumper" @size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle">
</el-pagination>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
<!-- 生命周期管理 -->
<TagSysBuildLife ref="lifeModal" @refreshDataList="getDataList"></TagSysBuildLife>
</div>
</el-card>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
import AddOrUpdate from '../tag-type-add-or-update'
import TagSysBuildLife from './tag-sys-build-life'
import { addDynamicRoute } from '@/router'
export default {
mixins: [mixinViewModule],
data() {
return {
mixinViewModuleOptions: {
getDataListURL: '/sys/dict/type/page',
getDataListIsPage: true,
deleteURL: '/sys/dict/type',
deleteIsBatch: true
},
dataForm: {
id: '0',
dictName: '',
dictType: '',
dictLabel: '',
},
rowClickData: {},
}
},
components: {
AddOrUpdate, TagSysBuildLife
},
methods: {
//
childHandle(row) {
//
const routeParams = {
routeName: `${this.$route.name}__${row.id}`,
title: `${this.$route.meta.title} - ${row.dictType}`,
path: 'ability/tag-data',
params: {
dictTypeId: row.id
}
}
//
addDynamicRoute(routeParams, this.$router)
},
//
showLife(row) {
this.$refs.lifeModal.visible = true;
this.$refs.lifeModal.rowData = row;
},
handleClick() {
}
}
}
</script>

View File

@ -1,75 +1,40 @@
<template> <template>
<el-card shadow="never" class="aui-card--fill"> <div style="height:100%">
<div class="mod-sys__dict"> <div class="tab-box">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> <div class="tab-item" v-for="(tab, i) in tabList" :key="i" @click="selectTab = tab.key"
<el-form-item> :class="[selectTab == tab.key ? 'tab-active' : '', i == 0 ? 'no-border-right' : '']">
<el-input v-model="dataForm.dictName" placeholder="标签名称" clearable></el-input> {{ tab.name }}
</el-form-item> </div>
<!-- <el-form-item>
<el-input v-model="dataForm.dictLabel" placeholder="资源名称" clearable></el-input>
</el-form-item> -->
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="addOrUpdateHandle()">新增分类</el-button>
</el-form-item>
</el-form>
<el-table v-loading="dataListLoading" :data="dataList" border
@selection-change="dataListSelectionChangeHandle" @sort-change="dataListSortChangeHandle"
style="width: 100%;">
<el-table-column prop="dictName" label="标签名称" header-align="center" align="center"></el-table-column>
<el-table-column prop="dictType" label="英文名称" header-align="center" align="center">
<template slot-scope="scope">
<el-button type="text" @click="childHandle(scope.row)">{{ scope.row.dictType }}</el-button>
</template>
</el-table-column>
<el-table-column prop="remark" label="描述" header-align="center" align="center"></el-table-column>
<el-table-column prop="createDate" label="创建时间" header-align="center" align="center"></el-table-column>
<el-table-column label="操作" fixed="right" header-align="center" align="center" width="280">
<template slot-scope="scope">
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">新增</el-button>
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">删除</el-button>
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">修改</el-button>
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">详情</el-button>
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{scope.row.status == 1 ? '禁用' : '启用'}}</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination :current-page="page" :page-sizes="[10, 20, 50, 100]" :page-size="limit" :total="total"
layout="total, sizes, prev, pager, next, jumper" @size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle">
</el-pagination>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
</div> </div>
</el-card> <TagSysBuild v-if="selectTab == 'build'"></TagSysBuild>
<TagDirectory v-if="selectTab == 'directory'"></TagDirectory>
</div>
</template> </template>
<script> <script>
import mixinViewModule from '@/mixins/view-module' import mixinViewModule from '@/mixins/view-module'
import AddOrUpdate from './tag-type-add-or-update' import TagSysBuild from './components/tag-sys-build'
import TagDirectory from './components/tag-directory'
import { addDynamicRoute } from '@/router' import { addDynamicRoute } from '@/router'
export default { export default {
mixins: [mixinViewModule], mixins: [mixinViewModule],
data() { data() {
return { return {
mixinViewModuleOptions: { tabList: [
getDataListURL: '/sys/dict/type/page', {
getDataListIsPage: true, name: '标签体系构建',
deleteURL: '/sys/dict/type', key: 'build'
deleteIsBatch: true }, {
}, name: '标签目录管理',
dataForm: { key: 'directory'
id: '0', },
dictName: '', ],
dictType: '', selectTab: 'build'
dictLabel: '',
}
} }
}, },
components: { components: {
AddOrUpdate TagSysBuild,
TagDirectory
}, },
methods: { methods: {
// //
@ -89,4 +54,28 @@ export default {
} }
} }
</script> </script>
<style scoped>
.tab-box {
display: flex;
align-items: center;
margin-bottom: 20px;
}
.tab-item {
display: inline-block;
padding: 10px 20px;
cursor: pointer;
border: 1px solid #e0e0e0;
box-sizing: border-box;
}
.no-border-right {
border-right: 0;
}
.tab-active {
background: #0058e1;
color: #fff;
}
</style>