This commit is contained in:
陈裕财
2025-04-11 09:44:34 +08:00
parent 8b18288669
commit 3f30ac92c5
6 changed files with 202 additions and 994 deletions

View File

@@ -514,8 +514,8 @@ export default {
},
//由组件扩展添加其它的初始页面的逻辑(mounted+onOpen都会调用此函数建议只添加公共逻辑)
initCurrData() {
this.parent = this.parentKpi
this.taskBoxVisible = false
this.currTabName='base'
this.parent = this.parentKpi
if (this.currOpType == 'add') {
if (this.parent?.id) {
this.editForm.parentId = this.parent.id

View File

@@ -306,14 +306,7 @@
:visible="visible" :parentOpType="currOpType" :subOpType="data.subOpType" :formData="data.formData"
@close="onFormClose" @submit="afterFormSubmit" @edit-fields="afterEditFields" />
</template>
</mdp-dialog>
<mdp-dialog ref="viewDlg" :title="menuDefName" fullscreen>
<template v-slot="{ visible, data }">
<XmKpiView ref="XmKpiView" :xm-project="projectInfo" :parentKpi="data.parentKpi" :someOpen="true"
:visible="visible" :parentOpType="currOpType" :subOpType="data.subOpType" :formData="data.formData"
@close="onFormClose" @submit="afterFormSubmit" @edit-fields="afterEditFields" />
</template>
</mdp-dialog>
</mdp-dialog>
<MdpDialog ref="kanbanDlg" fullscreen :title="menuDefName">
<MdpTableKanban :hiddenCfg="{ delBtn: false, addBtn: false }" @del="(d, cb) => handleDel(d)" @plus="(cb) => showAdd()"
@edit="(d, cb) => showEdit(d)" v-model="tableDatas" :columnConfigs="columnConfigs" :itemKey="pkNames[0]"
@@ -333,8 +326,7 @@
import { MdpTableMixin } from '@/components/mdp-ui/mixin/MdpTableMixin.js';
import * as XmKpiApi from '@/api/xm/pro/xmKpi.js';
import XmKpiForm from './Form.vue';//新增修改明细界面
import XmKpiView from './View.vue';//新增修改明细界面
import XmKpiForm from './Form.vue';//新增修改明细界面
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user'
import { useXmStore } from '@/store/modules/xm'
@@ -347,8 +339,7 @@ export default {
components: {
XmKpiForm,
XmKpiByTpl,
XmKpiByDict,
XmKpiView,
XmKpiByDict,
},
computed: {
...mapState(useUserStore, ['userInfo']),
@@ -424,10 +415,7 @@ export default {
lspan: 24
}
},
methods: {
showEdit(row){
this.$refs['viewDlg'].open({formData:row})
},
methods: {
calcKwarnStatusId(row) {
if (!row.targetValue) {
return '0'

View File

@@ -1,605 +0,0 @@
<template>
<el-card>
<template #header>
<el-space :wrap="false">
<el-avatar style="background-color:green;"><icon icon="ep:key"/></el-avatar>
<el-row>
<el-col :span="24">
<el-text type="info" size="small">{{ editForm.id }}</el-text>
</el-col>
<el-col :span="24">
<el-text size="large"> {{ editForm.kpiName }}</el-text>
</el-col>
</el-row>
</el-space>
</template>
<el-descriptions :column="3" size="small" border>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<user />
</el-icon>
负责人
</div>
</template>
{{ editForm.kselfUsername || editForm.kselfUserid }}
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<iphone />
</el-icon>
预警状态
</div>
</template>
<mdp-select size="small" itemCode="kwarnStatus" v-model="calcKwarnStatus" showStyle="tag"
:disabled="true" />
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<location />
</el-icon>
指标等级
</div>
</template>
<mdp-select showStyle="tag" itemCode="ktype" v-model="editForm.ktype" width="100%"
@change="editSomeFields(editForm, 'ktype', $event)" :disabled="true" />
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<tickets />
</el-icon>
指标类型
</div>
</template>
<mdp-select size="small" itemCode="kclass" v-model="editForm.kclass" showStyle="tag" :disabled="true" />
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<office-building />
</el-icon>
指标状态
</div>
</template>
<mdp-select showStyle="tag" itemCode="kstatus" v-model="editForm.kstatus" size="small" :disabled="true" />
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<office-building />
</el-icon>
所属项目
</div>
</template>
{{ editForm.projectId }}
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-form :model="editForm" label-width="120px" :rules="editFormRules" ref="editFormRef">
<el-tabs v-model="currTabName">
<el-tab-pane label="基本情况" name="base">
<el-form-item label="指标名称" prop="kpiName">
<el-input v-model="editForm.kpiName" placeholder="指标名称" :maxlength="255"
@change="editSomeFields(editForm, 'kpiName', $event)" :disabled="disField" />
</el-form-item>
<el-form-item label="目标设定" prop="targetValue">
<el-input style="width:100%;" v-model="editForm.targetValue" placeholder="目标值" :maxlength="20"
@change="editSomeFields(editForm, 'targetValue', $event)" :disabled="disField" />
<el-text type="warning" size="small">
支持&lt;&gt;&&!=||()等操作符号例子 ${kpiValue} &lt;10 && ${kpiValue}&gt;8
</el-text>
</el-form-item>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="职能分类" prop="kclass">
<mdp-select width="100%" itemCode="kclass" v-model="editForm.kclass" :maxlength="50"
@change="editSomeFields(editForm, 'kclass', $event)" :disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="指标权重" prop="weight" style="width:100%;">
<el-input type="number" :controls="false" :min="0" max="100" v-model="editForm.weight"
placeholder="权重0-100之间" :maxlength="20" @change="editSomeFields(editForm, 'weight', $event)"
:disabled="disField">
<template #suffix>%</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="数据来源" prop="kpiValue">
<mdp-select width="100%" itemCode="dataLink" multiple split="," v-model="editForm.dataLink"
:maxlength="50" @change="editSomeFields(editForm, 'dataLink', $event)"
:disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="指标等级" prop="ktype">
<mdp-select width="100%" itemCode="ktype" v-model="editForm.ktype" :maxlength="50"
@change="editSomeFields(editForm, 'ktype', $event)" :disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="指标状态" prop="kstatus">
<mdp-select width="100%" itemCode="kstatus" v-model="editForm.kstatus" :maxlength="50"
@change="editSomeFields(editForm, 'kstatus', $event)" :disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="上级指标" prop="parentId" style="width:100%;">
<el-input v-model="editForm.parentId" @change="editSomeFields(editForm, 'parentId', $event)"
:disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="排序序号" prop="kpiIndex" style="width:100%;">
<el-input v-model="editForm.kpiIndex" @change="editSomeFields(editForm, 'kpiIndex', $event)" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item prop="remark" label="详细说明">
<el-input type="textarea" rows="6" v-model="editForm.remark" placeholder="详细说明" :maxlength="255" @change="editSomeFields(editForm,'remark',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
</el-row>
</el-tab-pane>
<el-tab-pane label="责任部门、负责人" name="kself">
<el-card id="kselfUserid">
<template #header>
责任部门负责人
</template>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="负责人" prop="kselfUserid" style="width:100%;">
<xm-user-select width="100%" v-model="editForm.kselfUserid"
@change="editSomeFields(editForm, 'kselfUserid', $event)" :displayLoad="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="主责部门" prop="deptid" style="width:100%;">
<mdp-select-dept width="100%" v-model="editForm.deptid"
@change="editSomeFields(editForm, 'deptid', $event)" :displayLoad="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="关联项目" prop="projectId" style="width:100%;">
<xm-project-select width="100%" v-model="editForm.projectId" :collectId="xmCollect?.id"
:displayLoad="true" />
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-tab-pane>
<el-tab-pane label="考核周期" name="calcType">
<el-card id="calcType">
<template #header>
考核周期
</template>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="考核周期" prop="calcType">
<mdp-select width="100%" itemCode="calcType" v-model="editForm.calcType" :maxlength="50"
@change="editSomeFields(editForm, 'calcType', $event)" :disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="开始时间" prop="startTime" style="width:100%;">
<mdp-date width="100%" v-model="editForm.startTime"
@change="editSomeFields(editForm, 'startTime', $event)" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="结束时间" prop="endTime" style="width:100%;">
<mdp-date width="100%" v-model="editForm.endTime"
@change="editSomeFields(editForm, 'endTime', $event)" />
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-tab-pane>
<el-tab-pane label="预警规则" name="warnRule">
<el-card id="warnRule">
<template #header>
预警规则 &nbsp;&nbsp;<el-text type="info" size="small">预警状态</el-text><mdp-select showStyle="tag"
itemCode="kwarnStatus" v-model="calcKwarnStatus" :disabled="true" />
&nbsp;&nbsp;<el-text type="info" size="small">目标规则</el-text> <el-text type="primary"
size="small">{{ editForm.targetValue }}</el-text>
<el-text type="warning" size="small">
支持&lt;&gt;&&!=||()等操作符号例子 ${kpiValue} &lt;10 && ${kpiValue}&gt;8
</el-text>
</template>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="黄色预警" prop="yellowRule">
<el-input width="100%" itemCode="yellowRule" v-model="editForm.yellowRule" :maxlength="50"
@change="editSomeFields(editForm, 'yellowRule', $event)"
:disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="橙色预警" prop="orangeRule" style="width:100%;">
<el-input width="100%" v-model="editForm.orangeRule"
@change="editSomeFields(editForm, 'orangeRule', $event)" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="红色预警" prop="redRule" style="width:100%;">
<el-input width="100%" v-model="editForm.redRule"
@change="editSomeFields(editForm, 'redRule', $event)" />
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-tab-pane>
<el-tab-pane label="成果" name="kresult">
<el-form-item prop="kresult" label-width="0px">
<el-input type="textarea" rows="6" v-model="editForm.kresult" placeholder="成果说明、附件地址等" :maxlength="255"
@change="editSomeFields(editForm, 'kresult', $event)" :disabled="disField" />
</el-form-item>
</el-tab-pane>
<el-tab-pane label="考核自评" name="kselfScore" v-if="currOpType!='add'">
<el-card id="kselfScore">
<template #header>
考核自评 &nbsp;&nbsp;
<el-text type="info" size="small">计算规则{{editForm.targetValue}}</el-text>
&nbsp;&nbsp;<icon icon="fa-solid:angle-double-right" />&nbsp;&nbsp;
<el-text type="info" size="small">目标值{{targetValueCpd}}</el-text>
&nbsp;&nbsp;<icon icon="fa-solid:angle-double-right" /> &nbsp;&nbsp;
<el-text type="info" size="small">计算结果</el-text><el-tag type="success"
v-if="calcStatus">已达成</el-tag> <el-tag v-if="!calcStatus" type="error">未达成</el-tag>
&nbsp;&nbsp;<el-text type="info"
size="small">&nbsp;&nbsp;得分{{ editForm.score || 0 }}</el-text>&nbsp;&nbsp;<el-button size="small"
type="primary" v-if="editForm.kadmStatus != '3' && editForm.kadmStatus != '1'"
@click="editSomeFields(editForm, 'kadmStatus', '1')">提交复评</el-button>
</template>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="当前值" prop="kpiValue">
<el-input style="width:100%;" v-model="editForm.kpiValue" placeholder="当前值" :maxlength="20"
@change="editSomeFields(editForm, 'kpiValue', $event)"
:disabled="editForm.kadmStatus == '3'" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="自评得分" prop="score">
<el-input style="width:100%;" v-model="editForm.score" placeholder="得分0-100分"
:maxlength="20" @change="editSomeFields(editForm, 'score', $event)"
:disabled="editForm.kadmStatus == '3'" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="自评日期" prop="kselfTime">
<el-date-picker type="date" placeholder="选择日期" v-model="editForm.kselfTime"
value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD"
@change="editSomeFields(editForm, 'kselfTime', $event)" :disabled="true" />
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-tab-pane>
<el-tab-pane label="考核复评" name="score" v-if="currOpType!='add'">
<el-card id="score">
<template #header>
考核复评
</template>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="复评打分" prop="score">
<el-input style="width:100%;" v-model="editForm.score" placeholder="得分0-100分"
:maxlength="20" @change="editSomeFields(editForm, 'score', $event)"
:disabled="disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="复评状态" prop="kadmStatus">
<mdp-select width="100%" itemCode="kadmStatus" v-model="editForm.kadmStatus" :maxlength="50"
@change="editSomeFields(editForm, 'kadmStatus', $event)"
:disabled="!someOpen || disField" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="复评日期" prop="scoreDate">
<el-date-picker type="date" placeholder="选择日期" v-model="editForm.scoreDate"
value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD"
@change="editSomeFields(editForm, 'scoreDate', $event)" :disabled="true" />
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-tab-pane>
<el-tab-pane label="复评记录" name="his" v-if="currOpType!='add' && !his">
<xm-kpi-his v-if="currTabName=='his'" :key="editForm.id" :kpi-id="editForm.id" :sel-project="editForm.projectId?{id:editForm.projectId}:null" ref="kpiHis"/>
</el-tab-pane>
<el-tab-pane label="关联计划任务" name="taskBox" v-if="currOpType!='add'">
<el-card id="taskBox">
<template #header>
关联计划任务 &nbsp;&nbsp;<el-button @click="$refs['phaseDialog'].open()" type="primary" plain icon="Link" v-if="!his">选择任务关联kpi</el-button>
</template>
<xm-task-box v-if="currTabName=='taskBox'" :key="editForm.id" :kpi-id="editForm.id" :sel-project="editForm.projectId?{id:editForm.projectId}:null" ref="taskBox"/>
</el-card>
</el-tab-pane>
<el-tab-pane label="沟通" name="comment" v-if="currOpType!='add'">
<xm-comment-area v-if="currTabName=='comment'" :biz-id="editForm.id" :pbiz-id="editForm.projectId" obj-type="R" />
</el-tab-pane>
<el-tab-pane label="动态" name="dyn" v-if="currOpType!='add'">
<xm-dynamics v-if="currTabName=='dyn'" :hideToolbar="true" :biz-id="editForm.id" :pbizId="editForm.projectId"
:projectId="editForm.projectId" />
</el-tab-pane>
<el-tab-pane label="资料" name="att" v-if="currOpType!='add'">
<mdp-select-att v-if="currTabName=='att'" subOpType='mng' :crely-type="xm - project" :crely-id="editForm.projectId" :biz-id="editForm.id" />
</el-tab-pane>
</el-tabs>
</el-form>
<mdp-dialog title="选择更多计划任务关联kpi" ref="phaseDialog">
<xm-phase multiple showConfirm :sel-project="editForm.projectId?{id:editForm.projectId}:null" @confirm="onTaskSelect"/>
</mdp-dialog>
</template>
<script>
import * as XmKpiApi from '@/api/xm/pro/xmKpi';
import { editXmTaskSomeFields } from '@/api/xm/core/xmTask.js';
import { MdpFormMixin } from '@/components/mdp-ui/mixin/MdpFormMixin.js';
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user'
export default {
components: { },
name: 'XmKpiView',
mixins: [MdpFormMixin],
computed: {
...mapState(useUserStore, ['userInfo']),
targetValueCpd() {
if (!this.editForm.targetValue) {
return "未设定目标值计算规则"
}
if (!this.editForm.kpiValue) {
return this.editForm.targetValue
} else {
return this.editForm.targetValue.replace(/\$\{kpiValue\}/g, this.editForm.kpiValue);
}
},
calcStatus() {
if (!this.editForm.targetValue) {
return false
}
if (!this.editForm.kpiValue) {
return false
} else {
let rule = this.parseRule(this.editForm.targetValue, this.editForm.kpiValue);
try {
let result = eval(rule)
return result;
} catch (e) {
return false;
}
}
},
calcKwarnStatus() {
return this.calcKwarnStatusId(this.editForm)
}
},
props: {
// 是否开启editSomeField模式
someOpen: {
type: Boolean,
default: true,
},
his: {//是否为历史模式
type: Boolean,
default: false,
},
},
data() {
return {
menuDefId: '',//menu_def.id 菜单表菜单编号,用于按钮权限判断
pkNames: ["id"],//表格主键的java属性名称驼峰命名默认为id,支持多主键
currOpType: 'edit',//表单 add、edit所有按钮可动、detail-只看不能操作
editFormRules: {
kpiName: [{ required: true, message: '此项必填', trigger: 'change' }],
deptid: [{ required: true, message: '此项必填', trigger: 'change' }],
parentId: [{ required: true, message: '此项必填', trigger: 'change' }],
kselfUserid: [{ required: true, message: '此项必填', trigger: 'change' }],
targetValue: [{ required: true, message: '此项必填', trigger: 'change' }],
kclass: [{ required: true, message: '此项必填', trigger: 'change' }],
ktype: [{ required: true, message: '此项必填', trigger: 'change' }],
weight: [{ required: true, message: '此项必填', trigger: 'change' }],
kstatus: [{ required: true, message: '此项必填', trigger: 'change' }],
},
editForm: {
projectId: '', branchId: '', kpiIndex: '', kpiName: '', maxValue: '', minValue: '', id: '', score: '', scoreDate: '', bizFlowState: '', bizProcInstId: '', kpiValue: '', remark: '', calcType: '', nextCalcDate: '', ktype: '', kresult: '', taskId: '', kstatus: '', kfile: '', kclass: '', kadmUserid: '', kadmUsername: '', kselfUserid: '', kselfUsername: '', kselfTime: '', kadmTime: ''
},
//增删改查(含批量)接口
apis: {
queryById: XmKpiApi.queryXmKpiById,
add: XmKpiApi.addXmKpi,
edit: XmKpiApi.editXmKpi,
editSomeFields: XmKpiApi.editSomeFieldsXmKpi
},
currTabName:'base',
}
},
methods: {
calcKwarnStatusId(row) {
if (!row.targetValue) {
return '0'
}
if (!row.kpiValue) {
return '0'
} else {
let isRed = false;
let isOrange = false;
let isYellow = false;
try {
let rule = this.parseRule(row.targetValue, row.kpiValue)
let result = eval(rule)
if (result) {
return "1"
} else {
if (row.redRule) {
let redRule = this.parseRule(row.redRule, row.kpiValue);
isRed = eval(redRule)
if (isRed) {
return "4"
}
}
if (row.orangeRule) {
let orangeRule = this.parseRule(row.orangeRule, row.kpiValue);
isOrange = eval(orangeRule)
if (isOrange) {
return "3"
}
}
if (row.yellowRule) {
let yellowRule = this.parseRule(row.yellowRule, row.kpiValue);
isYellow = eval(yellowRule)
if (isYellow) {
return "2"
}
}
return "1"
}
} catch (e) {
return "0";
}
}
},
parseRule(rule, kpiValue) {
debugger
if (!rule) {
return rule;
}
let rule2 = rule.replace(/\$\{kpiValue\}/g, kpiValue)
let rule3 = rule2.replace(/%/g, '/100')
return rule3;
},
//由组件扩展添加其它的初始页面的逻辑(mounted+onOpen都会调用此函数建议只添加公共逻辑)
initCurrData() {
this.parent = this.parentKpi
this.taskBoxVisible = false
if (this.currOpType == 'add') {
if (this.parent?.id) {
this.editForm.parentId = this.parent.id
if (this.parent.childrenCnt) {
let seq = (this.parent.childrenCnt + 1)
if (seq < 10) {
seq = '0' + seq;
}
this.editForm.kpiIndex = (this.parent.kpiIndex || '') + "." + seq
} else {
this.editForm.kpiIndex = (this.parent.kpiIndex || '') + ".0" + 1
}
let ktype = parseInt(this.parent.ktype) + 1
if (ktype > 3) {
this.editForm.ktype = '3'
} else {
this.editForm.ktype = ktype + ''
}
this.editForm.projectId = this.parent.projectId
this.editForm.kclass = this.parent.kclass
} else {
this.editForm.parentId = '0'
this.editForm.ktype = '1'
this.editForm.kpiIndex = "01"
this.editForm.kclass = '1'
}
this.editForm.calcType = "Q"
this.editForm.kselfUserid = this.userInfo.userid
this.editForm.kselfUsername = this.userInfo.username
this.editForm.kstatus = '0'
this.editForm.deptid = this.userInfo.deptid
this.editForm.branchId = this.userInfo.branchId
this.editForm.weight = 30
if (!this.editForm.kclass) {
this.editForm.kclass = '1'
}
if (this.xmProject?.id) {
this.editForm.projectId = this.xmProject.id
}
}
},
/**
* 检查参数是否满足调用后台接口的条件
* @returns true / false
*/
preParamCheck(params) {
if (this.parent?.id) {
params.parentId = this.parent.id
}
return true;
},
/**
* 对修改的字段进行判断返回false ,将取消更新数据库,由组件扩展
* @param {*} row 当前选中的行
* @param {*} fieldName 修改的字段名
* @param {*} $event 修改后的值
* @param {*} params 将要提交服务器的参数
* @returns true/false 返回false ,将取消更新数据库
*/
editSomeFieldsCheck(row, fieldName, $event, params) {
if (['kpiValue', 'yellowRule', 'orangeRule', 'redRule'].some(k => k == fieldName)) {
params.kwarnStatus = this.calcKwarnStatus
}
params[fieldName] = $event
return true;
},
onTaskSelect(tasks) {
editXmTaskSomeFields({ '$pks': tasks.map(k => k.id), kpiId: this.editForm.id }).then(res => {
if (res.tips.isOk) {
this.$refs['phaseDialog'].close();
this.$refs['taskBox'].searchTableDatas()
this.$notify.success("更新成功")
} else {
this.$notify.error(res.tips.msg)
}
})
},
},
mounted() {
}
}
</script>
<style scoped></style>

View File

@@ -1,88 +1,204 @@
<template>
<el-form :model="editForm" label-width="120px" :rules="editFormRules" ref="editFormRef">
<el-card v-if="currOpType!='add'">
<template #header>
<el-row>
<el-col :span="24">
<el-text type="info" size="small">{{ editForm.id }}</el-text>
</el-col>
<el-col :span="24">
<el-text size="large"> {{ editForm.name }}</el-text>
</el-col>
</el-row>
</template>
<el-descriptions
:column="3"
size="small"
border
>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<user />
</el-icon>
负责人
</div>
</template>
{{ editForm.rusername||editForm.ruserid }}
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<iphone />
</el-icon>
概率
</div>
</template>
<mdp-select size="small" itemCode="odds" v-model="editForm.odds" showStyle="tag" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<location />
</el-icon>
风险状态
</div>
</template>
<mdp-select showStyle="tag" itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<tickets />
</el-icon>
风险类型
</div>
</template>
<mdp-select size="small" itemCode="risk_type" v-model="editForm.rtype" showStyle="tag" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<office-building />
</el-icon>
影响程度
</div>
</template>
<mdp-select showStyle="tag" itemCode="impact" v-model="editForm.impact" size="small" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<office-building />
</el-icon>
所属项目
</div>
</template>
{{editForm.projectId}}
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-tabs v-model="currTabName">
<el-tab-pane label="基本情况" name="base">
<el-form-item label="风险名称" prop="name">
<mdp-input v-model="editForm.name" placeholder="风险名称" :maxlength="255" @change="editSomeFields(editForm,'name',$event)" :disabled="disField"/>
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="风险类型" prop="rtype">
<mdp-select itemCode="risk_type" v-model="editForm.rtype" width="100%" @change="editSomeFields(editForm,'rtype',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="发生概率" prop="odds">
<mdp-select itemCode="odds" v-model="editForm.odds" width="100%" @change="editSomeFields(editForm,'odds',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="影响程度" prop="impact">
<mdp-select itemCode="impact" v-model="editForm.impact" width="100%" @change="editSomeFields(editForm,'impact',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险等级" prop="rlvl">
<mdp-select itemCode="rlvl" v-model="editForm.rlvl" width="100%" @change="editSomeFields(editForm,'rlvl',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险状态" prop="rstatus">
<mdp-select itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="应对策略" prop="rsgy">
<mdp-select itemCode="rsgy" v-model="editForm.rsgy" width="100%" @change="editSomeFields(editForm,'rsgy',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险状态" prop="rstatus">
<mdp-select itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="部门编号" prop="deptid">
<mdp-select-dept width="100%" v-model="editForm.deptid" placeholder="部门编号" :maxlength="50" @change="editSomeFields(editForm,'deptid',$event)" :disabled="disField" :displayLoad="true"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="责任人" prop="ruserid">
<xm-user-select width="100%" v-model="editForm.ruserid" :init-name="editForm.rusername" placeholder="责任人编号" :maxlength="50" @change="editSomeFields(editForm,'ruserid',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目编号" prop="projectId">
<xm-project-select width="100%" v-model="editForm.projectId" placeholder="项目编号" :maxlength="50" @change="editSomeFields(editForm,'projectId',$event)" :disabled="disField" :displayLoad="true"/>
</el-form-item>
</el-col>
</el-row>
<el-form :model="editForm" label-width="120px" :rules="editFormRules" ref="editFormRef">
<el-form-item label="风险编号" prop="id">
<mdp-input showStyle="tag" v-model="editForm.id" placeholder="风险编号" :maxlength="50" @change="editSomeFields(editForm,'id',$event)" :disabled="true"/>
</el-form-item>
<el-form-item label="风险名称" prop="name">
<mdp-input v-model="editForm.name" placeholder="风险名称" :maxlength="255" @change="editSomeFields(editForm,'name',$event)" :disabled="disField"/>
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="风险类型" prop="rtype">
<mdp-select itemCode="risk_type" v-model="editForm.rtype" width="100%" @change="editSomeFields(editForm,'rtype',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="发生概率" prop="odds">
<mdp-select itemCode="odds" v-model="editForm.odds" width="100%" @change="editSomeFields(editForm,'odds',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="影响程度" prop="impact">
<mdp-select itemCode="impact" v-model="editForm.impact" width="100%" @change="editSomeFields(editForm,'impact',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险等级" prop="rlvl">
<mdp-select itemCode="rlvl" v-model="editForm.rlvl" width="100%" @change="editSomeFields(editForm,'rlvl',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险状态" prop="rstatus">
<mdp-select itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="应对策略" prop="rsgy">
<mdp-select itemCode="rsgy" v-model="editForm.rsgy" width="100%" @change="editSomeFields(editForm,'rsgy',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险状态" prop="rstatus">
<mdp-select itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="责任人" prop="ruserid">
<xm-user-select width="100%" v-model="editForm.ruserid" :init-name="editForm.rusername" placeholder="责任人编号" :maxlength="50" @change="editSomeFields(editForm,'ruserid',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目编号" prop="projectId">
<xm-project-select width="100%" v-model="editForm.projectId" placeholder="项目编号" :maxlength="50" @change="editSomeFields(editForm,'projectId',$event)" :disabled="disField" :displayLoad="true"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="部门编号" prop="deptid">
<mdp-select-dept width="100%" v-model="editForm.deptid" placeholder="部门编号" :maxlength="50" @change="editSomeFields(editForm,'deptid',$event)" :disabled="disField" :displayLoad="true"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="建立时间" prop="ctime">
<mdp-date type="date" width="100%" placeholder="选择日期" v-model="editForm.ctime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD" @change="editSomeFields(editForm,'ctime',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="解除时间" prop="closeTime">
<mdp-date type="date" width="100%" placeholder="选择日期" v-model="editForm.closeTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD" @change="editSomeFields(editForm,'closeTime',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="风险描述" prop="remark">
<mdp-input type="textarea" rows="4" v-model="editForm.remark" placeholder="风险描述" :maxlength="255" @change="editSomeFields(editForm,'remark',$event)" :disabled="disField"/>
</el-form-item>
<el-form-item label="应对措施" prop="rway">
<mdp-input type="textarea" rows="4" width="100%" v-model="editForm.rway" placeholder="应对措施" :maxlength="255" @change="editSomeFields(editForm,'rway',$event)" :disabled="disField"/>
</el-form-item>
<el-form-item label="风险描述" prop="remark">
<mdp-input type="textarea" v-model="editForm.remark" placeholder="风险描述" :maxlength="255" @change="editSomeFields(editForm,'remark',$event)" :disabled="disField"/>
</el-form-item>
<el-form-item label="应对措施" prop="rway">
<mdp-input type="textarea" width="100%" v-model="editForm.rway" placeholder="应对措施" :maxlength="255" @change="editSomeFields(editForm,'rway',$event)" :disabled="disField"/>
</el-form-item>
</el-form>
<div class="footer">
<el-button icon="success-filled" v-if="currOpType=='add'|| (currOpType=='edit' && someOpen==false)" v-loading="load.edit" type="primary" @click="saveSubmit" :disabled="disBtn('addBtn') || !checkBtnQx('addBtn',menuDefId) || load.edit">提交</el-button>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="进展" name="comment" v-if="currOpType!='add'">
<xm-comment-area v-if="currTabName=='comment'" :biz-id="editForm.id" :pbiz-id="editForm.projectId" obj-type="R"/>
</el-tab-pane>
<el-tab-pane label="动态" name="dyn" v-if="currOpType!='add'">
<xm-dynamics v-if="currTabName=='dyn'" :hideToolbar="true" :biz-id="editForm.id" :pbizId="editForm.projectId" :projectId="editForm.projectId"/>
</el-tab-pane>
<el-tab-pane label="问题" name="bug" v-if="currOpType!='add'">
<xm-question-mng v-if="currTabName=='bug'" :xm-risk="editForm"/>
</el-tab-pane>
<el-tab-pane label="资料" name="att" v-if="currOpType!='add'">
<mdp-select-att v-if="currTabName=='att'" subOpType='mng' :crely-type="xm-project" :crely-id="editForm.projectId" :biz-id="editForm.id"/>
</el-tab-pane>
</el-tabs>
</template>
<script>
import * as XmRiskApi from '@/api/xm/pro/xmRisk';
import { MdpFormMixin } from '@/components/mdp-ui/mixin/MdpFormMixin.js';
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user'
import { useUserStore } from '@/store/modules/user'
import XmQuestionMng from '../../core/xmQuestion/XmQuestionMng.vue';
export default {
components: { },
components: { XmQuestionMng },
name:'XmRiskForm',
mixins:[MdpFormMixin],
computed: {
@@ -128,12 +244,13 @@ export default {
edit: XmRiskApi.editXmRisk,
editSomeFields: XmRiskApi.editSomeFieldsXmRisk
},
currTabName:'base',
}
},
methods: {
//由组件扩展添加其它的初始页面的逻辑(mounted+onOpen都会调用此函数建议只添加公共逻辑)
initCurrData(){
this.currTabName='base'
},
/**
* 检查参数是否满足调用后台接口的条件

View File

@@ -114,12 +114,7 @@
<template v-slot="{visible,data}">
<XmRiskForm ref="XmRiskForm" :someOpen="true" :visible="visible" :parentOpType="currOpType" :subOpType="data.subOpType" :formData="data.formData" @close="onFormClose" @submit="afterFormSubmit" @edit-fields="afterEditFields"/>
</template>
</mdp-dialog>
<mdp-dialog ref="viewDlg" :title="menuDefName" fullscreen>
<template v-slot="{visible,data}">
<XmRiskView ref="XmRiskView" :someOpen="true" :visible="visible" :parentOpType="currOpType" :subOpType="data.subOpType" :formData="data.formData" @close="onFormClose" @submit="afterFormSubmit" @edit-fields="afterEditFields"/>
</template>
</mdp-dialog>
</mdp-dialog>
<MdpDialog ref="kanbanDlg" fullscreen :title="menuDefName">
<MdpTableKanban
:hiddenCfg="{delBtn:false,addBtn:false}"
@@ -144,8 +139,7 @@
import { MdpTableMixin } from '@/components/mdp-ui/mixin/MdpTableMixin.js';
import * as XmRiskApi from '@/api/xm/pro/xmRisk';
import XmRiskForm from'./Form.vue';//新增修改明细界面
import XmRiskView from'./View.vue';//新增修改明细界面
import XmRiskForm from'./Form.vue';//新增修改明细界面
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user'
@@ -153,7 +147,7 @@ export default {
name:'XmRiskMng',
mixins:[MdpTableMixin],
components: {
XmRiskForm,XmRiskView
XmRiskForm
},
computed: {
...mapState(useUserStore,['userInfo'])
@@ -198,10 +192,7 @@ export default {
}
}
},
methods: {
showEdit(row){
this.$refs['viewDlg'].open({formData:row,subOpType:'edit'})
},
methods: {
//页面初始化需要配置的特殊逻辑写这里
initCurrData(){
this.searchTableDatas();

View File

@@ -1,283 +0,0 @@
<template>
<el-card>
<template #header>
<el-row>
<el-col :span="24">
<el-text type="info" size="small">{{ editForm.id }}</el-text>
</el-col>
<el-col :span="24">
<el-text size="large"> {{ editForm.name }}</el-text>
</el-col>
</el-row>
</template>
<el-descriptions
:column="3"
size="small"
border
>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<user />
</el-icon>
负责人
</div>
</template>
{{ editForm.rusername||editForm.ruserid }}
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<iphone />
</el-icon>
概率
</div>
</template>
<mdp-select size="small" itemCode="odds" v-model="editForm.odds" showStyle="tag" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<location />
</el-icon>
风险状态
</div>
</template>
<mdp-select showStyle="tag" itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<tickets />
</el-icon>
风险类型
</div>
</template>
<mdp-select size="small" itemCode="risk_type" v-model="editForm.rtype" showStyle="tag" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<office-building />
</el-icon>
影响程度
</div>
</template>
<mdp-select showStyle="tag" itemCode="impact" v-model="editForm.impact" size="small" :disabled="true"/>
</el-descriptions-item>
<el-descriptions-item>
<template #label>
<div class="cell-item">
<el-icon :style="iconStyle">
<office-building />
</el-icon>
所属项目
</div>
</template>
{{editForm.projectId}}
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-tabs>
<el-tab-pane label="基本情况">
<el-form :model="editForm" label-width="120px" :rules="editFormRules" ref="editFormRef">
<el-form-item label="风险编号" prop="id">
<mdp-input showStyle="tag" v-model="editForm.id" placeholder="风险编号" :maxlength="50" @change="editSomeFields(editForm,'id',$event)" :disabled="true"/>
</el-form-item>
<el-form-item label="风险名称" prop="name">
<mdp-input showStyle="tag" v-model="editForm.name" placeholder="风险名称" :maxlength="255" @change="editSomeFields(editForm,'name',$event)" :disabled="disField"/>
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="风险类型" prop="rtype">
<mdp-select showStyle="tag" itemCode="risk_type" v-model="editForm.rtype" width="100%" @change="editSomeFields(editForm,'rtype',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="发生概率" prop="odds">
<mdp-select showStyle="tag" itemCode="odds" v-model="editForm.odds" width="100%" @change="editSomeFields(editForm,'odds',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="影响程度" prop="impact">
<mdp-select showStyle="tag" itemCode="impact" v-model="editForm.impact" width="100%" @change="editSomeFields(editForm,'impact',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险等级" prop="rlvl">
<mdp-select showStyle="tag" itemCode="rlvl" v-model="editForm.rlvl" width="100%" @change="editSomeFields(editForm,'rlvl',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险状态" prop="rstatus">
<mdp-select showStyle="tag" itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="应对策略" prop="rsgy">
<mdp-select showStyle="tag" itemCode="rsgy" v-model="editForm.rsgy" width="100%" @change="editSomeFields(editForm,'rsgy',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险状态" prop="rstatus">
<mdp-select showStyle="tag" itemCode="rstatus" v-model="editForm.rstatus" width="100%" @change="editSomeFields(editForm,'rstatus',$event)"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="责任人" prop="ruserid">
<xm-user-select showStyle="tag" width="100%" v-model="editForm.ruserid" :init-name="editForm.rusername" placeholder="责任人编号" :maxlength="50" @change="editSomeFields(editForm,'ruserid',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目编号" prop="projectId">
<xm-project-select showStyle="tag" width="100%" v-model="editForm.projectId" placeholder="项目编号" :maxlength="50" @change="editSomeFields(editForm,'projectId',$event)" :disabled="disField" :displayLoad="true"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="部门编号" prop="deptid">
<mdp-select-dept showStyle="tag" width="100%" v-model="editForm.deptid" placeholder="部门编号" :maxlength="50" @change="editSomeFields(editForm,'deptid',$event)" :disabled="disField" :displayLoad="true"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="建立时间" prop="ctime">
<mdp-date showStyle="tag" type="date" width="100%" placeholder="选择日期" v-model="editForm.ctime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD" @change="editSomeFields(editForm,'ctime',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="解除时间" prop="closeTime">
<mdp-date showStyle="tag" type="date" width="100%" placeholder="选择日期" v-model="editForm.closeTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD" @change="editSomeFields(editForm,'closeTime',$event)" :disabled="disField"/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="风险描述" prop="remark">
<mdp-input type="textarea" rows="4" v-model="editForm.remark" placeholder="风险描述" :maxlength="255" @change="editSomeFields(editForm,'remark',$event)" :disabled="disField"/>
</el-form-item>
<el-form-item label="应对措施" prop="rway">
<mdp-input type="textarea" rows="4" width="100%" v-model="editForm.rway" placeholder="应对措施" :maxlength="255" @change="editSomeFields(editForm,'rway',$event)" :disabled="disField"/>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="进展">
<xm-comment-area :biz-id="editForm.id" :pbiz-id="editForm.projectId" obj-type="R"/>
</el-tab-pane>
<el-tab-pane label="动态">
<xm-dynamics :hideToolbar="true" :biz-id="editForm.id" :pbizId="editForm.projectId" :projectId="editForm.projectId"/>
</el-tab-pane>
<el-tab-pane label="问题">
<xm-question-mng :xm-risk="editForm"/>
</el-tab-pane>
<el-tab-pane label="资料">
<mdp-select-att subOpType='mng' :crely-type="xm-project" :crely-id="editForm.projectId" :biz-id="editForm.id"/>
</el-tab-pane>
</el-tabs>
</template>
<script>
import * as XmRiskApi from '@/api/xm/pro/xmRisk';
import { MdpFormMixin } from '@/components/mdp-ui/mixin/MdpFormMixin.js';
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user'
import XmQuestionMng from '../../core/xmQuestion/XmQuestionMng.vue';
export default {
components: { XmQuestionMng },
name:'XmRiskForm',
mixins:[MdpFormMixin],
computed: {
...mapState(useUserStore,['userInfo'])
},
props:{
// 是否开启editSomeField模式
someOpen:{
type: Boolean,
default: true,
},
},
data() {
return {
menuDefId:'',//menu_def.id 菜单表菜单编号,用于按钮权限判断
pkNames:["id"],//表格主键的java属性名称驼峰命名默认为id,支持多主键
currOpType:'add',//表单 add、edit所有按钮可动、detail-只看不能操作
editFormRules: {
id:[
//{ required: true, message: '此项必填', trigger: 'change' },
//{ min: 1,max: 200, message: '长度在1到200之间', trigger: 'change'}
],
name:[
{ required: true, message: '此项必填', trigger: 'change' },
],
rtype:[
{ required: true, message: '此项必填', trigger: 'change' },
],
odds:[
{ required: true, message: '此项必填', trigger: 'change' },
],
impact:[
{ required: true, message: '此项必填', trigger: 'change' },
],
},
editForm: {
id:'',name:'',rtype:'',odds:'',impact:'',rstatus:'',rlvl:'',remark:'',rsgy:'',rway:'',ruserid:'',rusername:'',ctime:'',closeTime:'',deptid:'',branchId:'',projectId:'',cuserid:'',cusername:''
},
//增删改查(含批量)接口
apis:{
queryById: XmRiskApi.queryXmRiskById,
add: XmRiskApi.addXmRisk,
edit: XmRiskApi.editXmRisk,
editSomeFields: XmRiskApi.editSomeFieldsXmRisk
},
}
},
methods: {
//由组件扩展添加其它的初始页面的逻辑(mounted+onOpen都会调用此函数建议只添加公共逻辑)
initCurrData(){
},
/**
* 检查参数是否满足调用后台接口的条件
* @returns true / false
*/
preParamCheck(params){
return true;
},
/**
* 对修改的字段进行判断返回false ,将取消更新数据库,由组件扩展
* @param {*} row 当前选中的行
* @param {*} fieldName 修改的字段名
* @param {*} $event 修改后的值
* @param {*} params 将要提交服务器的参数
* @returns true/false 返回false ,将取消更新数据库
*/
editSomeFieldsCheck(row,fieldName,$event,params){
params[fieldName]=$event
return true;
},
},
mounted() {
}
}
</script>
<style scoped>
</style>