Commit ecbe8d8f by xiehao

Merge remote-tracking branch 'origin/master'

2 parents e933a4dd 66ad51a3
import { post } from '@/utils/http'
import {
EADC_ARRCHITECTURE,
......@@ -33,21 +32,38 @@ export function removeEleRelation(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) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/uAssetRelation', params)
return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/uAssetRelation',
params,
true,
)
}
// 根据元素查资产
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) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/rAssetRelation', params)
return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/rAssetRelation',
params,
)
}
// 资产关系发布/停用
export function pAssetRelation(params) {
return post(EADC_ARRCHITECTURE + '/archi-asset-relation/pAssetRelation', params)
}
\ No newline at end of file
return post(
EADC_ARRCHITECTURE + '/archi-asset-relation/pAssetRelation',
params,
)
}
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-05-29 16:57:25
* @LastEditors: pan
* @LastEditTime: 2024-06-05 19:46:56
* @LastEditTime: 2024-06-19 17:59:48
-->
<template>
<el-dialog
......@@ -33,8 +33,8 @@
</list-page>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" v-preventReClick @click="handleConfirm()" size="mini"
<el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" v-preventReClick @click="handleConfirm()"
>确 定</el-button
>
</span></el-dialog
......
<template>
<el-dialog
:title="title"
:visible.sync="showDialog"
:close-on-click-modal="false"
width="42%"
@close="handleClose()"
@open="handleOpen"
<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"
>
<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>
<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" size="mini" >保 存</el-button >
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" @click="handleSubmit">保 存</el-button>
<el-button @click="handleClose()">取 消</el-button>
</span>
</el-dialog>
</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
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 = []
}
})
},
computed: {
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
},
changeSupervCode() {
// this.changeRadio(this.selectRadio)
this.formInfo.indexLevel = '1'
},
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' }],
}
changeRadio(v) {
this.selectRadio = v
if (v != '1') {
if (!!this.formInfo.supervCode) {
this.getZhibiaoList('2')
} else {
this.$message.warning('请选择督查方案')
}
}
},
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 = []
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,
}
})
},
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)
}
})
: {
...this.formInfo,
supervName,
upIndex,
}
})
},
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: '',
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>
......@@ -215,18 +312,18 @@ export default {
@import '@/styles/elementui.scss';
/deep/ .scoreClass {
.el-input {
width: 160px ;
}
.el-input {
width: 160px;
}
}
/deep/ .textarea{
width: 60%;
white-space: nowrap;
.el-form-item__content{
width: 100%;
}
/deep/ .textarea {
width: 60%;
white-space: nowrap;
.el-form-item__content {
width: 100%;
}
}
.zhibiao1{
float: left;
.zhibiao1 {
float: left;
}
</style>
\ No newline at end of file
</style>
......@@ -19,10 +19,8 @@
></Form>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" @click="handleSubmit" size="mini"
>提 交</el-button
>
<el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit">提 交</el-button>
</span></el-dialog
>
</template>
......@@ -30,7 +28,7 @@
<script>
import Form from '@/components/Form.vue'
import {approveBatchPlan, editBatchPlan} from '@/api/index.js'
import { approveBatchPlan, editBatchPlan } from '@/api/index.js'
export default {
props: {
title: {
......
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-05-28 18:59:07
* @LastEditors: pan
* @LastEditTime: 2024-06-03 08:28:59
* @LastEditTime: 2024-06-19 18:25:31
-->
<template>
<div class="w-100 h-100 p-10 architectureBlueprintAnalysis">
......@@ -111,18 +111,24 @@ export default {
countItems: [
{
title: '业务域',
count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum-sys'],
count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum'],
count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum'],
count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busDomainNum-sys'],
},
{
title: '业务职能',
count1: 595,
count2: 624,
count1: ARCHI_BUSINESS
? (ARCHI_BUSINESS['oneLevelBusFuncNum'] || 0) +
(ARCHI_BUSINESS['twoLevelBusFuncNum'] || 0)
: 0,
count2: ARCHI_BUSINESS
? (ARCHI_BUSINESS['oneLevelBusFuncNum-sys'] || 0) +
(ARCHI_BUSINESS['twoLevelBusFuncNum-sys'] || 0)
: 0,
},
{
title: '业务流程',
count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum-sys'],
count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum'],
count1: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum'],
count2: ARCHI_BUSINESS && ARCHI_BUSINESS['busProcessNum-sys'],
},
],
},
......@@ -132,22 +138,23 @@ export default {
countItems: [
{
title: '应用',
count1: 12,
count2: 14,
count1: ARCHI_APPLICATION && ARCHI_APPLICATION['appDomainNum'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['appDomainNum-sys'],
},
{
title: '一级功能',
count1:
ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount-sys'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['oneLevelAppCount-sys'],
},
{
title: '二级功能',
count1:
ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount-sys'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount'],
count2:
ARCHI_APPLICATION && ARCHI_APPLICATION['twoLevelAppCount-sys'],
},
],
},
......@@ -157,13 +164,13 @@ export default {
countItems: [
{
title: '一级主题域',
count1: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount-sys'],
count2: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount'],
count1: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount'],
count2: ARCHI_DATA && ARCHI_DATA['oneLevelDataCount-sys'],
},
{
title: '二级主题域',
count1: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount-sys'],
count2: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount'],
count1: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount'],
count2: ARCHI_DATA && ARCHI_DATA['twoLevelDataCount-sys'],
},
{
title: '概念实体',
......@@ -178,18 +185,18 @@ export default {
countItems: [
{
title: '技术域',
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum-sys'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum'],
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecDomainNum-sys'],
},
{
title: '技术能力',
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum-sys'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum'],
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecAbilityNum-sys'],
},
{
title: '技术组件',
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum-sys'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum'],
count1: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum'],
count2: ARCHI_TECHNOLOGY && ARCHI_TECHNOLOGY['tecModulNum-sys'],
},
],
},
......@@ -198,19 +205,19 @@ export default {
bgColor: '#a4ebaf',
countItems: [
{
title: '防护对象',
count1: 12,
count2: 14,
title: '安全管理体系',
count1: ARCHI_SAFE && ARCHI_SAFE['safeManageNum'],
count2: ARCHI_SAFE && ARCHI_SAFE['safeManageNum-sys'],
},
{
title: '防护要求',
count1: 595,
count2: 624,
title: '安全主题域',
count1: ARCHI_SAFE && ARCHI_SAFE['safeThemeNum'],
count2: ARCHI_SAFE && ARCHI_SAFE['safeThemeNum-sys'],
},
{
title: '防护措施',
count1: 2869,
count2: 2967,
title: '安全策略',
count1: ARCHI_SAFE && ARCHI_SAFE['safePlicyNum'],
count2: ARCHI_SAFE && ARCHI_SAFE['safePlicyNum-sys'],
},
],
},
......
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-05-10 18:41:29
* @LastEditors: pan
* @LastEditTime: 2024-06-19 17:40:54
* @LastEditTime: 2024-06-19 18:33:03
-->
<template>
<el-dialog
......@@ -239,26 +239,22 @@ export default {
},
handleSubmit() {
this.$refs['addForm'].onValidate(() => {
const loading = this.$loading({
lock: true,
text: '保存中',
spinner: 'el-icon-loading',
})
const formInfo = this.$refs['addForm'].getData()
const typeApi = this.isEdit ? updAssetRelation : createAssetRelation
const params = {
...this.rowData,
...formInfo,
state: 2,
assetRelaId: this.relationData.assetRelaId
assetRelaId: this.relationData.assetRelaId,
}
typeApi(params).then((res) => {
if (res.code === 200) {
loading.close()
this.$message.success('保存成功')
this.showDialog = false
this.handleClose()
this.$emit('querySearch')
} else {
this.$messsage.warning(res.msg)
}
})
})
......
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-03-12 15:11:47
* @LastEditors: pan
* @LastEditTime: 2024-04-01 17:08:42
* @LastEditTime: 2024-06-19 18:07:17
-->
<template>
<div class="form-item">
......@@ -105,7 +105,6 @@
v-model="currentVal"
v-bind="bindProps"
v-on="bindEvents"
size="mini"
clearable
></el-cascader>
</div>
......@@ -150,9 +149,9 @@ export default {
currentVal: {
get() {
if (this.isSelect) {
if(this.value == 0){
if (this.value == 0) {
return this.value + ''
}else{
} else {
return this.value && this.value + ''
}
} else {
......
......@@ -15,8 +15,11 @@
></Form>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" @click="handleSubmit()" size="mini" v-if="this.title != '详情'"
<el-button @click="handleClose()">取 消</el-button>
<el-button
type="primary"
@click="handleSubmit()"
v-if="this.title != '详情'"
>提 交</el-button
>
</span></el-dialog
......
......@@ -19,7 +19,7 @@
</el-tabs>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">关 闭</el-button>
<el-button @click="handleClose()">关 闭</el-button>
</span></el-dialog
>
</template>
......
<template>
<el-dialog
:title="'详情'"
:visible.sync="showDialog"
:close-on-click-modal="false"
width="66%"
@close="showDialog = false"
@open="handleOpen"
>
<el-dialog
:title="'详情'"
:visible.sync="showDialog"
:close-on-click-modal="false"
width="66%"
@close="showDialog = false"
@open="handleOpen"
>
<div>
<Form
ref="addForm"
......@@ -15,146 +15,151 @@
></Form>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="showDialog = false" size="mini">取 消</el-button>
<el-button @click="showDialog = false">取 消</el-button>
</span>
</el-dialog >
</el-dialog>
</template>
<script>
import Form from '@/components/Form.vue'
import { buildType, pushStateOptions, onlineApprovalStatusOptions, sendStateOptions } from '@/utils/dictionary'
import {
buildType,
pushStateOptions,
onlineApprovalStatusOptions,
sendStateOptions,
} from '@/utils/dictionary'
export default {
components: { Form, },
props: {
visible: {
type: Boolean,
default: false,
components: { Form },
props: {
visible: {
type: Boolean,
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,
default: () => {},
{
label: '需求名称', // label文字
prop: 'needName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
activeName: {
type: String,
default: '1',
{
label: '项目名称', // label文字
prop: 'prjName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
activeName2: {
type: String,
default: '1',
}
},
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,
},
]
{
label: '关联机构', // label文字
prop: 'orgName', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
{
label: '材料', // label文字
prop: 'fileList', // 字段名
element: 'el-input', // 指定elementui组件
disabled: true,
},
},
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()
})
}
]
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() {
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>
\ No newline at end of file
</script>
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-03-21 14:29:32
* @LastEditors: pan
* @LastEditTime: 2024-03-24 19:05:44
* @LastEditTime: 2024-06-19 18:08:08
-->
<template>
......@@ -54,10 +54,8 @@
</el-table>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button @click="fnOperation()" type="primary" size="mini"
>反馈</el-button
>
<el-button @click="handleClose()">取 消</el-button>
<el-button @click="fnOperation()" type="primary">反馈</el-button>
</span></el-dialog
>
</div>
......
......@@ -14,10 +14,8 @@
></Form>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" @click="handleSubmit()" size="mini"
>反 馈</el-button
>
<el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit()">反 馈</el-button>
</span></el-dialog
>
</template>
......
<template>
<el-dialog
:title="title"
:visible.sync="showDialog"
width="40%"
@close="handleClose()"
@open="handleOpen"
<el-dialog
:title="title"
:visible.sync="showDialog"
width="40%"
@close="handleClose()"
@open="handleOpen"
>
<Form
ref="addForm"
:form-options="formOptions"
label-width="120px"
id="addForm"
>
<Form
ref="addForm"
:form-options="formOptions"
label-width="120px"
id="addForm"
>
</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>
</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>
......@@ -26,157 +26,162 @@ import { collectDataConfiguration } from '@/api/architectureInspection'
import { flag } from '@/utils/architectureInspectionDis'
export default {
components: { Form },
props: {
title: {
type: String,
default: '',
},
visible: {
type: Boolean,
default: false,
},
rowData: {
type: Object,
default: () => {},
},
dictId: {
type: Number,
default: 0,
}
components: { Form },
props: {
title: {
type: String,
default: '',
},
visible: {
type: Boolean,
default: false,
},
rowData: {
type: Object,
default: () => {},
},
data() {
return {
query: {
url: collectDataConfiguration,
method: 'post',
queryParam: {},
},
}
dictId: {
type: Number,
default: 0,
},
computed: {
formOptions() {
return [
{
label: '字典值', // label文字
prop: 'value', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
{
label: '字典值描述', // label文字
prop: 'label', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
// rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
{
label: '等级', // label文字
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: '不能为空' }],
},
]
},
data() {
return {
query: {
url: collectDataConfiguration,
method: 'post',
queryParam: {},
},
}
},
computed: {
formOptions() {
return [
{
label: '字典值', // label文字
prop: 'value', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
{
label: '字典值描述', // label文字
prop: 'label', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
// rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
},
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')
}
})
})
{
label: '等级', // label文字
prop: 'grade', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请输入内容', // elementui组件属性
rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
handleClose() {
this.showDialog = false
this.formOptions.forEach((v) => {
v.initValue = ''
})
this.$refs['addForm'].addInitValue()
this.$refs['addForm'].onReset()
{
label: '排序', // label文字
prop: 'sort', // 字段名
element: 'el-input', // 指定elementui组件
placeholder: '请填写排序(默认请填0)', // elementui组件属性
rules: [{ required: true, trigger: 'blur', message: '不能为空' }],
},
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()
})
}
{
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() {
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>
<style scoped lang="scss">
// @import '@/styles/elementui.scss';
/deep/ #addForm {
.el-select, .el-input{
width: 60% !important;
>.el-input{
width: 100% !important;
}
.el-select,
.el-input {
width: 60% !important;
> .el-input {
width: 100% !important;
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-04-01 14:39:48
* @LastEditors: pan
* @LastEditTime: 2024-04-02 13:55:25
* @LastEditTime: 2024-06-19 18:08:49
-->
<template>
<el-dialog
......@@ -38,10 +38,8 @@
</Form>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" @click="handleSubmit" size="mini"
>确 定</el-button
>
<el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit">确 定</el-button>
</span></el-dialog
>
</template>
......
......@@ -4,7 +4,7 @@
* @Autor: pan
* @Date: 2024-04-01 14:38:41
* @LastEditors: pan
* @LastEditTime: 2024-04-02 13:55:40
* @LastEditTime: 2024-06-19 18:08:45
-->
<template>
<el-dialog
......@@ -20,10 +20,8 @@
</Form>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">取 消</el-button>
<el-button type="primary" @click="handleSubmit" size="mini"
>确 定</el-button
>
<el-button @click="handleClose()">取 消</el-button>
<el-button type="primary" @click="handleSubmit">确 定</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!