Your Name
2022-08-11 988558aaa309068fd393cc654be537434b0a15ea
src/components/equipmentDailog/Dailog.vue
@@ -6,7 +6,7 @@
            <el-input v-model="form.qName" placeholder="请填写装置设施名称" />
         </el-form-item>
         <el-form-item label="装置设施位号" size="default" prop="positionNum">
            <el-input v-model="form.positionNum" placeholder="请填写装置设施位号" />
            <el-input disabled v-model="form.positionNum" placeholder="请填写装置设施位号" />
         </el-form-item>
         <el-form-item label="装置设施用途" size="default" prop="qUsage">
            <el-input v-model="form.qUsage" placeholder="请填写装置设施用途" />
@@ -14,8 +14,8 @@
         <el-form-item label="装置设施型号" size="default" prop="model">
            <el-input v-model="form.model" placeholder="请填写装置设施型号" />
         </el-form-item>
         <el-form-item label="类型/类别外键" size="default" prop="equipmentTypeId">
            <el-input v-model="form.equipmentTypeId" placeholder="请选择">
         <el-form-item label="类型/类别外键" size="default" prop="equipmentTypeName">
            <el-input v-model="form.equipmentTypeName" placeholder="请选择">
               <template #append>
                  <el-button :icon="Search" @click="opencategory"></el-button>
               </template>
@@ -35,7 +35,7 @@
            <el-input v-model="form.setPart" placeholder="请填写设置部位" />
         </el-form-item>
         <el-form-item label="生产日期" size="default" prop="produceTime">
            <el-date-picker v-model="form.produceTime" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.produceTime" 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-form-item label="使用期限(天)" size="default" prop="useEndDay">
            <el-input v-model="form.useEndDay" placeholder="请填写使用期限" />
@@ -48,7 +48,7 @@
            </el-select>
         </el-form-item>
         <el-form-item label="投用日期" size="default" prop="useDate">
            <el-date-picker v-model="form.useDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.useDate" 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-form-item label="维修状态" size="default" prop="repairStatus">
            <el-select v-model="form.repairStatus" placeholder="请选择" style="width: 100%">
@@ -68,31 +68,33 @@
            <el-date-picker
               v-model="form.previousCheckDate"
               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-form-item label="上次检测日期" size="default" prop="previousTestDate">
            <el-date-picker v-model="form.previousTestDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.previousTestDate" 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-form-item label="上次保养日期" size="default" prop="previousTakecareDate">
            <el-date-picker
               v-model="form.previousTakecareDate"
               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-form-item label="下次检查日期" size="default" prop="nextCheckDate">
            <el-date-picker v-model="form.nextCheckDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.nextCheckDate" 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-form-item label="下次检测日期" size="default" prop="nextTestDate">
            <el-date-picker v-model="form.nextTestDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.nextTestDate" 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-form-item label="下次保养日期" size="default" prop="nextTakecareDate">
            <el-date-picker v-model="form.nextTakecareDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.nextTakecareDate" 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-form-item label="负责人" size="default" prop="leadingPersonName">
            <el-input v-model="form.leadingPersonName" placeholder="请选择">
@@ -169,7 +171,7 @@
            <el-input v-model="form.afterStopStep" placeholder="请填写停用后措施" />
         </el-form-item>
         <el-form-item label="实际停用日期" size="default" prop="actualStopDate">
            <el-date-picker v-model="form.actualStopDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.actualStopDate" 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-form-item label="停用提交人" size="default" prop="stopSubmitPersonName">
            <el-input v-model="form.stopSubmitPersonName" placeholder="请选择">
@@ -179,7 +181,7 @@
            </el-input>
         </el-form-item>
         <el-form-item label="停用提交日期" size="default" prop="stopSubmitDate">
            <el-date-picker v-model="form.stopSubmitDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
            <el-date-picker v-model="form.stopSubmitDate" 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-form-item label="恢复理由" size="default" prop="recoveryReason">
            <el-input v-model="form.recoveryReason" placeholder="请填写恢复理由" />
@@ -188,6 +190,7 @@
            <el-date-picker
               v-model="form.recoverySubmitDate"
               format="YYYY-MM-DD HH:mm:ss"
               value-format="YYYY-MM-DD HH:mm:ss"
               type="datetime"
               placeholder="选择日期时间"
               style="width: 100%"
@@ -197,6 +200,7 @@
            <el-date-picker
               v-model="form.actualRecoveryDate"
               format="YYYY-MM-DD HH:mm:ss"
               value-format="YYYY-MM-DD HH:mm:ss"
               type="datetime"
               placeholder="选择日期时间"
               style="width: 100%"
@@ -209,6 +213,7 @@
            <el-date-picker
               v-model="form.destorySubmitDate"
               format="YYYY-MM-DD HH:mm:ss"
               value-format="YYYY-MM-DD HH:mm:ss"
               type="datetime"
               placeholder="选择日期时间"
               style="width: 100%"
@@ -218,6 +223,7 @@
            <el-date-picker
               v-model="form.actualDestoryDate"
               format="YYYY-MM-DD HH:mm:ss"
               value-format="YYYY-MM-DD HH:mm:ss"
               type="datetime"
               placeholder="选择日期时间"
               style="width: 100%"
@@ -231,7 +237,7 @@
               <el-table-column align="center" prop="takecareMemo" label="保养情况" />
               <el-table-column align="center" prop="leadingPersonName" label="保养负责人" />
               <el-table-column align="center" prop="takecareDate" :formatter="timeDate" label="保养日期" />
               <el-table-column align="center" prop="leadingPersonDepartmentId" label="保养负责人单位" />
               <el-table-column align="center" prop="leadingPersonDepartmentName" label="保养负责人单位" />
               <el-table-column align="center" label="操作">
                  <template #default="scope">
                     <el-button link type="primary" @click="openMaintenance('查看', scope.row)" size="small">查看</el-button>
@@ -244,11 +250,16 @@
         <el-tab-pane label="设备检测" name="second">
            <el-button type="primary" size="default" :disabled="disabled" @click="openDetect('新增', '')">新增</el-button>
            <el-table :data="form.testDetailList" style="width: 100%">
               <el-table-column align="center" prop="testPersonId" label="检测人" />
               <el-table-column align="center" prop="testPersonName" label="检测人" />
               <el-table-column align="center" prop="testDate" :formatter="timeDate" label="检测日期" />
               <el-table-column align="center" prop="testPersonDepartmentId" label="检测人单位" />
               <el-table-column align="center" prop="testPersonDepartmentName" label="检测人单位" />
               <el-table-column align="center" prop="testMemo" label="检测内容" />
               <el-table-column align="center" prop="testResult" label="检测结果" />
               <el-table-column align="center" label="检测结果" >
                  <template #default="scope">
                     <span v-if="scope.row.testResult==1">成功</span>
                     <span v-if="scope.row.testResult==2">失败</span>
                  </template>
               </el-table-column>
               <el-table-column align="center" prop="testStatus" label="检测状态" />
               <el-table-column align="center" label="操作">
                  <template #default="scope">
@@ -263,10 +274,15 @@
            <el-button type="primary" size="default" :disabled="disabled" @click="openRepair('新增', '')">新增</el-button>
            <el-table :data="form.repaireDetailList" style="width: 100%">
               <el-table-column align="center" prop="exceptionInfo" label="设施异常项" />
               <el-table-column align="center" prop="repairStatus" label="维修状态" />
               <el-table-column align="center"  label="维修状态">
               <template #default="scope">
                     <span v-if="scope.row.repairStatus==1">维修中</span>
                     <span v-if="scope.row.repairStatus==2">已修好</span>
                  </template>
               </el-table-column>
               <el-table-column align="center" prop="repairMemo" label="维修情况" />
               <el-table-column align="center" prop="repairPersonId" label="维修负责人" />
               <el-table-column align="center" prop="repairPersonDepartmentId" label="维修负责人单位" />
               <el-table-column align="center" prop="repairPersonName" label="维修负责人" />
               <el-table-column align="center" prop="repairPersonDepartmentName" label="维修负责人单位" />
               <el-table-column align="center" prop="repairStartDate" :formatter="timeDate" label="维修开始日期" />
               <el-table-column align="center" prop="repairEndDate" :formatter="timeDate" label="维修结束日期" />
               <el-table-column align="center" label="操作">
@@ -334,6 +350,7 @@
      </template>
   </el-dialog>
   <categoryDailog ref="categoryShow"></categoryDailog>
   <categoryDailog ref="categoryShow" @typeId="Tid"></categoryDailog>
   <regionDailog ref="regionShow"></regionDailog>
   <DailogSearchUser ref="UserShow" @SearchUser="userId"></DailogSearchUser>
   <maintenanceDailog ref="maintenanceShow" @onMain="main"></maintenanceDailog>
@@ -356,6 +373,7 @@
import type { UploadProps, UploadUserFile } from 'element-plus';
import { facilityManagementApi } from '/@/api/facilityManagement';
import { goalManagementApi } from '/@/api/goalManagement';
import { deepClone } from '/@/utils/other';
export default defineComponent({
   components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
   setup(props, { emit }) {
@@ -459,7 +477,7 @@
         repaireDetailList: [],
         equipmentTypeId: 1,
         equipmentTypeId: '',
         useDate: '',
@@ -484,10 +502,12 @@
         delTestDetails: '',
      });
      const titles = ref();
      const titleT = ref();
      const disabled = ref(false);
      const Dailogtype = ref(false);
      const openDailog = (title: string, type: boolean, id: number, num: any) => {
         dialogVisible.value = true;
         titleT.value = title;
         department();
         Dailogtype.value = type;
         if (num == 0) {
@@ -519,6 +539,7 @@
         qUsage: [],
         model: [],
         equipmentTypeId: [],
         equipmentTypeName: [{ required: true, message: '类型/类别外键不能为空', trigger: 'change' }],
         departmentId: [],
         setPart: [],
         produceTime: [],
@@ -571,6 +592,13 @@
               form.value.delRepaireDetails = deleteCId.value.toString();
               form.value.delCheckStandardeDetails = deleteDId.value.toString();
               dialogVisible.value = false;
               delete form.value.equipmentTypeName;
               delete form.value.departmentName;
               delete form.value.leadingPersonDepartmentName;
               delete form.value.leadingDepartmentName;
               if (titleT.value == '新建') {
                  delete form.value.id;
               }
               facilityManagementApi()
                  .getequipmentInfoAddOrUpdate(form.value)
                  .then((res) => {
@@ -688,28 +716,32 @@
         deleteDId.value.push(tag.id);
      };
      // 回传
      const main = (val: any) => {
      const main = (data: any) => {
         const val = deepClone(data);
         if (index.value == -1) {
            form.value.takecareDetailList.push(val);
         } else {
            form.value.takecareDetailList[index.value] = val;
         }
      };
      const delect = (val: any) => {
      const delect = (data: any) => {
         const val = deepClone(data);
         if (index.value == -1) {
            form.value.testDetailList.push(val);
         } else {
            form.value.testDetailList[index.value] = val;
         }
      };
      const Repair = (val: any) => {
      const Repair = (data: any) => {
         const val = deepClone(data);
         if (index.value == -1) {
            form.value.repaireDetailList.push(val);
         } else {
            form.value.repaireDetailList[index.value] = val;
         }
      };
      const Stand = (val: any) => {
      const Stand = (data: any) => {
         const val = deepClone(data);
         if (index.value == -1) {
            form.value.checkStandardeDetailList.push(val);
         } else {
@@ -725,6 +757,11 @@
            form.value.stopSubmitPersonId = val.uid;
            form.value.stopSubmitPersonName = val.realName;
         }
      };
      const Tid = (data: any) => {
         form.value.equipmentTypeId = data.id;
         form.value.equipmentTypeName = data.typeName;
         form.value.positionNum = data.sortNum;
      };
      //全屏
      const full = ref(false);
@@ -754,6 +791,8 @@
      };
      const data = ref();
      return {
         Tid,
         deepClone,
         rules,
         userId,
         department,