Browse Source

优化财务结算

master
陈裕财 4 years ago
parent
commit
042ad7f9ac
  1. 4
      src/router/routes_xm.js
  2. 24
      src/views/xm/core/xmProject/XmProjectCost.vue
  3. 20
      src/views/xm/core/xmTaskSbillDetail/XmTaskSbillDetailMng.vue

4
src/router/routes_xm.js

@ -171,11 +171,13 @@ export default {
iconCls: 'fa el-icon-menu', iconCls: 'fa el-icon-menu',
meta: { meta: {
menu:true, menu:true,
title: '务结算',
title: '务结算',
icon: 'task' icon: 'task'
}, },
//leaf: true,//只有一个节点 //leaf: true,//只有一个节点
children: [ children: [
{ path: 'xmProject/XmProjectCost', component: _import('xm/core/xmProject/XmProjectCost'), name: 'XmProjectCost', meta: { title: '应付款'}},
{ path: 'xmTaskSbill/XmTaskSbillMng', component: _import('xm/core/xmTaskSbill/XmTaskSbillMng'), name: 'XmTaskSbilllMng', meta: { title: '任务结算单'}}, { path: 'xmTaskSbill/XmTaskSbillMng', component: _import('xm/core/xmTaskSbill/XmTaskSbillMng'), name: 'XmTaskSbilllMng', meta: { title: '任务结算单'}},
{ path: 'xmTaskWorkload/XmTaskWorkloadInfoMy', component: _import('xm/core/xmTaskWorkload/XmTaskWorkloadInfoMy'), name: 'XmTaskWorkloadInfoMy', meta: { title: '工时确认(我)'}}, { path: 'xmTaskWorkload/XmTaskWorkloadInfoMy', component: _import('xm/core/xmTaskWorkload/XmTaskWorkloadInfoMy'), name: 'XmTaskWorkloadInfoMy', meta: { title: '工时确认(我)'}},
{ path: 'xmTaskWorkload/WorkloadSetDayListMy', component: _import('xm/core/xmTaskWorkload/WorkloadSetDayListMy'), name: 'WorkloadSetDayListMy', meta: { title: '工时日报表(我)'}}, { path: 'xmTaskWorkload/WorkloadSetDayListMy', component: _import('xm/core/xmTaskWorkload/WorkloadSetDayListMy'), name: 'WorkloadSetDayListMy', meta: { title: '工时日报表(我)'}},

24
src/views/xm/core/xmProject/XmProjectCost.vue

@ -31,26 +31,26 @@
border> border>
<el-table-column prop="username" label="成员姓名" min-width="100" v-if="rptType==='3'"> <el-table-column prop="username" label="成员姓名" min-width="100" v-if="rptType==='3'">
<template slot-scope="scope"> <template slot-scope="scope">
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,'username','queryByUsername')">{{scope.row.username}}</a>
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,'username','queryByBizUserid')">{{scope.row.username}}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="projectId" label="项目编号" min-width="100" v-if="rptType==='2'"> <el-table-column prop="projectId" label="项目编号" min-width="100" v-if="rptType==='2'">
<template slot-scope="scope"> <template slot-scope="scope">
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,'username','queryByUsername')">{{scope.row.projectId}}</a>
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,'projectId','queryByProjectId')">{{scope.row.projectId}}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="branchId" label="企业编号" min-width="100" v-if="rptType==='1'"> <el-table-column prop="branchId" label="企业编号" min-width="100" v-if="rptType==='1'">
<template slot-scope="scope"> <template slot-scope="scope">
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,'username','queryByUsername')">{{scope.row.branchId}}</a>
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,'branchId','queryByBranchId')">{{scope.row.branchId}}</a>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column min-width="100" ></el-table-column> --> <!-- <el-table-column min-width="100" ></el-table-column> -->
<el-table-column :prop="month" v-for="month in selYearMonths" :key="month" :label="month" width="100"> <el-table-column :prop="month" v-for="month in selYearMonths" :key="month" :label="month" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,month,'queryByBizzMonth')">{{scope.row[month]}}</a>
<a style="text-decoration:underline;margin-right:5px;" @click="showCostUserDetails(scope.row,month,'queryByBizMonth')">{{scope.row[month]}}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="monthsSum" label="合计" min-width="80"> <el-table-column prop="monthsSum" label="合计" min-width="80">
@ -71,14 +71,14 @@
</el-table-column> </el-table-column>
<el-table-column prop="username" label="姓名" min-width="100" > <el-table-column prop="username" label="姓名" min-width="100" >
<template slot-scope="scope"> <template slot-scope="scope">
<a style="text-decoration:underline;margin-right:5px;" @click="showCostNouserDetails(scope.row,'username','queryByUsername')">{{scope.row.username}}</a>
<a style="text-decoration:underline;margin-right:5px;" @click="showCostNouserDetails(scope.row,'username','queryByBizUserid')">{{scope.row.username}}</a>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column min-width="100" ></el-table-column> --> <!-- <el-table-column min-width="100" ></el-table-column> -->
<el-table-column :prop="month" v-for="month in selYearMonths" :key="month" :label="month" width="100"> <el-table-column :prop="month" v-for="month in selYearMonths" :key="month" :label="month" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<a style="text-decoration:underline;margin-right:5px;" @click="showCostNouserDetails(scope.row,month,'queryByBizzMonth')">{{scope.row[month]}}</a>
<a style="text-decoration:underline;margin-right:5px;" @click="showCostNouserDetails(scope.row,month,'queryByBizMonth')">{{scope.row[month]}}</a>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="monthsSum" label="合计" min-width="80"> <el-table-column prop="monthsSum" label="合计" min-width="80">
@ -91,7 +91,7 @@
<xm-cost-nouser v-else :sel-project="selProject"></xm-cost-nouser> <xm-cost-nouser v-else :sel-project="selProject"></xm-cost-nouser>
</div> </div>
<el-drawer title="查看人力支出明细" :visible.sync="costUserVisible" size="60%" append-to-body :close-on-click-modal="false"> <el-drawer title="查看人力支出明细" :visible.sync="costUserVisible" size="60%" append-to-body :close-on-click-modal="false">
<xm-cost-user :cost-user="costUser" :visible="costUserVisible" :field-name="fieldName" :query-type="queryType" :sel-project="selProject"></xm-cost-user>
<xm-cost-user v-if="costUser" :biz-month="queryType==='queryByBizMonth'?fieldName:null" :visible="costUserVisible" :userid="costUser.userid" :branch-id=" costUser.branchId " :project-id=" costUser.projectId "></xm-cost-user>
</el-drawer> </el-drawer>
<el-drawer title="查看非人力支出明细" :visible.sync="costNouserVisible" size="60%" append-to-body :close-on-click-modal="false"> <el-drawer title="查看非人力支出明细" :visible.sync="costNouserVisible" size="60%" append-to-body :close-on-click-modal="false">
<xm-cost-nouser :cost-nouser="costNouser" :visible="costNouserVisible" :field-name="fieldName" :query-type="queryType" :sel-project="selProject"></xm-cost-nouser> <xm-cost-nouser :cost-nouser="costNouser" :visible="costNouserVisible" :field-name="fieldName" :query-type="queryType" :sel-project="selProject"></xm-cost-nouser>
@ -233,8 +233,10 @@ import { months } from 'moment';
listSumSamt:function(){ listSumSamt:function(){
var parmas={ var parmas={
bizYear:this.selYear,
projectId:this.selProject.id,
bizYear:this.selYear,
}
if(this.selProject){
params.projectId=this.selProject
} }
var func=listSumSamtGroupByUseridBizMonth var func=listSumSamtGroupByUseridBizMonth
if(this.rptType==='1'){ if(this.rptType==='1'){
@ -265,13 +267,13 @@ import { months } from 'moment';
}, },
showCostUserDetails:function(row,fieldName,queryType){ showCostUserDetails:function(row,fieldName,queryType){
this.costUser=row this.costUser=row
this.fileName=fieldName
this.fieldName=fieldName
this.queryType=queryType this.queryType=queryType
this.costUserVisible=true; this.costUserVisible=true;
}, },
showCostNouserDetails:function(row,fieldName,queryType){ showCostNouserDetails:function(row,fieldName,queryType){
this.costNouser=row this.costNouser=row
this.fileName=fieldName
this.fieldName=fieldName
this.queryType=queryType this.queryType=queryType
this.costNouserVisible=true; this.costNouserVisible=true;
}, },

20
src/views/xm/core/xmTaskSbillDetail/XmTaskSbillDetailMng.vue

@ -207,7 +207,7 @@
components: { components: {
XmTaskSbillDetailEdit,XmTaskWorkloadSimpleList, XmTaskSbillDetailEdit,XmTaskWorkloadSimpleList,
}, },
props:['visible'],
props:['visible','branchId','userid','bizMonth','projectId'],
computed: { computed: {
...mapGetters(['userInfo']), ...mapGetters(['userInfo']),
@ -218,7 +218,7 @@
this.initData(); this.initData();
this.searchXmTaskSbillDetails() this.searchXmTaskSbillDetails()
} }
}
},
}, },
data() { data() {
return { return {
@ -304,6 +304,22 @@
params.key=this.filters.key params.key=this.filters.key
} }
if(this.branchId){
params.branchId=this.branchId
}
if(this.userid){
params.userid=this.userid
}
if(this.projectId){
params.projectId=this.projectId
}
if(this.bizMonth){
params.bizMonth=this.bizMonth
}
this.load.list = true; this.load.list = true;
listXmTaskSbillDetail(params).then((res) => { listXmTaskSbillDetail(params).then((res) => {
var tips=res.data.tips; var tips=res.data.tips;

Loading…
Cancel
Save