This commit is contained in:
yanran200730
2023-04-07 11:50:26 +08:00
2 changed files with 127 additions and 153 deletions

View File

@@ -69,7 +69,6 @@ export default {
] ]
}, },
detailTitle: v => v.detailObj?.id ? "编辑事项" : "添加事项", detailTitle: v => v.detailObj?.id ? "编辑事项" : "添加事项",
processType: v => v.$route.hash == "#add" ? 0 : 2
}, },
methods: { methods: {
...mapActions(['closePage']), ...mapActions(['closePage']),
@@ -119,7 +118,6 @@ export default {
*/ */
save() { save() {
this.$refs['processApproval'].handleProcessApproval().then(res => { this.$refs['processApproval'].handleProcessApproval().then(res => {
const {processType} = this
this.instance.post(`/app/approval-process-def/add-update`, { this.instance.post(`/app/approval-process-def/add-update`, {
...this.detailObj, ...this.detailObj,
...this.baseInfo, ...this.baseInfo,
@@ -131,7 +129,7 @@ export default {
tableType: 0, tableType: 0,
processAnnexDefs: this.annexs.map(e => ({...e, mustFill: Number(e.mustFill)})), processAnnexDefs: this.annexs.map(e => ({...e, mustFill: Number(e.mustFill)})),
processNodeList: res.processNodeList, processNodeList: res.processNodeList,
processType processType: 0
}).then(res => { }).then(res => {
if (res.code == 0) { if (res.code == 0) {
this.$message.success("保存成功") this.$message.success("保存成功")
@@ -144,7 +142,7 @@ export default {
}, },
getDetail() { getDetail() {
const {id} = this.$route.query const {id} = this.$route.query
this.instance.post(`/app/approval-process-def/info-id`, null, {params: {id}}).then(res => { id && this.instance.post(`/app/approval-process-def/info-id`, null, {params: {id}}).then(res => {
if (res?.data) { if (res?.data) {
this.detailObj = res.data this.detailObj = res.data
this.filedList = res.data.tableInfo.tableFieldInfos this.filedList = res.data.tableInfo.tableFieldInfos

View File

@@ -15,23 +15,17 @@
<el-form-item label="所属部门" prop="department"> <el-form-item label="所属部门" prop="department">
<el-select placeholder="请选择" size="small" v-model="form.department" clearable style="width: 100%;"> <el-select placeholder="请选择" size="small" v-model="form.department" clearable style="width: 100%;">
<el-option <el-option
v-for="(item,i) in dict.getDict('hbDepartment')" :key="i" v-for="(item,i) in dict.getDict('hbDepartment')" :key="i"
:label="item.dictName" :label="item.dictName"
:value="item.dictValue"> :value="item.dictValue">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="所属分类" prop="classificationId"> <el-form-item label="所属分类" prop="classificationId">
<el-select placeholder="请选择" size="small" v-model="form.classificationId" clearable <ai-select v-model="form.classificationId" :instance="instance" action="/app/zwspapprovalclassification/list?status=1"
style="width: 100%;"> :prop="{label:'name'}"/>
<el-option
v-for="(item,i) in classList" :key="i"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -40,9 +34,9 @@
</el-form-item> </el-form-item>
<el-form-item label="是否启用" prop="processDefStatus"> <el-form-item label="是否启用" prop="processDefStatus">
<el-switch <el-switch
v-model="form.processDefStatus" v-model="form.processDefStatus"
active-color="#5088FF" active-color="#5088FF"
inactive-color="#D0D4DC" active-value="1" inactive-value="0"> inactive-color="#D0D4DC" active-value="1" inactive-value="0">
</el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -58,162 +52,144 @@
</template> </template>
<script> <script>
import {mapMutations} from "vuex";
export default { export default {
name: "addConfig", name: "guidance",
props: { props: {
instance: Function, instance: Function,
dict: Object, dict: Object,
row: Object, },
processType: String data() {
}, return {
data() { form: {
return { processName: "",
form: { department: "",
processName: "", classificationId: "",
department: "", needToKnow: "",
classificationId: "", processDefStatus: "1",
needToKnow: "",
processDefStatus: "1",
},
classList: [],
}
},
computed: {
rules() {
return {
processName: [{required: true, message: '请输入事项名称', trigger: 'blur'}],
department: [{required: true, message: '请选择所属部门', trigger: 'change'}],
classificationId: [{required: true, message: '请选择所属分类', trigger: 'change'}],
needToKnow: [{required: true, message: '请输入办理须知', trigger: 'blur'}],
processDefStatus: [{required: true, message: '请选择是否启用', trigger: 'change'}],
}
}, },
detailTitle() {
return this.row?.id ? "编辑办事指南" : "添加办事指南"
}
},
methods: {
/**
* 获取分类
*/
getClassification() {
this.instance.post(`/app/zwspapprovalclassification/list`, null, {
params: {
current: 1,
status: 1,
size: 9999
}
}).then(res => {
if (res?.data) {
this.classList = res.data.records
}
})
},
/**
* 保存
*/
save() {
this.$refs["baseInfoForm"].validate(valid => {
if (valid) {
this.instance.post(`/app/approval-process-def/add-update`, {
...this.form,
id: this.row.id,
processType: this.processType
}).then(res => {
if (res.code == 0) {
this.$message.success("保存成功")
this.$router.push({query: {}})
}
})
}
})
},
getDetail(id) {
this.instance.post(`/app/approval-process-def/info-id`, null, {params: {id}}).then(res => {
if (res?.data) {
Object.keys(this.form).map(e => this.form[e] = res.data[e])
}
})
},
handleBack() {
this.$router.push({query: {}})
}
},
created() {
this.getClassification()
if (this.row?.id) {
this.getDetail(this.row?.id)
}
} }
},
computed: {
rules() {
return {
processName: [{required: true, message: '请输入事项名称', trigger: 'blur'}],
department: [{required: true, message: '请选择所属部门', trigger: 'change'}],
classificationId: [{required: true, message: '请选择所属分类', trigger: 'change'}],
needToKnow: [{required: true, message: '请输入办理须知', trigger: 'blur'}],
processDefStatus: [{required: true, message: '请选择是否启用', trigger: 'change'}],
}
},
detailTitle: v => v.detailObj?.id ? "编辑办事指南" : "添加办事指南",
},
methods: {
...mapMutations(['setPageTitle']),
/**
* 获取分类
*/
/**
* 保存
*/
save() {
this.$refs["baseInfoForm"].validate(valid => {
if (valid) {
this.instance.post(`/app/approval-process-def/add-update`, {
...this.form,
processType: 2
}).then(res => {
if (res.code == 0) {
this.$message.success("保存成功")
this.$router.push({query: {}})
}
})
}
})
},
getDetail() {
const {id} = this.$route.query
id && this.instance.post(`/app/approval-process-def/info-id`, null, {params: {id}}).then(res => {
if (res?.data) {
Object.keys(this.form).map(e => this.form[e] = res.data[e])
}
})
},
handleBack() {
this.$router.push({query: {}})
}
},
created() {
this.setPageTitle(this.detailTitle)
this.getDetail()
} }
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.add-config { .guidance {
height: 100%; height: 100%;
.step { .step {
width: 100%; width: 100%;
height: 72px;
font-size: 14px;
.el-steps {
display: flex;
align-items: center;
height: 72px; height: 72px;
font-size: 14px; padding: 0 calc(50% - 380px);
.el-steps {
display: flex;
align-items: center;
height: 72px;
padding: 0 calc(50% - 380px);
:deep( .el-step ){ :deep( .el-step ) {
font-weight: bold; font-weight: bold;
:deep( .el-step__icon ){ :deep( .el-step__icon ) {
width: 24px; width: 24px;
height: 24px; height: 24px;
background: #fff; background: #fff;
.iconfont { .iconfont {
font-size: 24px; font-size: 24px;
}
}
:deep( .el-step__main ){
display: flex;
align-items: center;
.el-step__arrow {
background: #D0D4DC;
margin: 0 8px;
height: 2px;
&:before, &:after {
display: none;
}
}
}
.is-process {
color: #2266FF;
}
.is-wait {
color: #666;
border-color: #D0D4DC;
} }
} }
:deep( .el-step__main ) {
display: flex;
align-items: center;
.el-step__arrow {
background: #D0D4DC;
margin: 0 8px;
height: 2px;
&:before, &:after {
display: none;
}
}
}
.is-process {
color: #2266FF;
}
.is-wait {
color: #666;
border-color: #D0D4DC;
}
} }
} }
.btn { }
width: 92px;
height: 32px;
&:nth-child(2) { .btn {
margin-left: 24px; width: 92px;
} height: 32px;
&:nth-child(2) {
margin-left: 24px;
} }
} }
}
</style> </style>