shj
2022-08-16 cf99447e8e85d32f0d167e1a71ab33a0166bc935
对接
已修改4个文件
259 ■■■■■ 文件已修改
src/api/goalManagement/index.ts 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/targetEscalation/component/Dailog.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/targetEscalation/component/TypeDailog.vue 234 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/targetEscalation/index.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/goalManagement/index.ts
@@ -256,6 +256,14 @@
                data: params
            })
        },
         //   目标检查上报 查看审批流程
         getworkApproveListCode: (params: object) => {
            return request({
                url: "/targetDutyWorkApprove/page/list",
                method: "post",
                data: params
            })
        },
        //   目标检查上报 分页查询检查记录
        getworkApproveListCheckData: (params: object) => {
            return request({
src/views/goalManagement/targetEscalation/component/Dailog.vue
@@ -10,7 +10,7 @@
        <template #footer>
            <span class="dialog-footer">
                <el-button @click="dialogVisible = false">关闭</el-button>
                <el-button type="primary" @click="dialogVisible = false">确定</el-button>
                <!-- <el-button type="primary" @click="dialogVisible = false">确定</el-button> -->
            </span>
        </template>
    </el-dialog>
@@ -28,6 +28,7 @@
            searchParams: {
                relateId: '', ////检查记录ID
                relateType:"",
                gmtCreate:[],
            },
        });
        const tableData = ref();
@@ -35,7 +36,7 @@
            dialogVisible.value = true;
            form.value.searchParams.relateId=data
            form.value.searchParams.relateType=type
            goalManagementApi().getworkApproveListCheckData(form.value).then(res=>{
            goalManagementApi().getworkApproveListCode(form.value).then(res=>{
                if(res.data.code==200){
                    tableData.value=res.data.data
                }
src/views/goalManagement/targetEscalation/component/TypeDailog.vue
@@ -1,64 +1,83 @@
<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>
@@ -68,21 +87,21 @@
                <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">
@@ -113,20 +132,23 @@
        <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({
@@ -134,14 +156,26 @@
            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) => {
@@ -175,63 +209,92 @@
            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 userRef = ref();
        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);
@@ -243,7 +306,14 @@
            }
        };
        return {
            formUp,
            disabledType,
            index,
            Show,
            onUsers,
            openUsers,
            formUp,
            timeDate,
            tableData,
            onUser,
            dialogVisible,
            form,
src/views/goalManagement/targetEscalation/index.vue
@@ -33,16 +33,16 @@
                <el-table-column v-if="activeName == 1" label="操作" align="center" show-overflow-tooltip>
                    <template #default="scope">
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,1)">发起审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true"  @click="TypeDailog('审批','检查',scope.row.approveId,1)">审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,1)">查看审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true"  @click="TypeDailog('审批',scope.row.id,scope.row.approveId,1,scope.row)">审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批',scope.row.id,scope.row.approveId,1,scope.row)">查看审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,1)" >查看审批流程</el-button>
                    </template>
                </el-table-column>
                <el-table-column v-if="activeName == 2" label="操作" align="center" show-overflow-tooltip>
                    <template #default="scope">
                            <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,2)">发起审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true"  @click="TypeDailog('审批','检查',scope.row.approveId,2)">审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,2)">查看审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true"  @click="TypeDailog('审批',scope.row.id,scope.row.approveId,2,scope.row)">审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批',scope.row.id,scope.row.approveId,2,scope.row)">查看审批</el-button>
                        <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,2)" >查看审批流程</el-button>
                    </template>
                </el-table-column>
@@ -140,8 +140,8 @@
        };
        // 发起审批弹窗
        const TypeD = ref();
        const TypeDailog = (title:string,name:string,id:number,type:number) => {
            TypeD.value.openDialog(title,name,id,type);
        const TypeDailog = (title:string,name:string,id:number,type:number,data:any) => {
            TypeD.value.openDialog(title,name,id,type,data);
        };
        const typeAlign=()=>{
            listApi();