Crunchy
2025-04-29 e5454b769d44a34af423bf87ac8a740bf8c20341
src/views/CNAS/resourceDemand/device/component/addYearPlanDia.vue
@@ -12,7 +12,8 @@
        </el-date-picker>
      </div>
      <div style="margin: 10px 0">
        <el-table id="templateParamTable" ref="yearTable" :data="calibrationPlanDetailList" height="300px"
        <el-table id="templateParamTable" ref="yearTable" :data="calibrationPlanDetailList" height="560px"
                  v-loading="yearTableLoading"
                  :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border
          row-key="deviceId" style="width: 100% ;">
          <el-table-column label="设备名称及型号" min-width="190" prop="deviceName">
@@ -115,7 +116,8 @@
        planId: '',
        calibrationPlanDetailList: [],
      },
      operationType: ''
      operationType: '',
      yearTableLoading: false
    }
  },
  mounted() {
@@ -129,21 +131,26 @@
        this.form = {
          planName: '',
          planYear: '',
          examinePlanDetailsList: [],
          calibrationPlanDetailList: [],
        }
        this.calibrationPlanDetailList = []
      } else {
        this.getRowInfo(row)
      }
      this.applicationForm = true
    },
    getRowInfo(row) {
      this.yearTableLoading = true
      getDeviceCalibrationPlan({ planId: row.planId }).then(res => {
        this.yearTableLoading = false
        if (res.code == 200) {
          this.calibrationPlanDetailList = res.data.calibrationPlanDetailList
          this.form.planName = res.data.planName
          this.form.planYear = res.data.planYear
          this.form.planId = res.data.planId
        }
      }).catch(err => {
        this.yearTableLoading = false
      })
    },
    // 添加设备
@@ -156,9 +163,19 @@
    },
    changeMachineName() {
      this.selectionRows.map(val => {
        // 将 val.nextCalibrationDate 转换为 Date 对象并减去 5 天
        let nextCalibrationDate = val.nextCalibrationDate ? new Date(val.nextCalibrationDate) : null;
        if (nextCalibrationDate) {
          nextCalibrationDate.setDate(nextCalibrationDate.getDate() - 5); // 减去 5 天
        }
        this.calibrationPlanDetailList.push({
          deviceId: val.id, deviceName: val.label, deviceNumber: val.value,
          specificationModel: val.specificationModel, verificationCycles: val.calibrationDate, lastDate: val.lastCalibrationDate.substring(0, 10), planDate: val.nextCalibrationDate.substring(0, 10)
          specificationModel: val.specificationModel,
          verificationCycles: val.calibrationDate,
          lastDate: val.lastCalibrationDate && val.lastCalibrationDate.substring(0, 10),
          planDate: nextCalibrationDate ? formatDate(nextCalibrationDate) : null,
          verificationUnit: val.calibrationServices,
          deviceAmount: 1
        })
      })
      this.addEquipDia = false
@@ -238,6 +255,13 @@
    },
  },
}
// 格式化日期为 YYYY-MM-DD 格式
function formatDate(date) {
  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要+1
  const day = String(date.getDate()).padStart(2, '0');
  return `${year}-${month}-${day}`;
}
</script>
<style scoped></style>