Browse Source

优化

master
陈裕财 4 years ago
parent
commit
01e35cf684
  1. 8
      src/router/routes_xm.js
  2. 135
      src/views/xm/core/xmTaskSbill/SelectXmProject.vue
  3. 7
      src/views/xm/core/xmTaskSbill/XmTaskSbillMng.vue
  4. 51
      src/views/xm/core/xmTaskWorkload/XmTaskWorkloadMng.vue

8
src/router/routes_xm.js

@ -179,11 +179,11 @@ export default {
}, },
//leaf: true,//只有一个节点 //leaf: true,//只有一个节点
children: [ children: [
{ 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/XmTaskWorkloadMng', component: _import('xm/core/xmTaskWorkload/XmTaskWorkloadMng'), name: 'XmTaskWorkloadMng', meta: { title: '工时列表'}},*/ /*{ path: 'xmTaskWorkload/XmTaskWorkloadMng', component: _import('xm/core/xmTaskWorkload/XmTaskWorkloadMng'), name: 'XmTaskWorkloadMng', meta: { title: '工时列表'}},*/
{ path: 'xmTaskWorkload/WaitWorkloadToSbill', component: _import('xm/core/xmTaskWorkload/WaitWorkloadToSbill'), name: 'WaitWorkloadToSbill', meta: { title: '待结算工时列表'}},
{ path: 'xmTaskWorkload/FinWorkloadToSbill', component: _import('xm/core/xmTaskWorkload/FinWorkloadToSbill'), name: 'FinWorkloadToSbill', meta: { title: '已结算工时列表'}},
{ path: 'xmTaskWorkload/ToComfirmWorkload', component: _import('xm/core/xmTaskWorkload/ToComfirmWorkload'), name: 'ToComfirmWorkload', meta: { title: '未确认工时列表'}},
{ path: 'xmTaskWorkload/WaitWorkloadToSbill', component: _import('xm/core/xmTaskWorkload/WaitWorkloadToSbill'), name: 'WaitWorkloadToSbill', meta: { title: '待结算工时'}},
{ path: 'xmTaskWorkload/FinWorkloadToSbill', component: _import('xm/core/xmTaskWorkload/FinWorkloadToSbill'), name: 'FinWorkloadToSbill', meta: { title: '已结算工时'}},
{ path: 'xmTaskWorkload/ToComfirmWorkload', component: _import('xm/core/xmTaskWorkload/ToComfirmWorkload'), name: 'ToComfirmWorkload', meta: { title: '待确认工时'}},
] ]
} }
] ]

135
src/views/xm/core/xmTaskSbill/SelectXmProject.vue

@ -1,135 +0,0 @@
<template>
<section class="page-container padding">
<el-row class="page-header">
<el-input v-model="filters.key" style="width:50%;" placeholder="项目名称模糊查询" clearable>
</el-input>
<el-button type="primary" icon="el-icon-search" @click="searchXmProjects">查询</el-button>
</el-row>
<el-row>
<el-row>
<el-table ref="table" v-cloak fit border :data="xmProjects" highlight-current-row v-loading="load.list"
style="width: 100%;" :header-cell-style="{'text-align':'center'}"
:cell-style="{'text-align':'center'}">
<el-table-column type="index" label="序号" min-width="50" ></el-table-column>
<el-table-column prop="id" label="项目编码" min-width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="name" label="标题" min-width="150" ></el-table-column>
<el-table-column label="操作" min-width="80">
<template slot-scope="scope">
<el-button @click.stop="selectRow(scope.row)" >选择</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination layout="total, sizes, prev, pager, next" @current-change="handleCurrentChange" @size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum" :page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;"></el-pagination>
</el-row>
</el-row>
</section>
</template>
<script>
import util from '@/common/js/util';//
import { getDicts,initSimpleDicts,initComplexDicts } from '@/api/mdp/meta/item';//
import { addXmTaskSbill,editXmTaskSbill } from '@/api/xm/core/xmTaskSbill';
import { mapGetters } from 'vuex'
import {listXmProject} from "@/api/xm/core/xmProject";
export default {
components: {
//XmTaskSbillEdit,
},
computed: {
...mapGetters([ 'userInfo' ]),
},
props:['visible'],
watch: {
'visible':function(visible) {
if(visible==true){
//
this.initData()
}
}
},
data() {
return {
filters: {
key: ''
},
load:{ list: false, edit: false, del: false, add: false },//...
xmProjects:[],
pageInfo:{//
total:0,//0>0
pageSize:10,//
count:false,//
pageNum:1,//1
orderFields:['create_time'],// ['sex','student_id']
orderDirs:['desc']// asc,desc ['asc','desc']
},
}//end return
},//end data
methods: {
//XmTaskSbill @submit="afterEditSubmit"
initData: function(){
this.searchXmProjects();
},
/**begin 在下面加自定义方法**/
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getXmProjects();
},
handleCurrentChange(pageNum) {
this.pageInfo.pageNum = pageNum;
this.getXmProjects();
},
// XmProject xm_project
getXmProjects(callBack) {
let params = {
pageSize: this.pageInfo.pageSize,
pageNum: this.pageInfo.pageNum,
total: this.pageInfo.total,
count:this.pageInfo.count,
};
if(this.filters.key!==""){
params.key= "%"+this.filters.key+"%";
}else{
//params.xxx=xxxxx
}
this.load.list = true;
listXmProject(params).then((res) => {
let tips=res.data.tips;
if(tips.isOk){
console.log(res.data);
this.pageInfo.total = res.data.total;
this.pageInfo.count=false;
this.xmProjects = res.data.data;
}else{
this.$notify({position:'bottom-left',showClose: true, message: tips.msg, type: 'error' });
}
this.load.list = false;
}).catch( err => this.load.list = false );
},
selectRow(row){
let obj = {
projectId:row.id,
projectName:row.name
}
this.$emit('select',obj);
},
searchXmProjects(){
this.pageInfo.count=true;
this.getXmProjects();
}
},//end method
mounted() {
this.$nextTick(() => {
//initSimpleDicts('all',['sex','gradeLvl']).then(res=>this.dicts=res.data.data);
this.initData()
});
}
}
</script>
<style scoped>
</style>

7
src/views/xm/core/xmTaskSbill/XmTaskSbillMng.vue

@ -55,12 +55,7 @@
:cell-style="{'text-align':'center'}"> :cell-style="{'text-align':'center'}">
<!-- <el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column>--> <!-- <el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column>-->
<el-table-column label="序号" type="index" min-width="55" show-overflow-tooltip></el-table-column> <el-table-column label="序号" type="index" min-width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="id" label="结算单编号" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="click-style" @click="showEdit( scope.row,scope.$index)">
{{scope.row.id}}
</span>
</template>
<el-table-column prop="id" label="结算单编号" min-width="80" show-overflow-tooltip>
</el-table-column> </el-table-column>
<el-table-column prop="title" label="结算单标题" min-width="80" show-overflow-tooltip> <el-table-column prop="title" label="结算单标题" min-width="80" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">

51
src/views/xm/core/xmTaskWorkload/XmTaskWorkloadMng.vue

@ -47,8 +47,8 @@
:cell-style="{'text-align':'center'}"> :cell-style="{'text-align':'center'}">
<el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column> <el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip></el-table-column> <el-table-column sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="id" label="编号" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="projectId" label="归属项目" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="userid" label="员工编号" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="username" label="姓名" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column v-if="wstatuses && (wstatuses.toString()=='1')" prop="wstatus" label="工时状态" min-width="80" show-overflow-tooltip> <el-table-column v-if="wstatuses && (wstatuses.toString()=='1')" prop="wstatus" label="工时状态" min-width="80" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag type="info" v-if="scope.row.wstatus=='0'">待确认</el-tag> <el-tag type="info" v-if="scope.row.wstatus=='0'">待确认</el-tag>
@ -68,30 +68,36 @@
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="userid" label="员工编号" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="username" label="姓名" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="ctime" label="创建日期" min-width="80" show-overflow-tooltip>
<el-table-column prop="workload" label="工时" min-width="80" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.ctime.substring(0,10)}}</span>
{{scope.row.workload}}h
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="sstatus" label="结算状态" min-width="80" show-overflow-tooltip>
<el-table-column prop="amt" label="工时金额" min-width="80" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag type="info" v-if="scope.row.sstatus=='0'">无需结算</el-tag>
<el-tag v-else-if="scope.row.sstatus=='1'">待结算</el-tag>
<el-tag type="warning" v-else-if="scope.row.sstatus=='2'">已提交</el-tag>
<el-tag type="danger" v-else-if="scope.row.sstatus=='3'">已通过</el-tag>
<el-tag type="success" v-else-if="scope.row.sstatus=='4'">已结算</el-tag>
<el-tag v-else>未结算</el-tag>
<span v-if="scope.row.amt">¥{{scope.row.amt}}</span>
<span v-else>¥0</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column v-if="sstatuses && sstatuses.toString()=='1'" prop="toSbill" label="结算" min-width="80" show-overflow-tooltip>
<el-table-column prop="samt" label="结算金额" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span v-if="scope.row.samt">¥{{ scope.row.samt}}</span>
<span v-else>-</span>
</template>
</el-table-column>
<el-table-column v-if="sstatuses && sstatuses=='1'" prop="toSbill" label="结算单" min-width="80" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<span class="cell-bar"> <span class="cell-bar">
<xm-task-sbill-select style="display:inline;" :auto-select="false" :project-id="scope.row.projectId" placeholder="结算" @row-click="editXmWorkloadSomeFields(scope.row,$event)"></xm-task-sbill-select> <xm-task-sbill-select style="display:inline;" :auto-select="false" :project-id="scope.row.projectId" placeholder="结算" @row-click="editXmWorkloadSomeFields(scope.row,$event)"></xm-task-sbill-select>
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="projectId" label="归属项目" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="ctime" label="创建日期" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span>{{scope.row.ctime.substring(0,10)}}</span>
</template>
</el-table-column>
<el-table-column prop="taskId" label="任务编号" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column prop="taskId" label="任务编号" min-width="80" show-overflow-tooltip></el-table-column>
<!-- <el-table-column prop="cuserid" label="创建人编号" min-width="80" show-overflow-tooltip></el-table-column> <!-- <el-table-column prop="cuserid" label="创建人编号" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="bizDate" label="业务日期yyyy-MM-dd" min-width="80" show-overflow-tooltip></el-table-column>--> <el-table-column prop="bizDate" label="业务日期yyyy-MM-dd" min-width="80" show-overflow-tooltip></el-table-column>-->
@ -104,23 +110,6 @@
<!-- <el-table-column prop="ttype" label="任务类型-关联字典taskType" min-width="80" show-overflow-tooltip></el-table-column>--> <!-- <el-table-column prop="ttype" label="任务类型-关联字典taskType" min-width="80" show-overflow-tooltip></el-table-column>-->
<!-- <el-table-column prop="sbillId" label="结算单据编号" min-width="80" show-overflow-tooltip></el-table-column> <!-- <el-table-column prop="sbillId" label="结算单据编号" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="stime" label="结算提交时间" min-width="80" show-overflow-tooltip></el-table-column>--> <el-table-column prop="stime" label="结算提交时间" min-width="80" show-overflow-tooltip></el-table-column>-->
<el-table-column prop="amt" label="工时金额" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span v-if="scope.row.amt">¥{{scope.row.amt}}</span>
<span v-else>¥0</span>
</template>
</el-table-column>
<el-table-column prop="samt" label="结算金额" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span v-if="scope.row.samt">¥{{ scope.row.samt}}</span>
<span v-else>-</span>
</template>
</el-table-column>
<el-table-column prop="workload" label="工时" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.workload}}h
</template>
</el-table-column>
<!-- <el-table-column prop="rworkload" label="剩余工时(同一天取最后日期更新到task表rworkload中)" min-width="80" show-overflow-tooltip></el-table-column> <!-- <el-table-column prop="rworkload" label="剩余工时(同一天取最后日期更新到task表rworkload中)" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="cusername" label="创建人姓名" min-width="80" show-overflow-tooltip></el-table-column>--> <el-table-column prop="cusername" label="创建人姓名" min-width="80" show-overflow-tooltip></el-table-column>-->

Loading…
Cancel
Save