Browse Source

优化

master
陈裕财 3 years ago
parent
commit
0f76f372c8
  1. 13
      src/views/xm/core/xmWorkload/WorkloadSetDayList.vue
  2. 17
      src/views/xm/core/xmWorkload/XmWorkloadList.vue
  3. 21
      src/views/xm/core/xmWorkload/XmWorkloadSimpleList.vue
  4. 18
      src/views/xm/core/xmWorkload/XmWorkloadSimpleListForBizDate.vue
  5. 13
      src/views/xm/rpt/project/projectWorkloadSetDayList.vue

13
src/views/xm/core/xmWorkload/WorkloadSetDayList.vue

@ -5,7 +5,7 @@
<div>
<div
class="main"
id="projectWorkloadSetDayList"
:id="id"
style="width: 100%; height: 600px; margin: 0 auto"
></div>
</div>
@ -23,7 +23,7 @@
@clear="onProjectClear"
></xm-project-select>
</el-form-item>
<el-form-item label="人员编号" v-if="queryScope !== 'my'">
<el-form-item label="人员编号" v-if="queryScope !== 'my' && (!user|| !user.userid)">
<el-input v-model="filters.userid"></el-input>
</el-form-item>
@ -244,6 +244,7 @@
<script>
import util from "@/common/js/util"; //
import seq from '@/common/js/sequence';//
import { initSimpleDicts } from "@/api/mdp/meta/item"; //
import { mapGetters } from "vuex";
@ -255,7 +256,7 @@ export default {
XmProjectSelect,
XmWorkloadSimpleListForBizDate,
},
props: ["xmProduct", "xmProject", "queryScope"],
props: ["xmProduct", "xmProject", "queryScope",'user'],
computed: {
...mapGetters(["userInfo", "roles"]),
dataSetCpd() {
@ -340,6 +341,7 @@ export default {
hadCommitSworkload: "已提交待审核",
hadSetSworkload: "已结算",
},
id:seq.sn(),
}; //end return
}, //end data
methods: {
@ -359,6 +361,9 @@ export default {
if (this.filters.taskId) {
params.taskId = this.filters.taskId;
}
if(this.user && this.user.userid){
params.userid = this.user.userid;
}
this.load.list = true;
listProjectWorkloadSetDay(params).then((res) => {
this.xmProjectWorkloadSetDays = res.data.tips.isOk
@ -383,7 +388,7 @@ export default {
},
drawCharts() {
this.myChart = this.$echarts.init(
document.getElementById("projectWorkloadSetDayList")
document.getElementById(this.id)
);
var that = this;
this.myChart.on("updateAxisPointer", function (event) {

17
src/views/xm/core/xmWorkload/XmWorkloadList.vue

@ -12,7 +12,11 @@
<!--列表 XmWorkload 工时登记表-->
<el-table ref="xmWorkloadTable" :data="xmWorkloads" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="55" 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="username" label="姓名" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<el-link @click="queryUserWorkload(scope.row)">{{scope.row.username}}</el-link>
</template>
</el-table-column>
<el-table-column prop="bizDate" label="报送日期" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="workload" label="报送工时" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="wstatus" label="状态" min-width="80" show-overflow-tooltip>
@ -63,6 +67,10 @@
<el-dialog title="需求明细" :visible.sync="menuDetailVisible" width="90%" top="20px" append-to-body>
<xm-menu-detail :visible="menuDetailVisible" :xm-menu="{id:editForm.menuId,name:editForm.bizName}" :reload="true"></xm-menu-detail>
</el-dialog>
<el-dialog :title="'【'+editForm.username+'】在项目【'+editForm.projectId+'】的工时记录情况'" :visible.sync="userWorkloadDayListVisible" width="90%" top="20px" append-to-body>
<workload-set-day-list :xm-project="{id:editForm.projectId}" :user="{userid:editForm.userid,username:editForm.username}"></workload-set-day-list>
</el-dialog>
</el-row>
</section>
</template>
@ -85,6 +93,7 @@
"xm-test-case-detail":()=>import("../xmTestCase/XmTestCaseDetail"),
"xm-test-plan-case-detail":()=>import("../xmTestPlanCase/XmTestPlanCaseDetail"),
"xm-menu-detail":()=>import("../xmMenu/XmMenuDetail"),
"project-workload-set-day-list":()=>import("../../rpt/project/projectWorkloadSetDayList")
},
props:['xmTask','visible','bizType'/*报工类型1-任务,2-缺陷,3-测试用例设计,4-测试执行 */,
'xmMenu','xmTestCase','xmQuestion','xmTestPlanCase'],
@ -188,6 +197,8 @@
caseDetailVisible:false,
planCaseDetailVisible:false,
menuDetailVisible:false,
userWorkloadDayListVisible:false,
}
},//end data
methods: {
@ -382,6 +393,10 @@
}else if(this.bizType=='5'){
this.menuDetailVisible=true
}
},
queryUserWorkload(row){
this.editForm=row
this.userWorkloadDayListVisible=true;
}
},//end methods

21
src/views/xm/core/xmWorkload/XmWorkloadSimpleList.vue

@ -15,7 +15,11 @@
</el-descriptions>
<el-table ref="xmWorkloadTable" :max-height="maxTableHeight" :data="xmWorkloads" :row-style="{height:'50px'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="username" label="姓名" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="username" label="姓名" width="120" show-overflow-tooltip>
<template slot-scope="scope">
<el-link @click="queryUserWorkload(scope.row)">{{scope.row.username}}</el-link>
</template>
</el-table-column>
<el-table-column prop="bizDate" label="登记日期" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="workload" label="登记工时" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="wstatus" label="确认状态" width="120" show-overflow-tooltip>
@ -84,6 +88,10 @@
<el-dialog title="需求明细" :visible.sync="menuDetailVisible" width="90%" top="20px" append-to-body>
<xm-menu-detail :visible="menuDetailVisible" :xm-menu="{id:editForm.menuId,name:editForm.bizName}" :reload="true"></xm-menu-detail>
</el-dialog>
<el-dialog :title="'【'+editForm.username+'】在项目【'+editForm.projectId+'】的工时记录情况'" :visible.sync="userWorkloadDayListVisible" width="90%" top="20px" append-to-body>
<workload-set-day-list :xm-project="{id:editForm.projectId}" :user="{userid:editForm.userid,username:editForm.username}"></workload-set-day-list>
</el-dialog>
</el-row>
</section>
</template>
@ -105,8 +113,9 @@
"xm-test-case-detail":()=>import("../xmTestCase/XmTestCaseDetail"),
"xm-test-plan-case-detail":()=>import("../xmTestPlanCase/XmTestPlanCaseDetail"),
"xm-menu-detail":()=>import("../xmMenu/XmMenuDetail"),
"workload-set-day-list":()=>import("./WorkloadSetDayList"),
},
props:['xmTask','visible','userid','wstatus','sstatus'],
props:['xmTask','visible','userid','wstatus','sstatus','projectId'],
computed: {
...mapGetters(['userInfo']),
@ -156,6 +165,7 @@
userid:'',username:'',ctime:'',taskId:'',cuserid:'',bizDate:'',wstatus:'',remark:'',ttype:'',id:'',sbillId:'',stime:'',sstatus:'',amt:'',samt:'',workload:''
},
maxTableHeight:300,
userWorkloadDayListVisible:false,
}
},//end data
methods: {
@ -247,6 +257,9 @@
if(this.userid){
params.userid=this.userid
}
if(this.projectId){
params.projectId=this.projectId
}
if(this.wstatus){
params.wstatus=this.wstatus
@ -355,6 +368,10 @@
}else if(this.bizType=='5'){
this.menuDetailVisible=true
}
},
queryUserWorkload(row){
this.editForm=row
this.userWorkloadDayListVisible=true;
}
},//end methods
mounted() {

18
src/views/xm/core/xmWorkload/XmWorkloadSimpleListForBizDate.vue

@ -3,7 +3,11 @@
<el-row class="padding-top">
<el-table ref="xmWorkloadTable" :max-height="maxTableHeight" :data="xmWorkloads" :row-style="{height:'50px'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="username" label="姓名" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="username" label="姓名" width="120" show-overflow-tooltip>
<template slot-scope="scope">
<el-link @click="queryUserWorkload(scope.row)">{{scope.row.username}}</el-link>
</template>
</el-table-column>
<el-table-column prop="bizDate" label="登记日期" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="workload" label="登记工时" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="wstatus" label="确认状态" width="120" show-overflow-tooltip>
@ -72,6 +76,11 @@
<el-dialog title="需求明细" :visible.sync="menuDetailVisible" width="90%" top="20px" append-to-body>
<xm-menu-detail :visible="menuDetailVisible" :xm-menu="{id:editForm.menuId,name:editForm.bizName}" :reload="true"></xm-menu-detail>
</el-dialog>
<el-dialog :title="'【'+editForm.username+'】在项目【'+editForm.projectId+'】的工时记录情况'" :visible.sync="userWorkloadDayListVisible" width="90%" top="20px" append-to-body>
<workload-set-day-list :xm-project="{id:editForm.projectId}" :user="{userid:editForm.userid,username:editForm.username}"></workload-set-day-list>
</el-dialog>
</section>
</template>
@ -94,6 +103,7 @@
"xm-test-case-detail":()=>import("../xmTestCase/XmTestCaseDetail"),
"xm-test-plan-case-detail":()=>import("../xmTestPlanCase/XmTestPlanCaseDetail"),
"xm-menu-detail":()=>import("../xmMenu/XmMenuDetail"),
"workload-set-day-list":()=>import("./WorkloadSetDayList"),
},
props:[ 'visible','wstatus','sstatus','bizDate','projectId','userid','taskId','bizMonth','detailId','sbillId'],
computed: {
@ -147,6 +157,8 @@
caseDetailVisible:false,
planCaseDetailVisible:false,
menuDetailVisible:false,
userWorkloadDayListVisible:false,
}
},//end data
methods: {
@ -398,6 +410,10 @@
}else if(this.bizType=='5'){
this.menuDetailVisible=true
}
},
queryUserWorkload(row){
this.editForm=row
this.userWorkloadDayListVisible=true;
}
},//end methods

13
src/views/xm/rpt/project/projectWorkloadSetDayList.vue

@ -1,11 +1,11 @@
<template>
<section>
<el-dialog :title="(filters.project?'【'+filters.project.name+'】':'')+'结算工时按日分布趋势图'" append-to-body modal-append-to-body width="80%" top="20px" :visible.sync="visible">
<el-dialog :title="(filters.project?'【'+(filters.project.name?filters.project.name:filters.project.id)+'】':'')+'结算工时按日分布趋势图'" append-to-body modal-append-to-body width="80%" top="20px" :visible.sync="visible">
<el-row :gutter="5">
<el-col :span="18">
<div>
<div class="main" id="projectWorkloadSetDayList" style="width:100%;height:600px;margin:0 auto;"></div>
<div class="main" :id="id" style="width:100%;height:600px;margin:0 auto;"></div>
</div>
</el-col>
<el-col :span="6" class="border padding">
@ -36,6 +36,7 @@
<script>
import util from '@/common/js/util';//
import seq from '@/common/js/sequence';//
import { initSimpleDicts } from '@/api/mdp/meta/item';//
import { mapGetters } from 'vuex'
@ -66,7 +67,7 @@
},
watch: {
dataSetCpd(){
dataSetCpd(){
this.$nextTick(()=>{
this.drawCharts();
})
@ -91,6 +92,7 @@
maxTableHeight:300,
visible:false,
xmProjectWorkloadSetDays:[],
id:seq.sn(),
}//end return
},//end data
@ -121,8 +123,7 @@
this.filters.product=params.xmProduct
this.filters.project=params.xmProject
this.filters.iteration=params.xmIteration
this.xmProjectWorkloadSetDays=[]
this.xmProjectWorkloadSetDays=[]
this.$nextTick(()=>{
if(this.$refs['xmProjectSelect'])this.$refs['xmProjectSelect'].clearSelect();
this.listProjectWorkloadSetDay();
@ -130,7 +131,7 @@
},
drawCharts() {
this.myChart = this.$echarts.init(document.getElementById("projectWorkloadSetDayList"));
this.myChart = this.$echarts.init(document.getElementById(this.id));
var that=this;
this.myChart.on('updateAxisPointer', function (event) {
const xAxisInfo = event.axesInfo[0];

Loading…
Cancel
Save