zhaojiale
2022-08-11 2cc7a0f4af5923103dff8c87fb885bb552246dfd
安全目标考核
已修改4个文件
201 ■■■■■ 文件已修改
src/views/goalManagement/safetyAssessment/component/Dailog.vue 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/safetyAssessment/component/DailogAdd.vue 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/targetDecompositionMonth/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/targetDecompositionYear/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/goalManagement/safetyAssessment/component/Dailog.vue
@@ -1,5 +1,5 @@
<template>
    <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable>
    <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable @close="closeDialog">
        <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
        <el-form :model="form" label-width="120px">
            <el-row>
@@ -34,17 +34,26 @@
        <el-button type="primary" size="default" @click="daiAdd('新增')" :disabled="disabled">新增</el-button>
      </el-tab-pane>
        </el-tabs>
        <el-table :data="tableData" style="width: 100%">
        <el-table :data="formUp.examineList" style="width: 100%">
            <el-table-column align="center" type="index" label="序号" width="70" />
            <el-table-column align="center" prop="date" label="责任部门" />
            <el-table-column align="center" prop="name" label="考核指标" />
            <el-table-column align="center" prop="address" label="制定部门" />
            <el-table-column align="center" prop="address" label="制定日期" />
            <el-table-column align="center" prop="address" label="上报值" />
            <el-table-column align="center" prop="address" label="上报时间" />
            <el-table-column align="center" prop="address" label="考核结果" />
            <el-table-column align="center" prop="address" label="考核人" />
            <el-table-column align="center" prop="address" label="考核时间" />
            <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" />
            <el-table-column align="center" prop="examineValue" label="考核指标" />
            <el-table-column align="center" prop="makerDepartmentName" label="制定部门" />
            <el-table-column align="center" prop="makeDate" label="制定日期" />
            <el-table-column align="center" prop="uploadValue" label="上报值" />
            <el-table-column align="center" prop="uploadDate" label="上报时间" />
            <el-table-column align="center" prop="examineResult" label="考核结果" >
                <template #default="scope">
                    <div v-if="scope.row.examineResult==1">
                        合格
                    </div>
                    <div v-if="scope.row.examineResult==2">
                        不合格
                    </div>
                </template>
            </el-table-column>
            <el-table-column align="center" prop="examinePersonName" label="考核人" />
            <el-table-column align="center" prop="examineDate" label="考核时间" />
            <el-table-column align="center" label="操作">
                <template #default="scope">
                    <el-button link type="primary" @click="daiAdd('修改', scope.row)">查看</el-button>
@@ -53,8 +62,8 @@
        </el-table>
        <template #footer>
            <span class="dialog-footer">
                <el-button @click="dialogVisible = false" size="default">关闭</el-button>
                <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
                <el-button @click="closeDialog" size="default">关闭</el-button>
                <el-button type="primary" @click="submitForm" size="default">确定</el-button>
            </span>
        </template>
    </el-dialog>
@@ -84,15 +93,56 @@
            disabled.value = title == '查看' ? true : false;
            if (title == '查看' || title == '修改') {
                goalManagementApi()
                    .getTargetMngDetail(id)
                    .gettargetExamineDetail(id)
                    .then((res) => {
                        if (res.data.code == 200) {
                            form.value = res.data.data;
                            formUp.examineList = res.data.data.examineList
                        } else {
                            ElMessage.error(res.data.msg);
                        }
                    });
            }
        };
        const closeDialog = () => {
            form.value = {}
            formUp.examineList = []
            dialogVisible.value = false
        };
        const submitForm = () => {
            // formUp.delTargetDivideDetails = arr.value.toString();
            // formUp.targetId = form.value.id;
            dialogVisible.value = false;
            for(let i=0;i<formUp.examineList.length;i++){
                delete formUp.examineList[i].dutyDepartmentName
                delete formUp.examineList[i].makerDepartmentName
            }
            formUp.id = form.value.id
            formUp.delIds = ''
            goalManagementApi()
                    .gettargetExamineAddOrUpdate(formUp)
                    .then((res) => {
                        if (res.data.code == 200) {
                            ElMessage({
                                message: res.data.msg,
                                type: 'success',
                            });
                            emit('addList');
                        } else {
                            ElMessage.error(res.data.msg);
                        }
                    });
            form.value = {
                qName: '',
                indexNum: '',
                year: '',
                value: '',
                examineList: [],
            };
            tableData.value = [];
            formUp.targetId = '';
            formUp.delTargetDivideDetails = '';
            formUp.examineList = [];
        };
        const onNumber = (e: object) => {
            form.value = e;
@@ -107,29 +157,30 @@
            Shows.value.openDailog(targetType.value);
        };
    // 新增弹窗
    const index=ref<any>()
    const Show = ref();
    const daiAdd = (title: string, data: any) => {
      // index.value = formUp.targetDivideDetailList.indexOf(data);
      Show.value.openDailog(title, data);
    };
    const formUp = reactive({
      targetId: '', //关联的目标指标/外键
      delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开
      // targetDivideDetailList: [], //目标指标分解列表
    });
        // 新增弹窗
        const index=ref<any>()
        const Show = ref();
        const daiAdd = (title: string, data: any) => {
          index.value = formUp.examineList.indexOf(data);
          Show.value.openDailog(title, data);
        };
        const formUp = reactive({
          targetId: '', //关联的目标指标/外键
          delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开
          examineList: [], //目标指标分解列表
        });
    const add = (val: any) => {
      const item = deepClone(val)
      if(index.value==-1){
        formUp.targetDivideDetailList.push(item);
      }else{
        formUp.targetDivideDetailList[index.value] = item;
      }
        const add = (val: any) => {
          const item = deepClone(val)
          if(index.value==-1){
      // let obj=JSON.parse(JSON.stringify(form.value))
    };
            formUp.examineList.push(item);
          }else{
            formUp.examineList[index.value] = item;
          }
            console.log(formUp)
          // let obj=JSON.parse(JSON.stringify(form.value))
        };
        //全屏
        const full = ref(false);
@@ -156,11 +207,13 @@
            full,
            toggleFullscreen,
            FullScreen,
      daiAdd,
      index,
      Show,
      formUp,
      add,
            daiAdd,
            index,
            Show,
            formUp,
            add,
            closeDialog,
            submitForm
        };
    },
});
src/views/goalManagement/safetyAssessment/component/DailogAdd.vue
@@ -5,19 +5,20 @@
            <el-row>
                <el-col :span="11">
                    <el-form-item label="责任部门" prop="dutyDepartmentId" size="default">
                        <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" />
                        <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" @current-change="dutyName" :data="data" class="w100" :props="propse" placeholder="请选择" />
                    </el-form-item>
                </el-col>
                <el-col :span="11" :offset="2">
                    <el-form-item label="考核指标" prop="value" size="default">
                        <el-input v-model.number="form.value" />
                    <el-form-item label="考核指标" prop="examineValue" size="default">
                        <el-input v-model.number="form.examineValue" />
                    </el-form-item>
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="11">
                    <el-form-item label="制定人部门" prop="makerDepartmentId" size="default">
                        <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
                        <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true"
                                        @current-change="makerDepartmentName" class="w100" :props="propse" placeholder="请选择" />
                    </el-form-item>
                </el-col>
                <el-col :span="11" :offset="2">
@@ -28,29 +29,30 @@
            </el-row>
            <el-row>
                <el-col :span="11">
                    <el-form-item label="上报值" prop="commitPersonName" size="default">
                        <el-input v-model="form.commitPersonName">
                    <el-form-item label="上报值" prop="uploadValue" size="default">
                        <el-input v-model="form.uploadValue">
<!--                            <template #append> <el-button :icon="Search" @click="openUser" /> </template>-->
            </el-input>
                    </el-form-item>
                </el-col>
        <el-col :span="11" :offset="2">
          <el-form-item label="上报时间" prop="makeDate" size="default">
            <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
          <el-form-item label="上报时间" prop="uploadDate" size="default">
            <el-date-picker v-model="form.uploadDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
          </el-form-item>
        </el-col>
            </el-row>
      <el-row>
        <el-col :span="11">
          <el-form-item label="考核结果" prop="commitPersonName" size="default">
            <el-input v-model="form.commitPersonName">
              <!--                            <template #append> <el-button :icon="Search" @click="openUser" /> </template>-->
            </el-input>
          <el-form-item label="考核结果" prop="examineResult" size="default">
              <el-select v-model="form.examineResult" placeholder="请选择" style="width: 100%">
                  <el-option label="合格" :value="1" />
                  <el-option label="不合格" :value="2" />
              </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="11" :offset="2">
          <el-form-item label="考核人" prop="commitPersonName" size="default">
            <el-input v-model="form.commitPersonName">
          <el-form-item label="考核人" prop="examinePersonName" size="default">
            <el-input v-model="form.examinePersonName">
              <template #append> <el-button :icon="Search" @click="openUser" /> </template>
            </el-input>
          </el-form-item>
@@ -58,8 +60,8 @@
      </el-row>
      <el-row>
        <el-col :span="11">
          <el-form-item label="考核时间" prop="commitPersonName" size="default">
            <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
          <el-form-item label="考核时间" prop="examineDate" size="default">
            <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
          </el-form-item>
        </el-col>
        <el-col :span="11" :offset="2"></el-col>
@@ -87,12 +89,15 @@
    setup(props, { emit }) {
        const ruleFormRef = ref<FormInstance>()
        const form = ref({
            dutyDepartmentId: '', ////责任部门/外键
            makerDepartmentId: '', ////制定人部门/外键
            commitPersonId: '', ////上报人/外键
            commitPersonName: '',
            value: '', ////考核指标值
            makeDate: '', ////制定日期
            "dutyDepartmentId": '', ////责任部门id/外键
            "examineDate": '', ////考核时间
            "examinePersonId": '', ////考核人ID/外键
            "examineResult": '', ////考核结果 1:合格 2:不合格
            "examineValue": '', ////考核指标
            "makeDate": '', ////制定日期
            "makerDepartmentId": '', ////制定部门/外键
            "uploadDate": '', ////上报时间
            "uploadValue": "", ////上报值
        });
        //部门
        const department = () => {
@@ -158,7 +163,7 @@
                    trigger: 'blur',
                },
            ],
            value: [
            examineValue: [
                {
                    required: true,
                    message: '考核指标值不能为空',
@@ -179,6 +184,13 @@
            ],
            commitPersonName: [],
        });
        const dutyName=(data:any)=>{
            form.value.dutyDepartmentName=data.depName
        }
        const makerDepartmentName=(data:any)=>{
            form.value.makerDepartmentName=data.depName
        }
        const submitForm = async (formEl: FormInstance | undefined) => {
            if (!formEl) return;
            await formEl.validate((valid, fields) => {
@@ -214,8 +226,8 @@
        const data = ref();
        const onUser = (e: any) => {
            console.log(e)
            form.value.commitPersonId = e.uid;
            form.value.commitPersonName = e.realName;
            form.value.examinePersonId = e.uid;
            form.value.examinePersonName = e.realName;
        };
        return {
            disabled,
@@ -238,6 +250,8 @@
            rules,
            submitForm,
            resetForm,
            dutyName,
            makerDepartmentName
        };
    },
});
src/views/goalManagement/targetDecompositionMonth/index.vue
@@ -23,7 +23,7 @@
        <div class="minCenter">
            <div class="btns">
                <div>
                    <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
                    <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>-->
                    <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> -->
                    <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button>
                </div>
src/views/goalManagement/targetDecompositionYear/index.vue
@@ -23,7 +23,7 @@
        <div class="minCenter">
            <div class="btns">
                <div>
                    <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
                    <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>-->
                    <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> -->
                    <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button>
                </div>