yuanyiming 2 năm trước cách đây
mục cha
commit
95cb3bad6e

+ 14 - 4
src/views/fundManage/makerfundApply.vue

@@ -61,7 +61,7 @@
                     <el-input v-model="item.budget" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
                 </div>
             </div>
-            <div style="width: 100%;display: flex;">
+            <div style="width: 100%;display: flex;flex-wrap: wrap;">
                 <div class="howMoney">
                     <div class="inpInterval">已支付</div>
                     <el-input v-model="item.usedFund" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
@@ -87,7 +87,7 @@
             placeholder="请输入内容"
             v-model="item.reason">
             </el-input>
-            <p><span class="delText" v-show="index!=0"  @click="delDerData(index)">删除</span></p>
+            <span class="delText" v-show="index!=0"  @click="delDerData(index)">删除</span>
 
             <!-- <el-button v-show="index!=0" type="primary" style="font-size: 16px;height: 40px;margin-left: 10px; line-height: 0;" @click="delDerData(index)">删除</el-button> -->
 
@@ -121,7 +121,7 @@
                     </div>
                 </div>
 
-                <div style="width: 100%;display: flex;">
+                <div style="width: 100%;display: flex;flex-wrap: wrap;">
                     <div class="howMoney">
                         <div class="inpInterval">已支付</div>
                         <el-input v-model="item.usedFund" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
@@ -147,7 +147,7 @@
                 placeholder="请输入内容"
                 v-model="item.reason">
                 </el-input>
-                <p><span class="delText" v-show="i!=0"  @click="delInDerData(i)">删除</span></p>
+                <span class="delText" v-show="i!=0"  @click="delInDerData(i)">删除</span>
 
                 <!-- <el-button v-show="i!=0" type="primary" style="font-size: 16px;height: 40px;line-height: 0;margin-left: 10px;" @click="delInDerData(i)">删除</el-button> -->
             </div>
@@ -1007,7 +1007,9 @@ export default {
             if(this.directFundBlock.length==this.newDirectFundBlock.directFundSelects.length)return this.$message.warning("已无法继续添加")
             let oldArr={};
             Object.assign(oldArr,this.newDirectFundBlock)
+            // console.log(oldArr);
             oldArr.directFundSelects = oldArr.directFundSelects.filter(item=>this.directFundBlock.filter(dItem=>dItem.directFundData==item.value).length==0)
+            // console.log(oldArr.directFundSelects);
             this.directFundBlock.push(oldArr)
             for(let k in this.newDirectFundBlock) return this.newDirectFundBlock[k]=''
         },
@@ -1051,17 +1053,24 @@ export default {
                 ]
             let oneself=[];
             this.directFundBlock.forEach(item=>{
+                // return console.log(item.directFundData);
+                // console.log(directFundBlockSelect.filter(sItem=>sItem.value==item.directFundData));
                 //获取他本身自己的下拉框
                 oneself.push(directFundBlockSelect.filter(sItem=>sItem.value==item.directFundData)[0])
+                // console.log(oneself);
                 //获取未选择的
                 directFundBlockSelect = directFundBlockSelect.filter(sItem=>sItem.value!=item.directFundData)
             })
             //再遍历一遍
             this.directFundBlock.forEach((item,index)=>{
+                // console.log(index);
                 let oneSelect = [];
                 directFundBlockSelect.forEach(item=>oneSelect.push(item));
+                // console.log(oneself[index]);
                 if(oneself[index]!=undefined)oneSelect.push(oneself[index])
+                // console.log(oneSelect);
                 item.directFundSelects = oneSelect;
+                // console.log(item.directFundSelects);
             })
             //遍历所有的直接经费
 
@@ -1312,6 +1321,7 @@ export default {
 }
 .delText{
     margin-left: 20px;cursor: pointer;
+    width: 40px;
 }
 .delText:hover{
     color: blue;

+ 145 - 11
src/views/projectApply/components/projectApplicationApply3.vue

@@ -77,12 +77,28 @@
                 label="支出类别"
                 align="center"
                 >
+                <template #default="scope">
+                  <div v-if=" scope.row.type==1">直接经费</div>
+                  <div v-if=" scope.row.type==2">间接经费</div>
+
+                </template>
               </el-table-column>
               <el-table-column
                 prop="disburseProject"
                 label="支出项目"
                 align="center"
                 >
+                <template #default="scope">
+                  <div v-if="scope.row.disburseProject==1 && scope.row.type==1">小型仪器设备费</div>
+                  <div v-if="scope.row.disburseProject==2 && scope.row.type==1">材料费</div>
+                  <div v-if="scope.row.disburseProject==3 && scope.row.type==1">测试化验加工费</div>
+                  <div v-if="scope.row.disburseProject==4 && scope.row.type==1">项目协作费</div>
+
+                  <div v-if="scope.row.disburseProject==1 && scope.row.type==2">小型仪器设备费</div>
+                  <div v-if="scope.row.disburseProject==2 && scope.row.type==2">材料费</div>
+                  <div v-if="scope.row.disburseProject==3 && scope.row.type==2">测试化验加工费</div>
+                  <div v-if="scope.row.disburseProject==4 && scope.row.type==2">项目协作费</div>
+                </template>
               </el-table-column>
               <el-table-column
                 prop="fund"
@@ -161,24 +177,24 @@
         <div class="dagInpS1">
           <div class="dagSpan">支出类别</div>
           <!-- <el-input v-model="data.dialog.type"  placeholder="请输入内容"></el-input> -->
-          <el-select v-model="data.dialog.type" placeholder="请选择">
+          <el-select v-model="data.dialog.type"  placeholder="请选择">
               <el-option
               v-for="item in expendType"
               :key="item.value"
               :label="item.label"
-              :value="item.label">
+              :value="item.value">
               </el-option>
           </el-select>
         </div>
         <div class="dagInpS1">
           <div class="dagSpan">支出项目</div>
           <!-- <el-input v-model="data.dialog.disburseProject" placeholder="请输入内容"></el-input> -->
-          <el-select v-model="data.dialog.disburseProject" placeholder="请选择">
+          <el-select v-model="data.dialog.disburseProject"  placeholder="请选择">
               <el-option
-              v-for="item in expendProject"
+              v-for="item in data.dialog.type==1?expendProject:expendProject2"
               :key="item.value"
               :label="item.label"
-              :value="item.label">
+              :value="item.value">
               </el-option>
           </el-select>
         </div>
@@ -387,11 +403,11 @@ import { VueEditor } from "vue2-editor";
           expendType:[
               {
                   value:1,
-                  label:'个人创客'
+                  label:'直接费用'
               },
               {
                   value:2,
-                  label:'活动创客'
+                  label:'间接费用'
               },
           ],
           expendProject:[
@@ -411,14 +427,126 @@ import { VueEditor } from "vue2-editor";
                   value:4,
                   label:'项目协作费'
               },
+              // {
+              //     value:5,
+              //     label:'其他支出'
+              // },
+          ],
+          expendProject2:[
+              {
+                  value:1,
+                  label:'项目成果鉴定费'
+              },
+              {
+                  value:2,
+                  label:'参展参赛费'
+              },
+              {
+                  value:3,
+                  label:'创客交流活动费'
+              },
               {
-                  value:5,
-                  label:'其他支出'
+                  value:4,
+                  label:'知识产权事务费'
               },
-          ]
+              // {
+              //     value:5,
+              //     label:'其他支出'
+              // },
+          ],
         }
       },
       methods:{
+        directFundDataSelectChange(){//直接经费全部下拉框
+          
+          
+            let directFundBlockSelect = [
+                    {
+                        value:1,
+                        label:'小型仪器设备费'
+                    },
+                    {
+                        value:2,
+                        label:'材料费'
+                    },
+                    {
+                        value:3,
+                        label:'测试化验加工费'
+                    },
+                    {
+                        value:4,
+                        label:'项目协作费'
+                    },
+                    // {
+                    //     value:5,
+                    //     label:'其他支出'
+                    // },
+                ]
+            let oneself=[];
+            this.data.tableData2.forEach(item=>{
+                //获取他本身自己的下拉框
+                oneself.push(directFundBlockSelect.filter(sItem=>sItem.value==item.disburseProject)[0])  //filter返的是数组所以用[0]
+                //获取未选择的
+                directFundBlockSelect = directFundBlockSelect.filter(sItem=>sItem.value!=item.disburseProject)
+                console.log(directFundBlockSelect);
+                this.expendProject=directFundBlockSelect
+                // Object.assign(this.expendProject,directFundBlockSelect)
+
+            })
+
+            // console.log(this.expendProject);
+            //再遍历一遍
+            // this.data.tableData2.forEach((item,index)=>{
+            //     let oneSelect = [];
+            //     directFundBlockSelect.forEach(item=>oneSelect.push(item));
+            //     if(oneself[index]!=undefined)oneSelect.push(oneself[index])
+            //     item.directFundSelects = oneSelect;
+            //     console.log(item.directFundSelects);
+            // })
+            //遍历所有的直接经费
+
+        },
+        indirectFundSelectChange(){//间接经费全部下拉框
+            
+            let indirectFundSelect = [
+                    {
+                        value:1,
+                        label:'项目成功鉴定费'
+                    },
+                    {
+                        value:2,
+                        label:'参展参赛费'
+                    },
+                    {
+                        value:3,
+                        label:'创客交流活动费'
+                    },
+                    {
+                        value:4,
+                        label:'知识产权事务费'
+                    },
+                    {
+                        value:5,
+                        label:'其他支出'
+                    },
+            ];
+            let oneself=[];
+            this.indirectFundBlock.forEach(item=>{
+                //获取他本身自己的下拉框
+                oneself.push(indirectFundSelect.filter(sItem=>sItem.value==item.indirectFundData)[0])
+                //获取未选择的
+                indirectFundSelect = indirectFundSelect.filter(sItem=>sItem.value!=item.indirectFundData)
+            })
+            //再遍历一遍
+            this.indirectFundBlock.forEach((item,index)=>{
+                let oneSelect = [];
+                indirectFundSelect.forEach(item=>oneSelect.push(item));
+                if(oneself[index]!=undefined)oneSelect.push(oneself[index])
+                item.directFundSelects = oneSelect;
+            })
+            //遍历所有的直接经费
+
+        },
         judge(event){
           console.log(event);
           // console.log(111);
@@ -449,7 +577,6 @@ import { VueEditor } from "vue2-editor";
         },
         finish(){    //添加经费明细对话框完成按钮
             if(this.recompose){                //修改
-
               if (this.data.dialog.type=="" || this.data2.select.fund==undefined ) return this.$message.error('请输入支类别')
               if (this.data.dialog.disburseProject=="" || this.data2.select.fund==undefined ) return this.$message.error('请输入支出项目')
               if (this.data.dialog.fund=="" || this.data2.select.fund==undefined ) return this.$message.error('请输入金额')
@@ -486,6 +613,13 @@ import { VueEditor } from "vue2-editor";
             this.data.tableData2.push(oldDia);
             for(let k in this.data.dialog) this.data.dialog[k]='';
             this.addFundDialog=false;
+            if (!this.data.tableData2.length){
+              return console.log(1);
+            }else{
+              console.log(2);
+            }
+            // this.data.dialog.type==1?this.directFundDataSelectChange():this.indirectFundSelectChange()
+
         },
         setFundBtn(){    //经费月支出计划设置经费对话框显示
           // console.log(this.data2.value);