|
@@ -159,7 +159,7 @@
|
|
|
<el-button type="primary" disabled v-show="scope.row.state==1" style="background-color: #c8c9cc;border-color: #c8c9cc;cursor: no-drop;" class="bt1" size="mini">已审核</el-button>
|
|
|
<el-button type="primary" disabled v-show="scope.row.state==2" style="background-color: #c8c9cc;border-color: #c8c9cc;cursor: no-drop;" class="bt1" size="mini">已审核</el-button>
|
|
|
|
|
|
- <el-button type="primary" class="bt1" size="mini" @click="edit()">申请表</el-button>
|
|
|
+ <el-button type="primary" class="bt1" size="mini" @click="edit(scope.row)">申请表</el-button>
|
|
|
|
|
|
<el-button disabled v-show="scope.row.state==0" style="width: 74px;background-color: #c8c9cc;border-color: #c8c9cc;cursor: no-drop;" @click="endDialogShow(scope.row.fid)" type="primary" class="bt1" size="mini">完结</el-button>
|
|
|
<el-button v-show="scope.row.state==1" style="width: 74px;" @click="endDialogShow(scope.row.fid)" type="primary" class="bt1" size="mini">完结</el-button>
|
|
@@ -405,9 +405,9 @@
|
|
|
title="提示"
|
|
|
:visible.sync="dialogVisible1"
|
|
|
width="600px"
|
|
|
- class="endDialog">
|
|
|
+ class="pageSubmitData">
|
|
|
<div class="addDialogLogo">LOGO</div>
|
|
|
- <span class="deleteContent">确定完结?</span>
|
|
|
+ <div class="deleteContent">确定完结?</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button type="primary" @click="confirmEnd" class="AllDialogBtn">确认完结</el-button>
|
|
|
<el-button @click="dialogVisible1=false" class="AllDialogBtn">取消</el-button>
|
|
@@ -415,11 +415,187 @@
|
|
|
</el-dialog>
|
|
|
<!-- 完结对话框结束-->
|
|
|
|
|
|
+
|
|
|
+ <!-- 生成表单对话框开始 -->
|
|
|
+ <el-dialog
|
|
|
+ title="表单"
|
|
|
+ :visible.sync="createFromDialog"
|
|
|
+ width="60%"
|
|
|
+ style="top: -150px;"
|
|
|
+ class="createFromDialogSty"
|
|
|
+ :before-close="init">
|
|
|
+ <div class="addDialogLogo">LOGO</div>
|
|
|
+ <div class="deleteContent">
|
|
|
+ <table class="tableStyle" width="100%" border="1">
|
|
|
+ <caption style="height: 40px;font-size: 22px;">学校创客专项资金使用申请表(单位:元)</caption>
|
|
|
+ <caption style="height: 30px;text-align: left;">
|
|
|
+ <div style="display: flex;">
|
|
|
+ <div style="margin-right: 10px;margin-top: -5px;"> 项目类型:</div>
|
|
|
+ <el-radio-group disabled v-model="selects.projectType">
|
|
|
+ <el-radio label="创客空间">创客空间</el-radio>
|
|
|
+ <el-radio label="创客实践室">创客实践室</el-radio>
|
|
|
+ <el-radio label="个人创客">个人创客</el-radio>
|
|
|
+ <el-radio label="创客活动">创客活动</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </caption>
|
|
|
+ <caption style="height: 30px;text-align: left;">项目名称:<span style="margin-left:30%;font-weight: bold;font-size: 16px;">{{ residue.PName }}</span></caption>
|
|
|
+ <tr>
|
|
|
+ <td>序号</td>
|
|
|
+ <td>经济支出类别(A)</td>
|
|
|
+ <td>预算</td>
|
|
|
+ <td>已支付</td>
|
|
|
+ <td>本次申请</td>
|
|
|
+ <td>余额</td>
|
|
|
+ <td style="width: 20%;">事由</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>01</td>
|
|
|
+ <td style="text-align: left;">一.经费支出</td>
|
|
|
+ <td>{{ AllFund.budget }}</td>
|
|
|
+ <td>{{ AllFund.expended }}</td>
|
|
|
+ <td>{{ AllFund.application }}</td>
|
|
|
+ <td>{{ AllFund.surplus }}</td>
|
|
|
+ <td style="width: 20%;"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>02</td>
|
|
|
+ <td style="text-align: left;">(一)直接费用</td>
|
|
|
+ <td>{{ IndirectFunding.budget }}</td>
|
|
|
+ <td>{{ IndirectFunding.expended }}</td>
|
|
|
+ <td>{{IndirectFunding.application}}</td>
|
|
|
+ <td>{{ IndirectFunding.surplus }}</td>
|
|
|
+ <td style="width: 20%;"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>03</td>
|
|
|
+ <td style="text-align: left;">小型仪器设备费</td>
|
|
|
+ <td>{{ directData.facility==0?'':directData.facility }}</td>
|
|
|
+ <td>{{ usedDirectData.facility==0?'':usedDirectData.facility }}</td>
|
|
|
+ <td>{{ applicationDirectData.facility==0?'':applicationDirectData.facility }}</td>
|
|
|
+ <td>{{ directData.facility-usedDirectData.facility-applicationDirectData.facility }}</td>
|
|
|
+ <td style="width: 20%;">{{ directDataReason.reason }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>04</td>
|
|
|
+ <td style="text-align: left;">材料费</td>
|
|
|
+ <td>{{ directData.cl==0?'':directData.cl }}</td>
|
|
|
+ <td>{{ usedDirectData.cl==0?'':usedDirectData.cl }}</td>
|
|
|
+ <td>{{ applicationDirectData.cl==0?'':applicationDirectData.cl }}</td>
|
|
|
+ <td>{{ directData.cl-usedDirectData.cl-applicationDirectData.cl }}</td>
|
|
|
+ <td style="width: 20%;">{{ directDataReason.reason1 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>05</td>
|
|
|
+ <td style="text-align: left;">测试化验加工费</td>
|
|
|
+ <td>{{ directData.jg==0?'':directData.jg }}</td>
|
|
|
+ <td>{{ usedDirectData.jg==0?'':usedDirectData.jg }}</td>
|
|
|
+ <td>{{ applicationDirectData.jg==0?'':applicationDirectData.jg }}</td>
|
|
|
+ <td>{{ directData.jg-usedDirectData.jg-applicationDirectData.jg }}</td>
|
|
|
+ <td style="width: 20%;">{{ directDataReason.reason2 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>06</td>
|
|
|
+ <td style="text-align: left;">项目协作费</td>
|
|
|
+ <td>{{ directData.xz==0?'':directData.xz }}</td>
|
|
|
+ <td>{{ usedDirectData.xz==0?'':usedDirectData.xz }}</td>
|
|
|
+ <td>{{ applicationDirectData.xz==0?'':applicationDirectData.xz }}</td>
|
|
|
+ <td>{{ directData.xz-usedDirectData.xz-applicationDirectData.xz }}</td>
|
|
|
+ <td style="width: 20%;">{{ directDataReason.reason3 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>07</td>
|
|
|
+ <td style="text-align: left;">其他支出</td>
|
|
|
+ <td>{{ directData.qt==0?'':directData.qt }}</td>
|
|
|
+ <td>{{ usedDirectData.qt==0?'':usedDirectData.qt }}</td>
|
|
|
+ <td>{{ applicationDirectData.qt==0?'':applicationDirectData.qt }}</td>
|
|
|
+ <td>{{ directData.qt- usedDirectData.qt-applicationDirectData.qt}}</td>
|
|
|
+ <td style="width: 20%;">{{ directDataReason.reason4 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>08</td>
|
|
|
+ <td style="text-align: left;">(二)间接费用</td>
|
|
|
+ <td>{{ Expenditure['budget'] }}</td>
|
|
|
+ <td>{{ Expenditure['expended'] }}</td>
|
|
|
+ <td>{{ Expenditure['application'] }}</td>
|
|
|
+ <td>{{ Expenditure['surplus'] }}</td>
|
|
|
+ <td style="width: 20%;"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>03</td>
|
|
|
+ <td style="text-align: left;">项目成果鉴定费</td>
|
|
|
+ <td>{{ indirectData.facility==0?'':indirectData.facility }}</td>
|
|
|
+ <td>{{ usedInDirectData.facility==0?'':usedInDirectData.facility }}</td>
|
|
|
+ <td>{{ applicationInDirectData.facility==0?'':applicationInDirectData.facility }}</td>
|
|
|
+ <td>{{ indirectData.facility-usedInDirectData.facility-applicationInDirectData.facility }}</td>
|
|
|
+ <td style="width: 20%;">{{ indirectDataReason.reason }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>04</td>
|
|
|
+ <td style="text-align: left;">参展参赛费</td>
|
|
|
+ <td>{{ indirectData.cl==0?'':indirectData.cl }}</td>
|
|
|
+ <td>{{ usedInDirectData.cl==0?'':usedInDirectData.cl }}</td>
|
|
|
+ <td>{{ applicationInDirectData.cl==0?'':applicationInDirectData.cl }}</td>
|
|
|
+ <td>{{ indirectData.cl-usedInDirectData.cl-applicationInDirectData.cl }}</td>
|
|
|
+ <td style="width: 20%;">{{ indirectDataReason.reason1 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>05</td>
|
|
|
+ <td style="text-align: left;">创客交流活动费</td>
|
|
|
+ <td>{{ indirectData.jg==0?'':indirectData.jg }}</td>
|
|
|
+ <td>{{ usedInDirectData.jg==0?'':usedInDirectData.jg }}</td>
|
|
|
+ <td>{{ applicationInDirectData.jg==0?'':applicationInDirectData.jg }}</td>
|
|
|
+ <td>{{ indirectData.jg-usedInDirectData.jg-applicationInDirectData.jg }}</td>
|
|
|
+ <td style="width: 20%;">{{ indirectDataReason.reason2 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>06</td>
|
|
|
+ <td style="text-align: left;">知识产权事务费</td>
|
|
|
+ <td>{{ indirectData.xz==0?'':indirectData.xz }}</td>
|
|
|
+ <td>{{ usedInDirectData.xz==0?'':usedInDirectData.xz }}</td>
|
|
|
+ <td>{{ applicationInDirectData.xz==0?'':applicationInDirectData.xz }}</td>
|
|
|
+ <td>{{ indirectData.xz-usedInDirectData.xz-applicationInDirectData.xz }}</td>
|
|
|
+ <td style="width: 20%;">{{ indirectDataReason.reason3 }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>07</td>
|
|
|
+ <td style="text-align: left;">其他支出</td>
|
|
|
+ <td>{{ indirectData.qt==0?'':indirectData.qt }}</td>
|
|
|
+ <td>{{ usedInDirectData.qt==0?'':usedInDirectData.qt }}</td>
|
|
|
+ <td>{{ applicationInDirectData.qt==0?'':applicationInDirectData.qt }}</td>
|
|
|
+ <td>{{ indirectData.qt-usedInDirectData.qt-applicationInDirectData.qt }}</td>
|
|
|
+ <td style="width: 20%;">{{ indirectDataReason.reason4 }}</td>
|
|
|
+ </tr>
|
|
|
+ <!-- <tr v-for="(item,index) in items" :key="index">
|
|
|
+ <td>{{ index+1 }}</td>
|
|
|
+ <td style="text-align: left;">{{ item.fromSort }}</td>
|
|
|
+ <td>{{ item.fromBudget }}</td>
|
|
|
+ <td>{{ item.fromUsed }}</td>
|
|
|
+ <td>{{ item.fromApp }}</td>
|
|
|
+ <td>{{ item.fromBalance }}</td>
|
|
|
+ <td style="width: 20%;">{{ item.fromReason }}</td>
|
|
|
+ </tr> -->
|
|
|
+ <tr>
|
|
|
+ <td style="height: 80px;">备注</td>
|
|
|
+ <td colspan="6" style="text-align:left;">{{ residue.reason }}</td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button type="primary" @click="submitCreateFrom" class="AllDialogBtn">生成表单</el-button>
|
|
|
+ <el-button @click="createFromDialog = false" class="AllDialogBtn" size="small">取消</el-button>
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 生成表单对话框结束 -->
|
|
|
+
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
+import getExcel from "@/components/tool/getExcel";
|
|
|
+
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
@@ -429,6 +605,241 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
dialogVisible1:false,
|
|
|
dialogVisible:false, //立即审核
|
|
|
revocation:false, //撤回
|
|
|
+ createFromDialog:false, //生成表单
|
|
|
+ selects:{ //所选名称,类型id
|
|
|
+ projectName:'',
|
|
|
+ projectType:''
|
|
|
+ },
|
|
|
+ projectFilter:[], //项目名称
|
|
|
+ projectType:[ //项目类型
|
|
|
+ {
|
|
|
+ id:1,
|
|
|
+ name:'创客空间'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id:2,
|
|
|
+ name:'创客实践室'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id:3,
|
|
|
+ name:'个人创客'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id:4,
|
|
|
+ name:'创客活动'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ directFundBlock:[ //直接经费
|
|
|
+ {
|
|
|
+ directFundData:'',
|
|
|
+ directFundSelects:[
|
|
|
+ {
|
|
|
+ value:1,
|
|
|
+ label:'小型仪器设备费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:2,
|
|
|
+ label:'材料费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:3,
|
|
|
+ label:'测试化验加工费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:4,
|
|
|
+ label:'项目协作费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:5,
|
|
|
+ label:'其他支出'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ budget:'', //预算
|
|
|
+ usedFund:'', //已使用
|
|
|
+ apply:'', //本次申请
|
|
|
+ reason:'' //理由
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ newDirectFundBlock:{ //添加直接经费
|
|
|
+ directFundData:'',
|
|
|
+ directFundSelects:[
|
|
|
+ {
|
|
|
+ value:1,
|
|
|
+ label:'小型仪器设备费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:2,
|
|
|
+ label:'材料费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:3,
|
|
|
+ label:'测试化验加工费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:4,
|
|
|
+ label:'项目协作费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:5,
|
|
|
+ label:'其他支出'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ budget:'', //预算
|
|
|
+ usedFund:'', //已使用
|
|
|
+ apply:'', //本次申请
|
|
|
+ reason:'' //理由
|
|
|
+ },
|
|
|
+
|
|
|
+ indirectFundBlock:[ //间接经费
|
|
|
+ {
|
|
|
+ indirectFundData:'',
|
|
|
+ indirectFundSelects:[
|
|
|
+ {
|
|
|
+ value:1,
|
|
|
+ label:'项目成功鉴定费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:2,
|
|
|
+ label:'参展参赛费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:3,
|
|
|
+ label:'创客交流活动费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:4,
|
|
|
+ label:'知识产权事务费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:5,
|
|
|
+ label:'其他支出'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ budget:'', //预算
|
|
|
+ usedFund:'', //已使用
|
|
|
+ apply:'', //本次申请
|
|
|
+ reason:'' //理由
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ newIndirectFundBlock:{ //添加间接经费
|
|
|
+ indirectFundData:'',
|
|
|
+ indirectFundSelects:[
|
|
|
+ {
|
|
|
+ value:1,
|
|
|
+ label:'项目成功鉴定费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:2,
|
|
|
+ label:'参展参赛费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:3,
|
|
|
+ label:'创客交流活动费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:4,
|
|
|
+ label:'知识产权事务费'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value:5,
|
|
|
+ label:'其他支出'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ budget:'', //预算
|
|
|
+ usedFund:'', //已使用
|
|
|
+ apply:'', //本次申请
|
|
|
+ reason:'' //理由
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
+ residue:{ //其他
|
|
|
+ PName:"",//项目名称
|
|
|
+ elseReason:'',
|
|
|
+ budget:'',
|
|
|
+ usedFund:'',
|
|
|
+ reason:'',
|
|
|
+ }
|
|
|
+ ,
|
|
|
+ directData:{ //直接经费预算
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ },
|
|
|
+ directDataReason:{ //直接经费理由
|
|
|
+ reason:'',
|
|
|
+ reason1:'',
|
|
|
+ reason2:'',
|
|
|
+ reason3:'',
|
|
|
+ reason4:''
|
|
|
+ },
|
|
|
+ usedDirectData:{ //直接经费已支出
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ },
|
|
|
+ applicationDirectData:{ //直接经费本次申请
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ },
|
|
|
+ indirectData:{ //间接经费预算
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ },
|
|
|
+ indirectDataReason:{ //间接理由
|
|
|
+ reason:'',
|
|
|
+ reason1:'',
|
|
|
+ reason2:'',
|
|
|
+ reason3:'',
|
|
|
+ reason4:''
|
|
|
+ },
|
|
|
+ usedInDirectData:{ //间接经费已支出
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ },
|
|
|
+ applicationInDirectData:{ //间接经费本次申请
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ },
|
|
|
+ DirectFunding:{ //直接经费汇总
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ },
|
|
|
+ IndirectFunding:{//间接经费汇总
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ },
|
|
|
+ Expenditure:{//经费支出汇总
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ },
|
|
|
+ AllFund:{ //经费支出
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ },
|
|
|
textarea:'', //立项审核事由
|
|
|
input:'',
|
|
|
value:'',
|
|
@@ -482,6 +893,234 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
}
|
|
|
},
|
|
|
methods:{
|
|
|
+ getAllFund(val){
|
|
|
+ let param={
|
|
|
+ uid:this.$store.state.userInfo.userid,
|
|
|
+ fid:val
|
|
|
+ }
|
|
|
+ // console.log(param);
|
|
|
+ this.ajax
|
|
|
+ .get(this.$store.state.api+'/SelectMakerFundSelects',param)
|
|
|
+ .then(res=>{
|
|
|
+ console.log(res.data);
|
|
|
+ let data=res.data;
|
|
|
+ this.directFundBlock=JSON.parse(data[0][0].directFund);
|
|
|
+ // console.log(this.directFundBlock);
|
|
|
+ this.indirectFundBlock=JSON.parse(data[0][0].indirectFund);
|
|
|
+ this.residue=JSON.parse(data[0][0].elseFund);
|
|
|
+ this.file=JSON.parse(data[0][0].fundFile);
|
|
|
+ this.selects.projectName=data[0][0].courseId;
|
|
|
+ this.selects.projectType=data[0][0].type;
|
|
|
+ this.status=data[0][0].state;
|
|
|
+ this.fid=data[0][0].fid;
|
|
|
+ this.AllEquipment();
|
|
|
+ this.createFromDialog=true;
|
|
|
+ // this.projectFilter=data[1];
|
|
|
+ },err=>{
|
|
|
+ console.log(err);
|
|
|
+ })
|
|
|
+ },
|
|
|
+ AllEquipment(){ //填写表单数据
|
|
|
+ this.directFundBlock.forEach((e,i)=>{
|
|
|
+ switch(e.directFundData)
|
|
|
+ {
|
|
|
+ case 1:
|
|
|
+ this.directData.facility+=e.budget*1;
|
|
|
+ this.usedDirectData.facility+=e.usedFund*1;
|
|
|
+ this.directDataReason.reason=e.reason;
|
|
|
+ this.applicationDirectData.facility = e.apply*1
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ this.directData.cl+=e.budget*1;
|
|
|
+ this.usedDirectData.cl+=e.usedFund*1;
|
|
|
+ this.directDataReason.reason1=e.reason;
|
|
|
+ this.applicationDirectData.cl = e.apply*1
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ this.directData.jg=e.budget*1;
|
|
|
+ this.usedDirectData.jg+=e.usedFund*1;
|
|
|
+ this.directDataReason.reason2=e.reason;
|
|
|
+ this.applicationDirectData.jg = e.apply*1
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ this.directData.xz=e.budget*1;
|
|
|
+ this.usedDirectData.xz+=e.usedFund*1;
|
|
|
+ this.directDataReason.reason3=e.reason;
|
|
|
+ this.applicationDirectData.xz = e.apply*1
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ this.directData.qt=e.budget*1;
|
|
|
+ this.usedDirectData.qt+=e.usedFund*1;
|
|
|
+ this.directDataReason.reason4=e.reason;
|
|
|
+ this.applicationDirectData.qt = e.apply*1
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.indirectFundBlock.forEach((e,i)=>{
|
|
|
+ switch(e.indirectFundData)
|
|
|
+ {
|
|
|
+ case 1:
|
|
|
+ this.indirectData.facility+=e.budget*1;
|
|
|
+ this.usedInDirectData.facility+=e.usedFund*1;
|
|
|
+ this.indirectDataReason.reason=e.reason;
|
|
|
+ this.applicationInDirectData.facility = e.apply*1;
|
|
|
+ // console.log(this.directData.facility);
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ this.indirectData.cl+=e.budget*1;
|
|
|
+ this.usedInDirectData.cl+=e.usedFund*1;
|
|
|
+ this.indirectDataReason.reason1=e.reason;
|
|
|
+ this.applicationInDirectData.cl = e.apply*1;
|
|
|
+ // console.log(this.directData.cl);
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ this.indirectData.jg=e.budget*1;
|
|
|
+ this.usedInDirectData.jg+=e.usedFund*1;
|
|
|
+ this.indirectDataReason.reason2=e.reason;
|
|
|
+ this.applicationInDirectData.jg = e.apply*1;
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ this.indirectData.xz=e.budget*1;
|
|
|
+ this.usedInDirectData.xz+=e.usedFund*1;
|
|
|
+ this.indirectDataReason.reason3=e.reason;
|
|
|
+ this.applicationInDirectData.xz = e.apply*1;
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ this.indirectData.qt=e.budget*1;
|
|
|
+ this.usedInDirectData.qt+=e.usedFund*1;
|
|
|
+ this.indirectDataReason.reason4=e.reason;
|
|
|
+ this.applicationInDirectData.qt = e.apply*1;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ // this.DirectFunding.budget = this.
|
|
|
+ //直接费用全部预算
|
|
|
+ for(let i in this.directData)this.IndirectFunding['budget']+=this.directData[i];
|
|
|
+ //直接费用全部已支出
|
|
|
+ for(let a in this.usedDirectData)this.IndirectFunding['expended']+=this.usedDirectData[a];
|
|
|
+ //直接费用本次申请
|
|
|
+ for(let b in this.applicationDirectData)this.IndirectFunding['application']+=this.applicationDirectData[b]
|
|
|
+ //直接费用余额
|
|
|
+ this.IndirectFunding['surplus'] = this.IndirectFunding['budget']-this.IndirectFunding['expended']-this.IndirectFunding['application']
|
|
|
+
|
|
|
+ //间接费用
|
|
|
+ //间接费用全部预算
|
|
|
+ for(let c in this.indirectData)this.Expenditure['budget']+=this.indirectData[c];
|
|
|
+ //间接费用全部已支出
|
|
|
+ for(let d in this.usedInDirectData)this.Expenditure['expended']+=this.usedInDirectData[d];
|
|
|
+ //间接费用本次申请
|
|
|
+ for(let e in this.applicationInDirectData)this.Expenditure['application']+=this.applicationInDirectData[e];
|
|
|
+ //间接费用余额
|
|
|
+ this.Expenditure['surplus'] = this.Expenditure['budget']-this.Expenditure['expended']-this.Expenditure['application']
|
|
|
+
|
|
|
+ //经费支出
|
|
|
+ //预算
|
|
|
+ this.AllFund.budget =this.Expenditure['budget']+this.IndirectFunding['budget'];
|
|
|
+ //已支出
|
|
|
+ this.AllFund.expended = this.Expenditure['expended']+this.IndirectFunding['expended'];
|
|
|
+ //本次申请
|
|
|
+ this.AllFund.application = this.Expenditure['application']+this.IndirectFunding['application']
|
|
|
+ //余额
|
|
|
+ this.AllFund.surplus = this.AllFund['budget']-this.AllFund['expended']-this.AllFund['application'];
|
|
|
+
|
|
|
+ //项目名称
|
|
|
+ this.residue.PName = this.projectFilter.filter(item=>item.id==this.selects.projectName).length!=0?this.projectFilter.filter(item=>item.id==this.selects.projectName)[0]['title']:'';
|
|
|
+
|
|
|
+ },
|
|
|
+ edit(val){ // 显示表单对话框
|
|
|
+ this.directData={ //直接经费预算
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0
|
|
|
+ },
|
|
|
+ this.usedDirectData={ //直接经费已支出
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0
|
|
|
+ },
|
|
|
+ this.indirectData={ //间接经费预算
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0
|
|
|
+ },
|
|
|
+ this.usedInDirectData={ //间接经费已支出
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0
|
|
|
+ },
|
|
|
+ this.directDataReason={
|
|
|
+ reason:'',
|
|
|
+ reason1:'',
|
|
|
+ reason2:'',
|
|
|
+ reason3:'',
|
|
|
+ reason4:''
|
|
|
+ },
|
|
|
+ this.IndirectFunding = { //直接经费汇总
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ },
|
|
|
+ this.Expenditure={//经费支出汇总
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ }
|
|
|
+ this.AllFund={ //经费支出
|
|
|
+ budget:0, //预算
|
|
|
+ expended:0, //已支付
|
|
|
+ application:0, //本次申请
|
|
|
+ surplus:0, //余额
|
|
|
+ }
|
|
|
+ this.applicationInDirectData={ //间接经费本次申请
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ }
|
|
|
+ this.applicationDirectData={ //直接经费本次申请
|
|
|
+ facility:0,
|
|
|
+ cl:0,
|
|
|
+ jg:0,
|
|
|
+ xz:0,
|
|
|
+ qt:0,
|
|
|
+ }
|
|
|
+ console.log(val.fid);
|
|
|
+ this.getAllFund(val.fid)
|
|
|
+
|
|
|
+
|
|
|
+ },
|
|
|
+ submitCreateFrom(){ //生成表单
|
|
|
+ // console.log();
|
|
|
+ getExcel({
|
|
|
+ PName:this.residue.PName, //项目名称
|
|
|
+ remarks:this.residue.reason,//备注
|
|
|
+ type:this.selects.projectType,//项目类型
|
|
|
+ direct:{
|
|
|
+ budget:this.directData,
|
|
|
+ expended:this.usedDirectData,
|
|
|
+ apply:this.applicationDirectData,
|
|
|
+ reason:this.directDataReason,
|
|
|
+ },
|
|
|
+ indirect:{
|
|
|
+ budget:this.indirectData,
|
|
|
+ expended:this.usedInDirectData,
|
|
|
+ apply:this.applicationInDirectData,
|
|
|
+ reason:this.indirectDataReason
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ },
|
|
|
Audit(val){ //显示审核对话框
|
|
|
console.log(val);
|
|
|
this.ProjectFundData=val;
|
|
@@ -561,7 +1200,7 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
this.table.currentPage=1
|
|
|
this.getData()
|
|
|
}
|
|
|
- console.log(data);
|
|
|
+ // console.log(data);
|
|
|
this.tableData=data[0];
|
|
|
this.filterSelects=data[1];
|
|
|
this.departmentSelect=data[2];
|
|
@@ -572,9 +1211,12 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
console.log(err);
|
|
|
})
|
|
|
},
|
|
|
- edit(){
|
|
|
- downloadFile('/file/附件 5 :学校创客专项资金使用申请表.xlsx',"学校创客专项资金使用申请表.xlsx",(_b)=>this.loading = _b);
|
|
|
- },
|
|
|
+ // edit(val){
|
|
|
+ // console.log(val);
|
|
|
+ // this.createFromDialog=true
|
|
|
+ // this.getAllFund(val.fid)
|
|
|
+ // // downloadFile('/file/附件 5 :学校创客专项资金使用申请表.xlsx',"学校创客专项资金使用申请表.xlsx",(_b)=>this.loading = _b);
|
|
|
+ // },
|
|
|
handleSelectionChange(val) { //批量选择
|
|
|
this.multipleSelection = val;
|
|
|
},
|
|
@@ -583,6 +1225,7 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
},
|
|
|
init(){
|
|
|
this.dialogVisible=false
|
|
|
+ this.createFromDialog=false
|
|
|
},
|
|
|
details(Id){ //跳转详情页面
|
|
|
this.$router.push(`/makerfundDetails?Id=${Id}`)
|
|
@@ -590,80 +1233,14 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
},
|
|
|
mounted(){
|
|
|
this.getData();
|
|
|
+ // this.getAllFund()
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<style lang="less">
|
|
|
.makerfund{
|
|
|
- .endDialog{ //提交对话框
|
|
|
- font-size: 18px;
|
|
|
- .el-dialog{
|
|
|
- border-radius: 5px;
|
|
|
- overflow: hidden;
|
|
|
- }
|
|
|
- .deleteContent{
|
|
|
- // margin: 30px 0;
|
|
|
- font-size: 22px;
|
|
|
- color: #000;
|
|
|
- }
|
|
|
- .el-dialog__body{
|
|
|
- display: flex;
|
|
|
- justify-content: center;
|
|
|
- }
|
|
|
- .addDialogLogo{
|
|
|
- width: 60px;
|
|
|
- height: 30px;
|
|
|
- border-radius: 5px;
|
|
|
- display: flex;
|
|
|
- justify-content: center;
|
|
|
- line-height: 30px;
|
|
|
- background: #f2f2f2;
|
|
|
- position: absolute;
|
|
|
- left: 20px; top: 15px;
|
|
|
- }
|
|
|
- .el-dialog__header{
|
|
|
- background: #32455b;
|
|
|
- }
|
|
|
- .el-dialog__title{
|
|
|
- color:#fff;
|
|
|
- display: flex;
|
|
|
- justify-content: center;
|
|
|
- font-size: 18px;
|
|
|
- position: relative;
|
|
|
- top: -2px;
|
|
|
- }
|
|
|
- .addDialogMid{
|
|
|
- box-sizing: border-box;
|
|
|
- padding:0 60px 0 10px;
|
|
|
- .addDialogTit{
|
|
|
- display: flex;
|
|
|
- span{
|
|
|
- width: 80px;
|
|
|
- font-size: 16px;
|
|
|
- line-height: 40px;
|
|
|
- text-align: left;
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- .addDialogTit1{
|
|
|
- display: flex;
|
|
|
- justify-content: space-between;
|
|
|
- margin-bottom: 15px;
|
|
|
- }
|
|
|
- .addDialogTit2{
|
|
|
- margin-top: 10px;
|
|
|
- font-size: 16px;
|
|
|
- color: #000;
|
|
|
- text-indent: 2em;
|
|
|
- text-align: left;
|
|
|
- line-height: 1.7em;
|
|
|
- }
|
|
|
- .addDialogCon{
|
|
|
- margin-top: 20px;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+
|
|
|
.el-dialog{
|
|
|
border-radius: 5px;
|
|
|
overflow: hidden;
|
|
@@ -675,7 +1252,7 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
justify-content: center;
|
|
|
}
|
|
|
|
|
|
- .dialog{
|
|
|
+ .dialog{//审核
|
|
|
.el-dialog__header{
|
|
|
background: #32455b;
|
|
|
|
|
@@ -749,5 +1326,85 @@ import downloadFile from '@/components/tool/downloadFile.js';
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ .createFromDialogSty{ //生成表单
|
|
|
+ .el-dialog__header{
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ }
|
|
|
+ .el-dialog{
|
|
|
+ border-radius: 5px;
|
|
|
+ overflow: hidden;
|
|
|
+
|
|
|
+ top: 10%;
|
|
|
+ }
|
|
|
+
|
|
|
+ .deleteContent{
|
|
|
+ width: 100%;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 22px;
|
|
|
+ color: #000;
|
|
|
+ }
|
|
|
+ .addDialogLogo{
|
|
|
+ width: 60px;
|
|
|
+ height: 30px;
|
|
|
+ border-radius: 5px;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ line-height: 30px;
|
|
|
+ background: #f2f2f2;
|
|
|
+ position: absolute;
|
|
|
+ left: 20px; top: 15px;
|
|
|
+ }
|
|
|
+ .el-dialog__header{
|
|
|
+ background: #32455b;
|
|
|
+ }
|
|
|
+ .el-dialog__title{
|
|
|
+ color:#fff;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ font-size: 18px;
|
|
|
+ position: relative;
|
|
|
+ top: -2px;
|
|
|
+ }
|
|
|
+ .addDialogMid{
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding:0 60px 0 10px;
|
|
|
+ .addDialogTit{
|
|
|
+ display: flex;
|
|
|
+ span{
|
|
|
+ width: 80px;
|
|
|
+ line-height: 40px;
|
|
|
+ text-align: left;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .addDialogTit1{
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ margin-bottom: 15px;
|
|
|
+ }
|
|
|
+ .addDialogTit2{
|
|
|
+ margin-top: 10px;
|
|
|
+ font-size: 18px;
|
|
|
+ color: #000;
|
|
|
+ text-indent: 2em;
|
|
|
+ }
|
|
|
+ .addDialogCon{
|
|
|
+ margin-top: 20px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .dialog-footer{
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .tableStyle{
|
|
|
+ border-collapse:collapse;
|
|
|
+ font-size: 16px;
|
|
|
+ td{
|
|
|
+ // align-content: center;
|
|
|
+ height: 35px;
|
|
|
+ }
|
|
|
+}
|
|
|
}
|
|
|
+
|
|
|
</style>
|