|
@@ -0,0 +1,267 @@
|
|
|
|
+<template>
|
|
|
|
+ <div class="list-detail">
|
|
|
|
+ <header>
|
|
|
|
+ <div class="header-row">
|
|
|
|
+ <h1>上报进度</h1>
|
|
|
|
+ </div>
|
|
|
|
+ <img src="../../../assets/imgs/0531/title-underline.png" alt="">
|
|
|
|
+ </header>
|
|
|
|
+ <main>
|
|
|
|
+ <div class="detail-main">
|
|
|
|
+ <div class="detail-sub-title">基本信息</div>
|
|
|
|
+ <div v-if="route.params.time === '0'">
|
|
|
|
+ <el-row :gutter="24">
|
|
|
|
+ <el-col :span="12" class="card-descriptions">
|
|
|
|
+ <el-card shadow="never">
|
|
|
|
+ <el-descriptions title="" :column="1" direction="vertical" >
|
|
|
|
+ <el-descriptions-item label="项目名称:">XXXXXXXX项目</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="市级批复文号:">xxxxxxx</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="区级批复文号:">xxxxxxx</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="乡镇:">xx镇</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="年份:">2023年</el-descriptions-item>
|
|
|
|
+ </el-descriptions>
|
|
|
|
+ </el-card>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-divider direction="vertical" border-style="dashed" />
|
|
|
|
+ <el-col :span="10" class="card-descriptions">
|
|
|
|
+ <el-card shadow="never">
|
|
|
|
+ <el-descriptions title="" :column="1" direction="vertical" >
|
|
|
|
+ <el-descriptions-item label="实施单位:">XXXXXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="建设周期(月):">2023</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="行业领域:">XXXXXXXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="责任科室:">XXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="建设内容:">XXXXXXXXXXXXXX</el-descriptions-item>
|
|
|
|
+ </el-descriptions>
|
|
|
|
+ </el-card>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="route.params.time === '1'">
|
|
|
|
+ <el-row :gutter="24">
|
|
|
|
+ <el-col :span="12" class="card-descriptions">
|
|
|
|
+ <el-card shadow="never">
|
|
|
|
+ <el-descriptions title="" :column="1" direction="vertical" >
|
|
|
|
+ <el-descriptions-item label="项目名称:">XXXXXXXX项目</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="市级批复文号:">xxxxxxx</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="区级批复文号:">xxxxxxx</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="乡镇:">xx镇</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="年份:">2023年</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="实施单位:">XXXXXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="建设周期(月):">2023</el-descriptions-item>
|
|
|
|
+ </el-descriptions>
|
|
|
|
+ </el-card>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-divider direction="vertical" border-style="dashed" />
|
|
|
|
+ <el-col :span="10" class="card-descriptions">
|
|
|
|
+ <el-card shadow="never">
|
|
|
|
+ <el-descriptions title="" :column="1" direction="vertical" >
|
|
|
|
+ <el-descriptions-item label="行业领域:">蔬菜</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="责任科室:">蔬菜科</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="乡镇分管领导:">XXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="乡镇项目联络员:">XXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="联系电话:">XXXXX</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item label="建设内容:">XXXXXXXXXXXXXXXXXXXXX</el-descriptions-item>
|
|
|
|
+ </el-descriptions>
|
|
|
|
+ </el-card>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="detail-sub-title">信息上报</div>
|
|
|
|
+
|
|
|
|
+ <el-form :model="form.basicInfo" :rules="formRules.basicInfo" label-position="top" ref="basicInfo" class="form-detail">
|
|
|
|
+ <template v-if="route.params.time ==='0'">
|
|
|
|
+ <el-form-item label="乡镇分管领导" prop="entryName">
|
|
|
|
+ <el-input v-model="form.basicInfo.entryName" placeholder="请输入乡镇分管领导" clearable ></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="乡镇项目联络员" prop="year">
|
|
|
|
+ <el-input v-model="form.basicInfo.entryName" placeholder="请输入乡镇项目联络员" clearable></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="联系电话" prop="industrySector">
|
|
|
|
+ <el-input v-model="form.basicInfo.entryName" placeholder="请输入联系电话" clearable></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="项目建设状态" prop="streetTown">
|
|
|
|
+ <el-select v-model="form.basicInfo.streetTown" placeholder="前期准备中" clearable :options="select_class">
|
|
|
|
+ <el-option v-for="item in select_class" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </template>
|
|
|
|
+ <el-form-item label="整体进度(%)" prop="entryName">
|
|
|
|
+ <el-input v-model="form.basicInfo.entryName" placeholder="请输入整体进度" clearable></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="预计验收时间" prop="year">
|
|
|
|
+ <el-input v-model="form.basicInfo.entryName" placeholder="请输入预计验收时间" clearable></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="是否存在影响进度的情况(请填写否或详细说明)" prop="industrySector">
|
|
|
|
+ <el-input v-model="form.basicInfo.entryName" placeholder="请输入联系电话" clearable></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="施工现场照片" prop="relatedDesignDrawings">
|
|
|
|
+ <el-input v-model="form.basicInfo.relatedDesignDrawings" placeholder="请上传项目施工形象进度" clearable>
|
|
|
|
+ <template #append>
|
|
|
|
+ <img src="../../../assets/imgs/0531/upload.png" alt="" width="12" height="12">
|
|
|
|
+ <el-button type="primary" class="btn-default">上传</el-button>
|
|
|
|
+ </template>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ <el-form-item label="项目建设地块绘制" prop="spatialPosition">
|
|
|
|
+ <el-input v-model="form.basicInfo.spatialPosition" placeholder="" clearable>
|
|
|
|
+ <template #append>
|
|
|
|
+ <el-button type="primary" class="btn-default">请绘制项目建设地块</el-button>
|
|
|
|
+ </template>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="佐证材料上传" prop="relatedDesignDrawings">
|
|
|
|
+ <el-input v-model="form.basicInfo.relatedDesignDrawings" placeholder="请上传开工报告、施工合同等佐证材料" clearable>
|
|
|
|
+ <template #append>
|
|
|
|
+ <img src="../../../assets/imgs/0531/upload.png" alt="" width="12" height="12">
|
|
|
|
+ <el-button type="primary" class="btn-default">上传</el-button>
|
|
|
|
+ </template>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ <el-form-item label="现阶段具体情况" prop="constructionContent" class="item-row">
|
|
|
|
+ <el-input type="textarea" :rows="4" v-model="form.basicInfo.constructionContent" placeholder="请输入建设内容"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ <el-form-item label="下阶段预计推进情况" prop="constructionContent" class="item-row">
|
|
|
|
+ <el-input type="textarea" :rows="4" v-model="form.basicInfo.constructionContent" placeholder="请输入建设内容"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ </el-form>
|
|
|
|
+ <div style="text-align: center;">
|
|
|
|
+ <el-button type="primary" class="button-detail">提 交</el-button>
|
|
|
|
+ <el-button type="primary" class="button-detail">保 存</el-button>
|
|
|
|
+ <el-button class="button-detail" @click="close">返 回</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </main>
|
|
|
|
+ </div>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+<script setup>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ import {useRoute, useRouter} from "vue-router";
|
|
|
|
+ import {reactive} from "@vue/reactivity";
|
|
|
|
+ import createEnum from "../../../utils/data/create-enum";
|
|
|
|
+
|
|
|
|
+ const route = useRoute()
|
|
|
|
+ const router = useRouter()
|
|
|
|
+
|
|
|
|
+ const form = reactive({
|
|
|
|
+ basicInfo: {
|
|
|
|
+ apiName: '',
|
|
|
|
+ apiClass: '',
|
|
|
|
+ apiDes: '',
|
|
|
|
+ },
|
|
|
|
+ })
|
|
|
|
+ const select_class = createEnum([
|
|
|
|
+ {value: 1, label: '111'},
|
|
|
|
+ {value: 2, label: '222'},
|
|
|
|
+ {value: 3, label: '333'},
|
|
|
|
+ {value: 4, label: '444'},
|
|
|
|
+ {value: 5, label: '555'},
|
|
|
|
+ {value: 6, label: '666'}
|
|
|
|
+ ])
|
|
|
|
+ const formRules = reactive({
|
|
|
|
+ basicInfo: {
|
|
|
|
+ entryName: { required: true, message: '请输入项目名称', trigger: 'blur' },
|
|
|
|
+ year: { required: true, message: '请选择年份', trigger: 'change' },
|
|
|
|
+ industrySector: { required: true, message: '请选择行业领域', trigger: 'change' },
|
|
|
|
+ streetTown: { required: true, message: '请选择所属街道', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ constructionCycle: { required: true, message: '请输入建设周期', trigger: 'blur' },
|
|
|
|
+ constructionScale: { required: true, message: '请输入建设规模', trigger: 'blur' },
|
|
|
|
+ constructionLand: { required: true, message: '请输入建设用地性质', trigger: 'blur' },
|
|
|
|
+ implementationAddress: { required: true, message: '请输入实施地址', trigger: 'blur' },
|
|
|
|
+
|
|
|
|
+ totalInvestment: { required: true, message: '请输入总投资', trigger: 'blur' },
|
|
|
|
+ centre: { required: true, message: '请输入中央财政金额', trigger: 'blur' },
|
|
|
|
+ municipalLevel: { required: true, message: '请输入市级财政金额', trigger: 'blur' },
|
|
|
|
+ districtLevel: { required: true, message: '请输入区级财政金额', trigger: 'blur' },
|
|
|
|
+
|
|
|
|
+ townLevel: { required: true, message: '请输入镇级财政金额', trigger: 'blur' },
|
|
|
|
+ raiseIndependently: { required: true, message: '请输入自筹资金', trigger: 'blur' },
|
|
|
|
+ classII: { required: true, message: '请输入二类费用', trigger: 'blur' },
|
|
|
|
+ townshipHead: { required: true, message: '请输入乡镇负责人', trigger: 'blur' },
|
|
|
|
+
|
|
|
|
+ townshipLeadersContact: { required: true, message: '请输入乡镇负责人联系方式', trigger: 'blur' },
|
|
|
|
+ implementationUnitPerson: { required: true, message: '请输入实施单位负责人', trigger: 'blur' },
|
|
|
|
+ implementationUnitContact: { required: true, message: '请输入实施单位负责人联系方式', trigger: 'blur' },
|
|
|
|
+ assetsOfTheProjectUnit: { required: true, message: '请选择是否符合申报要求', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ agriculturalRelatedPlanning: { required: true, message: '请选择是否符合有关规划', trigger: 'change' },
|
|
|
|
+ withFinancialSupport: { required: true, message: '请选择是否有扶持', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ spatialPosition: { required: true, message: '请绘制项目位置', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ constructionContent: { required: true, message: '请输入建设内容', trigger: 'blur' },
|
|
|
|
+
|
|
|
|
+ apiName: { required: true, message: '请输入单位名称', trigger: 'blur' },
|
|
|
|
+ unitName: { required: true, message: '请输入单位代码', trigger: 'blur' },
|
|
|
|
+ registrationTime: { required: true, message: '请输入注册时间', trigger: 'blur' },
|
|
|
|
+ businessLicense: { required: true, message: '请上传营业执照', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ contacts: { required: true, message: '请输入联系人', trigger: 'blur' },
|
|
|
|
+ telephone: { required: true, message: '请输入联系电话', trigger: 'blur' },
|
|
|
|
+ email: { required: true, message: '请输入电子邮件', trigger: 'blur' },
|
|
|
|
+ address: { required: true, message: '请输入通讯地址', trigger: 'blur' },
|
|
|
|
+
|
|
|
|
+ projectPreliminaryDesignReportText: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ lastYearAuditReport: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ investmentEstimationTable: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ letterOfCommitment: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ creditCommitment: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ projectSchedule: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ landTransferAgreement: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ areaMap: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ currentSituationMap: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ planningMap: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ performanceObjectiveTable: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ agriculturalLand: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+ fundingCommitmentLetter: { required: true, message: '请上传文件', trigger: 'change' },
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ })
|
|
|
|
+ function close() {
|
|
|
|
+ router.push({
|
|
|
|
+ name: route.name.slice(0,-5)
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+</script>
|
|
|
|
+
|
|
|
|
+<style lang="scss" scoped>
|
|
|
|
+ :deep(.el-input-group__append) {
|
|
|
|
+ background-color: #00b368;
|
|
|
|
+ color: #fff;
|
|
|
|
+ padding: 0;
|
|
|
|
+ }
|
|
|
|
+ .form-item-append {
|
|
|
|
+ position: relative;
|
|
|
|
+ .label-append {
|
|
|
|
+ position: absolute;
|
|
|
|
+ top: -35px;
|
|
|
|
+ right: 0;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ :deep(.card-descriptions) {
|
|
|
|
+ .el-card {
|
|
|
|
+ border: none
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ .el-divider--vertical{
|
|
|
|
+ height:9cm; //更改竖向分割线长度
|
|
|
|
+ }
|
|
|
|
+ :deep(.el-input-group__append) {
|
|
|
|
+ border: 1px solid var(--color-bg-1);
|
|
|
|
+ width: fit-content !important;
|
|
|
|
+ padding: 0 10px;
|
|
|
|
+ }
|
|
|
|
+</style>
|