fuliqi
2024-11-26 bc6168760c6f2fe3113210e35528f818825841f6
投资项目产业政策符合情况页面
1个文件已修改
1个文件已添加
265 ■■■■■ 已修改文件
src/views/projectEngineering/projectLibrary/component/PolicyInfo.vue 259 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/projectEngineering/projectLibrary/projectDetails.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/projectEngineering/projectLibrary/component/PolicyInfo.vue
New file
@@ -0,0 +1,259 @@
<template>
  <div class="policy-info">
    <el-form
      ref="demoFormRef"
      :disabled="disabled"
      :model="investmentProjectPolicyComplianceDTO"
      :rules="rules"
    >
      <el-row :gutter="0">
        <el-col :span="20">
          <el-form-item label="符合行业政策:" label-width="180px" prop="industryPolicy" style="width: 100%">
            <div style="display: flex">
              <file-upload v-model="fileList"
                           :fileType="accept"
                           :isShowTip="false"/>
              <div v-if="fileList.length === 0" style="color: #a9afbc; margin-left: 10px">
                支持下载PDF格式文件
              </div>
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item class="custom-form-item" label=" " label-position="right" label-width="180px" style="width: 100%; margin-top: -20px">
            <div class="input-row policy-items">
              <el-radio-group v-model="investmentProjectPolicyComplianceDTO.belongsToIndustryAdjustmentDirectory" class="radio-item">
                <el-radio size="large" style="margin-bottom: 25px" :label="true">属于《产业结构调整指导目录》下的项目 </el-radio>
                <el-radio size="large" :label="false">属于未列入《产业结构调整指导目录》的允许类项目</el-radio>
              </el-radio-group>
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item class="custom-form-item" label=" " label-width="180px" style="width: 100%; margin-top: -20px; height: 50px">
            <div class="input-row policy-items">
              <el-checkbox
                v-model="investmentProjectPolicyComplianceDTO.belongsToWesternEncouragedDirectory"
                label="属于《西部地区鼓励类产业目录》的项目"
                size="large"
                style="margin-right: 70px"
              />
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item class="custom-form-item" label=" " label-width="180px" style="width: 100%; margin-top: -20px; height: 30px">
            <div class="input-row policy-items" style="height: 52px">
              <el-checkbox
                v-model="investmentProjectPolicyComplianceDTO.notBannedOrControlledProject"
                disabled
                label="不属于产业政策禁止投资建设或实行核准、审批管理的项目"
                size="large"
                style="margin-right: 70px"
                :value="true"
              />
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item class="custom-form-item" label="填报信息真实" label-width="180px" style="width: 100%; margin-top: 20px">
            <div class="policy-items">
              <div style="color: #a9afbc">备案者承诺:</div>
              <el-checkbox
                v-model="investmentProjectPolicyComplianceDTO.informationIsTrue"
                disabled
                label="所提供的备案信息是真实、准确、完整和有效的,无隐瞒、虚假和重大造漏之处,对备案项目信息的真实性负责"
                size="large"
                style="margin-right: 70px"
                :value="true"
              />
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item label="专项规划符合情况:" label-width="180px" prop="specialPlanningCompliance" style="width: 100%">
            <div class="input-row">
              <el-input
                v-model.trim="investmentProjectPolicyComplianceDTO.specialPlanningCompliance"
                class="input-item"
                maxlength="200"
                placeholder="请输入"
                type="textarea"
              ></el-input>
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item label="项目能耗情况:" label-width="180px" prop="projectEnergyConsumption" style="width: 100%">
            <div class="policy-items" style="height: 320px">
              <div  style="line-height: 20px;color: #a9afbc">
                年综合能源消费量不满1000吨标准煤,且年电力消耗量不满500万千瓦时的图定资产投资项目、以及用能工艺简单、节能潜力小的行业(按照国家发改要指定并公布的具体行业目录)的因定资产投资项目应按照相关节能标准、规范建设,不再单独进行节能审查。
              </div>
              <div style="display: flex;width: 100%;">
                <el-radio-group v-model="investmentProjectPolicyComplianceDTO.energyCheck" style="display: flex;flex-direction: column;margin-top: 10px">
                  <el-radio size="large" style="margin-bottom: 20px" :label="true"> 需进行节能审查的项目,不在填报《项目能源消费情况表》 </el-radio>
                  <el-radio size="large" style="margin-bottom: 10px" :label="false"> 不单独进行节能审查的项目,需填报《项目能源消费情况表》 </el-radio>
                </el-radio-group>
              </div>
              <div style="display: flex;gap: 2px">
                <div style="width: 160px">1.项目年综合能源消费量:</div>
                <el-input
                  style="width: 300px"
                  v-model.trim="investmentProjectPolicyComplianceDTO.annualEnergyConsumption"
                  maxlength="255"
                  placeholder="请输入"
                ></el-input>
                (标准煤当量值)
              </div>
              <div style="display: flex;gap: 2px;margin-top: 10px">
                <div style="width: 160px">2.项目年电力消耗量:</div>
                <el-input
                  style="width: 300px"
                  v-model.trim="investmentProjectPolicyComplianceDTO.annualElectricityConsumption"
                  maxlength="255"
                  placeholder="请输入"
                ></el-input>
                (标准煤当量值)
              </div>
              <div style="line-height: 20px;color: #a9afbc;margin-top: 5px">不再单独进行节能审查的类型如下:</div>
              <div class="input-row">
                <el-radio-group v-model="investmentProjectPolicyComplianceDTO.noOnlyCheckType" class="radio-item">
                  <el-radio size="large" :label="1">
                    年综合能源消费量不满1000吨标准煤且年电力消费量不满500万千瓦时的固定资产投资项目
                  </el-radio>
                  <el-radio size="large" style="margin-top: 20px" :label="2">
                    用能工艺简单,节能潜力小的行业(具体行业目录由国家发展改革委制定公布并适时更新)的固定资产投资项目
                  </el-radio>
                </el-radio-group>
              </div>
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="20">
          <el-form-item label="备注:" label-width="180px" prop="remark" style="width: 100%">
            <div class="input-row">
              <el-input
                v-model.trim="investmentProjectPolicyComplianceDTO.remark"
                class="item"
                clearable
                maxlength="255"
                placeholder="请输入"
                type="textarea"
              />
            </div>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
  </div>
</template>
<script>
export default {
  name: 'PolicyComplianceForm',
  props: {
    disabled: {
      type: Boolean,
      default: false,
      required: true
    }
  },
  data() {
    return {
      investmentProjectPolicyComplianceDTO: {
        fileIdList: [],
        belongsToIndustryAdjustmentDirectory: null,
        belongsToWesternEncouragedDirectory: false,
        notBannedOrControlledProject: true,
        informationIsTrue: true,
        specialPlanningCompliance: '',
        energyCheck: null,
        annualEnergyConsumption: '',
        annualElectricityConsumption: '',
        noOnlyCheckType: null,
        remark: ''
      },
      fileList: [],
      accept: ['pdf'],
      rules: {
        industrialPolicyProhibition: [{ required: true, message: '请选择', trigger: 'change' }],
        reportedInformation: [{ required: true, message: '请选择', trigger: 'change' }]
      }
    };
  },
  watch: {
    fileList: {
      deep: true,
      handler(newFileList) {
        if (newFileList) {
          this.investmentProjectPolicyComplianceDTO.fileIdList = newFileList.map(item => item.fileId);
        }
      }
    }
  },
  methods: {
    handleRemove(file) {
      if (file) {
        this.investmentProjectPolicyComplianceDTO.fileIdList = this.fileList.map(item => item.fileId);
        localStorage.setItem('fileList', JSON.stringify(file));
      }
    },
    handleAdd(file) {
      if (file) {
        localStorage.setItem('fileList', JSON.stringify(file));
      }
    }
  }
};
</script>
<style lang="scss" scoped>
/* Styles remain the same as in the original component */
.item {
  width: 100%;
}
.policy-info-items {
  width: 100%;
  height: 100px;
  border: 1px solid #dbdeea;
  background-color: #f3f7fc;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.policy-items {
  width: 100%;
  height: 100px;
  padding-left: 10px;
  border: 1px solid #dbdeea;
  background-color: #fff;
}
.radio-item {
  margin-top: 15px;
  display: flex;
  flex-direction: column;
}
.input-row {
  display: flex;
  width: 100%;
  .input-item {
    width: 100%;
  }
}
.custom-form-item {
  ::v-deep .el-form-item__label {
    line-height: 16px;
    text-align: right;
  }
}
</style>
src/views/projectEngineering/projectLibrary/projectDetails.vue
@@ -32,8 +32,8 @@
import BasicInfo from '@/views/projectEngineering/projectLibrary/component/BasicInfo';
import InvestInfo from '@/views/projectEngineering/projectLibrary/component/InvestInfo';
import InvestmentFunds from '@/views/projectEngineering/projectLibrary/component/investmentFunds';
import LegalPerson from '@/views/projectEngineering/projectLibrary/component//legalPerson';
// import PolicyInfo from '@/components/PolicyInfo.vue';
import LegalPerson from '@/views/projectEngineering/projectLibrary/component/legalPerson';
import PolicyInfo from '@/views/projectEngineering/projectLibrary/component/PolicyInfo';
// import DocumentsInfo from '@/components/DocumentsInfo.vue';
import { addProject, getProject, updateProject, getProjectCode } from '@/api/projectInfo';
@@ -68,7 +68,7 @@
        {
          label: '投资项目产业政策符合情况',
          value: '投资项目产业政策符合情况',
          componentName: 'PolicyInfo'
          componentName: PolicyInfo
        },
        {
          label: '相关文书',