秀山需求变更完成
This commit is contained in:
@@ -59,9 +59,7 @@
|
||||
<ai-title :title="index"/>
|
||||
<el-form-item v-for="e in item" :key="e.id" :label="[e.fieldName,e.fieldNameSuffix].join('')">
|
||||
<el-input :value="getFieldValue(e)" readonly style="width: 100%;"
|
||||
v-if="e.fieldDataType!=5 && e.fieldDataType!=10"/>
|
||||
<el-input :value="getAreaName(e)" readonly style="width: 100%;"
|
||||
v-else-if="e.fieldDataType==10"/>
|
||||
v-if="e.fieldDataType!=5"/>
|
||||
<el-checkbox-group v-else v-model="!e.fieldValue ? '' : String(e.fieldValue).split(',')">
|
||||
<el-checkbox :label="val.dictValue" disabled
|
||||
v-for="(val,idx) in dict.getDict(e.dictionaryCode)" :key="idx">{{ val.dictName }}
|
||||
@@ -151,7 +149,7 @@
|
||||
<div v-for="(m,i) in item.candidateFieldInfos" :key="i" style="margin-left: 10px;">
|
||||
<div class="desc_div">{{ m.fieldName }}
|
||||
<span v-if="m.fieldNameSuffix" v-text="m.fieldNameSuffix"/>
|
||||
:{{m.dictionaryCode ? dict.getLabel(m.dictionaryCode, m.fieldValue) : m.fieldValue }}
|
||||
:{{ m.dictionaryCode ? dict.getLabel(m.dictionaryCode, m.fieldValue) : m.fieldValue }}
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
@@ -222,7 +220,7 @@
|
||||
:prop="`fieldInfos.${i}.fieldValue`"
|
||||
:rules="{required:op.mustFill==1,message:`请输入${op.fieldName}`}">
|
||||
<el-input placeholder="请输入..." v-model.number="op.fieldValue"
|
||||
clearable v-if="op.fieldDataType=='0'" show-word-limit :maxlength="op.fieldLength"/>
|
||||
clearable v-if="op.fieldDataType=='0'" show-word-limit :maxlength="op.fieldLength"/>
|
||||
|
||||
<el-input type="textarea" :rows="3" placeholder="请输入..." v-model.trim="op.fieldValue"
|
||||
clearable v-if="op.fieldDataType=='1'" show-word-limit
|
||||
|
||||
@@ -13,9 +13,7 @@
|
||||
</el-tabs>
|
||||
</template>
|
||||
</ai-list>
|
||||
<component v-else :is="currentComp" :instance="instance" :dict="dict"
|
||||
:processType="currentTab.value" :row="row" @back="back" />
|
||||
|
||||
<component v-else :is="currentComp" :instance="instance" :dict="dict" :processType="currentTab.value" :row="row" @back="back"/>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
@@ -27,7 +25,7 @@ import guidance from "./components/guidance";
|
||||
export default {
|
||||
name: "AppMattersConfig",
|
||||
label: '事项配置(秀山)',
|
||||
components: {addConfig,guidance},
|
||||
components: {addConfig, guidance},
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
@@ -61,7 +59,7 @@ export default {
|
||||
this.$router.push({query: {processType: this.currentTab.value}})
|
||||
},
|
||||
|
||||
back () {
|
||||
back() {
|
||||
this.$router.push({query: {}})
|
||||
}
|
||||
},
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<el-form-item :label="[e.fieldName,e.fieldNameSuffix].join('')" v-for="(e,j) in item.value"
|
||||
:key="Math.random()">
|
||||
<el-input size="small" v-model="form.checkbox" :disabled="true" clearable placeholder="请输入"
|
||||
style="width: 100%;" v-if="['0','1','6'].includes(e.fieldDataType)"/>
|
||||
style="width: 100%;" v-if="['0','1','6','10'].includes(e.fieldDataType)"/>
|
||||
|
||||
<el-radio-group style="width: 100%;" v-if="e.fieldDataType==4" disabled>
|
||||
<el-radio :label="k.dictValue" v-for="(k,m) in dict.getDict(e.dictionaryCode)" :key="Math.random()">
|
||||
@@ -30,8 +30,7 @@
|
||||
:key="Math.random()"></el-checkbox>
|
||||
</el-checkbox-group>
|
||||
|
||||
<el-select placeholder="请选择" disabled size="small" clearable style="width: 100%;"
|
||||
v-if="e.fieldDataType==9" v-model="e.fieldDataValue">
|
||||
<el-select placeholder="请选择" disabled size="small" clearable style="width: 100%;" v-if="e.fieldDataType==9">
|
||||
<el-option
|
||||
v-for="(item,i) in dict.getDict(e.fieldDbName)" :key="i"
|
||||
:label="item.dictName"
|
||||
@@ -108,7 +107,7 @@ export default {
|
||||
this.form.approvalSteps = res.data.approvalSteps
|
||||
res.data.tableFieldInfos.map((item, index) => {
|
||||
if (item.fieldType == 0) {
|
||||
if(item.dictionaryCode && dictionaryCodeArr.indexOf(item.dictionaryCode)==-1){
|
||||
if (item.dictionaryCode && dictionaryCodeArr.indexOf(item.dictionaryCode) == -1) {
|
||||
dictionaryCodeArr.push(item.dictionaryCode)
|
||||
}
|
||||
let {groupIndex, groupName} = item
|
||||
@@ -121,11 +120,11 @@ export default {
|
||||
arr[groupIndex].value.push({...item})
|
||||
}
|
||||
})
|
||||
if(dictionaryCodeArr.length){
|
||||
this.$dict.load(dictionaryCodeArr).then(()=>{
|
||||
if (dictionaryCodeArr.length) {
|
||||
this.$dict.load(dictionaryCodeArr).then(() => {
|
||||
this.tablelist = arr.filter(e => e)
|
||||
})
|
||||
}else {
|
||||
} else {
|
||||
this.tablelist = arr.filter(e => e)
|
||||
}
|
||||
}
|
||||
@@ -192,7 +191,8 @@ export default {
|
||||
margin-left: 24px !important;
|
||||
}
|
||||
}
|
||||
::v-deep .el-radio{
|
||||
|
||||
::v-deep .el-radio {
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,14 +55,14 @@
|
||||
v-if="item.candidateApproverType==1">
|
||||
<el-button size="mini" type="primary">选择指定人员</el-button>
|
||||
</ai-people> -->
|
||||
|
||||
|
||||
<!-- <ai-user-picker :instance="instance" v-model="form.portalUserId"/> -->
|
||||
<ai-person-select
|
||||
:chooseUserList="item.candidateList"
|
||||
v-if="item.candidateApproverType==1"
|
||||
:instance="instance" customRightText url="/user/page"
|
||||
headerTitle="人员列表" dialogTitle="选择" :isMultiple="true"
|
||||
@selectPerson="e => changeCharge(e, index)">
|
||||
:chooseUserList="item.candidateList"
|
||||
v-if="item.candidateApproverType==1"
|
||||
:instance="instance" customRightText url="/user/page"
|
||||
headerTitle="人员列表" dialogTitle="选择" :isMultiple="true"
|
||||
@selectPerson="e => changeCharge(e, index)">
|
||||
<template v-slot:option="{ item }">
|
||||
<span class="iconfont iconProlife">{{ item.name }}</span>
|
||||
<span>{{ item.phone }}</span>
|
||||
@@ -75,41 +75,58 @@
|
||||
</ai-card>
|
||||
<el-dialog :title="titleType" class="editStyle" :visible.sync="isAddStep" width="575px" height="380px"
|
||||
:close-on-click-modal="false">
|
||||
<el-form :model="nodeObj" label-width="120px" ref="addForm" :rules="addRules">
|
||||
<el-form-item label="审批步骤名称:" prop="nodeName">
|
||||
<el-input size="small" v-model="nodeObj.nodeName" placeholder="如:部门主管审批(限10个字)" :maxLength="10"
|
||||
clearable></el-input>
|
||||
<el-form size="small" :model="nodeObj" label-width="120px" ref="addForm" :rules="addRules">
|
||||
<el-form-item label="审批步骤名称" prop="nodeName">
|
||||
<el-input v-model="nodeObj.nodeName" placeholder="如:部门主管审批(限10个字)" :maxLength="10"
|
||||
clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="审批方式:" prop="nodeType">
|
||||
<el-form-item label="审批方式" prop="nodeType">
|
||||
<el-radio-group v-model="nodeObj.nodeType">
|
||||
<section style="position: relative;top: 10px;margin-bottom: 30px;">
|
||||
<el-radio :label="2">或签
|
||||
<el-popover
|
||||
placement="top-start"
|
||||
width="200"
|
||||
trigger="click"
|
||||
content="或签是指该节点指定多名负责人审批时,其中任何一人完成审批即可。适合一个事项只需要某个岗位任何一人审批即可的业务场景。">
|
||||
<el-button class="el-icon-warning" slot="reference"
|
||||
style="padding:0;height:14px;border:0;"></el-button>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
<el-radio :label="3">抄送
|
||||
<el-popover
|
||||
placement="top-start"
|
||||
width="200"
|
||||
trigger="click"
|
||||
content="抄送是指一个事项审批完成后,抄送给需要知晓的单位或个人,被抄送的对象可以查阅该事项内容,无需审批。适合一个事项无需对方审批,但审批完成后需要通知对方知晓的业务场景。">
|
||||
<el-button class="el-icon-warning" slot="reference"
|
||||
style="padding:0;height:14px;border:0;"></el-button>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
</section>
|
||||
<el-radio :label="2">或签
|
||||
<el-popover
|
||||
placement="top-start"
|
||||
width="200"
|
||||
trigger="click"
|
||||
content="或签是指该节点指定多名负责人审批时,其中任何一人完成审批即可。适合一个事项只需要某个岗位任何一人审批即可的业务场景。">
|
||||
<el-button class="el-icon-warning" slot="reference"
|
||||
style="padding:0;height:14px;border:0;"></el-button>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
<el-radio :label="3">抄送
|
||||
<el-popover
|
||||
placement="top-start"
|
||||
width="200"
|
||||
trigger="click"
|
||||
content="抄送是指一个事项审批完成后,抄送给需要知晓的单位或个人,被抄送的对象可以查阅该事项内容,无需审批。适合一个事项无需对方审批,但审批完成后需要通知对方知晓的业务场景。">
|
||||
<el-button class="el-icon-warning" slot="reference"
|
||||
style="padding:0;height:14px;border:0;"></el-button>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据权限" prop="areaFilter">
|
||||
<el-radio-group v-model="nodeObj.areaFilter">
|
||||
<el-radio :label="0">不限
|
||||
<el-popover placement="top-start" width="200" trigger="click" content="审批人员可查看全部申报事项">
|
||||
<el-button class="el-icon-warning" slot="reference" style="padding:0;height:14px;border:0;"/>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
<el-radio :label="1">村社区
|
||||
<el-popover placement="top-start" width="200" trigger="click" content="审批人员可查看本村申报事项">
|
||||
<el-button class="el-icon-warning" slot="reference" style="padding:0;height:14px;border:0;"/>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
<el-radio :label="2">镇街
|
||||
<el-popover placement="top-start" width="200" trigger="click" content="审批人员可查看本镇申报事项">
|
||||
<el-button class="el-icon-warning" slot="reference" style="padding:0;height:14px;border:0;"/>
|
||||
</el-popover>
|
||||
</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" style="text-align: center;">
|
||||
<el-button style="width: 92px;" size="small" @click="isAddStep = false">取消</el-button>
|
||||
<el-button style="width: 92px;" size="small" type="primary" @click="saveAddProgress('addForm')">确认
|
||||
<el-button style="width: 92px;" size="small" type="primary" @click="saveAddProgress">确认
|
||||
</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
@@ -157,9 +174,8 @@ export default {
|
||||
nodeName: [
|
||||
{required: true, message: '请输入审批节点名称', trigger: 'change'}
|
||||
],
|
||||
nodeType: [
|
||||
{required: true, message: '请选择审批方式', trigger: 'change'}
|
||||
],
|
||||
nodeType: [{required: true, message: '请选择审批方式', trigger: 'change'}],
|
||||
areaFilter: [{required: true, message: '请选择数据权限'}],
|
||||
candidateApproverType: [
|
||||
{required: true, message: '请选择选人方式', trigger: 'change'}
|
||||
],
|
||||
@@ -183,7 +199,7 @@ export default {
|
||||
})
|
||||
},
|
||||
|
||||
changeCharge (e, i) {
|
||||
changeCharge(e, i) {
|
||||
this.$set(this.form.processNodeList[i], 'candidateList', e.map(v => {
|
||||
return {
|
||||
...v,
|
||||
@@ -204,6 +220,7 @@ export default {
|
||||
if (index == 2) {
|
||||
this.titleType = '编辑审批步骤';
|
||||
item.nodeType = item.nodeType * 1;
|
||||
item.areaFilter = item.areaFilter * 1;
|
||||
item.candidateApproverType = item.candidateApproverType * 1;
|
||||
item.scopeCandidates = item.scopeCandidates * 1;
|
||||
this.nodeObj = JSON.parse(JSON.stringify(item));
|
||||
@@ -215,8 +232,8 @@ export default {
|
||||
}
|
||||
},
|
||||
// 确定添加审批步骤
|
||||
saveAddProgress(formName) {
|
||||
this.$refs[formName].validate((valid) => {
|
||||
saveAddProgress() {
|
||||
this.$refs.addForm.validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.nodeObj.scopeCandidates == 0) this.nodeObj.candidateList = [];
|
||||
if (this.indexType == 1) {
|
||||
@@ -224,7 +241,7 @@ export default {
|
||||
} else {
|
||||
this.form.processNodeList.splice(this.bomIndex, 1, JSON.parse(JSON.stringify(this.nodeObj)));
|
||||
}
|
||||
this.$refs[formName].resetFields();
|
||||
this.$refs.addForm.resetFields();
|
||||
this.isAddStep = false;
|
||||
}
|
||||
})
|
||||
@@ -238,13 +255,12 @@ export default {
|
||||
nodeType: '',
|
||||
scopeCandidates: ''
|
||||
};
|
||||
this.$refs['addForm'].resetFields();
|
||||
this.$refs.addForm?.resetFields();
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.areaId = this.user.info.areaId.substring(0, 6) + '000000'
|
||||
if (this.config.detailObj?.id) {
|
||||
|
||||
Object.keys(this.form).map(e => this.form[e] = this.config.detailObj[e])
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user