From ef9f19192df89a5ec2dea8425d0fac0fd7eff6e6 Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期一, 17 三月 2025 16:25:50 +0800 Subject: [PATCH] 接口对接 --- src/views/templateManage/components/createSign.vue | 69 ++++++++++++++++++++-------------- 1 files changed, 40 insertions(+), 29 deletions(-) diff --git a/src/views/templateManage/components/createSign.vue b/src/views/templateManage/components/createSign.vue index f6a217f..6c898d2 100644 --- a/src/views/templateManage/components/createSign.vue +++ b/src/views/templateManage/components/createSign.vue @@ -3,19 +3,22 @@ <el-dialog v-model="dialogVisible" title="创建签署项目" - width="50%" + width="550px" :before-close="handleClose" :close-on-press-escape="false" :close-on-click-modal="false" > <el-form :model="state.form" size="default" ref="busRef" :rules="state.formRules" label-width="150px" > - <el-form-item label="项目名称:" prop="name" > - <el-input v-model="state.form.name" placeholder="请输入项目名称"></el-input> + <el-form-item label="项目名称:" prop="itemName" > + <el-input v-model="state.form.itemName" placeholder="请输入项目名称"></el-input> </el-form-item> + + <div style="display: flex;align-items: center;"> + <el-form-item label="最初签署人:" prop="deptId" > - <div style="display: flex;"> <el-cascader - style="width: 50%" + :show-all-levels="false" + style="width: 170px" clearable placeholder="请选择部门" v-model="state.form.deptId" @@ -23,18 +26,16 @@ @change="selectValue" :props="{ expandTrigger: 'hover', value: 'deptId',label: 'deptName',emitPath: false}"> </el-cascader> - <el-select clearable - v-model="state.form.people" + v-model="state.form.initiaiUserId" filterable - multiple remote reserve-keyword - placeholder="请输入签署人名称(可多选)" + placeholder="请输入签署人名称" remote-show-suffix :remote-method="(val)=>getUserList(val,state.form.deptId)" - style="width: 50%;margin-left: 10px" + style=" width:170px;margin-left:20px" > <el-option v-for="item in state.userList" @@ -43,9 +44,8 @@ :value="item.userId" /> </el-select> - </div> - </el-form-item> + </div> </el-form> <template #footer> <span class="dialog-footer"> @@ -61,6 +61,7 @@ import {ElMessage} from "element-plus"; import {listDept} from "@/api/system/dept"; import {listUser} from "@/api/system/user"; +import {addSignProject} from "@/api/signAgreement/signProject"; const { proxy } = getCurrentInstance(); const dialogVisible = ref(false); @@ -72,25 +73,28 @@ const state = reactive({ form: { id: '', - deptId: '', - people: [] + itemName: '', + deptId: null, + initiaiUserId: null, + templateId: null }, options: [], userList: [], formRules:{ deptId: [{ required: true, trigger: "blur", message:'请选择部门' }], - people: [{ required: true, trigger: "blur", message:'请选择签署人' }], + itemName: [{ required: true, trigger: "blur", message:'请输入项目名称' }], }, }) const openDialog = async (value) => { await getDept() + state.form.templateId = value.id dialogVisible.value = true; } const selectValue = (val) => { state.userList = [] - state.form.people = [] + state.form.initiaiUserId = null getUserList("",val) } @@ -107,15 +111,19 @@ const valid = await busRef.value.validate(); if(valid){ const {id, ...data} = JSON.parse(JSON.stringify(state.form)) - // const res = await addWarehouse(data) - // if(res.code === 200){ - // ElMessage({ - // type: 'success', - // message: '新增成功' - // }); - // }else{ - // ElMessage.warning(res.message) - // } + if(data.initiaiUserId == null) { + ElMessage.warning('请选择签署人') + return; + } + const res = await addSignProject(data) + if(res.code === 200){ + ElMessage({ + type: 'success', + message: '新增成功' + }); + }else{ + ElMessage.warning(res.message) + } emit("getList") busRef.value.clearValidate(); reset(); @@ -133,18 +141,21 @@ const reset = () => { state.form = { id: '', - name: '', - remark: '', + itemName: '', + deptId: null, + initiaiUserId: null, + templateId: null } } const getUserList = async (val,deptId)=>{ if(deptId == '' || deptId == null){ - ElMessage.warning("请选择部门!") + // ElMessage.warning("请选择部门!") return; } if(val != ""){ const queryParams = { - name: val, + deptId: deptId, + nickName: val, } const res = await listUser(queryParams) if (res.code == 200) { -- Gitblit v1.9.2