Commit 2efc3573 by liangzhen

删除无用代码

1 parent ac3f7c70
import { get, post, download } from "@/utils/http";
import {
EADC_ARRCHITECTURE,
EADC_KNOWLEDGE_POOL,
EADC_SHARED_ABILITY,
ARCH_MANAGE
} from "@/config/micromodule";
export function getDictOPtionsFromKeyword(key) {
return post(`/eadc-shared-ability/dict/gDictByKey`, { key });
return post(`${ARCH_MANAGE}/dict/gDictByKey`, { key });
}
export function getServiceList(data) {
return post(EADC_ARRCHITECTURE + "/arc-aby-iy/qryListPage", data);
......
......@@ -3,6 +3,7 @@ import {
EADC_ARRCHITECTURE,
EADC_KNOWLEDGE_POOL,
EADC_SHARED_ABILITY,
ARCH_MANAGE
} from '@/config/micromodule'
export function query_jia_gou_yuan_su_guan_xi_table(params) {
//查询架构元素管理表格
......@@ -239,7 +240,7 @@ export function editJiShuZhengCeJieGouHuaTable(params) {
// 典型案例库管理-所有下拉值
export function getDianXingAnLiSelectData(params) {
// return post('/shared/vi/dict/gDictByKey', params);
return post(EADC_SHARED_ABILITY + '/dict/gDictByKey', params)
return post(ARCH_MANAGE + '/dict/gDictByKey', params)
}
//所有下拉值
export function gAllDictKey(params) {
......@@ -868,7 +869,7 @@ export function getPreArc(params) {
}
// 获取组织树形
export function getOrgTreeData(params) {
return post(EADC_SHARED_ABILITY + '/org/tree', params)
return post(ARCH_MANAGE + '/org/tree', params)
}
// 单个删除组织
export function delOrgTreeItem(params) {
......
import { EADC_ARRCHITECTURE, EADC_KNOWLEDGE_POOL, EADC_SHARED_ABILITY } from '@/config/micromodule'
import { EADC_ARRCHITECTURE, EADC_KNOWLEDGE_POOL,ARCH_MANAGE } from '@/config/micromodule'
// 列表接口url
// 批量计划管理分页查询
export const batchPlanManagement = EADC_ARRCHITECTURE + '/bat-plan-info/'
......@@ -44,7 +44,7 @@ export const queryqKLPerson = EADC_KNOWLEDGE_POOL + '/kl-talent-pool/qKLPerson/'
export const queryExpert = EADC_KNOWLEDGE_POOL + '/kl-talent-pool/'
// 系统管理-组织机构管理
export const queryOrganizationManagement = EADC_SHARED_ABILITY + '/org/'
export const queryOrganizationManagement = ARCH_MANAGE + '/org/'
// 资产关系分类查询
export const queryEleRelation = EADC_ARRCHITECTURE + '/archi-asset-relation/qEleRelation'
......
......@@ -440,24 +440,8 @@ export const routes = [
title: "督查问题整改",
},
},
{
path: "/main/architectureFollowExamine", // 架构督查架构遵从检查
name: "architectureFollowExamine",
component: () => import("@/views/architectureFollowExamine/index.vue"),
meta: {
title: "架构遵从检查",
},
},
{
path: "/main/architectureFollowExamineDetails", // 架构督查 - 架构遵从检查-详情
name: "architectureFollowExamineDetails",
meta: {
showGoBack: true,
title: "架构遵从检查详情",
},
component: () =>
import("@/views/architectureFollowExamine/details.vue"),
},
{
path: "/main/artPolicyExamine", // 架构督查-技术政策审查
name: "artPolicyExamine",
......@@ -484,15 +468,6 @@ export const routes = [
},
},
{
path: "/main/architectureInspectionAnalysis", // 架构督查 - 架构督查分析
name: "architectureInspectionAnalysis",
component: () =>
import("@/views/architectureInspectionAnalysis/index.vue"),
meta: {
title: "架构督查分析",
},
},
{
path: "/main/examine", // 架构督查 - 架构督查分析
name: "examine",
component: () => import("@/views/artPolicyExamine/Examine.vue"),
......
......@@ -15,7 +15,7 @@ export const menuOptions = [
path: '/main/archi-ele-rela',
},
{
name: '',
name: '元模型管理',
path: '/main/metaModelList',
},
{
......
<!--
* @Description: 架构督查-架构遵从检查
* @Version: 2.0
* @Autor: pan
* @Date: 2024-03-26 18:27:18
* @LastEditors: pan
* @LastEditTime: 2024-03-28 14:18:52
-->
<template>
<div class="architectureFollowExamine">
<el-tabs class="m-lr-10" v-model="activeName">
<el-tab-pane
:label="item.label"
:name="item.name"
v-for="item in tabOptions"
:key="item.name"
lazy
>
<keep-alive>
<component :is="item.componentTag"></component>
</keep-alive>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import Tab1 from './tab1.vue'
import Tab2 from './tab2.vue'
import Tab3 from './tab3.vue'
import Tab4 from './tab4.vue'
import Tab5 from './tab5.vue'
import { getArchiViewManage } from '@/api/index.js'
export default {
name: 'architectureFollowExamine',
data() {
return {
activeName: '1',
tabOptions: [
{ label: '业务架构遵从', name: '1', componentTag: 'Tab1' },
{ label: '应用架构遵从', name: '2', componentTag: 'Tab2' },
{ label: '数据架构遵从', name: '3', componentTag: 'Tab3' },
{ label: '技术架构遵从', name: '4', componentTag: 'Tab4' },
{ label: '安全数据架构遵从', name: '5', componentTag: 'Tab5' },
],
componentTag: '',
leftSelectOptions: [],
rightSelectOptions: [],
leftSelect: undefined,
rightSelect: undefined,
}
},
components: {
Tab1,
Tab2,
Tab3,
Tab4,
Tab5,
},
created() {
// this.getLeftTree()
// this.getRightTree()
},
methods: {
getLeftTree() {
getArchiViewManage({ archiStage: 2 }).then((res) => {
if (res.code === 200) {
this.leftSelectOptions = res.data
this.leftSelect = this.leftSelectOptions[0].viewId
}
})
},
getRightTree() {
getArchiViewManage({ archiStage: 3 }).then((res) => {
if (res.code === 200) {
this.rightSelectOptions = res.data
this.rightSelect = this.rightSelectOptions[0].viewId
}
})
},
},
}
</script>
<style scoped lang="scss">
@import '@/styles/common.scss';
.architectureFollowExamine {
width: 100%;
& > div {
height: 100%;
}
::v-deep .el-tabs__content {
height: calc(100% - 55px);
.el-tab-pane {
height: 100%;
}
}
}
</style>
<!--
* @Description: 架构督查-架构遵从检查列表
* @Version: 2.0
* @Autor: pan
* @Date: 2024-03-26 19:31:32
* @LastEditors: pan
* @LastEditTime: 2024-03-28 09:44:32
-->
<template>
<div class="searchTable">
<list-page>
<!-- 查询表单插槽 -->
<template #formWrap>
<SearchForm @onSearch="querySearch" :form-options="formOptions"/>
</template>
<!-- 表格插槽 -->
<template #tableWrap>
<table-config
ref="searchTable"
:query="query"
:columns="columns"
id-key="elementId"
>
</table-config>
</template>
</list-page>
</div>
</template>
<script>
import ListPage from '@/components/ListPage.vue'
import SearchForm from '@/components/SearchForm.vue'
import TableConfig from '@/components/TableConfig.vue'
import {queryArchitectureFollowExamine} from '@/api/interface'
import {buildType} from '@/utils/dictionary'
import {getDictTypeOptions} from "@/utils";
export default {
name: 'architectureFollowExamine',
components: {
ListPage,
SearchForm,
TableConfig,
},
data() {
return {
selectRows: [],
query: {
url: queryArchitectureFollowExamine,
method: 'post',
queryParam: {},
},
visible: false,
rowData: {},
dialogTitle: '',
approvalVisible: false,
sysBuildOrgOptions: []
}
},
computed: {
formOptions() {
return [
{
label: '项目名称', // label文字
prop: 'prjName', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
},
{
label: '建设类型',
width: '100px',
prop: 'buildType',
element: 'el-select', // 指定elementui组件
dictType: 'build_type',
placeholder: '请选择', // elementui组件属性
},
]
},
columns() {
return [
{label: '序号', type: 'index', width: '80px'},
{
label: '系统名称',
prop: 'appName',
},
{
label: '建设类型', // label文字
prop: 'buildType', // 字段名
options: buildType,
collectionType: true,
width: '120px',
},
{
label: '项目名称',
prop: 'prjName',
},
{
label: '承建单位',
prop: 'buildOrg',
options: this.sysBuildOrgOptions,
collectionType: true,
width: '300px',
},
{
label: '项目经理',
prop: 'projectManager',
},
{
label: '创建时间',
prop: 'createTime',
},
{
label: '操作',
type: 'operation',
width: '240px',
actionButtons: [
{
title: '遵从检查',
type: 'primary',
size: 'mini',
plain: true,
icon: 'el-icon-edit',
},
],
callback: (row, title) => {
this.fnOperation(row, title)
},
},
]
},
},
created() {
this.getDicts()
},
methods: {
querySearch(data) {
this.query.queryParam = {
...this.query.queryParam,
...data,
}
this.$refs.searchTable.queryData()
},
getDicts() {
getDictTypeOptions('build_company').then((res) => {
this.sysBuildOrgOptions = res
})
},
/**
* @description: 操作按钮
* @param {Object} row 当前操作行数据
* @param {String} title 当前操作按钮名称
* @author: pan
*/
fnOperation(row, title) {
this.$router.push({
path: '/main/architectureFollowExamineDetails',
query: {
row: JSON.stringify(row),
},
})
},
},
}
</script>
<style scoped lang="scss">
@import '@/styles/common.scss';
</style>
<template>
<div class="tab-component flex-column h-100">
<div class="content flex">
<div class="left_container m-r-10 flex-column">
<div class="left_container_title">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>系统业务架构视图</span>
</div>
<el-select
class="select-title"
@change="leftSelectChange"
v-model="leftSelect"
>
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in leftSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="left_container_content flex-1"
v-loading="leftLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in leftBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
<div class="right_container flex-column">
<div class="right_container_title flex-b-c">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>概设阶段业务架构视图</span>
</div>
<el-select class="select-title" v-model="rightSelect">
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in rightSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="right_container_content flex-1"
v-loading="rightLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in rightBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
</div>
<div class="bottom_container">
<div class="flex-b-c p-r-20 m-tb-15">
<div class="flex-c">
<span class="m-r-50 p-l-20 bottom_container_title">备注</span>
</div>
<el-button type="primary" size="medium" @click="handleSave"
>保存结果</el-button
>
</div>
<el-input
type="textarea"
:rows="4"
v-model="resultContent"
v-no-backslash
class="w-100"
placeholder="请输入"
></el-input>
</div>
</div>
</template>
<script>
import {
saveArchitectureFollows,
viewArchitectureFollows,
qViewArchitectureFollows,
getArchiViewManage,
} from '@/api/index.js'
export default {
name: 'tab1',
components: {},
data() {
return {
resultContent: '',
leftBaseOptions: [],
rightBaseOptions: [],
leftLoading: false,
rightLoading: false,
leftSelect: undefined,
leftSelectOptions: [],
rightSelect: undefined,
rightSelectOptions: [],
row: {},
}
},
created() {
this.row = JSON.parse(this.$route.query.row)
this.getLeftTree().then((res) => {
this.getDetail()
})
this.getRightTree()
this.getLeftQview()
this.getRightQview()
},
methods: {
leftSelectChange() {
this.getDetail()
},
commonParams() {
return {
reviewEnum: 'BUSINESS_ARCHITECTURE_CONFORMANCE_SUPERVISE',
appId: this.row.appId,
reviewState: 0,
}
},
getDetail() {
const params = {
...this.commonParams(),
subViewId: this.leftSelect,
}
viewArchitectureFollows(params).then((res) => {
if (res.code === 200) {
this.resultContent = res.data.reviewSuggestion
}
})
},
getLeftTree() {
return getArchiViewManage({ archiStage: 2 }).then((res) => {
if (res.code === 200) {
this.leftSelectOptions = res.data
this.leftSelect = this.leftSelectOptions[0].viewId
}
})
},
getRightTree() {
getArchiViewManage({ archiStage: 3 }).then((res) => {
if (res.code === 200) {
this.rightSelectOptions = res.data
this.rightSelect = this.rightSelectOptions[0].viewId
}
})
},
getLeftQview() {
const params = {
appId: this.row.appId,
archiBelongId: 1,
archiStage: 2,
}
this.leftLoading = true
qViewArchitectureFollows(params).then((res) => {
this.leftLoading = false
if (res.code === 200) {
this.leftBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
getRightQview() {
const params = {
appId: this.row.appId,
archiBelongId: 1,
archiStage: 3,
}
this.rightLoading = true
qViewArchitectureFollows(params).then((res) => {
this.rightLoading = false
if (res.code === 200) {
this.rightBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
handleSave() {
const params = {
...this.commonParams(),
reviewSuggestion: this.resultContent,
subViewId: this.leftSelect,
}
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
saveArchitectureFollows(params).then((res) => {
loading.close()
if (res.code == 200) {
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
})
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/common.scss';
@import '@/views/reviewArchiPoliticeCheck/index.scss';
</style>
<template>
<div class="tab-component flex-column h-100">
<div class="content flex">
<div class="left_container m-r-10 flex-column">
<div class="left_container_title">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>系统业务架构视图</span>
</div>
<el-select
class="select-title"
@change="leftSelectChange"
v-model="leftSelect"
>
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in leftSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="left_container_content flex-1"
v-loading="leftLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in leftBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
<div class="right_container flex-column">
<div class="right_container_title flex-b-c">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>概设阶段业务架构视图</span>
</div>
<el-select class="select-title" v-model="rightSelect">
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in rightSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="right_container_content flex-1"
v-loading="rightLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in rightBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
</div>
<div class="bottom_container">
<div class="flex-b-c p-r-20 m-tb-15">
<div class="flex-c">
<span class="m-r-50 p-l-20 bottom_container_title">备注</span>
</div>
<el-button type="primary" size="medium" @click="handleSave"
>保存结果</el-button
>
</div>
<el-input
type="textarea"
:rows="4"
v-model="resultContent"
v-no-backslash
class="w-100"
placeholder="请输入"
></el-input>
</div>
</div>
</template>
<script>
import {
saveArchitectureFollows,
viewArchitectureFollows,
qViewArchitectureFollows,
getArchiViewManage,
} from '@/api/index.js'
export default {
name: 'tab2',
components: {},
data() {
return {
resultContent: '',
leftBaseOptions: [],
rightBaseOptions: [],
leftLoading: false,
rightLoading: false,
leftSelect: undefined,
leftSelectOptions: [],
rightSelect: undefined,
rightSelectOptions: [],
row: {},
}
},
created() {
this.row = JSON.parse(this.$route.query.row)
this.getLeftTree().then((res) => {
this.getDetail()
})
this.getRightTree()
this.getLeftQview()
this.getRightQview()
},
methods: {
leftSelectChange() {
this.getDetail()
},
commonParams() {
return {
reviewEnum: 'APPLICATION_ARCHITECTURE_CONFORMANCE_SUPERVISE',
appId: this.row.appId,
reviewState: 0,
}
},
getDetail() {
const params = {
...this.commonParams(),
subViewId: this.leftSelect,
}
viewArchitectureFollows(params).then((res) => {
if (res.code === 200) {
this.resultContent = res.data.reviewSuggestion
}
})
},
getLeftTree() {
return getArchiViewManage({ archiStage: 2 }).then((res) => {
if (res.code === 200) {
this.leftSelectOptions = res.data
this.leftSelect = this.leftSelectOptions[0].viewId
}
})
},
getRightTree() {
getArchiViewManage({ archiStage: 3 }).then((res) => {
if (res.code === 200) {
this.rightSelectOptions = res.data
this.rightSelect = this.rightSelectOptions[0].viewId
}
})
},
getLeftQview() {
const params = {
appId: this.row.appId,
archiBelongId: 2,
archiStage: 2,
}
this.leftLoading = true
qViewArchitectureFollows(params).then((res) => {
this.leftLoading = false
if (res.code === 200) {
this.leftBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
getRightQview() {
const params = {
appId: this.row.appId,
archiBelongId: 2,
archiStage: 3,
}
this.rightLoading = true
qViewArchitectureFollows(params).then((res) => {
this.rightLoading = false
if (res.code === 200) {
this.rightBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
handleSave() {
const params = {
...this.commonParams(),
reviewSuggestion: this.resultContent,
subViewId: this.leftSelect,
}
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
saveArchitectureFollows(params).then((res) => {
loading.close()
if (res.code == 200) {
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
})
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/common.scss';
@import '@/views/reviewArchiPoliticeCheck/index.scss';
</style>
<template>
<div class="tab-component flex-column h-100">
<div class="content flex">
<div class="left_container m-r-10 flex-column">
<div class="left_container_title">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>系统业务架构视图</span>
</div>
<el-select
class="select-title"
@change="leftSelectChange"
v-model="leftSelect"
>
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in leftSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="left_container_content flex-1"
v-loading="leftLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in leftBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
<div class="right_container flex-column">
<div class="right_container_title flex-b-c">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>概设阶段业务架构视图</span>
</div>
<el-select class="select-title" v-model="rightSelect">
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in rightSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="right_container_content flex-1"
v-loading="rightLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in rightBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
</div>
<div class="bottom_container">
<div class="flex-b-c p-r-20 m-tb-15">
<div class="flex-c">
<span class="m-r-50 p-l-20 bottom_container_title">备注</span>
</div>
<el-button type="primary" size="medium" @click="handleSave"
>保存结果</el-button
>
</div>
<el-input
type="textarea"
:rows="4"
v-model="resultContent"
v-no-backslash
class="w-100"
placeholder="请输入"
></el-input>
</div>
</div>
</template>
<script>
import {
saveArchitectureFollows,
viewArchitectureFollows,
qViewArchitectureFollows,
getArchiViewManage,
} from '@/api/index.js'
export default {
name: 'tab3',
components: {},
data() {
return {
resultContent: '',
leftBaseOptions: [],
rightBaseOptions: [],
leftLoading: false,
rightLoading: false,
leftSelect: undefined,
leftSelectOptions: [],
rightSelect: undefined,
rightSelectOptions: [],
row: {},
}
},
created() {
this.row = JSON.parse(this.$route.query.row)
this.getLeftTree().then((res) => {
this.getDetail()
})
this.getRightTree()
this.getLeftQview()
this.getRightQview()
},
methods: {
leftSelectChange() {
this.getDetail()
},
commonParams() {
return {
reviewEnum: 'TECHNICAL_ARCHITECTURE_CONFORMANCE_SUPERVISE',
appId: this.row.appId,
reviewState: 0,
}
},
getDetail() {
const params = {
...this.commonParams(),
subViewId: this.leftSelect,
}
viewArchitectureFollows(params).then((res) => {
if (res.code === 200) {
this.resultContent = res.data.reviewSuggestion
}
})
},
getLeftTree() {
return getArchiViewManage({ archiStage: 2 }).then((res) => {
if (res.code === 200) {
this.leftSelectOptions = res.data
this.leftSelect = this.leftSelectOptions[0].viewId
}
})
},
getRightTree() {
getArchiViewManage({ archiStage: 3 }).then((res) => {
if (res.code === 200) {
this.rightSelectOptions = res.data
this.rightSelect = this.rightSelectOptions[0].viewId
}
})
},
getLeftQview() {
const params = {
appId: this.row.appId,
archiBelongId: 3,
archiStage: 2,
}
this.leftLoading = true
qViewArchitectureFollows(params).then((res) => {
this.leftLoading = false
if (res.code === 200) {
this.leftBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
getRightQview() {
const params = {
appId: this.row.appId,
archiBelongId: 3,
archiStage: 3,
}
this.rightLoading = true
qViewArchitectureFollows(params).then((res) => {
this.rightLoading = false
if (res.code === 200) {
this.rightBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
handleSave() {
const params = {
...this.commonParams(),
reviewSuggestion: this.resultContent,
subViewId: this.leftSelect,
}
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
saveArchitectureFollows(params).then((res) => {
loading.close()
if (res.code == 200) {
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
})
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/common.scss';
@import '@/views/reviewArchiPoliticeCheck/index.scss';
</style>
<template>
<div class="tab-component flex-column h-100">
<div class="content flex">
<div class="left_container m-r-10 flex-column">
<div class="left_container_title">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>系统业务架构视图</span>
</div>
<el-select
class="select-title"
@change="leftSelectChange"
v-model="leftSelect"
>
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in leftSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="left_container_content flex-1"
v-loading="leftLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in leftBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
<div class="right_container flex-column">
<div class="right_container_title flex-b-c">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>概设阶段业务架构视图</span>
</div>
<el-select class="select-title" v-model="rightSelect">
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in rightSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="right_container_content flex-1"
v-loading="rightLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in rightBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
</div>
<div class="bottom_container">
<div class="flex-b-c p-r-20 m-tb-15">
<div class="flex-c">
<span class="m-r-50 p-l-20 bottom_container_title">备注</span>
</div>
<el-button type="primary" size="medium" @click="handleSave"
>保存结果</el-button
>
</div>
<el-input
type="textarea"
:rows="4"
v-model="resultContent"
v-no-backslash
class="w-100"
placeholder="请输入"
></el-input>
</div>
</div>
</template>
<script>
import {
saveArchitectureFollows,
viewArchitectureFollows,
qViewArchitectureFollows,
getArchiViewManage,
} from '@/api/index.js'
export default {
name: 'tab4',
components: {},
data() {
return {
resultContent: '',
leftBaseOptions: [],
rightBaseOptions: [],
leftLoading: false,
rightLoading: false,
leftSelect: undefined,
leftSelectOptions: [],
rightSelect: undefined,
rightSelectOptions: [],
row: {},
}
},
created() {
this.row = JSON.parse(this.$route.query.row)
this.getLeftTree().then((res) => {
this.getDetail()
})
this.getRightTree()
this.getLeftQview()
this.getRightQview()
},
methods: {
leftSelectChange() {
this.getDetail()
},
commonParams() {
return {
reviewEnum: 'DATA_ARCHITECTURE_CONFORMANCE_SUPERVISE',
appId: this.row.appId,
reviewState: 0,
}
},
getDetail() {
const params = {
...this.commonParams(),
subViewId: this.leftSelect,
}
viewArchitectureFollows(params).then((res) => {
if (res.code === 200) {
this.resultContent = res.data.reviewSuggestion
}
})
},
getLeftTree() {
return getArchiViewManage({ archiStage: 2 }).then((res) => {
if (res.code === 200) {
this.leftSelectOptions = res.data
this.leftSelect = this.leftSelectOptions[0].viewId
}
})
},
getRightTree() {
getArchiViewManage({ archiStage: 3 }).then((res) => {
if (res.code === 200) {
this.rightSelectOptions = res.data
this.rightSelect = this.rightSelectOptions[0].viewId
}
})
},
getLeftQview() {
const params = {
appId: this.row.appId,
archiBelongId: 4,
archiStage: 2,
}
this.leftLoading = true
qViewArchitectureFollows(params).then((res) => {
this.leftLoading = false
if (res.code === 200) {
this.leftBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
getRightQview() {
const params = {
appId: this.row.appId,
archiBelongId: 4,
archiStage: 3,
}
this.rightLoading = true
qViewArchitectureFollows(params).then((res) => {
this.rightLoading = false
if (res.code === 200) {
this.rightBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
handleSave() {
const params = {
...this.commonParams(),
reviewSuggestion: this.resultContent,
subViewId: this.leftSelect,
}
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
saveArchitectureFollows(params).then((res) => {
loading.close()
if (res.code == 200) {
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
})
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/common.scss';
@import '@/views/reviewArchiPoliticeCheck/index.scss';
</style>
<template>
<div class="tab-component flex-column h-100">
<div class="content flex">
<div class="left_container m-r-10 flex-column">
<div class="left_container_title">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>系统业务架构视图</span>
</div>
<el-select
class="select-title"
@change="leftSelectChange"
v-model="leftSelect"
>
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in leftSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="left_container_content flex-1"
v-loading="leftLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in leftBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
<div class="right_container flex-column">
<div class="right_container_title flex-b-c">
<div class="flex">
<i class="el-icon-caret-right icon"></i>
<span>概设阶段业务架构视图</span>
</div>
<el-select class="select-title" v-model="rightSelect">
<el-option
:label="item.viewName"
:value="item.viewId"
v-for="item in rightSelectOptions"
:key="item.viewId"
></el-option>
</el-select>
</div>
<div
class="right_container_content flex-1"
v-loading="rightLoading"
element-loading-text="加载中"
>
<img
v-for="(item, idx) in rightBaseOptions"
:key="idx"
:src="item"
alt=""
class="w-100 h-100"
/>
</div>
</div>
</div>
<div class="bottom_container">
<div class="flex-b-c p-r-20 m-tb-15">
<div class="flex-c">
<span class="m-r-50 p-l-20 bottom_container_title">备注</span>
</div>
<el-button type="primary" size="medium" @click="handleSave"
>保存结果</el-button
>
</div>
<el-input
type="textarea"
:rows="4"
v-model="resultContent"
v-no-backslash
class="w-100"
placeholder="请输入"
></el-input>
</div>
</div>
</template>
<script>
import {
saveArchitectureFollows,
viewArchitectureFollows,
qViewArchitectureFollows,
getArchiViewManage,
} from '@/api/index.js'
export default {
name: 'tab5',
components: {},
data() {
return {
resultContent: '',
leftBaseOptions: [],
rightBaseOptions: [],
leftLoading: false,
rightLoading: false,
leftSelect: undefined,
leftSelectOptions: [],
rightSelect: undefined,
rightSelectOptions: [],
row: {},
}
},
created() {
this.row = JSON.parse(this.$route.query.row)
this.getLeftTree().then((res) => {
this.getDetail()
})
this.getRightTree()
this.getLeftQview()
this.getRightQview()
},
methods: {
leftSelectChange() {
this.getDetail()
},
commonParams() {
return {
reviewEnum: 'SECURITY_ARCHITECTURE_CONFORMANCE_SUPERVISE',
appId: this.row.appId,
reviewState: 0,
}
},
getDetail() {
const params = {
...this.commonParams(),
subViewId: this.leftSelect,
}
viewArchitectureFollows(params).then((res) => {
if (res.code === 200) {
this.resultContent = res.data.reviewSuggestion
}
})
},
getLeftTree() {
return getArchiViewManage({ archiStage: 2 }).then((res) => {
if (res.code === 200) {
this.leftSelectOptions = res.data
this.leftSelect = this.leftSelectOptions[0].viewId
}
})
},
getRightTree() {
getArchiViewManage({ archiStage: 3 }).then((res) => {
if (res.code === 200) {
this.rightSelectOptions = res.data
this.rightSelect = this.rightSelectOptions[0].viewId
}
})
},
getLeftQview() {
const params = {
appId: this.row.appId,
archiBelongId: 5,
archiStage: 2,
}
this.leftLoading = true
qViewArchitectureFollows(params).then((res) => {
this.leftLoading = false
if (res.code === 200) {
this.leftBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
getRightQview() {
const params = {
appId: this.row.appId,
archiBelongId: 5,
archiStage: 3,
}
this.rightLoading = true
qViewArchitectureFollows(params).then((res) => {
this.rightLoading = false
if (res.code === 200) {
this.rightBaseOptions = res.data.map(
(v) => v.metaModelSvg && `data:image/png;base64,${v.metaModelSvg}`,
)
}
})
},
handleSave() {
const params = {
...this.commonParams(),
reviewSuggestion: this.resultContent,
subViewId: this.leftSelect,
}
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
saveArchitectureFollows(params).then((res) => {
loading.close()
if (res.code == 200) {
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
})
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/common.scss';
@import '@/views/reviewArchiPoliticeCheck/index.scss';
</style>
<template>
<el-dialog
:title="title"
:visible.sync="showDialog"
:close-on-click-modal="false"
width="42%"
@close="handleClose()"
@open="handleOpen"
>
<el-form
:inline="true"
id="addForm"
ref="addForm"
:rules="rules"
:model="formInfo"
label-width="auto"
style="text-align: left"
>
<template v-if="title == '新增督查指标' || rowData.tab == 'one'">
<el-form-item label="督查方案" prop="supervCode">
<el-select
v-model="formInfo.supervCode"
size="small"
placeholder="请选择"
@change="changeSupervCode"
:disabled="!display"
clearable
>
<el-option
v-for="item in supervNameList"
:key="item.text"
:label="item.value"
:value="item.text"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="权重" prop="weight">
<el-input
type="number"
min="0"
v-model="formInfo.weight"
size="small"
placeholder="请输入内容"
>
</el-input>
</el-form-item>
<br />
<el-form-item label="督查指标" prop="indexName">
<el-radio-group v-model="formInfo.indexLevel" @change="changeRadio">
<el-radio
v-for="item in radioList"
:key="item.value"
:label="item.value"
:disabled="!display"
>{{ item.label }}</el-radio
>
</el-radio-group>
<br />
<el-select
v-if="
(formInfo.indexLevel == '2' || formInfo.indexLevel == '3') &&
display
"
v-model="formInfo.zhibiao1"
size="small"
placeholder="请选择"
clearable
@change="getZhibiaoList('3')"
>
<el-option
v-for="item in zhibiaoList1"
:key="item.text"
:label="item.value"
:value="item.text"
>
</el-option>
</el-select>
<el-select
v-if="formInfo.indexLevel == '3' && display"
v-model="formInfo.zhibiao2"
size="small"
placeholder="请选择"
clearable
>
<el-option
v-for="item in zhibiaoList2"
:key="item.text"
:label="item.value"
:value="item.text"
>
</el-option>
</el-select>
<el-input
v-model="formInfo.indexName"
size="small"
placeholder="请输入内容"
>
</el-input>
</el-form-item>
</template>
<template v-if="rowData.tab == 'two'">
<el-form-item label="督查指标名称" prop="indexName">
<el-input
v-model="formInfo.indexName"
size="small"
placeholder="请输入内容"
>
</el-input>
</el-form-item>
<el-form-item label="评分" prop="score" class="scoreClass">
<el-input
type="number"
min="1"
max="5"
v-model="formInfo.score"
size="small"
placeholder="请输入内容"
>
</el-input>
</el-form-item>
<br />
<el-form-item label="评审意见" prop="opinion" class="textarea">
<el-input
type="textarea"
v-model="formInfo.opinion"
:rows="3"
show-word-limit
placeholder="请输入内容"
></el-input>
</el-form-item>
</template>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleSubmit">保 存</el-button>
<el-button @click="handleClose()">取 消</el-button>
</span>
</el-dialog>
</template>
<script>
import Form from '@/views/collectDataConfiguration/Form.vue'
export default {
components: { Form },
props: {
title: {
type: String,
default: '',
},
visible: {
type: Boolean,
default: false,
},
rowData: {
type: Object,
default: () => {},
},
edit: {
type: Boolean,
default: false,
},
},
computed: {
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
},
},
data() {
return {
supervNameList: [],
formInfo: {},
zhibiaoList1: [],
zhibiaoList2: [],
radioList: [
{ value: '1', label: '一级指标' },
{ value: '2', label: '二级指标' },
{ value: '3', label: '三级指标' },
],
display: true,
rules: {
supervCode: [{ required: true, message: '必填项', trigger: 'change' }],
weight: [{ required: true, message: '必填项', trigger: 'blur' }],
indexName: [{ required: true, message: '必填项', trigger: 'blur' }],
score: [{ required: true, message: '必填项', trigger: 'blur' }],
},
}
},
methods: {
getSupervNameList() {
this.$postRequest('/supervIndex/selectDrop', {}).then((res) => {
if (res.code === 200) {
this.supervNameList = res.data
} else {
this.supervNameList = []
}
})
},
changeSupervCode() {
// this.changeRadio(this.selectRadio)
this.formInfo.indexLevel = '1'
},
changeRadio(v) {
this.selectRadio = v
if (v != '1') {
if (!!this.formInfo.supervCode) {
this.getZhibiaoList('2')
} else {
this.$message.warning('请选择督查方案')
}
}
},
getZhibiaoList(level) {
this.$postRequest('/supervIndex/selectIndexLevelDrop', {
indexLevel: level,
supervCode: this.formInfo.supervCode,
}).then((res) => {
if (res.code === 200) {
if (level == '2') {
this.zhibiaoList1 = res.data
} else {
this.zhibiaoList2 = res.data
}
} else {
this.zhibiaoList1 = []
this.zhibiaoList2 = []
}
})
},
handleSubmit() {
this.$refs.addForm.validate((valid) => {
if (valid) {
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
let supervName = this.supervNameList.find(
(item) => item.text == this.formInfo.supervCode,
).value
let upIndex =
this.formInfo.indexLevel - 1 == 0
? ''
: this.formInfo.indexLevel - 1 + ''
let params =
this.rowData.tab == 'two'
? {
supervCode: this.formInfo.supervCode,
opinion: this.formInfo.opinion,
score: this.formInfo.score,
id: this.formInfo.id,
}
: {
...this.formInfo,
supervName,
upIndex,
}
let url = this.display
? '/supervIndex/ad'
: this.rowData.tab == 'two'
? '/supervIndex/updPf'
: '/supervIndex/upd' // 编辑
console.log(params, 'params', url)
this.$postRequest(url, params).then((res) => {
if (res.code === 200) {
loading.close()
this.$message.success('保存成功')
this.handleClose()
this.$emit('querySearch', this.display)
}
})
}
})
},
handleClose() {
this.showDialog = false
},
async handleOpen() {
this.getSupervNameList()
if (Object.keys(this.rowData).length) {
this.formInfo = JSON.parse(JSON.stringify(this.rowData))
this.display = false
} else {
this.$nextTick(() => {
this.display = true
this.addInitValue()
this.$refs.addForm.resetFields()
})
}
},
// 添加初始值
addInitValue() {
this.formInfo = {
supervCode: '',
weight: 0,
indexLevel: '1',
// zhibiao1: '',
// zhibiao2: '',
indexName: '',
}
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/elementui.scss';
/deep/ .scoreClass {
.el-input {
width: 160px;
}
}
/deep/ .textarea {
width: 60%;
white-space: nowrap;
.el-form-item__content {
width: 100%;
}
}
.zhibiao1 {
float: left;
}
</style>
<template>
<el-dialog
:title="'指标清单'"
:visible.sync="showDialog"
width="90%"
@close="showDialog = false"
>
<table-config
ref="searchTable"
:query="query"
:columns="columns"
id-key="elementId"
>
</table-config>
</el-dialog>
</template>
<script>
import { architectureDetail } from '@/api/architectureInspection'
import TableConfig from '@/views/collectDataConfiguration/TableConfig.vue'
import { stateCode, indexLevel } from '@/utils/architectureInspectionDis'
export default {
components: { TableConfig },
props: {
title: {
type: String,
default: '',
},
prjCodeDetail: {
type: String,
default: '',
},
visible: {
type: Boolean,
default: false,
},
},
watch: {
visible: {
handler(v){
if(v){
this.search()
}
}
},
},
data(){
return {
query: {
url: architectureDetail,
method: 'post',
queryParam: {
supervCode: '',
},
},
}
},
computed: {
columns() {
let arr = [
{ label: '序号', type: 'index', width: '80px' },
{ label: '督查方案名称', prop: 'supervName'},
{ label: '督查编码', prop: 'supervCode', width: '150px' },
{ label: '指标名称', prop: 'indexName',width: '150px' },
{ label: '指标级别', prop: 'indexLevel', width: '100px',collectionType: 'indexLevel',
options: indexLevel,
},
{ label: '指标权重', prop: 'weight', width: '100px'},
{ label: '创建时间', prop: 'createTime', width: '100px'},
{ label: '状态', prop: 'state', width: '100px', collectionType: 'stateCode',
options: stateCode,},
]
let operation = [
{
label: '操作', type: 'operation', width: '200px',
actionButtons: [
{
title: '编辑',
type: 'primary',
size: 'mini',
plain: true,
icon: 'el-icon-edit',
},
{
title: '删除',
type: 'danger',
size: 'mini',
plain: true,
icon: 'el-icon-delete',
},
],
callback: (row, title) => {
this.fnOperation(row, title)
},
},
]
if(this.title == '指标清单'){
return [...arr, ...operation]
}else{
return [...arr,
{ label: '评分', prop: 'score', width: '100px' },
{ label: '评审意见', prop: 'opinion', width: '150px'},
...operation]
}
},
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
}
},
methods: {
async search(){
if(this.title == '督查名称'){
this.query.queryParam = {
supervCode: this.prjCodeDetail,
state: "1",
indexLevel: "3"
}
}else{
this.query.queryParam = {
supervCode: this.prjCodeDetail,
}
}
this.$nextTick(() => {
this.$refs.searchTable.queryData()
})
},
/**
* @description: 操作按钮
* @param {Object} row 当前操作行数据
* @param {String} title 当前操作按钮名称
* @author: pan
*/
fnOperation(row, title) {
switch (title) {
case '编辑':
this.fnEdit(row)
break
case '删除':
this.fnDel(row)
break
default:
break
}
},
// 删除
fnDel(row) {
this.$confirm('是否确认删除?', '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
})
.then(() => {
this.$postRequest('/supervIndex/del', {id: row.id}).then(res => {
if (res.code === 200) {
this.$message.success('删除成功')
this.$refs.searchTable.queryData()
} else {
this.$message.error(res.msg)
}
})
})
.catch(() => {})
},
// 编辑
fnEdit(row) {
this.rowData = row
this.$emit('editClick', row, this.title)
},
}
}
</script>
<style lang="scss" scoped>
@import '@/styles/elementui.scss';
::v-deep .el-dialog__body{
height: 58vh;
}
</style>
\ No newline at end of file
......@@ -52,7 +52,6 @@
<span slot="footer">
<el-button @click="close">取 消</el-button>
<el-button type="primary" @click="submit">保 存</el-button>
<!-- <el-button type="primary" @click="release">发 布</el-button> -->
</span>
</el-dialog>
</template>
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!