SanHQin 1 год назад
Родитель
Сommit
fffe25f291
46 измененных файлов с 224 добавлено и 113 удалено
  1. BIN
      public/file/2024年校级学生创新创业训练计划项目申报书模版2 - 图片 copy.docx
  2. 1 1
      src/components/tool/getWord2.js
  3. 1 1
      src/permission.js
  4. 4 1
      src/views/activityManage/components/NomMarkerWord.vue
  5. 5 1
      src/views/activityManage/components/markeractivityWord.vue
  6. 6 2
      src/views/activityManage/makerActivityWordDetail.vue
  7. 7 1
      src/views/activityManage/makerActvity.vue
  8. 4 0
      src/views/activityManage/newMarkerActivity.vue
  9. 18 6
      src/views/commission/commission.vue
  10. 3 0
      src/views/commission/commissionDetailMain.vue
  11. 19 10
      src/views/commission/components/projectBook.vue
  12. 1 0
      src/views/commission/components/projectLookSpace.vue
  13. 5 1
      src/views/commission/components/projectLookstudnt.vue
  14. 5 1
      src/views/echarts/echarts.vue
  15. 3 0
      src/views/firm.vue
  16. 1 0
      src/views/firmComponents/aeincubationm.vue
  17. 4 0
      src/views/firmComponents/ecompanyr.vue
  18. 1 0
      src/views/fundManage/makerfund.vue
  19. 5 1
      src/views/fundManage/makerfundDetails.vue
  20. 4 1
      src/views/home.vue
  21. 2 2
      src/views/projectApply/MakerSpaceApply.vue
  22. 1 0
      src/views/projectApply/components/MakerSpaceWordDetail.vue
  23. 7 4
      src/views/projectApply/components/studentProjectWordDetail.vue
  24. 31 51
      src/views/projectApply/projectApplication.vue
  25. 10 5
      src/views/projectManage/ProjectManagement.vue
  26. 4 1
      src/views/projectManage/ProjectManagementMain.vue
  27. 2 1
      src/views/projectManage/components/FundDetail.vue
  28. 1 0
      src/views/projectManage/components/FundDetailList.vue
  29. 4 0
      src/views/projectManage/components/MakerSpaceWordShow.vue
  30. 1 0
      src/views/projectManage/components/ProjectManagementActivity.vue
  31. 1 0
      src/views/projectManage/components/ProjectManagementActivityDetail.vue
  32. 4 4
      src/views/projectManage/components/ProjectManagementEndProjectFile.vue
  33. 1 0
      src/views/projectManage/components/ProjectManagementOtherFile.vue
  34. 1 0
      src/views/projectManage/components/ProjectManagementProjectFile.vue
  35. 9 2
      src/views/projectManage/components/studentProjectWordShow.vue
  36. 4 0
      src/views/projectSettlement/components/MakerSpaceWordShow.vue
  37. 5 2
      src/views/projectSettlement/components/projectSettlementBook.vue
  38. 1 0
      src/views/projectSettlement/components/projectSettlementDetailConclusion.vue
  39. 4 2
      src/views/projectSettlement/components/studentProjectWordShow.vue
  40. 9 3
      src/views/projectSettlement/components/studentProjectWordShowNew.vue
  41. 10 6
      src/views/projectSettlement/projectSettlement.vue
  42. 3 0
      src/views/projectSettlement/projectSettlementDetailMain.vue
  43. 1 0
      src/views/resultShow/components/resultDetail_MakerSpace.vue
  44. 1 0
      src/views/resultShow/components/resultDetail_student.vue
  45. 5 1
      src/views/resultShow/resultsShow.vue
  46. 5 2
      src/views/system.vue

BIN
public/file/2024年校级学生创新创业训练计划项目申报书模版2 - 图片 copy.docx


+ 1 - 1
src/components/tool/getWord2.js

@@ -130,7 +130,7 @@ function getWord2(val){
 			})
 
 			// fs.writeFileSync(path.resolve(__dirname, "output.docx"), buf);
-			saveAs(out,'2024年校级学生创新创业训练计划项目申报书.docx')
+			saveAs(out,`${val.projectName}.docx`)
    		resolve()
 		})
 	})

+ 1 - 1
src/permission.js

@@ -40,7 +40,7 @@ function getSystemState(to, callback) {
     }).then(res => {
         let state = res['data'][0][0]['state'];
         store.commit('update', ['systemState', state]);
-        if (state != 0 && store.state.userInfo.type != 0 && store.state.userInfo.type != 3 && to.name != 'CloseWeb') return router.push('/CloseWeb');
+        if (state != 0 && ![0,3,4].includes(store.state.userInfo.type) && to.name != 'CloseWeb') return router.push('/CloseWeb');
         if (state == 0 && to.name == 'CloseWeb') return router.push('/projectApplication');
         callback(state);
     }).catch(err => {

+ 4 - 1
src/views/activityManage/components/NomMarkerWord.vue

@@ -352,7 +352,10 @@
         },
         mounted(){
           this.getProjectDepartmentData();
-        }
+        },
+				activated(){
+					this.getProjectDepartmentData();
+				}
       };
     </script>
       

+ 5 - 1
src/views/activityManage/components/markeractivityWord.vue

@@ -495,7 +495,11 @@
           this.getProjectDepartmentData();
           this.getProjectData();
           // setTimeout(()=>this.getProjectFund(),1000);
-        }
+        },
+				activated(){
+					this.getProjectDepartmentData();
+          this.getProjectData();
+				}
       };
     </script>
       

+ 6 - 2
src/views/activityManage/makerActivityWordDetail.vue

@@ -118,6 +118,7 @@
                   this.$router.push('/makerActvity')
               },
               getData(){
+								if(this.loading)return;
                 this.loading = true;
                 let pram = {
                     uid:this.$store.state.userInfo.userid,
@@ -310,8 +311,11 @@
             }
           },
           mounted(){
-            this.getData();
-          }
+            // this.getData();
+          },
+					activated(){
+						this.getData()
+					}
       }
   </script>
   

+ 7 - 1
src/views/activityManage/makerActvity.vue

@@ -624,6 +624,7 @@ import { ActivityWord } from '@/components/tool/getWord';
           this.getData();
         },
         getData(){
+					if(this.loading)return;
           this.loading = true;
           this.ajax.get(this.$store.state.api+"/GetAllActivity",{
             uid:this.$store.state.userInfo.userid,
@@ -636,9 +637,11 @@ import { ActivityWord } from '@/components/tool/getWord';
             page:this.Page.nowPage,
             lim:this.Page.lim,
           }).then(res=>{
+						
             let data = res.data;
             if(data[0].length==0&&data[4][0]['total']!=0){
               this.Page.nowPage = 1;
+							this.loading = false;
               this.getData(); 
             }
             data[0].forEach(item=>item.reportFile = item.reportFile==''||item.reportFile==null?[]:JSON.parse(item.reportFile));
@@ -673,8 +676,11 @@ import { ActivityWord } from '@/components/tool/getWord';
         }
       },
       mounted() {
-        this.getData();
+        // this.getData();
       },
+			activated(){
+				this.getData()
+			}
     }
 </script>
 

+ 4 - 0
src/views/activityManage/newMarkerActivity.vue

@@ -310,6 +310,10 @@ export default {
 		this.getDraft();
     window.addEventListener("beforeunload", () => this.saveData());
   },
+	activated(){
+		this.getDraft();
+    window.addEventListener("beforeunload", () => this.saveData());
+	},
   destroyed() {
     window.removeEventListener("beforeunload", (e) => this.saveData());
   },

+ 18 - 6
src/views/commission/commission.vue

@@ -183,6 +183,14 @@
           </template>
         </el-table-column>
 
+				<el-table-column
+          prop="username"
+          align="center"
+          label="经办人"
+          min-width="10%"
+        >
+        </el-table-column>
+
         <el-table-column
           prop="tName"
           align="center"
@@ -191,7 +199,8 @@
         >
 				<template #default="scope">
 					<div>
-						<span>{{ scope.row.isupload>classType[$store.state.userInfo.type]?'已审核':'审核完成' }}</span>
+						<!-- {{ scope.row.isupload+"-"+scope.row.isReturn }} -->
+						<span>{{ (scope.row.isupload==classType[$store.state.userInfo.type] && scope.row.isReturn!=classType[$store.state.userInfo.type])?'待审核':'审核完成' }}</span>
               <!-- <span v-if="scope.row.isupload == 0">未审核</span>
               <span v-if="scope.row.isupload == 1">审核中</span>
               <span v-if="scope.row.isupload == 2">进行中</span>
@@ -301,9 +310,9 @@ export default {
             label: "已结项",
           },],
 			classType:{
-				'0':3,
-				'3':4,
-				'4':2
+				'0':6,
+				'3':7,
+				'4':5
 			},
       loading: false,
       pavalues: {
@@ -340,6 +349,7 @@ export default {
       this.$router.push(`/commissionDetailMain?pid=${pid}&tid=${tid}`);
     },
     getData() {
+			if(this.loading)return
       //获取渲染数据
       this.loading = true;
       let param = {
@@ -364,6 +374,7 @@ export default {
               this.Page.currentPage != 1
             ) {
               this.Page.currentPage = 1;
+							this.loading = false;
               return this.getData();
             }
             this.items = data[0];
@@ -396,9 +407,10 @@ export default {
   },
   mounted() {
 		this.pavalues.value4 = new Date().getFullYear().toString();
-    this.getData();
-		
   },
+	activated(){
+		this.getData()
+	}
 };
 </script>
   

+ 3 - 0
src/views/commission/commissionDetailMain.vue

@@ -58,6 +58,9 @@ import projectLookSpace from './components/projectLookSpace.vue'
         mounted() {
             console.log(this.$route.query['tid']);
         },
+				activated(){
+					this.show = 0;
+				}
     }
 </script>
 

+ 19 - 10
src/views/commission/components/projectBook.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="pBookBox">
+  <div class="pBookBox" v-loading="loading">
     <!-- 项目申报书 -->
     <table border="1" cellspacing="0">
       <div class="onePage">
@@ -137,8 +137,8 @@
           </p>
         </td>
       </tr>
-      <tr v-if="bookData.isupload>=2">
-        <td colspan="8" >
+      <tr v-if="bookData.isupload==5 || qpList.filter(i=>i.type==4).length>0">
+        <td colspan="8">
 					<div class="defaultHeight">
 						<p class="bold">所在学院部门审核意见:<el-button  v-if="!isQpButton && $store.state.userInfo.type==4" type="primary" size="small" @click="openQp">签批</el-button></p>
           	<div v-for="(item, index) in qpList.filter(i=>i.type==4)" :key="index" class="qpItem">
@@ -149,9 +149,9 @@
           
         </td>
       </tr>
-			<tr v-if="bookData.isupload>=3">
-        <td colspan="8" class="defaultHeight">
-					<div class="defaultWHeight">
+			<tr v-if="bookData.isupload==6 || qpList.filter(i=>i.type==0).length>0">
+        <td colspan="8">
+					<div class="defaultHeight">
           	<p class="bold">创新创业学院审核意见:<el-button  v-if="!isQpButton && $store.state.userInfo.type==0" type="primary" size="small" @click="openQp">签批</el-button></p>
           	<div v-for="(item, index) in qpList.filter(i=>i.type==0)" :key="index" class="qpItem">
           	  <div>{{ item.text }}</div>
@@ -160,9 +160,9 @@
 					</div>
         </td>
       </tr>
-			<tr v-if="bookData.isupload>=4">
-        <td colspan="8" class="defaultHeight">
-					<div class="defaultWHeight">
+			<tr v-if="bookData.isupload==7 || qpList.filter(i=>i.type==3).length>0">
+        <td colspan="8">
+					<div class="defaultHeight">
           	<p class="bold">学校终审意见:<el-button  v-if="!isQpButton && $store.state.userInfo.type==3" type="primary" size="small" @click="openQp">签批</el-button></p>
           	<div v-for="(item, index) in qpList.filter(i=>i.type==3)" :key="index" class="qpItem">
           	  <div>{{ item.text }}</div>
@@ -341,6 +341,7 @@ export default {
     return {
       ttt: "",
       bookData: {},
+			loading:false,
       dialogVisible: false,
       ttype: 0,
       phType: 0,
@@ -368,6 +369,8 @@ export default {
   },
   methods: {
     getData() {
+			if(this.loading)return;
+			this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/getProjectBookData", {
           uid: this.$store.state.userInfo.userid,
@@ -376,6 +379,7 @@ export default {
         .then((res) => {
           let data = res.data[0][0];
           this.bookData = data;
+					this.loading = false;
           console.log(data);
         })
         .catch((err) => {
@@ -676,6 +680,11 @@ export default {
     this.getPh();
     this.getSign();
   },
+	activated(){
+		this.getData();
+    this.getPh();
+    this.getSign();
+	}
 };
 </script>
 
@@ -1036,7 +1045,7 @@ export default {
 .flowReason::-webkit-scrollbar-corner {
   background-color: rgba(255, 255, 255, 0);
 }
-.defaultWHeight{
+.defaultHeight{
 	min-height: 200px !important;
 }
 </style>

+ 1 - 0
src/views/commission/components/projectLookSpace.vue

@@ -471,6 +471,7 @@ export default {
       // getMakerSpaceWord(this.wordData);
     },
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/getMakerSpaceWordData", {

+ 5 - 1
src/views/commission/components/projectLookstudnt.vue

@@ -1,5 +1,5 @@
 <template>
-    <div id="projectLookstudnt" ref="downPDF">
+    <div id="projectLookstudnt" ref="downPDF" v-loading="loading">
         <table border="1" cellspacing="0" class="table">
           <div id="title">
               <div class="school">深圳技师学院</div>
@@ -280,6 +280,7 @@
               downWordData:{
                
               },
+							loading:false
               
             }
         },
@@ -289,6 +290,8 @@
             getWord(this.downWordData)
           },
           getData(){
+							if(this.loading)return;
+							this.loading=true;
               let param={
                   uid:this.$store.state.userInfo.userid,
                   pid:this.$route.query['pid']
@@ -317,6 +320,7 @@
                   wordData.fund=JSON.parse(data.money)
                   wordData.dp=data.className
                   this.downWordData=wordData
+									this.loading = false;
               },err=>{
                   console.log(err);
               })

+ 5 - 1
src/views/echarts/echarts.vue

@@ -102,6 +102,7 @@ export default {
   },
   methods: {
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/getEchartsData", {
@@ -195,8 +196,11 @@ export default {
     },
   },
   mounted() {
-    this.getData();
+    // this.getData();
   },
+	activated(){
+		this.getData();
+	}
 };
 </script>
     

+ 3 - 0
src/views/firm.vue

@@ -40,6 +40,9 @@ export default {
       titleType: 0,
     };
   },
+	activated(){
+		this.titleType = 0;
+	}
   
 };
 </script>

+ 1 - 0
src/views/firmComponents/aeincubationm.vue

@@ -297,6 +297,7 @@ export default {
       fileName: "",
       fileNameSearch: "",
       dialogVisible: false,
+			fullShow:false,
       tableData: [],
       // 分页数据
       Page: {

+ 4 - 0
src/views/firmComponents/ecompanyr.vue

@@ -324,6 +324,7 @@ export default {
         });
     },
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.tableData = [];
       this.ajax
@@ -362,6 +363,9 @@ export default {
   mounted() {
     this.getData();
   },
+	activated(){
+		this.getData();
+	}
 };
 </script>
 

+ 1 - 0
src/views/fundManage/makerfund.vue

@@ -628,6 +628,7 @@ export default {
       this.getData();
     },
     getData() {
+			if(this.loading)return;
       this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,

+ 5 - 1
src/views/fundManage/makerfundDetails.vue

@@ -1,6 +1,6 @@
 <template>
   <!-- 创客资金申请表单 -->
-  <div>
+  <div v-loading="loading">
     <div class="vfpHeader">
       <div class="titleOne">活动资金详细</div>
       <el-button @click="$router.push('/makerfund')" type="primary" size="mini"
@@ -188,6 +188,7 @@ export default {
   },
   data() {
     return {
+			loading:false,
       projectFilter: [], //项目名称列表
       projectName: "", //所选名称
       downLoadExcelDig: false, //下载Excel对话框
@@ -286,6 +287,8 @@ export default {
     //知识产权事务费:Transaction
 
     getData() {
+			if(this.loading)return;
+			this.loading = true;
       //获取活动经费的数据
       let param = {
         uid: this.$store.state.userInfo.userid,
@@ -394,6 +397,7 @@ export default {
             this.create_at = data[0][0].createTime;
             console.log(this.create_at);
             this.endTime = data[0][0].endTime;
+						this.loading = false;
           },
           (err) => {
             console.log(err);

+ 4 - 1
src/views/home.vue

@@ -149,7 +149,10 @@
         </el-col>
       </el-aside>
       <el-main class="main core_dialogue">
-        <router-view></router-view>
+				<keep-alive>
+					<router-view></router-view>
+				</keep-alive>
+        
       </el-main>
     </el-container>
   </el-container>

+ 2 - 2
src/views/projectApply/MakerSpaceApply.vue

@@ -374,7 +374,7 @@ export default {
     },
 		// 保存草稿
 		saveDraft(){
-			if(this.loading)return this.$message.info('请稍等...');
+			if(this.loading)return;
 			this.loading = true;
 			let params = {
 				userid:this.$store.state.userInfo.userid,
@@ -392,7 +392,7 @@ export default {
 		},
 		//获取草稿
 		getDraft(){
-			if(this.loading)return this.$message.info('请稍等...');
+			if(this.loading)return;
 			this.loading = true;
 			let params = {
 				userid:this.$store.state.userInfo.userid,

+ 1 - 0
src/views/projectApply/components/MakerSpaceWordDetail.vue

@@ -158,6 +158,7 @@ export default {
   },
   methods: {
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/getMakerSpaceWordData", {

+ 7 - 4
src/views/projectApply/components/studentProjectWordDetail.vue

@@ -475,6 +475,8 @@ export default {
         );
     },
     getData() {
+			if(this.loading)return;
+			this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,
         cid: this.$route.query["pid"],
@@ -504,6 +506,7 @@ export default {
             ...{ etime: data.eTime, btime: data.bTime, dp: data.className },
           };
           this.isupload = data["isupload"];
+					this.loading = false;
         },
         (err) => {
           console.log(err);
@@ -757,7 +760,7 @@ export default {
 					'6':"41.8pt",
 					'7':"62.6pt"
 				}
-				elementList.forEach(el => {
+				elementList.forEach((el,elIndex) => {
 				  let img = el.getElementsByTagName('img');
 					for(let i=0;i<img.length;i++){
 						img[i].setAttribute("crossOrigin","*");
@@ -777,7 +780,7 @@ export default {
 						if(!pStyle)continue;
 						let matchArr = pStyle.match(/font-size: (\d+)px/);
 						if(!matchArr)continue;
-						pFontSize.push({style:pStyle,index:i})
+						pFontSize.push({style:pStyle,index:`${elIndex}:${i}`})
 						let originalSize = pStyle.match(/font-size: (\d+)px/)[1];
 						
 						let newSize = parseInt(originalSize)*1.3;
@@ -787,7 +790,7 @@ export default {
 				})
 				let newData = JSON.parse(JSON.stringify(this.downWordData))
 				getWord2({...newData,signData:this.signData,elementList}).then(_=>{
-					elementList.forEach(el => {
+					elementList.forEach((el,elIndex) => {
 				  	let img = el.getElementsByTagName('img');
 						for(let i=0;i<img.length;i++){
 							img[i].removeAttribute('crossOrigin')
@@ -800,7 +803,7 @@ export default {
 						// 替换p标签的font-size
 						let p = el.querySelectorAll("*")
 						for(let i=0;i<p.length;i++){
-							let oldStyle = pFontSize.find(p=>p.index==i)
+							let oldStyle = pFontSize.find(p=>p.index==`${elIndex}:${i}`)
 							if(!oldStyle)continue;
 							p[i].setAttribute("style",oldStyle.style)
 							// let pStyle = p[i].getAttribute("style")

+ 31 - 51
src/views/projectApply/projectApplication.vue

@@ -87,11 +87,12 @@
             @change="getData"
             placeholder="请选择"
           >
+					<el-option label="所有状态" value=""/>
             <el-option
-              v-for="item in options.state"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
+              v-for="(value,key,index) in classType"
+              :key="index"
+              :label="value"
+              :value="key"
             >
             </el-option>
           </el-select>
@@ -232,9 +233,11 @@
         >
           <template #default="scope">
             <div>
+							<!-- {{ scope.row.isupload+"-"+scope.row.isReturn }} -->
+							<span v-if="scope.row.isReturn!=0">{{ isReturnType[scope.row.isReturn] }}</span>
               <!-- {{scope.row.name + (scope.row.status==0?"":"(已屏蔽)")}} -->
               <!-- {{ (scope.row.isupload==0?"未审核": scope.row.data==1?"正在审核":"已审核")  }} -->
-							<span>{{ classType[scope.row.isupload] }}</span>
+							<span v-else>{{ classType[scope.row.isupload] }}</span>
 
               <!-- <span v-if="scope.row.isupload == 0">未审核</span>
               <span v-if="scope.row.isupload == 1">审核中</span>
@@ -278,25 +281,7 @@
               <el-button
                 type="primary"
                 v-if="
-                  scope.row.isupload == 2 && $store.state.userInfo.type != 0 && $store.state.userInfo.type != 3
-                "
-                class="disa btnClass"
-                size="mini"
-                >审核中</el-button
-              >
-              <el-button
-                type="primary"
-                v-if="
-                  scope.row.isupload == 3 && $store.state.userInfo.type != 0 && $store.state.userInfo.type != 3
-                "
-                class="disa btnClass"
-                size="mini"
-                >审核中</el-button
-              >
-              <el-button
-                type="primary"
-                v-if="
-                  scope.row.isupload == 4 && $store.state.userInfo.type != 0 && $store.state.userInfo.type != 3
+                  [5,6,7].includes(scope.row.isupload) && $store.state.userInfo.type != 0 && $store.state.userInfo.type != 3
                 "
                 class="disa btnClass"
                 size="mini"
@@ -305,7 +290,7 @@
 							<el-button
                 type="primary"
                 v-if="
-                  scope.row.isupload == 5 && $store.state.userInfo.type != 0 && $store.state.userInfo.type != 3
+                  scope.row.isupload == 2 && $store.state.userInfo.type != 0 && $store.state.userInfo.type != 3
                 "
                 class="disa btnClass"
                 size="mini"
@@ -336,25 +321,7 @@
 
               <el-button
                 v-if="
-                  scope.row.isupload == 2 && ($store.state.userInfo.type == 0 || $store.state.userInfo.type == 3)
-                "
-                type="primary"
-                class="disa btnClass"
-                size="mini"
-                >已通过</el-button
-              >
-              <el-button
-                v-if="
-                  scope.row.isupload == 3 && ($store.state.userInfo.type == 0 || $store.state.userInfo.type == 3)
-                "
-                type="primary"
-                class="disa btnClass"
-                size="mini"
-                >审核中</el-button
-              >
-              <el-button
-                v-if="
-                  scope.row.isupload == 4 && ($store.state.userInfo.type == 0 || $store.state.userInfo.type == 3)
+                  [5,6,7].includes(scope.row.isupload) && ($store.state.userInfo.type == 0 || $store.state.userInfo.type == 3)
                 "
                 type="primary"
                 class="disa btnClass"
@@ -363,7 +330,7 @@
               >
 							<el-button
                 v-if="
-                  scope.row.isupload == 5 && ($store.state.userInfo.type == 0 || $store.state.userInfo.type == 3)
+                  scope.row.isupload == 2 && ($store.state.userInfo.type == 0 || $store.state.userInfo.type == 3)
                 "
                 type="primary"
                 class="disa btnClass"
@@ -541,10 +508,17 @@ export default {
 			classType:{
 				"0":'未提交',
 				'1':"已提交",
-				'2':"所在学院/部门审核中",
-				'3':"创新创业学院审核中",
-				'4':'学校终审中',
-				'5':'待结项'
+				'5':'所在学院/部门审核中',
+				'6':'创新创业学院审核中',
+				'7':'学校终审中',
+				'2':"待结项",
+				'3':"提交结项中",
+				'4':'已结项',
+			},
+			isReturnType:{
+				'5':'所在学院/部门审核驳回',
+				'6':'创新创业学院审核驳回',
+				'7':'学校终审驳回',
 			},
 
       selectInp: {
@@ -701,7 +675,7 @@ export default {
             let param = {
               uid: this.$store.state.userInfo.userid,
               pid: this.iid.courseId,
-              num: 2,
+              num: 5,
             };
             this.ajax
               // .post(this.$store.state.api+"/ApproveProject",param)
@@ -808,6 +782,7 @@ export default {
     //   this.$router.push('/projectApplicationApplyMain')
     // },
     getData() {
+			if(this.loading)return;
       //获取表格数据
       this.loading = true;
       let param = {
@@ -824,12 +799,14 @@ export default {
       };
       // return console.log(param);
       // console.log(param)
+			this.tableData = [];
       this.ajax.get(this.$store.state.api + "/SelectAllProject", param).then(
         (res) => {
           let data = res.data;
           console.log(data);
           if (data[0].length == 0 && data[5][0]["total"] != 0) {
             this.table.currentPage = 1;
+						this.loading =false;
             return this.getData();
           }
           let a = this.options;
@@ -985,10 +962,13 @@ export default {
 		// 默认选择当前年份
 		this.selectInp.year = new Date().getFullYear().toString();
     //跳转到此页面立刻获取数据
-    this.getData(); //获取表格数据
+    // this.getData(); //获取表格数据
     // this.getUser();
     // console.log(this.$store.state.userInfo.type);
   },
+	activated(){
+		this.getData()
+	}
 };
 </script>
 

+ 10 - 5
src/views/projectManage/ProjectManagement.vue

@@ -231,8 +231,8 @@
               <!-- {{scope.row.name + (scope.row.status==0?"":"(已屏蔽)")}} -->
               <!-- {{ (scope.row.isupload==0?"未审核": scope.row.data==1?"正在审核":"已审核")  }} -->
 
-              <span v-if="scope.row.isupload == 0">未审核</span>
-              <span v-if="scope.row.isupload == 1">审核中</span>
+              <!-- <span v-if="scope.row.isupload == 0">未审核</span>
+              <span v-if="scope.row.isupload == 1">审核中</span> -->
               <span v-if="scope.row.isupload == 2">进行中</span>
               <span v-if="scope.row.isupload == 3">待结项</span>
               <span v-if="scope.row.isupload == 4">已结项</span>
@@ -522,11 +522,11 @@ export default {
           },
           {
             value: 3,
-            label: "待结",
+            label: "待结",
           },
           {
             value: 4,
-            label: "已结",
+            label: "已结",
           },
         ],
         yearData: [],
@@ -892,6 +892,7 @@ export default {
       );
     },
     getData() {
+			if(this.loading)return;
       //获取渲染数据
       this.loading = true;
       let param = {
@@ -919,6 +920,7 @@ export default {
               this.table.currentPage != 1
             ) {
               this.table.currentPage = 1;
+							this.loading = false;
               return this.getData();
             }
             let a = this.options;
@@ -1024,8 +1026,11 @@ export default {
   },
 
   mounted() {
-    this.getData(); //页面加载完成后自动获取渲染数据
+    // this.getData(); //页面加载完成后自动获取渲染数据
   },
+	activated(){
+		this.getData()
+	}
 };
 </script>
 

+ 4 - 1
src/views/projectManage/ProjectManagementMain.vue

@@ -83,7 +83,10 @@
         },
         mounted(){
             console.log(this.$route.query['Id']);
-        }
+        },
+				activated() {
+					this.show = 0;
+				},
     }
 </script>
 

+ 2 - 1
src/views/projectManage/components/FundDetail.vue

@@ -2,7 +2,7 @@
   <div id="fundDetail" v-loading="loading">
       <table border="1" cellspacing="0" class="table">
           <tr id="fund">
-          <td rowspan="12" ref="fund" style="white-space: ;">实际使用经费</td><td>总经费</td><td colspan="5" v-text="total+' 元'"></td>
+          <td rowspan="12" ref="fund" >实际使用经费</td><td>总经费</td><td colspan="5" v-text="total+' 元'"></td>
         </tr>
         <tr>
           <td>支出类别</td><td colspan="2">支出项目</td><td>金额(元)</td><td colspan="4">备 注</td>
@@ -86,6 +86,7 @@ data() {
 },
 methods:{
   getData(){   //初始化完成获取基本数据进行填充
+		if(this.loading)return;
     this.loading = true;
     for(let i in this.data)this.data[i]=0;
     let param={

+ 1 - 0
src/views/projectManage/components/FundDetailList.vue

@@ -81,6 +81,7 @@ export default {
       this.getData();
     },
     getData() {
+			if(this.loading)return;
       this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,

+ 4 - 0
src/views/projectManage/components/MakerSpaceWordShow.vue

@@ -474,6 +474,7 @@ export default {
       // getMakerSpaceWord(this.wordData);
     },
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/getMakerSpaceWordData", {
@@ -517,6 +518,9 @@ export default {
   mounted() {
     this.getData();
   },
+	activated(){
+		this.getData();
+	}
 };
 </script>
       

+ 1 - 0
src/views/projectManage/components/ProjectManagementActivity.vue

@@ -121,6 +121,7 @@
         },
         methods:{
           getData(){
+						if(this.loading)return;
             this.loading = true;
             let param={
               uid:this.$store.state.userInfo.userid,

+ 1 - 0
src/views/projectManage/components/ProjectManagementActivityDetail.vue

@@ -55,6 +55,7 @@
         },
         methods:{
           getData(){
+						if(this.loading)return
                 this.loading = true;
                 let pram = {
                     uid:this.$store.state.userInfo.userid,

+ 4 - 4
src/views/projectManage/components/ProjectManagementEndProjectFile.vue

@@ -414,6 +414,7 @@ export default {
     // },
     getData() {
       //获取基础信息
+			if(this.loading)return;
       this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,
@@ -467,10 +468,9 @@ export default {
     },
     onPlayerPlay() {},
   },
-  mounted() {
-    this.getData();
-    console.log(111);
-  },
+	mounted(){
+		this.getData();
+	}
 };
 </script>
   

+ 1 - 0
src/views/projectManage/components/ProjectManagementOtherFile.vue

@@ -409,6 +409,7 @@ export default {
 
     getData() {
       //获取基础信息
+			if(this.loading)return;
       this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,

+ 1 - 0
src/views/projectManage/components/ProjectManagementProjectFile.vue

@@ -408,6 +408,7 @@ export default {
     },
 
     getData() {
+			if(this.loading)return;
       //获取基础信息
       this.loading = true;
       let param = {

+ 9 - 2
src/views/projectManage/components/studentProjectWordShow.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="studentProjectWord" ref="downPDF">
+  <div id="studentProjectWord" ref="downPDF" v-loading="loading">
     <table border="1" cellspacing="0" class="table">
       <div id="title">
         <div class="school">深圳技师学院</div>
@@ -337,6 +337,7 @@ export default {
   data() {
     return {
       downWordData: {},
+			loading:false
     };
   },
   methods: {
@@ -345,6 +346,8 @@ export default {
       getWord(this.downWordData);
     },
     getData() {
+			if(this.loading)return;
+			this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,
         pid: this.$route.query["pid"],
@@ -353,6 +356,7 @@ export default {
         (res) => {
           let data = res.data[0][0];
           console.log(data);
+					this.loading = false
           let wordData = {};
           wordData.projectName = data.title;
           wordData.applyProjectTime = data.applyProjectTime;
@@ -373,7 +377,7 @@ export default {
           wordData.dp = data.className;
 
           this.downWordData = wordData;
-
+					
           console.log(this.downWordData);
         },
         (err) => {
@@ -394,6 +398,9 @@ export default {
   mounted() {
     this.getData();
   },
+	activated(){
+		this.getData();
+	}
 };
 </script>
       

+ 4 - 0
src/views/projectSettlement/components/MakerSpaceWordShow.vue

@@ -465,6 +465,7 @@ export default {
     //   getMakerSpaceWord(this.wordData);
     // },
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/getMakerSpaceWordData", {
@@ -499,6 +500,9 @@ export default {
   mounted() {
     this.getData();
   },
+	activated(){
+		this.getData();
+	}
 };
 </script>
       

+ 5 - 2
src/views/projectSettlement/components/projectSettlementBook.vue

@@ -1,6 +1,6 @@
 <template>
   <!-- 结项书组件 -->
-  <div>
+  <div v-loading="loading">
     <table
       border="1"
       cellspacing="0"
@@ -1240,10 +1240,13 @@ export default {
       },
       playerO: {},
       videoDetail: {},
+			loading:false
     };
   },
   methods: {
     getData() {
+			if(this.loading)return;
+			this.loading = true;
       this.ajax
         .get(this.$store.state.api + "/selectAmendFinish", {
           uid: this.$store.state.userInfo.userid,
@@ -1297,7 +1300,7 @@ export default {
           data[0].money = JSON.parse(data[0].money);
           this.myArrayProp = data;
           this.myArrayProp[0].actualuse = num; //添加已经使用过的经费
-
+					this.loading = false;
           console.log(this.myArrayProp);
         })
         .catch((err) => {

+ 1 - 0
src/views/projectSettlement/components/projectSettlementDetailConclusion.vue

@@ -178,6 +178,7 @@ export default {
     },
     getData() {
       //获取基础信息
+			if(this.loading)return;
       this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid,

+ 4 - 2
src/views/projectSettlement/components/studentProjectWordShow.vue

@@ -1,5 +1,5 @@
 <template>
-    <div id="studentProjectWord" ref="downPDF">
+    <div id="studentProjectWord" ref="downPDF" v-loading="loading">
         <div id="title">
             <div class="school">深圳技师学院11</div>
             <div class="wordTitle">2024年校级学生创新创业训练计划项目申报书模版</div>
@@ -310,7 +310,7 @@
                     affair:''
                 }
               },
-              
+              loading:false,
             }
         },
         methods: {
@@ -319,6 +319,8 @@
           //   getWord(this.downWordData)
           // },
           getData(){
+						if(this.loading)return;
+						this.loading = true;
               let param={
                   uid:this.$store.state.userInfo.userid,
                   pid:this.$route.query['pid']

+ 9 - 3
src/views/projectSettlement/components/studentProjectWordShowNew.vue

@@ -1,5 +1,5 @@
 <template>
-    <div id="studentProjectWord" ref="downPDF">
+    <div id="studentProjectWord" ref="downPDF" v-loading="loading">
         
         <table border="1" cellspacing="0" class="table">
 
@@ -326,7 +326,7 @@
                     affair:''
                 }
               },
-              
+              loading:false,
             }
         },
         methods: {
@@ -335,6 +335,8 @@
           //   getWord(this.downWordData)
           // },
           getData(){
+						if(this.loading)return;
+						this.loading = true;
               let param={
                   uid:this.$store.state.userInfo.userid,
                   pid:this.$route.query['pid']
@@ -361,6 +363,7 @@
                   wordData.introduce=JSON.parse(data.chapters)
                   wordData.fund=JSON.parse(data.money)
                   this.downWordData={...wordData,...{etime:data.eTime,btime:data.bTime,dp:data.className}}
+									this.loading = false;
               },err=>{
                   console.log(err);
               })
@@ -375,7 +378,10 @@
         },
         mounted(){
           this.getData();
-        }
+        },
+				activated(){
+					this.getData();
+				}
       };
     </script>
       

+ 10 - 6
src/views/projectSettlement/projectSettlement.vue

@@ -149,8 +149,8 @@
           min-width="8%">
           <template #default="scope">
             <div>
-              <span v-if="scope.row.isupload == 3">待审核</span>
-              <span v-if="scope.row.isupload == 4">已审核</span>
+              <span v-if="scope.row.isupload == 3">待结项</span>
+              <span v-if="scope.row.isupload == 4">已结项</span>
            </div>
           </template>
         </el-table-column>
@@ -229,11 +229,11 @@
               },
               {
                 value:3,
-                label:'待审核'
+                label:'待结项'
               },
               {
                 value:4,
-                label:'已审核'
+                label:'已结项'
               },
             ],
           },
@@ -282,6 +282,7 @@
           this.getData()
         },
         getData(){    //获取表格数据
+					if(this.loading)return;
           this.loading = true;
           let param={
             uid:this.$store.state.userInfo.userid,
@@ -329,8 +330,11 @@
 				},
       },
       mounted(){
-        this.getData();
-      }
+        // this.getData();
+      },
+			activated(){
+				this.getData()
+			}
     }
 </script>
 

+ 3 - 0
src/views/projectSettlement/projectSettlementDetailMain.vue

@@ -123,6 +123,9 @@ export default {
   mounted() {
     console.log(this.$route);
   },
+	activated(){
+		this.pageState = 0;
+	},
 };
 </script>
     

+ 1 - 0
src/views/resultShow/components/resultDetail_MakerSpace.vue

@@ -663,6 +663,7 @@ export default {
   },
   methods: {
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ActivityLookFile = [];
       this.ajax

+ 1 - 0
src/views/resultShow/components/resultDetail_student.vue

@@ -785,6 +785,7 @@ export default {
   },
   methods: {
     getData() {
+			if(this.loading)return;
       this.loading = true;
       this.ActivityLookFile = [];
       this.ajax

+ 5 - 1
src/views/resultShow/resultsShow.vue

@@ -315,6 +315,7 @@ export default {
 		},
     getData() {
       //获取渲染数据
+			if(this.loading)return;
       this.loading = true;
       let param = {
         uid: this.$store.state.userInfo.userid, //当前账号id
@@ -366,8 +367,11 @@ export default {
     },
   },
   mounted() {
-    this.getData();
+    // this.getData();
   },
+	activated(){
+		this.getData()
+	}
 };
 </script>
 

+ 5 - 2
src/views/system.vue

@@ -63,8 +63,11 @@
 
       },
         mounted(){
-            this.getCloseData();
-        }
+            // this.getCloseData();
+        },
+				activated(){
+					this.getCloseData()
+				}
         
       }
   </script>