Newer
Older
carbon-metering-front / src / views / energyConsumption / data / components / detailDialog.vue
lyg on 1 Nov 4 KB 需求修改
<script lang="ts" setup name="EnergyConsumptionDetail">
import { detailEnergyConsumption } from '@/api/api/energy/data'
const dataFormRef = ref()
const dialogFormVisible = ref(false) // 对话框是否显示
const dataForm = ref({
  deptName: '',
  createTime: '',
  electricityUsage: '',
  buildingHeatingCosts: '',
  buildingCarbonEmissions: '',
  vehicleCosts: '',
  gasUsageFee: '',
  coalUsageFee: '',
  remarks: '',
  gasCarbonEmissions: '',
  coalCarbonEmissions: '',
  electricityCarbonEmissions: '',
  vehicleCarbonEmissions: '',
  totalCarbonEmissions: '',
}) // 表单

// 初始化对话框
const loading = ref(false)
const initDialog = (id: string) => {
  dialogFormVisible.value = true
  loading.value = true
  detailEnergyConsumption({ id }).then((res) => {
    dataForm.value = res.data
    loading.value = false
  }).catch(() => {
    loading.value = false
  })
}
defineExpose({
  initDialog,
})

const cancel = () => {
  dialogFormVisible.value = false
  // this.$emit('watchChild')
}
</script>

<template>
  <el-dialog v-model="dialogFormVisible" title="详情" append-to-body>
    <el-form ref="dataFormRef" v-loading="loading" :model="dataForm" label-position="right" label-width="180px" disabled>
      <el-row :gutter="24">
        <el-col :span="12">
          <el-form-item label="单位名称">
            <el-input v-model.trim="dataForm.deptName" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="创建时间">
            <el-input v-model.trim="dataForm.createTime" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="办公楼用电(千瓦时)">
            <el-input v-model.trim="dataForm.electricityUsage" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="办公楼取暖费(元)">
            <el-input v-model.trim="dataForm.buildingHeatingCosts" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="办公楼用电碳排(KG)">
            <el-input v-model.trim="dataForm.electricityCarbonEmissions" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="办公楼取暖费碳排(KG)">
            <el-input v-model.trim="dataForm.buildingCarbonEmissions" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="生产车辆用油费(元)">
            <el-input v-model.trim="dataForm.vehicleCosts" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="生产车辆用油碳排(KG)">
            <el-input v-model.trim="dataForm.vehicleCarbonEmissions" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="燃气使用费(元)">
            <el-input v-model.trim="dataForm.gasUsageFee" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="煤炭使用费(元)">
            <el-input v-model.trim="dataForm.coalUsageFee" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="燃气使用碳排(KG)">
            <el-input v-model.trim="dataForm.gasCarbonEmissions" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="煤炭使用碳排(KG)">
            <el-input v-model.trim="dataForm.coalCarbonEmissions" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>

        <el-col :span="12">
          <el-form-item label="总体碳排(KG)">
            <el-input v-model.trim="dataForm.totalCarbonEmissions" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="备注">
            <el-input v-model.trim="dataForm.remarks" type="text" style="width: 100%;" />
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
    <template #footer>
      <div class="dialog-footer">
        <el-button type="primary" @click="cancel">
          确认
        </el-button>
      </div>
    </template>

    <area-select-tree ref="areaSelect" @selectDone="changeParent" />
  </el-dialog>
</template>

<style lang="scss" scoped>
.el-dialog {
  width: 700px;
}

.el-select {
  width: 100%;
}
</style>