Commit ecbe8d8f by xiehao

Merge remote-tracking branch 'origin/master'

2 parents e933a4dd 66ad51a3
import { post } from '@/utils/http' import { post } from '@/utils/http'
import { import {
EADC_ARRCHITECTURE, EADC_ARRCHITECTURE,
...@@ -33,21 +32,38 @@ export function removeEleRelation(params) { ...@@ -33,21 +32,38 @@ export function removeEleRelation(params) {
} }
// 资产关系新增 // 资产关系新增
export function createAssetRelation(params) { export function createAssetRelation(params) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/cAssetRelation', params) return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/cAssetRelation',
params,
true,
)
} }
// 资产关系修改 // 资产关系修改
export function updAssetRelation(params) { export function updAssetRelation(params) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/uAssetRelation', params) return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/uAssetRelation',
params,
true,
)
} }
// 根据元素查资产 // 根据元素查资产
export function queryAssetByEle(params) { export function queryAssetByEle(params) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/queryAssetByEle', params) return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/queryAssetByEle',
params,
)
} }
// 资产关系删除 // 资产关系删除
export function removeAssetRelation(params) { export function removeAssetRelation(params) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/rAssetRelation', params) return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/rAssetRelation',
params,
)
} }
// 资产关系发布/停用 // 资产关系发布/停用
export function pAssetRelation(params) { export function pAssetRelation(params) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/pAssetRelation', params) return post(
} EADC_ARRCHITECTURE + '/archi-asset-relation/pAssetRelation',
\ No newline at end of file params,
)
}
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-05-29 16:57:25 * @Date: 2024-05-29 16:57:25
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-06-05 19:46:56 * @LastEditTime: 2024-06-19 17:59:48
--> -->
<template> <template>
<el-dialog <el-dialog
...@@ -33,8 +33,8 @@ ...@@ -33,8 +33,8 @@
</list-page> </list-page>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" v-preventReClick @click="handleConfirm()" size="mini" <el-button type="primary" v-preventReClick @click="handleConfirm()"
>确 定</el-button >确 定</el-button
> >
</span></el-dialog </span></el-dialog
......
<template> <template>
<el-dialog <el-dialog
:title="title" :title="title"
:visible.sync="showDialog" :visible.sync="showDialog"
:close-on-click-modal="false" :close-on-click-modal="false"
width="42%" width="42%"
@close="handleClose()" @close="handleClose()"
@open="handleOpen" @open="handleOpen"
>
<el-form
:inline="true"
id="addForm"
ref="addForm"
:rules="rules"
:model="formInfo"
label-width="auto"
style="text-align: left"
> >
<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'">
<template v-if="title == '新增督查指标' || rowData.tab == 'one'"> <el-form-item label="督查方案" prop="supervCode">
<el-form-item label="督查方案" prop="supervCode"> <el-select
<el-select v-model="formInfo.supervCode" size="small" placeholder="请选择" @change="changeSupervCode" :disabled='!display' clearable> v-model="formInfo.supervCode"
<el-option v-for="item in supervNameList" :key="item.text" :label="item.value" :value="item.text"> size="small"
</el-option> placeholder="请选择"
</el-select> @change="changeSupervCode"
</el-form-item> :disabled="!display"
<el-form-item label="权重" prop="weight"> clearable
<el-input type="number" min="0" v-model="formInfo.weight" size="small" placeholder="请输入内容" > </el-input> >
</el-form-item> <el-option
<br /> v-for="item in supervNameList"
<el-form-item label="督查指标" prop="indexName"> :key="item.text"
<el-radio-group v-model="formInfo.indexLevel" @change="changeRadio" > :label="item.value"
<el-radio v-for="item in radioList" :key="item.value" :label="item.value" :disabled='!display'>{{ item.label }}</el-radio > :value="item.text"
</el-radio-group> >
<br /> </el-option>
<el-select v-if="(formInfo.indexLevel == '2' || formInfo.indexLevel == '3') && display" v-model="formInfo.zhibiao1" size="small" placeholder="请选择" clearable @change="getZhibiaoList('3')"> </el-select>
<el-option v-for="item in zhibiaoList1" :key="item.text" :label="item.value" :value="item.text"> </el-form-item>
</el-option> <el-form-item label="权重" prop="weight">
</el-select> <el-input
<el-select v-if="formInfo.indexLevel == '3' && display" v-model="formInfo.zhibiao2" size="small" placeholder="请选择" clearable> type="number"
<el-option v-for="item in zhibiaoList2" :key="item.text" :label="item.value" :value="item.text"> min="0"
</el-option> v-model="formInfo.weight"
</el-select> size="small"
<el-input v-model="formInfo.indexName" size="small" placeholder="请输入内容" > </el-input> placeholder="请输入内容"
</el-form-item> >
</template> </el-input>
<template v-if="rowData.tab == 'two'"> </el-form-item>
<el-form-item label="督查指标名称" prop="indexName"> <br />
<el-input v-model="formInfo.indexName" size="small" placeholder="请输入内容" > </el-input> <el-form-item label="督查指标" prop="indexName">
</el-form-item> <el-radio-group v-model="formInfo.indexLevel" @change="changeRadio">
<el-form-item label="评分" prop="score" class="scoreClass"> <el-radio
<el-input type="number" min="1" max='5' v-model="formInfo.score" size="small" placeholder="请输入内容" > </el-input> v-for="item in radioList"
</el-form-item> :key="item.value"
<br /> :label="item.value"
<el-form-item label="评审意见" prop="opinion" class="textarea"> :disabled="!display"
<el-input type="textarea" v-model="formInfo.opinion" :rows="3" show-word-limit placeholder="请输入内容" ></el-input> >{{ item.label }}</el-radio
</el-form-item> >
</template> </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> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleSubmit" size="mini" >保 存</el-button > <el-button type="primary" @click="handleSubmit">保 存</el-button>
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
</span> </span>
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import Form from '@/views/collectDataConfiguration/Form.vue' import Form from '@/views/collectDataConfiguration/Form.vue'
export default { export default {
components: { Form }, components: { Form },
props: { props: {
title: { title: {
type: String, type: String,
default: '', default: '',
}, },
visible: { visible: {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
rowData: { rowData: {
type: Object, type: Object,
default: () => {}, default: () => {},
}, },
edit:{ edit: {
type: Boolean, type: Boolean,
default: false 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 = []
} }
})
}, },
computed: { changeSupervCode() {
showDialog: { // this.changeRadio(this.selectRadio)
get() { this.formInfo.indexLevel = '1'
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
},
}, },
data(){ changeRadio(v) {
return { this.selectRadio = v
supervNameList: [], if (v != '1') {
formInfo: {}, if (!!this.formInfo.supervCode) {
zhibiaoList1: [], this.getZhibiaoList('2')
zhibiaoList2: [], } else {
radioList: [ this.$message.warning('请选择督查方案')
{ 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: { getZhibiaoList(level) {
getSupervNameList(){ this.$postRequest('/supervIndex/selectIndexLevelDrop', {
this.$postRequest('/supervIndex/selectDrop', {}).then(res => { indexLevel: level,
if (res.code === 200) { supervCode: this.formInfo.supervCode,
this.supervNameList = res.data }).then((res) => {
} else { if (res.code === 200) {
this.supervNameList = [] if (level == '2') {
} this.zhibiaoList1 = res.data
}) } else {
}, this.zhibiaoList2 = res.data
changeSupervCode(){ }
// this.changeRadio(this.selectRadio) } else {
this.formInfo.indexLevel = '1' this.zhibiaoList1 = []
}, this.zhibiaoList2 = []
changeRadio(v){ }
this.selectRadio = v })
if(v != '1'){ },
if(!!this.formInfo.supervCode){ handleSubmit() {
this.getZhibiaoList('2') this.$refs.addForm.validate((valid) => {
}else{ if (valid) {
this.$message.warning('请选择督查方案') const loading = this.$loading({
} lock: true,
} text: '保存中',
}, spinner: 'el-icon-loading',
getZhibiaoList(level){ })
this.$postRequest('/supervIndex/selectIndexLevelDrop', {indexLevel: level, supervCode: this.formInfo.supervCode}).then(res => { let supervName = this.supervNameList.find(
if (res.code === 200) { (item) => item.text == this.formInfo.supervCode,
if(level == '2'){ ).value
this.zhibiaoList1 = res.data let upIndex =
}else{ this.formInfo.indexLevel - 1 == 0
this.zhibiaoList2 = res.data ? ''
} : this.formInfo.indexLevel - 1 + ''
} else { let params =
this.zhibiaoList1 = [] this.rowData.tab == 'two'
this.zhibiaoList2 = [] ? {
supervCode: this.formInfo.supervCode,
opinion: this.formInfo.opinion,
score: this.formInfo.score,
id: this.formInfo.id,
} }
}) : {
}, ...this.formInfo,
handleSubmit() { supervName,
this.$refs.addForm.validate((valid) => { upIndex,
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)
}
})
} }
}) let url = this.display
}, ? '/supervIndex/ad'
handleClose() { : this.rowData.tab == 'two'
this.showDialog = false ? '/supervIndex/updPf'
}, : '/supervIndex/upd' // 编辑
async handleOpen() { console.log(params, 'params', url)
this.getSupervNameList() this.$postRequest(url, params).then((res) => {
if (Object.keys(this.rowData).length) { if (res.code === 200) {
this.formInfo = JSON.parse(JSON.stringify(this.rowData)) loading.close()
this.display = false this.$message.success('保存成功')
} else { this.handleClose()
this.$nextTick(() => { this.$emit('querySearch', this.display)
this.display = true
this.addInitValue()
this.$refs.addForm.resetFields()
})
}
},
// 添加初始值
addInitValue() {
this.formInfo = {
supervCode: '',
weight: 0,
indexLevel: '1',
// zhibiao1: '',
// zhibiao2: '',
indexName: '',
} }
}, })
} }
})
},
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> </script>
...@@ -215,18 +312,18 @@ export default { ...@@ -215,18 +312,18 @@ export default {
@import '@/styles/elementui.scss'; @import '@/styles/elementui.scss';
/deep/ .scoreClass { /deep/ .scoreClass {
.el-input { .el-input {
width: 160px ; width: 160px;
} }
} }
/deep/ .textarea{ /deep/ .textarea {
width: 60%; width: 60%;
white-space: nowrap; white-space: nowrap;
.el-form-item__content{ .el-form-item__content {
width: 100%; width: 100%;
} }
} }
.zhibiao1{ .zhibiao1 {
float: left; float: left;
} }
</style> </style>
\ No newline at end of file
...@@ -19,10 +19,8 @@ ...@@ -19,10 +19,8 @@
></Form> ></Form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit" size="mini" <el-button type="primary" @click="handleSubmit">提 交</el-button>
>提 交</el-button
>
</span></el-dialog </span></el-dialog
> >
</template> </template>
...@@ -30,7 +28,7 @@ ...@@ -30,7 +28,7 @@
<script> <script>
import Form from '@/components/Form.vue' import Form from '@/components/Form.vue'
import {approveBatchPlan, editBatchPlan} from '@/api/index.js' import { approveBatchPlan, editBatchPlan } from '@/api/index.js'
export default { export default {
props: { props: {
title: { title: {
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-05-28 18:59:07 * @Date: 2024-05-28 18:59:07
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-06-03 08:28:59 * @LastEditTime: 2024-06-19 18:25:31
--> -->
<template> <template>
<div class="w-100 h-100 p-10 architectureBlueprintAnalysis"> <div class="w-100 h-100 p-10 architectureBlueprintAnalysis">
...@@ -111,18 +111,24 @@ export default { ...@@ -111,18 +111,24 @@ export default {
countItems: [ countItems: [
{ {
title: '业务域', title: '业务域',
count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum-sys'], count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum'],
count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum'], count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum-sys'],
}, },
{ {
title: '业务职能', title: '业务职能',
count1: 595, count1: ARCHI_BUSINESS
count2: 624, ? (ARCHI_BUSINESS['oneLevelBusFuncNum'] || 0) +
(ARCHI_BUSINESS['twoLevelBusFuncNum'] || 0)
: 0,
count2: ARCHI_BUSINESS
? (ARCHI_BUSINESS['oneLevelBusFuncNum-sys'] || 0) +
(ARCHI_BUSINESS['twoLevelBusFuncNum-sys'] || 0)
: 0,
}, },
{ {
title: '业务流程', title: '业务流程',
count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum-sys'], count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum'],
count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum'], count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum-sys'],
}, },
], ],
}, },
...@@ -132,22 +138,23 @@ export default { ...@@ -132,22 +138,23 @@ export default {
countItems: [ countItems: [
{ {
title: '应用', title: '应用',
count1: 12, count1: ARCHI_APPLICATION && ARCHI_APPLICATION['appDomainNum'],
count2: 14, count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['appDomainNum-sys'],
}, },
{ {
title: '一级功能', title: '一级功能',
count1: count1:
ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount-sys'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount'], ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount-sys'],
}, },
{ {
title: '二级功能', title: '二级功能',
count1: count1:
ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount-sys'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount'], ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount-sys'],
}, },
], ],
}, },
...@@ -157,13 +164,13 @@ export default { ...@@ -157,13 +164,13 @@ export default {
countItems: [ countItems: [
{ {
title: '一级主题域', title: '一级主题域',
count1: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount-sys'], count1: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount'],
count2: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount'], count2: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount-sys'],
}, },
{ {
title: '二级主题域', title: '二级主题域',
count1: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount-sys'], count1: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount'],
count2: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount'], count2: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount-sys'],
}, },
{ {
title: '概念实体', title: '概念实体',
...@@ -178,18 +185,18 @@ export default { ...@@ -178,18 +185,18 @@ export default {
countItems: [ countItems: [
{ {
title: '技术域', title: '技术域',
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum-sys'], count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum'], count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum-sys'],
}, },
{ {
title: '技术能力', title: '技术能力',
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum-sys'], count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum'], count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum-sys'],
}, },
{ {
title: '技术组件', title: '技术组件',
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum-sys'], count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum'], count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum-sys'],
}, },
], ],
}, },
...@@ -198,19 +205,19 @@ export default { ...@@ -198,19 +205,19 @@ export default {
bgColor: '#a4ebaf', bgColor: '#a4ebaf',
countItems: [ countItems: [
{ {
title: '防护对象', title: '安全管理体系',
count1: 12, count1: ARCHI_SAFE && ARCHI_SAFE['safeManageNum'],
count2: 14, count2: ARCHI_SAFE && ARCHI_SAFE['safeManageNum-sys'],
}, },
{ {
title: '防护要求', title: '安全主题域',
count1: 595, count1: ARCHI_SAFE && ARCHI_SAFE['safeThemeNum'],
count2: 624, count2: ARCHI_SAFE && ARCHI_SAFE['safeThemeNum-sys'],
}, },
{ {
title: '防护措施', title: '安全策略',
count1: 2869, count1: ARCHI_SAFE && ARCHI_SAFE['safePlicyNum'],
count2: 2967, count2: ARCHI_SAFE && ARCHI_SAFE['safePlicyNum-sys'],
}, },
], ],
}, },
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-05-10 18:41:29 * @Date: 2024-05-10 18:41:29
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-06-19 17:40:54 * @LastEditTime: 2024-06-19 18:33:03
--> -->
<template> <template>
<el-dialog <el-dialog
...@@ -239,26 +239,22 @@ export default { ...@@ -239,26 +239,22 @@ export default {
}, },
handleSubmit() { handleSubmit() {
this.$refs['addForm'].onValidate(() => { this.$refs['addForm'].onValidate(() => {
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
const formInfo = this.$refs['addForm'].getData() const formInfo = this.$refs['addForm'].getData()
const typeApi = this.isEdit ? updAssetRelation : createAssetRelation const typeApi = this.isEdit ? updAssetRelation : createAssetRelation
const params = { const params = {
...this.rowData, ...this.rowData,
...formInfo, ...formInfo,
state: 2, state: 2,
assetRelaId: this.relationData.assetRelaId assetRelaId: this.relationData.assetRelaId,
} }
typeApi(params).then((res) => { typeApi(params).then((res) => {
if (res.code === 200) { if (res.code === 200) {
loading.close()
this.$message.success('保存成功') this.$message.success('保存成功')
this.showDialog = false this.showDialog = false
this.handleClose() this.handleClose()
this.$emit('querySearch') this.$emit('querySearch')
} else {
this.$messsage.warning(res.msg)
} }
}) })
}) })
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-03-12 15:11:47 * @Date: 2024-03-12 15:11:47
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-04-01 17:08:42 * @LastEditTime: 2024-06-19 18:07:17
--> -->
<template> <template>
<div class="form-item"> <div class="form-item">
...@@ -105,7 +105,6 @@ ...@@ -105,7 +105,6 @@
v-model="currentVal" v-model="currentVal"
v-bind="bindProps" v-bind="bindProps"
v-on="bindEvents" v-on="bindEvents"
size="mini"
clearable clearable
></el-cascader> ></el-cascader>
</div> </div>
...@@ -150,9 +149,9 @@ export default { ...@@ -150,9 +149,9 @@ export default {
currentVal: { currentVal: {
get() { get() {
if (this.isSelect) { if (this.isSelect) {
if(this.value == 0){ if (this.value == 0) {
return this.value + '' return this.value + ''
}else{ } else {
return this.value && this.value + '' return this.value && this.value + ''
} }
} else { } else {
......
...@@ -15,8 +15,11 @@ ...@@ -15,8 +15,11 @@
></Form> ></Form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit()" size="mini" v-if="this.title != '详情'" <el-button
type="primary"
@click="handleSubmit()"
v-if="this.title != '详情'"
>提 交</el-button >提 交</el-button
> >
</span></el-dialog </span></el-dialog
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
</el-tabs> </el-tabs>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">关 闭</el-button> <el-button @click="handleClose()">关 闭</el-button>
</span></el-dialog </span></el-dialog
> >
</template> </template>
......
<template> <template>
<el-dialog <el-dialog
:title="'详情'" :title="'详情'"
:visible.sync="showDialog" :visible.sync="showDialog"
:close-on-click-modal="false" :close-on-click-modal="false"
width="66%" width="66%"
@close="showDialog = false" @close="showDialog = false"
@open="handleOpen" @open="handleOpen"
> >
<div> <div>
<Form <Form
ref="addForm" ref="addForm"
...@@ -15,146 +15,151 @@ ...@@ -15,146 +15,151 @@
></Form> ></Form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="showDialog = false" size="mini">取 消</el-button> <el-button @click="showDialog = false">取 消</el-button>
</span> </span>
</el-dialog > </el-dialog>
</template> </template>
<script> <script>
import Form from '@/components/Form.vue' import Form from '@/components/Form.vue'
import { buildType, pushStateOptions, onlineApprovalStatusOptions, sendStateOptions } from '@/utils/dictionary' import {
buildType,
pushStateOptions,
onlineApprovalStatusOptions,
sendStateOptions,
} from '@/utils/dictionary'
export default { export default {
components: { Form, }, components: { Form },
props: { props: {
visible: { visible: {
type: Boolean, type: Boolean,
default: false, default: false,
},
rowData: {
type: Object,
default: () => {},
},
activeName: {
type: String,
default: '1',
},
activeName2: {
type: String,
default: '1',
},
},
computed: {
formOptions() {
let arr = [
{
label: '批次名称', // label文字
prop: 'batName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
}, },
rowData: { {
type: Object, label: '需求名称', // label文字
default: () => {}, prop: 'needName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
}, },
activeName: { {
type: String, label: '项目名称', // label文字
default: '1', prop: 'prjName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
}, },
activeName2: { {
type: String, label: '关联机构', // label文字
default: '1', prop: 'orgName', // 字段名
} element: 'el-input', // 指定elementui组件
}, disabled: true,
computed: {
formOptions() {
let arr = [
{
label: '批次名称', // label文字
prop: 'batName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
{
label: '需求名称', // label文字
prop: 'needName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
{
label: '项目名称', // label文字
prop: 'prjName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
{
label: '关联机构', // label文字
prop: 'orgName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
{
label: '材料', // label文字
prop: 'fileList', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
]
if (this.activeName === '1') {
arr = [
...arr,
{
label: '推送状态',
prop: 'state',
element: 'el-select', // 指定elementui组件
options: pushStateOptions,
options: [
{ label: '已反馈', value: '1' },
{ label: '未反馈', value: '0' },
],
placeholder: '',
disabled: true,
},
{
label: '修改剩余时间',
prop: 'createTime',
element: 'el-input', // 指定elementui组件
disabled: true,
},
{
label: '在线评审状态',
prop: 'onlineReviewState',
element: 'el-select', // 指定elementui组件
options: onlineApprovalStatusOptions,
placeholder: '',
disabled: true,
},
]
}else{
arr = [
...arr,
{
label: '发送状态',
prop: 'sendState',
element: 'el-select', // 指定elementui组件
options: sendStateOptions,
placeholder: '',
disabled: true,
},
]
}
return [
...arr,
{
label: '意见内容',
prop: 'remark',
element: 'el-input', // 指定elementui组件
disabled: true,
},
]
}, },
showDialog: { {
get() { label: '材料', // label文字
return this.visible prop: 'fileList', // 字段名
}, element: 'el-input', // 指定elementui组件
set(value) { disabled: true,
this.$emit('update:visible', value)
},
}, },
}, ]
methods: { if (this.activeName === '1') {
handleOpen() { arr = [
if (Object.keys(this.rowData).length) { ...arr,
this.formOptions.forEach((v) => { {
v.initValue = this.rowData[v.prop] label: '推送状态',
}) prop: 'state',
this.$nextTick(() => { element: 'el-select', // 指定elementui组件
this.$refs['addForm'].addInitValue() options: pushStateOptions,
}) options: [
} else { { label: '已反馈', value: '1' },
this.$nextTick(() => { { label: '未反馈', value: '0' },
this.$refs['addForm'].addInitValue() ],
this.$refs['addForm'].onReset() placeholder: '',
}) disabled: true,
} },
{
label: '修改剩余时间',
prop: 'createTime',
element: 'el-input', // 指定elementui组件
disabled: true,
},
{
label: '在线评审状态',
prop: 'onlineReviewState',
element: 'el-select', // 指定elementui组件
options: onlineApprovalStatusOptions,
placeholder: '',
disabled: true,
},
]
} else {
arr = [
...arr,
{
label: '发送状态',
prop: 'sendState',
element: 'el-select', // 指定elementui组件
options: sendStateOptions,
placeholder: '',
disabled: true,
},
]
}
return [
...arr,
{
label: '意见内容',
prop: 'remark',
element: 'el-input', // 指定elementui组件
disabled: true,
}, },
} ]
},
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
},
},
methods: {
handleOpen() {
if (Object.keys(this.rowData).length) {
this.formOptions.forEach((v) => {
v.initValue = this.rowData[v.prop]
})
this.$nextTick(() => {
this.$refs['addForm'].addInitValue()
})
} else {
this.$nextTick(() => {
this.$refs['addForm'].addInitValue()
this.$refs['addForm'].onReset()
})
}
},
},
} }
</script> </script>
\ No newline at end of file
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-03-21 14:29:32 * @Date: 2024-03-21 14:29:32
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-03-24 19:05:44 * @LastEditTime: 2024-06-19 18:08:08
--> -->
<template> <template>
...@@ -54,10 +54,8 @@ ...@@ -54,10 +54,8 @@
</el-table> </el-table>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button @click="fnOperation()" type="primary" size="mini" <el-button @click="fnOperation()" type="primary">反馈</el-button>
>反馈</el-button
>
</span></el-dialog </span></el-dialog
> >
</div> </div>
......
...@@ -14,10 +14,8 @@ ...@@ -14,10 +14,8 @@
></Form> ></Form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit()" size="mini" <el-button type="primary" @click="handleSubmit()">反 馈</el-button>
>反 馈</el-button
>
</span></el-dialog </span></el-dialog
> >
</template> </template>
......
<template> <template>
<el-dialog <el-dialog
:title="title" :title="title"
:visible.sync="showDialog" :visible.sync="showDialog"
width="40%" width="40%"
@close="handleClose()" @close="handleClose()"
@open="handleOpen" @open="handleOpen"
>
<Form
ref="addForm"
:form-options="formOptions"
label-width="120px"
id="addForm"
> >
<Form </Form>
ref="addForm" <span slot="footer" class="dialog-footer">
:form-options="formOptions" <el-button type="primary" @click="handleSubmit">保 存</el-button>
label-width="120px" <el-button @click="handleClose()">取 消</el-button>
id="addForm" </span>
> </el-dialog>
</Form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleSubmit" size="mini" >保 存</el-button >
<el-button @click="handleClose()" size="mini">取 消</el-button>
</span>
</el-dialog>
</template> </template>
<script> <script>
...@@ -26,157 +26,162 @@ import { collectDataConfiguration } from '@/api/architectureInspection' ...@@ -26,157 +26,162 @@ import { collectDataConfiguration } from '@/api/architectureInspection'
import { flag } from '@/utils/architectureInspectionDis' import { flag } from '@/utils/architectureInspectionDis'
export default { export default {
components: { Form }, components: { Form },
props: { props: {
title: { title: {
type: String, type: String,
default: '', default: '',
}, },
visible: { visible: {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
rowData: { rowData: {
type: Object, type: Object,
default: () => {}, default: () => {},
},
dictId: {
type: Number,
default: 0,
}
}, },
data() { dictId: {
return { type: Number,
query: { default: 0,
url: collectDataConfiguration,
method: 'post',
queryParam: {},
},
}
}, },
computed: { },
formOptions() { data() {
return [ return {
{ query: {
label: '字典值', // label文字 url: collectDataConfiguration,
prop: 'value', // 字段名 method: 'post',
element: 'el-input', // 指定elementui组件 queryParam: {},
placeholder: '请输入内容', // elementui组件属性 },
rules: [{ required: true, trigger: 'blur', message: '不能为空' }], }
}, },
{ computed: {
label: '字典值描述', // label文字 formOptions() {
prop: 'label', // 字段名 return [
element: 'el-input', // 指定elementui组件 {
placeholder: '请输入内容', // elementui组件属性 label: '字典值', // label文字
// rules: [{ required: true, trigger: 'blur', message: '不能为空' }], prop: 'value', // 字段名
}, element: 'el-input', // 指定elementui组件
{ placeholder: '请输入内容', // elementui组件属性
label: '等级', // label文字 rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
prop: 'grade', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
{
label: '排序', // label文字
prop: 'sort', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请填写排序(默认请填0)', // elementui组件属性
rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
{
label: '启用状态', // label文字
prop: 'flag', // 字段名
element: 'el-select', // 指定elementui组件
placeholder: '请选择', // elementui组件属性
options: flag,
rules: [{ required: true, trigger: 'change', message: '不能为空' }],
},
{
label: '描述', // label文字
prop: 'remark', // 字段名
type: 'textarea',
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
span: 24,
// rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
]
}, },
showDialog: { {
get() { label: '字典值描述', // label文字
return this.visible prop: 'label', // 字段名
}, element: 'el-input', // 指定elementui组件
set(value) { placeholder: '请输入内容', // elementui组件属性
this.$emit('update:visible', value) // rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
}, },
}, {
methods: { label: '等级', // label文字
handleSubmit() { prop: 'grade', // 字段名
this.$refs['addForm'].onValidate(() => { element: 'el-input', // 指定elementui组件
const loading = this.$loading({ placeholder: '请输入内容', // elementui组件属性
lock: true, rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
text: '保存中',
spinner: 'el-icon-loading',
})
const formInfo = this.$refs['addForm'].getData()
let params = Object.keys(this.rowData).length ? {
...this.rowData,
...formInfo,
dictId: this.dictId
} : {
...formInfo,
dictId: this.dictId
}
let url = Object.keys(this.rowData).length ? '/dictDetail/update' : '/dictDetail/create'
this.$postRequestShared(url, params).then(res => {
if (res.code === 200) {
loading.close()
this.$message.success('保存成功')
this.showDialog = false
this.handleClose()
this.$emit('querySearch')
}
})
})
}, },
handleClose() { {
this.showDialog = false label: '排序', // label文字
this.formOptions.forEach((v) => { prop: 'sort', // 字段名
v.initValue = '' element: 'el-input', // 指定elementui组件
}) placeholder: '请填写排序(默认请填0)', // elementui组件属性
this.$refs['addForm'].addInitValue() rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
this.$refs['addForm'].onReset()
}, },
handleOpen() { {
if (Object.keys(this.rowData).length) { label: '启用状态', // label文字
this.formOptions.forEach((v) => { prop: 'flag', // 字段名
v.initValue = this.rowData[v.prop] element: 'el-select', // 指定elementui组件
}) placeholder: '请选择', // elementui组件属性
this.$nextTick(() => { options: flag,
this.$refs['addForm'].addInitValue() rules: [{ required: true, trigger: 'change', message: '不能为空' }],
})
} else {
this.$nextTick(() => {
this.$refs['addForm'].addInitValue()
this.$refs['addForm'].onReset()
})
}
}, },
} {
label: '描述', // label文字
prop: 'remark', // 字段名
type: 'textarea',
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
span: 24,
// rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
]
},
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
},
},
methods: {
handleSubmit() {
this.$refs['addForm'].onValidate(() => {
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
const formInfo = this.$refs['addForm'].getData()
let params = Object.keys(this.rowData).length
? {
...this.rowData,
...formInfo,
dictId: this.dictId,
}
: {
...formInfo,
dictId: this.dictId,
}
let url = Object.keys(this.rowData).length
? '/dictDetail/update'
: '/dictDetail/create'
this.$postRequestShared(url, params).then((res) => {
if (res.code === 200) {
loading.close()
this.$message.success('保存成功')
this.showDialog = false
this.handleClose()
this.$emit('querySearch')
}
})
})
},
handleClose() {
this.showDialog = false
this.formOptions.forEach((v) => {
v.initValue = ''
})
this.$refs['addForm'].addInitValue()
this.$refs['addForm'].onReset()
},
handleOpen() {
if (Object.keys(this.rowData).length) {
this.formOptions.forEach((v) => {
v.initValue = this.rowData[v.prop]
})
this.$nextTick(() => {
this.$refs['addForm'].addInitValue()
})
} else {
this.$nextTick(() => {
this.$refs['addForm'].addInitValue()
this.$refs['addForm'].onReset()
})
}
},
},
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
// @import '@/styles/elementui.scss'; // @import '@/styles/elementui.scss';
/deep/ #addForm { /deep/ #addForm {
.el-select, .el-input{ .el-select,
width: 60% !important; .el-input {
>.el-input{ width: 60% !important;
width: 100% !important; > .el-input {
} width: 100% !important;
} }
}
} }
</style> </style>
\ No newline at end of file
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-04-01 14:39:48 * @Date: 2024-04-01 14:39:48
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-04-02 13:55:25 * @LastEditTime: 2024-06-19 18:08:49
--> -->
<template> <template>
<el-dialog <el-dialog
...@@ -38,10 +38,8 @@ ...@@ -38,10 +38,8 @@
</Form> </Form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit" size="mini" <el-button type="primary" @click="handleSubmit">确 定</el-button>
>确 定</el-button
>
</span></el-dialog </span></el-dialog
> >
</template> </template>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-04-01 14:38:41 * @Date: 2024-04-01 14:38:41
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-04-02 13:55:40 * @LastEditTime: 2024-06-19 18:08:45
--> -->
<template> <template>
<el-dialog <el-dialog
...@@ -20,10 +20,8 @@ ...@@ -20,10 +20,8 @@
</Form> </Form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button> <el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit" size="mini" <el-button type="primary" @click="handleSubmit">确 定</el-button>
>确 定</el-button
>
</span></el-dialog </span></el-dialog
> >
</template> </template>
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!