zhaojiale
2022-08-15 cd92b35c810d6a762e9c30b896c38928e2d2d87a
src/views/goalManagement/targetSettings/component/dailogAdd.vue
@@ -1,5 +1,5 @@
<template>
   <el-dialog v-model="Shows" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable>
   <el-dialog v-model="Shows" @close="handleClose(ruleFormRef)" :fullscreen="full" :title="titles" width="50%" draggable>
      <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
      <el-form :model="form" :disabled="disabled" ref="ruleFormRef" :rules="rules" label-width="120px">
         <el-row>
@@ -17,7 +17,7 @@
         <el-row>
            <el-col :span="11">
               <el-form-item label="年度" prop="year" size="default">
                  <el-input v-model.number="form.year" placeholder="请填写年度" />
                  <el-input v-model.number="form.year" maxlength="8" placeholder="请填写年度" />
               </el-form-item>
            </el-col>
            <el-col :span="11" :offset="2">
@@ -28,21 +28,28 @@
         </el-row>
         <el-row>
            <el-col :span="11">
               <el-form-item label="指标级别" size="default">
               <el-form-item label="指标级别" size="default" prop="level">
                  <el-select v-model="form.level" placeholder="请选择" style="width: 100%">
                     <el-option label="公司级" value="1">公司级</el-option>
                     <el-option label="部门分厂级" value="2">部门分厂级</el-option>
                     <el-option label="工段班组级" value="3">工段班组级</el-option>
                     <el-option label="公司级" :value="1">公司级</el-option>
                     <el-option label="部门分厂级" :value="2">部门分厂级</el-option>
                     <el-option label="工段班组级" :value="3">工段班组级</el-option>
                  </el-select>
               </el-form-item>
            </el-col>
            <el-col :span="11" :offset="2">
               <el-form-item label="完成期限" size="default">
                  <el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
               <el-form-item label="完成期限" size="default" prop="completeDate">
                  <el-date-picker
                     v-model="form.completeDate"
                     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-form-item label="备注信息">
         <el-form-item label="备注信息" prop="memo">
            <el-input v-model="form.memo" size="default" type="textarea" />
         </el-form-item>
      </el-form>
@@ -56,6 +63,7 @@
</template>
<script lang="ts">
import { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue';
// import { timeDate } from '/@/assets/index.ts';
import screenfull from 'screenfull';
import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';
import type { FormInstance, FormRules } from 'element-plus';
@@ -73,7 +81,7 @@
         memo: '', ////备注信息
         targetType: '', ////指标类型 1:年指标 2:月指标
         completeDate: '', ////完成期限
         divideStatus: '1', ////分解状态 1:已分解 2:未分解
         divideStatus: '2', ////分解状态 1:已分解 2:未分解
         value: '', ////指标值
      });
      const titles = ref();
@@ -90,10 +98,24 @@
               .then((res) => {
                  if (res.data.code == 200) {
                     form.value = res.data.data;
                     form.value.completeDate = timeC(form.value.completeDate);
                  } else {
                     ElMessage.error(res.data.msg);
                  }
               });
      };
      const timeC = (timestamp: any) => {
         let a = new Date(timestamp).getTime();
         const date = new Date(a);
         const Y = date.getFullYear() + '-';
         const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
         const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + '  ';
         const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
         const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes();
         const s = date.getSeconds(); // 秒
         const dateString = Y + M + D + h + m +`:${s}`;
         // console.log('dateString', dateString); // > dateString 2021-07-06 14:23
         return dateString;
      };
      //全屏
      const full = ref(false);
@@ -133,7 +155,11 @@
               trigger: 'change',
            },
         ],
         level: [],
         completeDate: [],
         memo: [],
      });
      // 提交
      const submitForm = async (formEl: FormInstance | undefined) => {
         if (!formEl) return;
         await formEl.validate((valid, fields) => {
@@ -153,45 +179,31 @@
                        formEl.resetFields();
                     }
                  });
               formEl.resetFields();
            } else {
               console.log('error submit!', fields);
            }
         });
         form.value = {
            indexNum: '', //目标指标编号
            qName: '', //安全目标指标
            year: '', //年度
            level: '', ////指标级别 1:公司级 2:部门分厂级 3:工段班组级
            memo: '', ////备注信息
            targetType: '', ////指标类型 1:年指标 2:月指标
            completeDate: '', ////完成期限
            divideStatus: '1', ////分解状态 1:已分解 2:未分解
            value: '', ////指标值
         };
      };
      //   取消
      const resetForm = (formEl: FormInstance | undefined) => {
         if (!formEl) return;
         formEl.resetFields();
         Shows.value = false;
         form.value = {
            indexNum: '', //目标指标编号
            qName: '', //安全目标指标
            year: '', //年度
            level: '', ////指标级别 1:公司级 2:部门分厂级 3:工段班组级
            memo: '', ////备注信息
            targetType: '', ////指标类型 1:年指标 2:月指标
            completeDate: '', ////完成期限
            divideStatus: '1', ////分解状态 1:已分解 2:未分解
            value: '', ////指标值
         };
      };
      const handleClose = (formEl: FormInstance | undefined) => {
         formEl.resetFields();
      };
      return {
         timeC,
         openDialog,
         handleClose,
         titles,
         // timeDate,
         Shows,
         form,
         full,
         disabled,
         toggleFullscreen,
         rules,
         ruleFormRef,