zouling há 1 mês atrás
pai
commit
8e3b465d76

+ 26 - 16
src/components/FileUploads/index.vue

@@ -29,16 +29,19 @@
     </el-upload>
 
     <!-- 文件列表 -->
-    <transition-group ref="uploadFileList" class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul">
-      <li :key="file.url" class="el-upload-list__item ele-upload-list__item-content" v-for="(file, index) in fileList">
-        <el-link :href="`${baseUrl}${file.url}`" :underline="false" target="_blank">
-          <span class="el-icon-document"> {{ getFileName(file.name) }} </span>
-        </el-link>
-        <div class="ele-upload-list__item-content-action">
-          <el-link :underline="false" @click="handleDelete(index)" type="danger" v-if="!disabled">删除</el-link>
-        </div>
-      </li>
-    </transition-group>
+    <ul ref="uploadFileList" class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul">
+      <template v-for="(file, index) in fileList">
+        <li :key="file.fjUrl" v-if="file.type==data.type&&file.bigType==data.bigType" class="el-upload-list__item ele-upload-list__item-content" >
+          <el-link :href="`${baseUrl}${file.fjUrl}`" :underline="false" target="_blank">
+            <span class="el-icon-document"> {{ getFileName(file.fjName) }} </span>
+          </el-link>
+          <div class="ele-upload-list__item-content-action">
+            <el-link :underline="false" @click="handleDelete(index)" type="danger" v-if="!disabled">删除</el-link>
+          </div>
+        </li>
+      </template>
+
+    </ul>
   </div>
 </template>
 
@@ -54,7 +57,7 @@ export default {
     // 上传接口地址
     action: {
       type: String,
-      default: "/common/upload"
+      default: "/common/uploadNew"
     },
     // 上传携带的参数
     data: {
@@ -92,7 +95,7 @@ export default {
     drag: {
       type: Boolean,
       default: true
-    }
+    },
   },
   data() {
     return {
@@ -107,6 +110,8 @@ export default {
 	  slgegse:''
     }
   },
+  watch:{
+  },
   created() {
   	this.slgegse = this.fileType.join(',')
   },
@@ -119,7 +124,8 @@ export default {
           onEnd: (evt) => {
             const movedItem = this.fileList.splice(evt.oldIndex, 1)[0]
             this.fileList.splice(evt.newIndex, 0, movedItem)
-            this.$emit("input", this.listToString(this.fileList))
+            // this.$emit("input", this.listToString(this.fileList))
+            this.$emit("input", this.fileList)
           }
         })
       })
@@ -181,6 +187,7 @@ export default {
           return false
         }
       }
+      this.data.fileName=file.name
       this.$modal.loading("正在上传文件,请稍候...")
       this.number++
       return true
@@ -197,7 +204,8 @@ export default {
     // 上传成功回调
     handleUploadSuccess(res, file) {
       if (res.code === 200) {
-        this.uploadList.push({ name: res.fileName, url: res.fileName })
+        var obj={ fjName: res.newFileName, fjUrl: res.fileName,bigType:this.data.bigType,type:this.data.type,xmbh:this.data.xmbh }
+        this.uploadList.push(obj)
         this.uploadedSuccessfully()
       } else {
         this.number--
@@ -210,7 +218,8 @@ export default {
     // 删除文件
     handleDelete(index) {
       this.fileList.splice(index, 1)
-      this.$emit("input", this.listToString(this.fileList))
+      // this.$emit("input", this.listToString(this.fileList))
+      this.$emit("input", this.fileList)
     },
     // 上传结束处理
     uploadedSuccessfully() {
@@ -218,7 +227,8 @@ export default {
         this.fileList = this.fileList.concat(this.uploadList)
         this.uploadList = []
         this.number = 0
-        this.$emit("input", this.listToString(this.fileList))
+        // this.$emit("input", this.listToString(this.fileList))
+        this.$emit("input", this.fileList)
         this.$modal.closeLoading()
       }
     },

+ 150 - 16
src/views/project/add.vue

@@ -4,8 +4,8 @@
     <div class="addbox">
       <!-- 步骤条 -->
       <div class="steps">
-        <div class="step" :class="{'finish':active>idx+1,'act':active==idx+1}" v-for="(ite,idx) in step" :key="idx" >
-          <div class="tit flexc"><span>{{idx+1}}</span>{{ite.tit}}
+        <div class="step" :class="{'finish':progress>ite.dictValue,'act':progress==ite.dictValue}" v-for="(ite,idx) in step" :key="idx" >
+          <div class="tit flexc"><span>{{idx+1}}</span>{{ite.dictLabel}}
             <div class="line"></div>
           </div>
           <div class="list" v-for="(aite,aidx) in ite.desc" :key="aidx">
@@ -33,7 +33,7 @@
                   <span>开工环节
                   </span>
                 </div>
-                <second-info-form ref="secondInfo" :info="qyxxinfo"></second-info-form>
+                <second-info-form ref="secondInfo" :info="kghjinfo"></second-info-form>
               </el-tab-pane>
               <el-tab-pane  name="third">
                 <div slot="label" class="tab flexc">
@@ -42,7 +42,7 @@
                   <span>建设环节
                   </span>
                 </div>
-                <third-info-form ref="thirdInfo" :info="qyxxinfo"></third-info-form>
+                <third-info-form ref="thirdInfo" :info="jshjinfo"></third-info-form>
                 </el-tab-pane>
               <el-tab-pane  name="fourth">
                 <div slot="label" class="tab flexc">
@@ -72,14 +72,16 @@
   import secondInfoForm from "./secondInfoForm"
   import thirdInfoForm from "./thirdInfoForm"
   import fourthInfoForm from "./fourthInfoForm"
-  import { getXmbh,addQyxx, updateQyxx, delQyxx, getQyxx } from "@/api/zhaoshang/qyxx"
+  import { getXmbh,addQyxx, updateQyxx, delQyxx, getQyxx,listQyxx } from "@/api/zhaoshang/qyxx"
+  import {addKgxx, updateKgxx, delKgxx, getKgxx,listKgxx } from "@/api/zhaoshang/kgxx"
+  import {addJsxx, updateJsxx, delJsxx, getJsxx,listJsxx } from "@/api/zhaoshang/jsxx"
+  import {addTcxx, updateTcxx, delTcxx, getTcxx,listTcxx } from "@/api/zhaoshang/tcxx"
   export default{
     components:{
       firstInfoForm,secondInfoForm,thirdInfoForm,fourthInfoForm
     },
     data() {
       return{
-        active:2,
         step:[
           {tit:'立项',desc:[{tit:'新建'},{tit:'审核'}]},
           {tit:'签约',desc:[{tit:'签约双方信息'},{tit:'签约项目信息'},{tit:'附件上传'}]},
@@ -125,13 +127,32 @@
            "tzhszq":null,//投资回收周期
            'fjList':null,//附件列表
         },
+        // 开工
+        kghjinfo: {
+          "xmbh":null,//项目编号
+        },
+        // 建设
+        jshjinfo: {
+          "xmbh":null,//项目编号
+        },
         // 投产
         tchjinfo: {
           "xmbh":null,//项目编号
         },
+
         cylbOptions:[],//产业类型
         qybjOptions:[],//企业背景,
         xmbh:'',
+        ptype:'add',//新增还是修改,
+
+        xmId:'',//项目id,
+        xmbh:'',//项目编号
+        qxtab:[{tit:'签约双方信息'},{tit:'签约项目信息'},{tit:'附件上传'}],
+        kgtab:[{tit:'开工前相关手续办理'},{tit:'开工信息'},{tit:'附件上传'}],
+        sstab:[{tit:'建设时间'},{tit:'建设进度跟踪'},{tit:'附件上传'}],
+        tctab:[{tit:'投产信息'},{tit:'年度统计'},{tit:'附件上传'}],
+        wctab:[{tit:'提交'}],
+        progress:1,
       }
     },
     created() {
@@ -141,7 +162,37 @@
       this.getDicts("enterprise_background").then(response => {
         this.qybjOptions = response.data;
       });
-      this.getXmbh()
+      // 项目进度project_schedule
+      this.getDicts("project_schedule").then(response => {
+        this.step = response.data.map(v => {
+          if(v.dictValue==1){
+            v.desc=this.qxtab
+          }else if(v.dictValue==2){
+            v.desc=this.kgtab
+          }else if(v.dictValue==3){
+            v.desc=this.sstab
+          }else if(v.dictValue==4){
+            v.desc=this.tctab
+          }else if(v.dictValue==5){
+            v.desc=this.wctab
+          }
+        	return {
+        		dictLabel: v.dictLabel,
+        		dictValue: v.dictValue,
+        		desc: v.desc
+        	}
+        })
+        // this.xmjdOptions = response.data;
+      });
+      if(this.$route.query.id){
+        this.ptype='edit'
+        this.xmId=this.$route.query.id;
+        this.xmbh=this.$route.query.xmbh
+        this.getDetail()
+      }else{
+        this.ptype='add';
+         this.getXmbh()
+      }
     },
     mounted() {
       // 获取当前时间
@@ -152,13 +203,13 @@
         var name=e.name;
         console.log(name)
         if(name=='first'){
-
+          this.getQyxxDetail()
         }else if(name=='second'){
-
+          this.getKgxxDetail()
         }else if(name=='third'){
-
+          this.getJsxxDetail()
         }else if(name=='fourth'){
-          
+          this.getTcxxDetail()
         }
       },
       getXmbh(){
@@ -182,23 +233,106 @@
         return yearStr
 			},
       getSubmitqxyy(params){
-          console.log(params)
           var info=JSON.parse(JSON.stringify(params))
-          if(this.type=='add'){
+          if(this.ptype=='add'){
             addQyxx(info).then(res=>{
               if(res.code==200){
-
+                 this.$message.success('保存成功');
               }
             })
           }else{
             updateQyxx(info).then(res=>{
               if(res.code==200){
-
+                this.$message.success('修改成功');
               }
             })
           }
-
       },
+      getDetail(){
+        getQyxx(this.xmId).then(res=>{
+          if(res.code==200){
+            this.qyxxinfo=res.data;
+            this.xmbh=res.data.xmbh;
+            this.progress=Number(res.data.progress)
+          }
+        })
+      },
+      //签约
+      getQyxxDetail(){
+        var params={
+          xmbh:this.xmbh
+        }
+        listQyxx(params).then(res=>{
+          if(res.code==200){
+            if(res.rows&&res.rows.length){
+              this.qyxxinfo=res.rows[0]
+            }else{
+              var obj={
+                xmbh:this.xmbh,
+                id:-1
+              }
+              this.qyxxinfo=JSON.parse(JSON.stringify(obj));
+            }
+          }
+        })
+      },
+      // 开工
+      getKgxxDetail(){
+        var params={
+          xmbh:this.xmbh
+        }
+        listKgxx(params).then(res=>{
+          if(res.code==200){
+            if(res.rows&&res.rows.length){
+              this.kghjinfo=res.rows[0]
+            }else{
+              var obj={
+                xmbh:this.xmbh,
+                id:-1
+              }
+              this.kghjinfo=JSON.parse(JSON.stringify(obj));
+            }
+          }
+        })
+      },
+      // 建设
+      getJsxxDetail(){
+        var params={
+          xmbh:this.xmbh
+        }
+        listJsxx(params).then(res=>{
+          if(res.code==200){
+            if(res.rows&&res.rows.length){
+              this.jshjinfo=res.rows[0]
+            }else{
+              var obj={
+                xmbh:this.xmbh,
+                id:-1
+              }
+              this.jshjinfo=JSON.parse(JSON.stringify(obj));
+            }
+          }
+        })
+      },
+      // 投产
+      getTcxxDetail(){
+        var params={
+          xmbh:this.xmbh
+        }
+        listTcxx(params).then(res=>{
+          if(res.code==200){
+            if(res.rows&&res.rows.length){
+              this.tchjinfo=res.rows[0]
+            }else{
+              var obj={
+                xmbh:this.xmbh,
+                id:-1
+              }
+              this.tchjinfo=JSON.parse(JSON.stringify(obj));
+            }
+          }
+        })
+      }
     }
   }
 </script>

+ 83 - 62
src/views/project/firstInfoForm.vue

@@ -5,28 +5,28 @@
         <div class="ftop flexc">
           <img class="timg flex0" src="@/assets/images/project/tabtit.png"/>
           <div class="flex1 tit">签约双方信息</div>
-          <el-button type="primary" plain>保存</el-button>
+          <!-- <el-button type="primary" plain>保存</el-button> -->
         </div>
         <div class="rowbox">
           <el-row  :gutter="22">
             <el-col :span="6">
               <el-form-item label="项目编号" prop="xmbh">
-                <el-input disabled placeholder="内容提交后自动生成" v-model="info.xmbh" />
+                <el-input disabled placeholder="内容提交后自动生成" v-model="info.xmbh" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="18">
               <el-form-item label="项目名称" prop="xmmc">
-                <el-input placeholder="输入项目名称" v-model="info.xmmc" />
+                <el-input placeholder="输入项目名称" v-model="info.xmmc" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="投资方" prop="className">
-                <el-input placeholder="输入投资方名称" v-model="info.tzf" />
+                <el-input placeholder="输入投资方名称" v-model="info.tzf" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="属地政府" prop="functionAuthor">
-                <el-input placeholder="输入属地政府名称" v-model="info.sdzf" />
+                <el-input placeholder="输入属地政府名称" v-model="info.sdzf" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -42,17 +42,17 @@
           <el-row :gutter="22">
             <el-col :span="6">
               <el-form-item label="项目录入人" prop="xmlrr">
-                <el-input placeholder="输入项目录入人" v-model="info.xmlrr" />
+                <el-input placeholder="输入项目录入人" v-model="info.xmlrr" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="职务" prop="job">
-                <el-input placeholder="输入职务" v-model="info.job" />
+                <el-input placeholder="输入职务" v-model="info.job" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="联系方式" prop="lrrPhone">
-                <el-input placeholder="输入联系方式" v-model="info.lrrPhone" />
+                <el-input placeholder="输入联系方式" type="number" v-model="info.lrrPhone" clearable/>
               </el-form-item>
             </el-col>
           </el-row>
@@ -62,7 +62,7 @@
         <div class="ftop flexc mb14">
           <img class="timg flex0" src="@/assets/images/project/tabtit.png"/>
           <div class="flex1 tit">签约项目信息</div>
-          <el-button type="primary" plain>保存</el-button>
+          <!-- <el-button type="primary" plain>保存</el-button> -->
         </div>
         <div class="ftab flexc">
           <div class="line"></div>项目信息
@@ -71,7 +71,7 @@
           <el-row :gutter="22">
             <el-col :span="6">
               <el-form-item label="备案总投资额(亿元)" prop="baztze">
-                <el-input placeholder="输入总投资额" v-model="info.baztze" />
+                <el-input placeholder="输入总投资额" type="number" v-model="info.baztze" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -111,7 +111,7 @@
           <el-row :gutter="22">
             <el-col :span="24">
               <el-form-item label="建设内容" prop="jsnr">
-                <el-input type="textarea" placeholder="输入建设内容…" v-model="info.jsnr"></el-input>
+                <el-input type="textarea" placeholder="输入建设内容…" v-model="info.jsnr" clearable></el-input>
               </el-form-item>
             </el-col>
           </el-row>
@@ -123,12 +123,12 @@
           <el-row :gutter="22">
             <el-col :span="6">
               <el-form-item label="在潜注册公司名称" prop="zcqymc">
-                <el-input placeholder="输入公司名称" v-model="info.zcqymc" />
+                <el-input placeholder="输入公司名称" v-model="info.zcqymc" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="注册资金(万元)" prop="zczj">
-                <el-input placeholder="输入注册资金" v-model="info.zczj" />
+                <el-input placeholder="输入注册资金" type="number" v-model="info.zczj" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -142,19 +142,19 @@
             </el-col>
             <el-col :span="6">
               <el-form-item label="经营范围" prop="jyfw">
-                <el-input placeholder="输入经营范围" v-model="info.jyfw" />
+                <el-input placeholder="输入经营范围" v-model="info.jyfw" clearable/>
               </el-form-item>
             </el-col>
           </el-row>
           <el-row :gutter="22">
             <el-col :span="6">
               <el-form-item label="法定代表人" prop="fddbr">
-                <el-input placeholder="输入法定代表人" v-model="info.fddbr" />
+                <el-input placeholder="输入法定代表人" v-model="info.fddbr" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="联系方式" prop="lxfs">
-                <el-input placeholder="输入联系方式" v-model="info.lxfs" />
+                <el-input placeholder="输入联系方式" type="number" v-model="info.lxfs" clearable/>
               </el-form-item>
             </el-col>
           </el-row>
@@ -166,17 +166,17 @@
           <el-row :gutter="22">
             <el-col :span="6">
               <el-form-item label="供地面积(亩)" prop="gdmj">
-                <el-input placeholder="输入供地面积" v-model="info.gdmj" />
+                <el-input placeholder="输入供地面积" type="number" v-model="info.gdmj" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="租赁厂房面积(平)" prop="zlcf">
-                <el-input placeholder="输入租赁厂房面积" v-model="info.zlcf" />
+                <el-input placeholder="输入租赁厂房面积" type="number" v-model="info.zlcf" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="流转土地面积(亩)" prop="lztd">
-                <el-input placeholder="输入流转土地面积" v-model="info.lztd" />
+                <el-input placeholder="输入流转土地面积" type="number" v-model="info.lztd" clearable/>
               </el-form-item>
             </el-col>
           </el-row>
@@ -188,37 +188,37 @@
           <el-row :gutter="22">
             <el-col :span="6">
               <el-form-item label="实际投资总额(亿元)" prop="sjtzze">
-                <el-input placeholder="输入实际投资总额" v-model="info.sjtzze" />
+                <el-input placeholder="输入实际投资总额" type="number" v-model="info.sjtzze" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="实际固定资产投资额(亿元)" prop="sjgdzctze">
-                <el-input placeholder="输入实际固定资产投资额" v-model="info.sjgdzctze" />
+                <el-input placeholder="输入实际固定资产投资额" type="number" v-model="info.sjgdzctze" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="亩均投资强度(万元/亩)" prop="mjtzqd">
-                <el-input placeholder="输入亩均投资强度" v-model="info.mjtzqd" />
+                <el-input placeholder="输入亩均投资强度" type="number" v-model="info.mjtzqd" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="亩均收入(万元/亩)" prop="mjsr">
-                <el-input placeholder="输入亩均收入" v-model="info.mjsr" />
+                <el-input placeholder="输入亩均收入" type="number" v-model="info.mjsr" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="预计年产值(亿元)" prop="yjncz">
-                <el-input placeholder="输入预计年产值" v-model="info.yjncz" />
+                <el-input placeholder="输入预计年产值" type="number" v-model="info.yjncz" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="预计利税(万元)" prop="yjls">
-                <el-input placeholder="输入预计利税" v-model="info.yjls" />
+                <el-input placeholder="输入预计利税" type="number" v-model="info.yjls" clearable/>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="投资回收周期(年)" prop="tzhszq">
-                <el-input placeholder="输入投资回收周期" v-model="info.tzhszq" />
+                <el-input placeholder="输入投资回收周期" type="number" v-model="info.tzhszq" clearable/>
               </el-form-item>
             </el-col>
           </el-row>
@@ -228,11 +228,11 @@
         <div class="ftop flexc">
           <img class="timg flex0" src="@/assets/images/project/tabtit.png"/>
           <div class="flex1 tit">上传附件</div>
-          <el-button type="primary" plain>保存</el-button>
+          <!-- <el-button type="primary" plain>保存</el-button> -->
         </div>
         <div class="rowbox pt24">
             <el-table  :data="tableData" border style="width: 100%;margin-bottom: 15px;">
-				<el-table-column align="center" prop="index" label="序号" width="10%"></el-table-column>
+                <el-table-column align="center" type="index" label="序号" width="10%"></el-table-column>
                 <el-table-column align="center" prop="fjlx" label="附件类型"  width="30%"> </el-table-column>
                 <el-table-column align="center" label="操作" width="30%">
                   <template slot-scope="scope">
@@ -241,7 +241,11 @@
                        <!-- <div class="imgs">
                          <img class="imga" src="@/assets/images/project/upa.png"/>
                        </div>上传 -->
-					    <fileUploads  v-model="form.reportUrl" />
+					    <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==1"  :data="xmkxx" />
+					    <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==2"  :data="xmxd" />
+					    <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==3"  :data="yyzz" />
+					    <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==4"  :data="fgwlx" />
+					    <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==5"  :data="tzht" />
 					   <!-- <file-upload :limit="1" v-model="form.staffImage"/> -->
                      </div>
                      <!-- <div class="btna flexc cob">
@@ -275,6 +279,7 @@
 </template>
 
 <script>
+import {addQyxx, updateQyxx, delQyxx, getQyxx } from "@/api/zhaoshang/qyxx"
 export default {
   props: {
     info: {
@@ -291,47 +296,36 @@ export default {
     }
   },
   watch: {
-    qyxxinfo: {
+    info: {
       handler(newVal, oldVal) {
-        console.log(1)
-        this.info=newVal
+        this.xmkxx.xmbh=newVal.xmbh
+        this.xmxd.xmbh=newVal.xmbh
+        this.yyzz.xmbh=newVal.xmbh
+        this.fgwlx.xmbh=newVal.xmbh
+        this.tzht.xmbh=newVal.xmbh
       },
       deep: true
     }
   },
   data() {
     return {
-      value:'',
-      value1:'',
-      options: [{
-                value: '选项1',
-                label: '黄金糕'
-              }, {
-                value: '选项2',
-                label: '双皮奶'
-              }],
       tableData: [
         {fjlx: '项目可行性研究报告',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:1,bigType:'a',type:'1',},
-        {fjlx: '项目尽调报告',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:1,bigType:'a',type:'2',},
-        {fjlx: '营业执照',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:1,bigType:'a',type:'3',},
-        {fjlx: '发改委立项',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:1,bigType:'a',type:'4',},
-        {fjlx: '投资合同',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:1,bigType:'a',type:'5',},
+        {fjlx: '项目尽调报告',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:2,bigType:'a',type:'2',},
+        {fjlx: '营业执照',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:3,bigType:'a',type:'3',},
+        {fjlx: '发改委立项',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:4,bigType:'a',type:'4',},
+        {fjlx: '投资合同',name: '',dx: '11.8 MB',time: '2025-06-16 16:57',index:5,bigType:'a',type:'5',},
+      ],
+    xmkxx:{xmbh:null,bigType:'a',type:1,fileName:null},
+    xmxd:{xmbh:null,bigType:'a',type:2,fileName:null},
+    yyzz:{xmbh:null,bigType:'a',type:3,fileName:null},
+    fgwlx:{xmbh:null,bigType:'a',type:4,fileName:null},
+    tzht:{xmbh:null,bigType:'a',type:5,fileName:null},
+    rules: {
+      zcqymc: [
+        { required: true, message: "请输入在潜注册公司名称", trigger: "blur" }
       ],
-	  form:{},
-      rules: {
-        // tableName: [
-        //   { required: true, message: "请输入表名称", trigger: "blur" }
-        // ],
-        // tableComment: [
-        //   { required: true, message: "请输入表描述", trigger: "blur" }
-        // ],
-        // className: [
-        //   { required: true, message: "请输入实体类名称", trigger: "blur" }
-        // ],
-        // functionAuthor: [
-        //   { required: true, message: "请输入作者", trigger: "blur" }
-        // ]
-      }
+    }
     }
   },
   mounted() {
@@ -341,8 +335,35 @@ export default {
   },
   methods:{
     getSubmit(){
-      this.$emit("getSubmit",this.info)
-    }
+      this.$refs.basicInfoForm.validate(valid => {
+          if(valid){
+            var params=JSON.parse(JSON.stringify(this.info))
+            let regphone = /^1[3|4|5|6|7|8|9][0-9]\d{8}$/
+            if(params.lrrPhone && !regphone.test(params.lrrPhone)) {
+            	this.$message.error('请输入正确的联系方式');
+            	return
+            }
+            if(params.lxfs && !regphone.test(params.lxfs)) {
+            	this.$message.error('请输入正确的联系方式');
+            	return
+            }
+            // if(this.ptype=='add'){
+            //   addQyxx(info).then(res=>{
+            //     if(res.code==200){
+            //       this.$message.success('保存成功');
+            //     }
+            //   })
+            // }else{
+            //   updateQyxx(info).then(res=>{
+            //     if(res.code==200){
+
+            //     }
+            //   })
+            // }
+             this.$emit("getSubmit",params)
+          }
+      })
+    },
   }
 }
 </script>

+ 28 - 38
src/views/project/secondInfoForm.vue

@@ -10,27 +10,27 @@
         <div class="rowbox">
           <el-row  :gutter="22">
             <el-col :span="6">
-              <el-form-item label="建设用地规划许可证取得时间" prop="remark">
+              <el-form-item label="建设用地规划许可证取得时间" prop="ykzTime">
                 <el-date-picker
-                      v-model="value1"
+                      v-model="info.ykzTime"
                       type="date"
                       placeholder="年 / 月 / 日">
                     </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item label="土地摘牌时间" prop="remark">
+              <el-form-item label="土地摘牌时间" prop="tdzpTime">
                 <el-date-picker
-                      v-model="value1"
+                      v-model="info.tdzpTime"
                       type="date"
                       placeholder="年 / 月 / 日">
                     </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item label="环评批复时间" prop="remark">
+              <el-form-item label="环评批复时间" prop="hppfTime">
                 <el-date-picker
-                      v-model="value1"
+                      v-model="info.hppfTime"
                       type="date"
                       placeholder="年 / 月 / 日">
                     </el-date-picker>
@@ -48,18 +48,18 @@
         <div class="rowbox">
           <el-row  :gutter="22">
             <el-col :span="6">
-              <el-form-item label="施工许可证办理时间" prop="remark">
+              <el-form-item label="施工许可证办理时间" prop="sgxkTime">
                 <el-date-picker
-                      v-model="value1"
+                      v-model="info.sgxkTime"
                       type="date"
                       placeholder="年 / 月 / 日">
                     </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item label="开工时间" prop="remark">
+              <el-form-item label="开工时间" prop="kgrq">
                 <el-date-picker
-                      v-model="value1"
+                      v-model="info.kgrq"
                       type="date"
                       placeholder="年 / 月 / 日">
                     </el-date-picker>
@@ -76,32 +76,17 @@
         </div>
         <div class="rowbox">
             <el-table  :data="tableData" border style="width: 100%;margin-bottom: 15px;">
-                <el-table-column align="center" prop="fjlx" label="附件类型"  width="20%"> </el-table-column>
-                <el-table-column align="center" prop="name" label="文件名称"  width="20%"> </el-table-column>
-                <el-table-column align="center" prop="dx" label="附件大小"  width="15%"> </el-table-column>
-                <el-table-column align="center" prop="time" label="上传时间"  width="15%"> </el-table-column>
+                <el-table-column align="center" type="index" label="序号" width="10%"></el-table-column>
+                <el-table-column align="center" prop="fjlx" label="附件类型"  width="30%"> </el-table-column>
                 <el-table-column align="center" label="操作" width="30%">
                   <template slot-scope="scope">
                    <div class="flexcc">
                      <div class="btna flexc coa">
-                       <div class="imgs">
-                         <img class="imga" src="@/assets/images/project/upa.png"/>
-                       </div>上传
-                     </div>
-                     <div class="btna flexc cob">
-                       <div class="imgs">
-                         <img class="imgb" src="@/assets/images/project/upb.png"/>
-                       </div>预览
-                     </div>
-                     <div class="btna flexc coc">
-                       <div class="imgs">
-                         <img class="imga" src="@/assets/images/project/upc.png"/>
-                       </div>下载
-                     </div>
-                     <div class="btna flexc cod">
-                       <div class="imgs">
-                         <img class="imgc" src="@/assets/images/project/upd.png"/>
-                       </div>删除
+              <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==1" :type="scope.row['type']" :bigType="scope.row['bigType']" />
+             <!-- <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==2"  :data="xmxd" />
+              <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==3"  :data="yyzz" />
+              <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==4"  :data="fgwlx" />
+              <fileUploads  v-model="info.zsyzFjList" v-if="scope.row['type']==5"  :data="tzht" /> -->
                      </div>
                    </div>
                   </template>
@@ -137,12 +122,17 @@ export default {
                 value: '选项2',
                 label: '双皮奶'
               }],
-      tableData: [{
-                fjlx: '项目可行性研究报告',
-                name: '项目可行性研究报告.pdf',
-                dx: '11.8 MB',
-                time: '2025-06-16 16:57',
-      }],
+      tableData: [
+        {fjlx: '环评批复',bigType:'b',type:'6',},
+        {fjlx: '开工场景',bigType:'b',type:'7',},
+        {fjlx: '设备照片',bigType:'b',type:'8',},
+        {fjlx: '施工许可证',bigType:'b',type:'9',},
+        {fjlx: '供地类项目须上传建设用地规划许可证',bigType:'b',type:'10',},
+        {fjlx: '国有土地出让合同',bigType:'b',type:'11',},
+        {fjlx: '土地证',bigType:'b',type:'12',},
+        {fjlx: '租赁厂房或流转土地类须上传租赁合同',bigType:'b',type:'12',},
+        {fjlx: '土地流转协议',bigType:'b',type:'14',},
+      ],
       rules: {
         // tableName: [
         //   { required: true, message: "请输入表名称", trigger: "blur" }