| | |
| | | <template> |
| | | <el-dialog :title="titleName" v-model="dialogVisible" @click="resetForm" width="50%" draggable :fullscreen="full" :close-on-click-modal="false"> |
| | | <el-dialog :title="titleName" v-model="dialogVisible" @click="resetForm" width="70%" draggable :fullscreen="full" :close-on-click-modal="false"> |
| | | <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> |
| | | <el-form ref="ruleFormRef" :model="form" size="default" :disabled="disabled" label-width="120px"> |
| | | <div v-if="titleName=='发起审批'"> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批名称" prop="workName" size="default"> |
| | | <el-input v-model="form.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"> |
| | | <el-form-item label="审批标题" prop="title" size="default"> |
| | | <el-input v-model="form.title" :disabled="disabledT" placeholder="请填写标题"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批人" prop="approvePersonId" size="default"> |
| | | <el-input v-model="form.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> |
| | | <template #append> |
| | | <el-button :icon="Search" @click="openUser" /> |
| | | </template> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"></el-col> |
| | | </el-row> |
| | | </div> |
| | | <div v-if="titleName!='发起审批'"> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批名称" prop="workName" size="default"> |
| | | <el-input v-model="formUp.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"> |
| | | <el-form-item label="审批标题" prop="title" size="default"> |
| | | <el-input v-model="formUp.title" :disabled="disabledT" placeholder="请填写标题"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批人" prop="approvePersonId" size="default"> |
| | | <el-input v-model="formUp.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> |
| | | <template #append> |
| | | <el-button :icon="Search" @click="openUser" /> |
| | | </template> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"></el-col> |
| | | </el-row> |
| | | </div> |
| | | <div v-if="titleName == '发起审批'"> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批名称" prop="workName" size="default"> |
| | | <el-input v-model="form.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"> |
| | | <el-form-item label="审批标题" prop="title" size="default"> |
| | | <el-input v-model="form.title" :disabled="disabledT" placeholder="请填写标题"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批人" prop="approvePersonId" size="default"> |
| | | <el-input v-model="form.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> |
| | | <template #append> |
| | | <el-button :icon="Search" @click="openUser" /> |
| | | </template> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"></el-col> |
| | | </el-row> |
| | | </div> |
| | | <div v-if="titleName != '发起审批'"> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批名称" prop="workName" size="default"> |
| | | <el-input v-model="formUp.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"> |
| | | <el-form-item label="审批标题" prop="title" size="default"> |
| | | <el-input v-model="formUp.title" :disabled="disabledT" placeholder="请填写标题"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批人" prop="approvePersonId" size="default"> |
| | | <el-input v-model="formUp.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> |
| | | <template #append> |
| | | <el-button :icon="Search" @click="openUser" /> |
| | | </template> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="11" :offset="2"></el-col> |
| | | </el-row> |
| | | </div> |
| | | <el-table :data="tableData" style="width: 90%;margin:20px auto"> |
| | | <el-table-column align="center" type="index" label="序号" width="80" /> |
| | | <el-table-column align="center" prop="makerDepartmentName" label="责任部门" /> |
| | | <el-table-column align="center" prop="value" label="考核指标" /> |
| | | <el-table-column align="center" prop="dutyDepartmentName" label="制定部门" /> |
| | | <el-table-column align="center" prop="makeDate" :formatter="timeDate" label="制定日期" /> |
| | | <el-table-column align="center" label="检查值"> |
| | | <template #default="scope"> |
| | | <el-input v-model="scope.row.commitValue" :disabled="disabledType" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column align="center" label="检查人"> |
| | | <template #default="scope"> |
| | | <el-input v-model="scope.row.personName" :disabled="disabledType"> |
| | | <template #append> <el-button :icon="Search" @click="openUsers(scope.row)" /> </template |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div v-if="typeScope"> |
| | | <el-row> |
| | | <el-col> |
| | | <el-form-item label="审批结果" prop="authorUid"> |
| | | <el-radio-group v-model="form.approveResult"> |
| | | <el-radio-group :disabled="disabled" v-model="form.approveResult"> |
| | | <el-radio :label="0">不通过</el-radio> |
| | | <el-radio :label="1">通过</el-radio> |
| | | </el-radio-group> |
| | |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="审批意见" prop="approveMemo"> |
| | | <el-input v-model="form.approveMemo" type="textarea" placeholder="请填写审批意见"></el-input> |
| | | <el-input v-model="form.approveMemo" :disabled="disabled" type="textarea" placeholder="请填写审批意见"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="是否完成" prop="complete"> |
| | | <el-radio-group v-model="form.approveStatus"> |
| | | <el-radio-group v-model="form.approveStatus" :disabled="disabled"> |
| | | <el-radio :label="3">是</el-radio> |
| | | <el-radio :label="2">否</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <div v-if="form.approveStatus==2"> |
| | | <div v-if="form.approveStatus == 2"> |
| | | <el-row> |
| | | <el-col :span="11"> |
| | | <el-form-item label="审批名称" prop="workName" size="default"> |
| | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="resetForm" size="default">关闭</el-button> |
| | | <el-button size="default" type="primary" @click="submitForm">确定</el-button> |
| | | <el-button size="default" type="primary" :disabled="disabled" @click="submitForm">确定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | <DailogSearchUserManger ref="userRef" @SearchUser="onUser" /> |
| | | <DailogSearchUser ref="Show" @SearchUser="onUsers"></DailogSearchUser> |
| | | </template> |
| | | <script lang="ts"> |
| | | import { ref, defineComponent } from 'vue'; |
| | | import { timeDate } from '/@/assets/index.ts'; |
| | | import DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue'; |
| | | import { ElMessage } from 'element-plus'; |
| | | import DailogSearchUser from '../../../../components/DailogSearchUser/index.vue'; |
| | | import { goalManagementApi } from '/@/api/goalManagement'; |
| | | import { Search, FullScreen } from '@element-plus/icons-vue'; |
| | | export default defineComponent({ |
| | | components: { DailogSearchUserManger }, |
| | | components: { DailogSearchUserManger, DailogSearchUser }, |
| | | setup(props, { emit }) { |
| | | const dialogVisible = ref(false); |
| | | const form = ref({ |
| | |
| | | title: '', //审批标题 |
| | | approvePersonId: '', |
| | | approvePersonName: '', |
| | | approveStatus: 2, |
| | | approveStatus: "", |
| | | approveResult: '', |
| | | relateType: 1, |
| | | relateId: '', |
| | | relateDesc: '', |
| | | }); |
| | | // 提交 |
| | | const submitForm = () => { |
| | | if (titleName.value == '发起审批') { |
| | | let arr = []; |
| | | for (let i = 0; i < tableData.value.length; i++) { |
| | | arr.push({ |
| | | id: tableData.value[i].id, |
| | | value: tableData.value[i].commitValue, |
| | | personName: tableData.value[i].personName, |
| | | personId: tableData.value[i].personId, |
| | | }); |
| | | } |
| | | form.value.approveStatus=2 |
| | | form.value.relateDesc = JSON.stringify(arr); |
| | | goalManagementApi() |
| | | .getworkApproveAdd(form.value) |
| | | .then((res) => { |
| | |
| | | dialogVisible.value = false; |
| | | disabled.value = false; |
| | | disabledT.value = false; |
| | | form.value={} |
| | | formUp.value={} |
| | | form.value = {}; |
| | | formUp.value = {}; |
| | | }; |
| | | // 关闭 |
| | | const resetForm = () => { |
| | | dialogVisible.value = false; |
| | | disabled.value = false; |
| | | disabledT.value = false; |
| | | form.value={} |
| | | formUp.value={} |
| | | form.value = {}; |
| | | formUp.value = {}; |
| | | tableData.value=[]; |
| | | dialogVisible.value = false; |
| | | }; |
| | | const titleName = ref(); |
| | | const typeScope = ref(); |
| | | const disabledT = ref(false); |
| | | const disabled = ref(false); |
| | | const formUp=ref({ |
| | | workName:"", |
| | | title:"", |
| | | approvePersonName:"" |
| | | }) |
| | | const formUp = ref({ |
| | | workName: '', |
| | | title: '', |
| | | approvePersonName: '', |
| | | }); |
| | | const tableData = ref([]); |
| | | const disabledType=ref() |
| | | // 打开弹窗 |
| | | const openDialog = (title: string, name: string, id: number,type:number) => { |
| | | const openDialog = (title: string, name: any, id: number, type: number,data:any) => { |
| | | dialogVisible.value = true; |
| | | titleName.value = title; |
| | | form.value.relateType=type |
| | | form.value.relateType = type; |
| | | if (title == '发起审批') { |
| | | form.value.relateId = id; |
| | | typeScope.value = false; |
| | | } else if (title == '审批'||title == '查看审批') { |
| | | goalManagementApi() |
| | | .getTargetMngDetail(id) |
| | | .then((res) => { |
| | | if (res.data.code == 200) { |
| | | tableData.value = res.data.data.targetDivideDetailList; |
| | | } else { |
| | | ElMessage.error(res.data.msg); |
| | | } |
| | | }); |
| | | disabledType.value=false |
| | | } else if (title == '审批' || title == '查看审批') { |
| | | goalManagementApi() |
| | | .getworkApproveDetail(id) |
| | | .then((res) => { |
| | | if (res.data.code == 200) { |
| | | form.value = res.data.data; |
| | | form.value.approveStatus="" |
| | | formUp.value.workName=form.value.workName |
| | | formUp.value.title=form.value.title |
| | | formUp.value.approvePersonName=form.value.approvePersonName |
| | | if (form.value.approvePersonName === form.value.submitPersonName) { |
| | | if (data.approveStatus==2&&data.checkApprove==true){ |
| | | disabled.value = false; |
| | | } else { |
| | | } else if(data.approveStatus==2&&data.checkApprove==false) { |
| | | disabled.value = true; |
| | | } |
| | | form.value = res.data.data; |
| | | form.value.approveStatus = ''; |
| | | formUp.value.workName = form.value.workName; |
| | | formUp.value.title = form.value.title; |
| | | formUp.value.approvePersonName = form.value.approvePersonName; |
| | | form.value.workName="" |
| | | form.value.title="" |
| | | form.value.approvePersonName="" |
| | | tableData.value=res.data.data.targetDivideDetailList |
| | | console.log(form.value.approvePersonName) |
| | | } |
| | | }); |
| | | disabledType.value=true |
| | | typeScope.value = true; |
| | | disabledT.value = true; |
| | | } |
| | |
| | | const openUser = () => { |
| | | userRef.value.openDailog(); |
| | | }; |
| | | const index = ref(); |
| | | const Show = ref(); |
| | | const openUsers = (id: any) => { |
| | | index.value = tableData.value.indexOf(id); |
| | | Show.value.openDailog(); |
| | | }; |
| | | const onUser = (val: any) => { |
| | | form.value.approvePersonId = val[0].uid; |
| | | form.value.approvePersonName = val[0].realName; |
| | | }; |
| | | const onUsers = (val: any) => { |
| | | tableData.value[index.value].personName = val.realName; |
| | | tableData.value[index.value].personId = val.uid; |
| | | }; |
| | | //全屏 |
| | | const full = ref(false); |
| | |
| | | } |
| | | }; |
| | | return { |
| | | formUp, |
| | | disabledType, |
| | | index, |
| | | Show, |
| | | onUsers, |
| | | openUsers, |
| | | formUp, |
| | | timeDate, |
| | | tableData, |
| | | onUser, |
| | | dialogVisible, |
| | | form, |