Browse Source

优化

master
陈裕财 2 years ago
parent
commit
dd4b4ef20e
  1. 2
      src/views/xm/core/components/XmIterationSelect.vue
  2. 2
      src/views/xm/core/components/XmProductSelect.vue
  3. 2
      src/views/xm/core/components/XmProjectSelect.vue
  4. 2
      src/views/xm/core/crowd/XmTaskCrowdMng.vue
  5. 2
      src/views/xm/core/xmBranchState/XmBranchStateMng.vue
  6. 2
      src/views/xm/core/xmBranchStateHis/XmBranchStateHisMng.vue
  7. 56
      src/views/xm/core/xmBudgetLabor/XmBudgetLaborMng.vue
  8. 62
      src/views/xm/core/xmBudgetNlabor/XmBudgetNlaborMng.vue
  9. 2
      src/views/xm/core/xmContract/XmContractMng.vue
  10. 52
      src/views/xm/core/xmCostNlabor/XmCostNlaborMng.vue
  11. 2
      src/views/xm/core/xmEnvList/XmEnvListMng.vue
  12. 2
      src/views/xm/core/xmFile/XmFileMng.vue
  13. 4
      src/views/xm/core/xmFunc/XmFuncMng.vue
  14. 2
      src/views/xm/core/xmGroupState/XmGroupStateMng.vue
  15. 2
      src/views/xm/core/xmGroupUser/XmGroupUserMng.vue
  16. 2
      src/views/xm/core/xmIteration/XmIterationBox.vue
  17. 2
      src/views/xm/core/xmIteration/XmIterationMng.vue
  18. 2
      src/views/xm/core/xmIterationMenu/XmIterationMenuMng.vue
  19. 2
      src/views/xm/core/xmIterationState/XmIterationStateMng.vue
  20. 2
      src/views/xm/core/xmIterationState/XmIterationStateShow.vue
  21. 2
      src/views/xm/core/xmIterationStateHis/XmIterationStateHisMng.vue
  22. 2
      src/views/xm/core/xmMenu/XmEpicFeatures.vue
  23. 2
      src/views/xm/core/xmMenu/XmEpicFeaturesSelect.vue
  24. 98
      src/views/xm/core/xmMenu/XmMenuAgileKanbanUser.vue
  25. 2
      src/views/xm/core/xmMenu/XmMenuMng.vue
  26. 2
      src/views/xm/core/xmMenu/XmMenuMngBatch.vue
  27. 2
      src/views/xm/core/xmMenu/XmMenuSelect.vue
  28. 4
      src/views/xm/core/xmMenu/XmMenuWithPlan.vue
  29. 2
      src/views/xm/core/xmMenuState/XmMenuStateMng.vue
  30. 2
      src/views/xm/core/xmMenuTemplate/XmMenuTemplateMng.vue
  31. 4
      src/views/xm/core/xmMyFocus/XmMyFocusMng.vue
  32. 2
      src/views/xm/core/xmProduct/XmProductMng.vue
  33. 2
      src/views/xm/core/xmProduct/XmProductRecycle.vue
  34. 4
      src/views/xm/core/xmProduct/XmProductTplMng.vue
  35. 2
      src/views/xm/core/xmProductProjectLink/XmProductProjectLinkMng.vue
  36. 2
      src/views/xm/core/xmProductState/XmProductStateMng.vue
  37. 2
      src/views/xm/core/xmProductStateHis/XmProductStateHisMng.vue
  38. 4
      src/views/xm/core/xmProductTemplate/XmProductTemplateMng.vue
  39. 4
      src/views/xm/core/xmProject/XmProjectBudgetCost.vue
  40. 2
      src/views/xm/core/xmProject/XmProjectCost.vue
  41. 2
      src/views/xm/core/xmProject/XmProjectForLink.vue
  42. 2
      src/views/xm/core/xmProject/XmProjectMng.vue
  43. 2
      src/views/xm/core/xmProject/XmProjectRecycle.vue
  44. 2
      src/views/xm/core/xmProject/XmProjectTplMng.vue
  45. 2
      src/views/xm/core/xmProjectKpi/XmProjectKpiMng.vue
  46. 2
      src/views/xm/core/xmProjectState/XmProjectStateMng.vue
  47. 2
      src/views/xm/core/xmProjectStateHis/XmProjectStateHisMng.vue
  48. 2
      src/views/xm/core/xmProjectTaskTypeState/XmProjectTaskTypeStateMng.vue
  49. 2
      src/views/xm/core/xmProjectTemplate/XmProjectTemplateList.vue
  50. 2
      src/views/xm/core/xmProjectTemplate/XmProjectTemplateMng.vue
  51. 2
      src/views/xm/core/xmQuestion/XmQuestionEdit.vue
  52. 2
      src/views/xm/core/xmQuestion/XmQuestionMng.vue
  53. 2
      src/views/xm/core/xmQuestionHandle/XmQuestionHandleMng.vue
  54. 2
      src/views/xm/core/xmRecord/XmRecord.vue
  55. 4
      src/views/xm/core/xmRecordVisit/XmRecordVisitMng.vue
  56. 4
      src/views/xm/core/xmRptConfig/XmRptConfigMng.vue
  57. 4
      src/views/xm/core/xmRptData/XmRptDataMng.vue
  58. 2
      src/views/xm/core/xmTask/XmPhase.vue
  59. 2
      src/views/xm/core/xmTask/XmPhaseSelect.vue
  60. 42
      src/views/xm/core/xmTask/XmTaskAgileKanban.vue
  61. 40
      src/views/xm/core/xmTask/XmTaskAgileKanbanUser.vue
  62. 46
      src/views/xm/core/xmTask/XmTaskAgileKanbanWeek.vue
  63. 2
      src/views/xm/core/xmTask/XmTaskList.vue
  64. 2
      src/views/xm/core/xmTask/XmTaskListForMenu.vue
  65. 2
      src/views/xm/core/xmTask/XmTaskMng.vue
  66. 4
      src/views/xm/core/xmTaskEval/XmTaskEvalMng.vue
  67. 2
      src/views/xm/core/xmTaskExecuser/XmTaskExecuserForTask.vue
  68. 2
      src/views/xm/core/xmTaskExecuser/XmTaskExecuserMng.vue
  69. 2
      src/views/xm/core/xmTaskExecuser/XmTaskExecuserSelect.vue
  70. 4
      src/views/xm/core/xmTaskOrder/XmTaskOrderMng.vue
  71. 2
      src/views/xm/core/xmTaskSbill/XmTaskSbillMng.vue
  72. 154
      src/views/xm/core/xmTaskSbillDetail/XmTaskSbillDetailMng.vue
  73. 2
      src/views/xm/core/xmTaskSkill/XmTaskSkillMng.vue
  74. 2
      src/views/xm/core/xmTaskTemplate/XmTaskTemplateMng.vue
  75. 2
      src/views/xm/core/xmTestCase/XmTestCaseMng.vue
  76. 2
      src/views/xm/core/xmTestCase/XmTestCaseSelect.vue
  77. 28
      src/views/xm/core/xmTestCasedb/XmTestCasedbMng.vue
  78. 2
      src/views/xm/core/xmTestPlan/XmTestPlanListForProject.vue
  79. 2
      src/views/xm/core/xmTestPlan/XmTestPlanMng.vue
  80. 2
      src/views/xm/core/xmTestPlan/XmTestPlanSelect.vue
  81. 2
      src/views/xm/core/xmTestPlanCase/XmTestPlanCaseMng.vue
  82. 2
      src/views/xm/core/xmTestPlanCase/XmTestPlanCaseSelect.vue
  83. 2
      src/views/xm/core/xmWorkload/XmTaskSbillSelect.vue
  84. 2
      src/views/xm/core/xmWorkload/XmWorkloadInfo.vue
  85. 2
      src/views/xm/core/xmWorkload/XmWorkloadMng.vue
  86. 28
      src/views/xm/rpt/his/rptDataSelect.vue
  87. 28
      src/views/xm/rpt/index/indexForHis.vue

2
src/views/xm/core/components/XmIterationSelect.vue

@ -107,7 +107,7 @@
</el-row>
</el-row>
<el-row>
<el-table ref="table" :height="maxTableHeight" :data="xmIterations" row-key="id" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmIterations" row-key="id" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="iterationName" label="迭代" >
<template slot-scope="scope">
<div class="icon" style="background-color:#409eff"><i class="el-icon-connection" ></i></div>{{scope.row.iterationName}} <font :color="calcFinishRate(scope.row)==100?'green':'#FF8C00'">{{calcFinishRate(scope.row)}}%</font>

2
src/views/xm/core/components/XmProductSelect.vue

@ -143,7 +143,7 @@
<!--列表 XmProduct 产品表-->
<el-table
ref="table"
:height="maxTableHeight"
v-adaptive="{bottomOffset:30}"
:data="xmProducts"
:row-class-name="tableRowClassName"
@sort-change="sortChange"

2
src/views/xm/core/components/XmProjectSelect.vue

@ -144,7 +144,7 @@
<!--列表 XmProject 项目表-->
<el-table
ref="table"
:height="maxTableHeight"
v-adaptive="{bottomOffset:30}"
:data="xmProjects"
:row-class-name="tableRowClassName"
@sort-change="sortChange"

2
src/views/xm/core/crowd/XmTaskCrowdMng.vue

@ -204,7 +204,7 @@
fit
border
tooltip-effect="light"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
:tree-props="{ children: 'children' }"
row-key="id"
ref="table"

2
src/views/xm/core/xmBranchState/XmBranchStateMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmBranchState 机构内所有项目指标汇总-->
<el-table ref="xmBranchStateTable" :data="xmBranchStates" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmBranchStateTable" :data="xmBranchStates" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="bizDate" label="统计日期yyyy-mm-dd类型" min-width="80" show-overflow-tooltip></el-table-column>

2
src/views/xm/core/xmBranchStateHis/XmBranchStateHisMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmBranchStateHis 机构内所有项目指标汇总-->
<el-table ref="xmBranchStateHisTable" :data="xmBranchStateHiss" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmBranchStateHisTable" :data="xmBranchStateHiss" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="bizDate" label="统计日期yyyy-mm-dd类型" min-width="80" show-overflow-tooltip></el-table-column>

56
src/views/xm/core/xmBudgetLabor/XmBudgetLaborMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmBudgetLabor 项目人力成本预算-->
<el-table ref="xmBudgetLaborTable" :data="xmBudgetLabors" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmBudgetLaborTable" :data="xmBudgetLabors" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -18,20 +18,20 @@
<span class="cell-text"> {{scope.row.username}}} </span>
<span class="cell-bar"><el-input style="display:inline;" v-model="scope.row.username" placeholder="" @change="editSomeFields(scope.row,'username',$event)" :maxlength="22"></el-input></span>
</el-table-column>
-->
-->
<el-table-column prop="projectId" label="项目编号" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.projectId}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="username" label="项目成员" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.username}} </span>
<span class="cell-bar"><el-input style="display:inline;" v-model="scope.row.username" placeholder="" @change="editSomeFields(scope.row,'username',$event)" :maxlength="22"></el-input></span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="subjectId" label="预算科目" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<template slot-scope="scope">
<div class="cell-text">
{{formatDicts(dicts,'projectSubject',scope.row.subjectId)}}
</div>
@ -41,7 +41,7 @@
</el-select>
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="remark" label="用途说明" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.remark}} </span>
@ -56,7 +56,7 @@
</el-table-column>
<el-table-column prop="bizMonth" label="费用月份" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.bizMonth}} </span>
<span class="cell-text"> {{scope.row.bizMonth}} </span>
<span class="cell-bar">
<el-date-picker
@change="editSomeFields(scope.row,'bizMonth',$event)"
@ -64,10 +64,10 @@
type="month"
value-format="yyyy-MM"
placeholder="选择年月">
</el-date-picker>
</el-date-picker>
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="操作" width="180" fixed="right">
<template scope="scope">
<el-button type="primary" @click="showEdit( scope.row,scope.$index)" icon="el-icon-edit" plain></el-button>
@ -93,13 +93,13 @@
<script>
import util from '@/common/js/util';//
import config from '@/common/config';//
import config from '@/common/config';//
import { initDicts,listXmBudgetLabor, delXmBudgetLabor, batchDelXmBudgetLabor,editSomeFieldsXmBudgetLabor } from '@/api/xm/core/xmBudgetLabor';
import XmBudgetLaborEdit from './XmBudgetLaborEdit';//
import XmBudgetLaborAdd from './XmBudgetLaborAdd';//
import { mapGetters } from 'vuex'
export default {
name:'xmBudgetLaborMng',
components: {
@ -141,7 +141,7 @@
addForm: {
projectId:'',userid:'',budgetAt:'',id:'',remark:'',username:'',subjectId:'',bizSdate:'',bizEdate:'',bizMonth:'',instId:'',bizFlowState:'',costType:'',subjectName:'',branchId:'',ubranchId:''
},
editFormVisible: false,//
editForm: {
projectId:'',userid:'',budgetAt:'',id:'',remark:'',username:'',subjectId:'',bizSdate:'',bizEdate:'',bizMonth:'',instId:'',bizFlowState:'',costType:'',subjectName:'',branchId:'',ubranchId:''
@ -153,8 +153,8 @@
...util,
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getXmBudgetLabors();
},
handleCurrentChange(pageNum) {
@ -165,7 +165,7 @@
sortChange( obj ){
if(obj.order==null){
this.pageInfo.orderFields=[];
this.pageInfo.orderDirs=[];
this.pageInfo.orderDirs=[];
}else{
var dir='asc';
if(obj.order=='ascending'){
@ -173,14 +173,14 @@
}else{
dir='desc';
}
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderDirs=[dir];
}
this.getXmBudgetLabors();
},
searchXmBudgetLabors(){
this.pageInfo.count=true;
this.pageInfo.count=true;
this.getXmBudgetLabors();
},
// XmBudgetLabor
@ -193,9 +193,9 @@
};
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
}
params.orderBy= orderBys.join(",")
}
if(this.filters.key){
@ -205,13 +205,13 @@
this.load.list = true;
listXmBudgetLabor(params).then((res) => {
var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.total = res.data.total;
this.pageInfo.count=false;
this.xmBudgetLabors = 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 );
},
@ -237,12 +237,12 @@
//xmBudgetLabor
selsChange: function (sels) {
this.sels = sels;
},
},
//xmBudgetLabor
handleDel: function (row,index) {
handleDel: function (row,index) {
this.$confirm('确认删除该记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
let params = { id:row.id };
delXmBudgetLabor(params).then((res) => {
@ -265,7 +265,7 @@
})
this.$confirm('确认删除选中记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
batchDelXmBudgetLabor(params).then((res) => {
this.load.del=false;
@ -312,7 +312,7 @@
initData: function(){
},
},//end methods
mounted() {
this.$nextTick(() => {
@ -328,4 +328,4 @@
</script>
<style scoped>
</style>
</style>

62
src/views/xm/core/xmBudgetNlabor/XmBudgetNlaborMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmBudgetNlabor 项目人力成本预算-->
<el-table ref="xmBudgetNlaborTable" :data="xmBudgetNlabors" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmBudgetNlaborTable" :data="xmBudgetNlabors" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -24,7 +24,7 @@
<span class="cell-text"> {{scope.row.projectId}} </span>
<span class="cell-bar"><el-input style="display:inline;" v-model="scope.row.username" placeholder="" @change="editSomeFields(scope.row,'username',$event)" :maxlength="22"></el-input></span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="remark" label="用途说明" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.remark}} </span>
@ -38,7 +38,7 @@
</template>
</el-table-column>
<el-table-column prop="subjectId" label="预算科目" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<template slot-scope="scope">
<div class="cell-text">
{{formatDicts(dicts,'projectSubject',scope.row.subjectId)}}
</div>
@ -48,10 +48,10 @@
</el-select>
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="bizMonth" label="费用月份" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.bizMonth}} </span>
<span class="cell-text"> {{scope.row.bizMonth}} </span>
<span class="cell-bar">
<el-date-picker
@change="editSomeFields(scope.row,'bizMonth',$event)"
@ -59,10 +59,10 @@
type="month"
value-format="yyyy-MM"
placeholder="选择年月">
</el-date-picker>
</el-date-picker>
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="操作" width="180" fixed="right">
<template scope="scope">
<el-button type="primary" @click="showEdit( scope.row,scope.$index)" icon="el-icon-edit" plain></el-button>
@ -88,13 +88,13 @@
<script>
import util from '@/common/js/util';//
import config from '@/common/config';//
import config from '@/common/config';//
import { initDicts,listXmBudgetNlabor, delXmBudgetNlabor, batchDelXmBudgetNlabor,editSomeFieldsXmBudgetNlabor } from '@/api/xm/core/xmBudgetNlabor';
import XmBudgetNlaborEdit from './XmBudgetNlaborEdit';//
import XmBudgetNlaborAdd from './XmBudgetNlaborAdd';//
import { mapGetters } from 'vuex'
export default {
name:'xmBudgetNlaborMng',
components: {
@ -136,7 +136,7 @@
addForm: {
id:'',projectId:'',budgetAt:'',remark:'',subjectId:'',bizSdate:'',bizEdate:'',instId:'',bizFlowState:'',costType:'',bizMonth:'',subjectName:'',branchId:''
},
editFormVisible: false,//
editForm: {
id:'',projectId:'',budgetAt:'',remark:'',subjectId:'',bizSdate:'',bizEdate:'',instId:'',bizFlowState:'',costType:'',bizMonth:'',subjectName:'',branchId:''
@ -148,8 +148,8 @@
...util,
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getXmBudgetNlabors();
},
handleCurrentChange(pageNum) {
@ -160,7 +160,7 @@
sortChange( obj ){
if(obj.order==null){
this.pageInfo.orderFields=[];
this.pageInfo.orderDirs=[];
this.pageInfo.orderDirs=[];
}else{
var dir='asc';
if(obj.order=='ascending'){
@ -168,14 +168,14 @@
}else{
dir='desc';
}
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderDirs=[dir];
}
this.getXmBudgetNlabors();
},
searchXmBudgetNlabors(){
this.pageInfo.count=true;
this.pageInfo.count=true;
this.getXmBudgetNlabors();
},
// XmBudgetNlabor
@ -188,24 +188,24 @@
};
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
}
params.orderBy= orderBys.join(",")
}
if(this.filters.key){
params.key=this.filters.key
}
if(this.queryType=='queryByBizMonth'){
params.bizMonth=this.fieldName
params.username=this.budgetCostNouser.username
params.bizMonth=this.fieldName
params.username=this.budgetCostNouser.username
params.subjectId=this.budgetCostNouser.subjectId
}else if(this.queryType=='queryByUsername'){
params.username=this.budgetCostNouser.username
params.username=this.budgetCostNouser.username
params.subjectId=this.budgetCostNouser.subjectId
}else if(this.queryType=='queryBySubjectId'){
}else if(this.queryType=='queryBySubjectId'){
params.subjectId=this.budgetCostNouser.subjectId
}
}
if(this.selProject!=null && this.selProject !=undefined){
params.projectId=this.selProject.id
}
@ -213,13 +213,13 @@
this.load.list = true;
listXmBudgetNlabor(params).then((res) => {
var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.total = res.data.total;
this.pageInfo.count=false;
this.xmBudgetNlabors = 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 );
},
@ -245,12 +245,12 @@
//xmBudgetNlabor
selsChange: function (sels) {
this.sels = sels;
},
},
//xmBudgetNlabor
handleDel: function (row,index) {
handleDel: function (row,index) {
this.$confirm('确认删除该记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
let params = { id:row.id };
delXmBudgetNlabor(params).then((res) => {
@ -273,7 +273,7 @@
})
this.$confirm('确认删除选中记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
batchDelXmBudgetNlabor(params).then((res) => {
this.load.del=false;
@ -320,7 +320,7 @@
initData: function(){
},
},//end methods
mounted() {
this.$nextTick(() => {
@ -336,4 +336,4 @@
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmContract/XmContractMng.vue

@ -18,7 +18,7 @@
</el-row>
<el-row class="page-main ">
<!--列表 XmContract xm_project_contract-->
<el-table ref="table" :height="tableHeight" :data="xmContracts" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmContracts" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<!-- ht_contract_card表 -->
<el-table-column prop="htSn" label="合同编号" min-width="80" ></el-table-column>
<el-table-column prop="htName" label="合同标题" min-width="80" ></el-table-column>

52
src/views/xm/core/xmCostNlabor/XmCostNlaborMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmCostNlabor 项目实际人工成本费用-->
<el-table ref="xmCostNlaborTable" :data="xmCostNlabors" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmCostNlaborTable" :data="xmCostNlabors" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -23,7 +23,7 @@
<template slot-scope="scope">
<span> {{scope.row.projectName}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="username" label="费用主责" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.username}} </span>
@ -43,7 +43,7 @@
</template>
</el-table-column>
<el-table-column prop="subjectId" label="成本科目" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<template slot-scope="scope">
<div class="cell-text">
{{formatDicts(dicts,'projectSubject',scope.row.subjectId)}}
</div>
@ -53,10 +53,10 @@
</el-select>
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="bizMonth" label="费用月份" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.bizMonth}} </span>
<span class="cell-text"> {{scope.row.bizMonth}} </span>
<span class="cell-bar">
<el-date-picker
@change="editSomeFields(scope.row,'bizMonth',$event)"
@ -64,10 +64,10 @@
type="month"
value-format="yyyy-MM"
placeholder="选择年月">
</el-date-picker>
</el-date-picker>
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="操作" width="180" fixed="right">
<template scope="scope">
<el-button type="primary" @click="showEdit( scope.row,scope.$index)" icon="el-icon-edit" plain></el-button>
@ -93,11 +93,11 @@
<script>
import util from '@/common/js/util';//
import config from '@/common/config';//
import config from '@/common/config';//
import { initDicts,listXmCostNlabor, delXmCostNlabor, batchDelXmCostNlabor,editSomeFieldsXmCostNlabor } from '@/api/xm/core/xmCostNlabor';
import XmCostNlaborEdit from './XmCostNlaborEdit';//
import { mapGetters } from 'vuex'
export default {
name:'xmCostNlaborMng',
components: {
@ -139,7 +139,7 @@
addForm: {
projectId:'',userid:'',ctime:'',sendTime:'',username:'',projectName:'',remark:'',id:'',taskId:'',taskName:'',subjectId:'',bizSdate:'',bizEdate:'',actAt:'',costType:'',bizMonth:'',bizDate:'',subjectName:'',ubranchId:'',branchId:''
},
editFormVisible: false,//
editForm: {
projectId:'',userid:'',ctime:'',sendTime:'',username:'',projectName:'',remark:'',id:'',taskId:'',taskName:'',subjectId:'',bizSdate:'',bizEdate:'',actAt:'',costType:'',bizMonth:'',bizDate:'',subjectName:'',ubranchId:'',branchId:''
@ -151,8 +151,8 @@
...util,
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getXmCostNlabors();
},
handleCurrentChange(pageNum) {
@ -163,7 +163,7 @@
sortChange( obj ){
if(obj.order==null){
this.pageInfo.orderFields=[];
this.pageInfo.orderDirs=[];
this.pageInfo.orderDirs=[];
}else{
var dir='asc';
if(obj.order=='ascending'){
@ -171,14 +171,14 @@
}else{
dir='desc';
}
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderDirs=[dir];
}
this.getXmCostNlabors();
},
searchXmCostNlabors(){
this.pageInfo.count=true;
this.pageInfo.count=true;
this.getXmCostNlabors();
},
// XmCostNlabor
@ -191,9 +191,9 @@
};
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
}
params.orderBy= orderBys.join(",")
}
if(this.filters.key){
@ -203,13 +203,13 @@
this.load.list = true;
listXmCostNlabor(params).then((res) => {
var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.total = res.data.total;
this.pageInfo.count=false;
this.xmCostNlabors = 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 );
},
@ -235,12 +235,12 @@
//xmCostNlabor
selsChange: function (sels) {
this.sels = sels;
},
},
//xmCostNlabor
handleDel: function (row,index) {
handleDel: function (row,index) {
this.$confirm('确认删除该记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
let params = { id:row.id };
delXmCostNlabor(params).then((res) => {
@ -263,7 +263,7 @@
})
this.$confirm('确认删除选中记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
batchDelXmCostNlabor(params).then((res) => {
this.load.del=false;
@ -310,7 +310,7 @@
initData: function(){
},
},//end methods
mounted() {
this.$nextTick(() => {
@ -326,4 +326,4 @@
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmEnvList/XmEnvListMng.vue

@ -9,7 +9,7 @@
</el-row>
<el-row class="page-main ">
<!--列表 XmEnvList xm_env_list-->
<el-table ref="table" :height="maxTableHeight" :data="xmEnvLists" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmEnvLists" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="name" label="名称" min-width="80" ></el-table-column>
<el-table-column prop="ipAddress" label="内网ip" min-width="80" ></el-table-column>

2
src/views/xm/core/xmFile/XmFileMng.vue

@ -9,7 +9,7 @@
</div>
</el-row>
<!--列表 XmFile xm_file-->
<el-table ref="table" :height="tableHeight" :data="xmFiles" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmFiles" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="name" label="文档标题" ></el-table-column>
<el-table-column prop="createUsername" label="创建人" ></el-table-column>

4
src/views/xm/core/xmFunc/XmFuncMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmFunc 功能模块表-->
<el-table ref="xmFuncTable" :data="xmFuncs" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmFuncTable" :data="xmFuncs" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -309,4 +309,4 @@ export default {
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmGroupState/XmGroupStateMng.vue

@ -7,7 +7,7 @@
</el-row>
<el-row class="page-main">
<!--列表 XmGroupState 功能状态表,无需前端维护所有数据由汇总统计得出-->
<el-table ref="table" :height="tableHeight" :data="xmGroupStates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmGroupStates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="index" width="45"></el-table-column>
<el-table-column prop="groupName" label="团队名称" min-width="80" >
<template slot-scope="scope">

2
src/views/xm/core/xmGroupUser/XmGroupUserMng.vue

@ -9,7 +9,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmGroupUser xm_group_user-->
<el-table ref="xmGroupUserTable" :data="xmGroupUsers" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmGroupUserTable" :data="xmGroupUsers" v-adaptive="{bottomOffset:30}" @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"></el-table-column>
<el-table-column sortable type="index" width="55"></el-table-column>
<el-table-column prop="pgClass" label="项目编号" min-width="150">

2
src/views/xm/core/xmIteration/XmIterationBox.vue

@ -51,7 +51,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmIteration 迭代定义-->
<el-table ref="table" :height="maxTableHeight" v-if="!gstcVisible" :data="xmIterationTreeData" row-key="id" default-expand-all :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" v-if="!gstcVisible" :data="xmIterationTreeData" row-key="id" default-expand-all :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @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" aria-disabled width="55"></el-table-column>
<el-table-column prop="iterationName" label="迭代名称" min-width="260">
<template slot-scope="scope">

2
src/views/xm/core/xmIteration/XmIterationMng.vue

@ -104,7 +104,7 @@
<!--列表 XmIteration 迭代定义-->
<el-table
ref="table"
:height="maxTableHeight"
v-adaptive="{bottomOffset:30}"
v-if="!gstcVisible"
:data="xmIterationTreeData"
row-key="id"

2
src/views/xm/core/xmIterationMenu/XmIterationMenuMng.vue

@ -20,7 +20,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmIterationMenu 迭代定义-->
<el-table ref="table" :height="maxTableHeight" :data="xmIterationMenusTreeData" row-key="menuId" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmIterationMenusTreeData" row-key="menuId" @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="45"></el-table-column>
<el-table-column prop="menuName" label="已加入迭代的用户故事" min-width="140" >

2
src/views/xm/core/xmIterationState/XmIterationStateMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmIterationState 迭代定义-->
<el-table ref="xmIterationStateTable" :data="xmIterationStates" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmIterationStateTable" :data="xmIterationStates" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="distBudgetCost" label="已分配到任务的预算从任务表汇总而来" min-width="80" show-overflow-tooltip></el-table-column>

2
src/views/xm/core/xmIterationState/XmIterationStateShow.vue

@ -6,7 +6,7 @@
</el-row>
<el-row class="page-main ">
<!--列表 XmIterationState 迭代定义-->
<el-table ref="table" :height="maxTableHeight" :data="xmIterationStates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmIterationStates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="index" width="45"></el-table-column>
<el-table-column prop="iterationName" label="迭代名称" min-width="80" ></el-table-column>
<el-table-column prop="finishRate" label="进度" min-width="80">

2
src/views/xm/core/xmIterationStateHis/XmIterationStateHisMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmIterationStateHis 迭代定义-->
<el-table ref="xmIterationStateHisTable" :data="xmIterationStateHiss" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmIterationStateHisTable" :data="xmIterationStateHiss" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="distBudgetCost" label="已分配到任务的预算从任务表汇总而来" min-width="80" show-overflow-tooltip></el-table-column>

2
src/views/xm/core/xmMenu/XmEpicFeatures.vue

@ -94,7 +94,7 @@
</div>
</el-row>
<el-row class="padding-top">
<el-table ref="table" :row-style="{height:'46px'}" :cell-style="cellStyleCalc" :expand-row-keys="expandRowKeysCpd" :header-cell-style="cellStyleCalc" stripe fit border :height="maxTableHeight" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" :tree-props="{children: 'children'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick"
<el-table ref="table" :row-style="{height:'46px'}" :cell-style="cellStyleCalc" :expand-row-keys="expandRowKeysCpd" :header-cell-style="cellStyleCalc" stripe fit border v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" :tree-props="{children: 'children'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick"
element-loading-text="努力加载中"
element-loading-spinner="el-icon-loading"
>

2
src/views/xm/core/xmMenu/XmEpicFeaturesSelect.vue

@ -11,7 +11,7 @@
</div>
</el-row>
<el-row class="padding-top">
<el-table element-loading-text="努力加载中" :row-style="{height:'46px'}" element-loading-spinner="el-icon-loading" stripe fit border ref="table" :height="maxTableHeight" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" :tree-props="{children: 'children'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick">
<el-table element-loading-text="努力加载中" :row-style="{height:'46px'}" element-loading-spinner="el-icon-loading" stripe fit border ref="table" v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" :tree-props="{children: 'children'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick">
<template v-if="showSelect!==false && multi===true">
<el-table-column label="" type="selection" width="60" >
</el-table-column>

98
src/views/xm/core/xmMenu/XmMenuAgileKanbanUser.vue

@ -5,8 +5,8 @@
:data="usersCpd"
header-cell-class-name="head-row"
border
:height="tableHeight"
style="width: 100%"
v-adaptive="{bottomOffset:30}"
style="width: 100%"
>
<el-table-column
:label="'负责人 (' + users.length + ')'"
@ -14,19 +14,19 @@
width="200"
>
<template slot-scope="scope">
<div class="menu">
<div class="menu">
{{scope.row.mmUsername }}
</div>
</template>
</el-table-column>
<template v-for="(type, tt) in statusCpd" style="min-width:200px;">
<el-table-column
<el-table-column
:label="type.label + '(' + type.number + ')'"
:key="tt"
width="250"
>
<template slot-scope="scope">
<el-row class="my-cell-bar"
<el-row class="my-cell-bar"
:data-mm-userid="scope.row.mmUserid"
:data-status="type.status">
<el-button
@ -50,7 +50,7 @@
scrollSensitivity="80"
scrollSpeed="80"
>
<transition-group
<transition-group
class="transition-group"
:data-mm-userid="scope.row.mmUserid"
:data-status="type.status"
@ -58,12 +58,12 @@
<!-- <template v-if="drag.mmUserid && drag.mmUserid === scope.row.mmUserid && drag.status !== type.status">
<div class="drag-to-box">{{type.label}}</div>
</template> -->
<template v-if="menus && menusCpd[scope.row.mmUserid][tt].length>0">
<template v-if="menus && menusCpd[scope.row.mmUserid][tt].length>0">
<div @click.stop="showMenuEdit(menu)"
:data-mm-userid="scope.row.mmUserid"
:data-menu-id="menu.menuId"
:data-status="menu.status"
class="menu"
class="menu"
v-for="(menu, t) in menus[scope.row.mmUserid][tt]"
:key="menu.menuId + t"
>
@ -78,14 +78,14 @@
:key="menu.menuId + index"
:type="item.className"
>{{ item.name }}</el-tag
>
>
<el-tag
title="进度"
style="border-radius: 30px"
:type="menu.finishRate >= 100 ? 'success' : 'warning'"
>
{{ (menu.finishRate != null ? menu.finishRate : 0) + "%" }}
</el-tag>
</el-tag>
<span class="my-cell-btn"><el-button type="danger" icon="el-icon-delete" plain @click.stop="handleDel(menu,tt)"></el-button></span>
</el-row>
<el-row>
@ -98,12 +98,12 @@
</span>
</el-row>
<el-row>
<div class="title">{{ menu.menuName }}</div>
<div class="title">{{ menu.menuName }}</div>
</el-row>
</div>
</template>
</transition-group>
</div>
</template>
</transition-group>
</draggable>
</template>
</el-table-column>
@ -138,16 +138,16 @@
>
<el-form :model="addForm" :rules="addFormRules" ref="addForm">
<el-form-item label="上级" prop="pmenuId">
{{ addForm.pmenuId ? addForm.pmenuId : "无上级" }}
<el-button
@click="pmenuFormVisible=true"
{{ addForm.pmenuId ? addForm.pmenuId : "无上级" }}
<el-button
@click="pmenuFormVisible=true"
title="查看上级" v-if="addForm.pmenuId"
icon="el-icon-upload2"> 查看上级</el-button>
icon="el-icon-upload2"> 查看上级</el-button>
<el-button
@click="selectParentMenuVisible=true"
@click="selectParentMenuVisible=true"
title="更换上级"
icon="el-icon-upload2"> 更换上级</el-button>
icon="el-icon-upload2"> 更换上级</el-button>
</el-form-item>
<el-form-item label="故事名称" prop="menuName">
<template slot="label">
@ -164,8 +164,8 @@
<el-button @click="addFormVisible = false">关闭</el-button>
<el-button type="primary" @click="addXmMenu"> </el-button>
</div>
</el-dialog>
</el-dialog>
<el-dialog append-to-body title="需求明细" :visible.sync="menuDetailVisible" width="90%" top="20px" :close-on-click-modal="false">
<xm-menu-edit :visible="menuDetailVisible" op-type="edit" :xm-menu="editForm" ></xm-menu-edit>
@ -174,7 +174,7 @@
<el-dialog title="上级需求详情" :visible.sync="pmenuFormVisible" :with-header="false" width="90%" top="20px" append-to-body :close-on-click-modal="false" >
<xm-menu-edit v-if="pmenuFormVisible" :reload="true" :xm-menu="{menuId:editForm.pmenuId}" :visible="pmenuFormVisible" @cancel="pmenuFormVisible=false"></xm-menu-edit>
</el-dialog>
<el-dialog
append-to-body
title="选择上级需求"
@ -183,7 +183,7 @@
top="20px"
:close-on-click-modal="false"
>
<xm-epic-features-select
<xm-epic-features-select
@select="onParentMenuSelected"
:xm-product="xmProduct"
></xm-epic-features-select>
@ -197,7 +197,7 @@ import draggable from "vuedraggable";
import { initDicts, editXmMenuSomeFields, addXmMenu,delXmMenu } from "@/api/xm/core/xmMenu";
import XmMenuEdit from "./XmMenuEdit"; //
import XmEpicFeaturesSelect from "../xmMenu/XmEpicFeaturesSelect.vue";
import { mapGetters } from "vuex";
export default {
@ -207,7 +207,7 @@ export default {
data() {
return {
load:{add:false,edit:false,list:false,del:false},
editForm: {
menuId:'',menuName:'',pmenuId:'',productId:'',remark:'',status:'',online:'',demandUrl:'',codeUrl:'',designUrl:'',docUrl:'',helpUrl:'',operDocUrl:'',seqNo:'1',mmUserid:'',mmUsername:'',ntype:'0',childrenCnt:0,sinceVersion:'',
proposerId:'',proposerName:'',dlvl:'',dtype:'',priority:'',source:'',calcType:'1',actWorkload:0,actAt:0,finishRate:0,ctime:'',dclass:'1',startTime:'',endTime:''
@ -236,9 +236,9 @@ export default {
{ label: "打开", status: "0", number: 0 },
{ label: "进行中", status: "1", number: 0 },
{ label: "已完工", status: "2", number: 0 },
{ label: "已关闭", status: "3", number: 0 },
{ label: "已关闭", status: "3", number: 0 },
],
statusInit: [],
statusInit: [],
dicts: {
menuStatus: [],
demandSource: [],
@ -275,7 +275,7 @@ export default {
},
methods: {
...util,
onMove(e,e2) {
onMove(e,e2) {
console.log("onMove--e==", e);
let targetEl = { ...e.dragged.dataset };
@ -297,7 +297,7 @@ export default {
console.log("onStart--targetEl==", targetEl);
},
onEnd(e) {
console.log("onEnd--e==", e);
console.log("onEnd--e==", e);
this.drag = {};
// targetEl; toEl.
let targetEl = { ...e.item.dataset };
@ -311,7 +311,7 @@ export default {
//const params = { ...menu, status: toEl.status };
const params = { menuIds: [menu.menuId], status: toEl.status };
editXmMenuSomeFields(params).then((res) => {
//this.$emit('submit');
var tips = res.data.tips;
if (tips.isOk) {
@ -412,18 +412,18 @@ export default {
})
.catch((err) => (this.load.add = false));
});
},
},
showAddMenu(menu, type) {
this.addForm.menuId = "";
this.addForm.menuName = menu.menuName+"--请修改";
this.addForm.productId = menu.productId;
this.addForm.status = type.status;
this.addForm.productId = menu.productId;
this.addForm.pmenuId = menu.pmenuId;
this.addForm.pmenuId = menu.pmenuId;
this.addForm.priority = menu.priority;
this.addForm.seqNo = menu.seqNo;
this.addForm.seqNo = menu.seqNo;
this.addForm.mmUserid = menu.mmUserid;
this.addForm.mmUsername = menu.mmUsername
this.addForm.mmUsername = menu.mmUsername
this.addForm.sinceVersion = menu.sinceVersion ;
this.addForm.funcId = menu.funcId ;
this.addForm.funcName = menu.funcName ;
@ -432,7 +432,7 @@ export default {
this.addForm.dclass=menu.dclass
this.addFormVisible = true;
},
//xmMenu
handleDel: function (row, index) {
this.$confirm("确认删除该记录吗?", "提示", {
@ -444,7 +444,7 @@ export default {
.then((res) => {
this.load.del = false;
var tips = res.data.tips;
if (tips.isOk) {
if (tips.isOk) {
var index=this.xmMenus.findIndex(k=>k.menuId==row.menuId)
this.xmMenus.splice(index,1)
}
@ -462,7 +462,7 @@ export default {
if(!menu||!menu.menuId){
this.$notify({position:'bottom-left',showClose:true,message:'请先选择一个上级需求',type:'warning'})
return;
}
}
this.addForm.pmenuId=menu.menuId
this.addForm.pmenuName=menu.menuName
this.addForm.iterationId=menu.iterationId
@ -476,7 +476,7 @@ export default {
this.$nextTick(()=>{
initDicts(this);
})
this.statusInit = JSON.parse(JSON.stringify(this.status));
this.initData();
},
@ -487,11 +487,11 @@ export default {
height: 100%;
width: 100%;
overflow: hidden;
}
}
.draggable {
display: flex;
flex-wrap: wrap;
flex-wrap: wrap;
min-height: 100px;
width: 100%;
}
@ -505,12 +505,12 @@ export default {
height: 100%;
vertical-align: top;
}
}
}
}
.transition-group {
.transition-group {
width: 100%;
cursor: pointer;
.menu {
.menu {
border:1px solid white;
min-height: 100px;
background: #fff;
@ -545,10 +545,10 @@ export default {
visibility: visible;
}
.menu:hover{
.menu:hover{
border:1px solid blue;
}
.title {
.title {
height: 40px;
overflow: hidden; //
text-overflow: ellipsis; //
@ -557,5 +557,5 @@ export default {
-webkit-line-clamp: 2; //
-webkit-box-orient: vertical; //
//
}
}
</style>

2
src/views/xm/core/xmMenu/XmMenuMng.vue

@ -220,7 +220,7 @@
</span>
</el-row>
<el-row v-if="displayType=='table'" class="padding-top">
<el-table element-loading-text="努力加载中" element-loading-spinner="el-icon-loading" :cell-style="cellStyleCalc" :expand-row-keys="expandRowKeysCpd" :header-cell-style="cellStyleCalc" stripe fit border ref="table" :height="maxTableHeight" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick">
<el-table element-loading-text="努力加载中" element-loading-spinner="el-icon-loading" :cell-style="cellStyleCalc" :expand-row-keys="expandRowKeysCpd" :header-cell-style="cellStyleCalc" stripe fit border ref="table" v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="menuName" label="故事名称" min-width="350" fixed="left">

2
src/views/xm/core/xmMenu/XmMenuMngBatch.vue

@ -6,7 +6,7 @@
<el-button @click="noBatchEdit" icon="el-icon-back">返回</el-button>
</el-row>
<el-row style="padding-top:12px;">
<el-table ref="table" :indent="16" :load="loadXmMenusLazy" :height="maxTableHeight" :data="xmMenusTreeData" class="drag-table" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" :indent="16" :load="loadXmMenusLazy" v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" class="drag-table" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="45"></el-table-column>
<el-table-column prop="seqNo" label="序号" width="200" fixed="left">
<template slot-scope="scope">

2
src/views/xm/core/xmMenu/XmMenuSelect.vue

@ -137,7 +137,7 @@
<el-button style="float:right;" type="primary" v-if="multi" v-on:click="multiSelectedConfirm">确认</el-button>
</el-row>
<el-row class="padding-top">
<el-table ref="table" element-loading-text="努力加载中" element-loading-spinner="el-icon-loading" class="menu-table" :height="maxTableHeight" :data="xmMenusTreeData" row-key="menuId" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" element-loading-text="努力加载中" element-loading-spinner="el-icon-loading" class="menu-table" v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" row-key="menuId" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column v-if="multi" type="selection" width="50"></el-table-column>
<el-table-column prop="menuName" label="需求名称" min-width="140" >

4
src/views/xm/core/xmMenu/XmMenuWithPlan.vue

@ -14,7 +14,7 @@
<el-button v-if=" batchEditVisible==true " @click="noBatchEdit" v-loading="load.edit" icon="el-icon-back">返回</el-button>
</el-row>
<el-row class="page-main" v-show="!batchEditVisible">
<el-table ref="table" :height="maxTableHeight" v-if="!gstcVisible" :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" v-if="!gstcVisible" :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="menuName" label="需求名称" min-width="150" >
<template slot-scope="scope">
@ -104,7 +104,7 @@
</el-row>
<el-row v-show="batchEditVisible">
<el-table :load="loadMenusLazy" :height="maxTableHeight" :data="xmMenusTreeData" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table :load="loadMenusLazy" v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="menuName" label="需求名称" min-width="150" >
<template slot-scope="scope">

2
src/views/xm/core/xmMenuState/XmMenuStateMng.vue

@ -9,7 +9,7 @@
<el-button type="primary" v-if=" batchEditVisible==true " @click="noBatchEdit" v-loading="load.edit">返回</el-button>
</el-row>
<el-row class="page-main" v-show="!batchEditVisible">
<el-table ref="table" :height="maxTableHeight" :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="menuName" label="需求名称" min-width="150" >
<template slot-scope="scope">

2
src/views/xm/core/xmMenuTemplate/XmMenuTemplateMng.vue

@ -13,7 +13,7 @@
<el-button v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmMenuTemplates">查询</el-button>
<el-button type="primary" v-if="isSelectMenu" v-loading="load.del" @click="selectedMenusConfirm" :disabled="this.sels.length===0 || load.del==true">确认选择</el-button>
</el-row>
<el-table :load="loadMenusLazy" ref="table" :height="maxTableHeight" :data="xmMenuTemplatesTreeData" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table :load="loadMenusLazy" ref="table" v-adaptive="{bottomOffset:30}" :data="xmMenuTemplatesTreeData" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="menuName" label="需求名称" min-width="120" >
<template slot-scope="scope">

4
src/views/xm/core/xmMyFocus/XmMyFocusMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmMyFocus 我关注的项目或者任务-->
<el-table ref="xmMyFocusTable" :data="xmMyFocuss" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmMyFocusTable" :data="xmMyFocuss" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -309,4 +309,4 @@ export default {
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmProduct/XmProductMng.vue

@ -238,7 +238,7 @@
</el-row>
<el-row v-show="!showType" class="padding-top">
<!--列表 XmProduct 产品表-->
<el-table ref="table" :height="maxTableHeight" :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;" border>
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;" border>
<el-row slot="empty">
<el-result icon="info" title="信息提示" subTitle="没有查到相关产品,有可能是您暂时还没有产品,有可能是您无权限查询产品。">
<template slot="extra">

2
src/views/xm/core/xmProduct/XmProductRecycle.vue

@ -83,7 +83,7 @@
</el-row>
<el-row>
<!--列表 XmProduct 产品表-->
<el-table ref="table" border :height="maxTableHeight" :data="xmProducts" :row-class-name="tableRowClassName" @sort-change="sortChange" :highlight-current-row="true" current-row-key="id" v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" border v-adaptive="{bottomOffset:30}" :data="xmProducts" :row-class-name="tableRowClassName" @sort-change="sortChange" :highlight-current-row="true" current-row-key="id" v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="index" width="60">
</el-table-column>
<el-table-column prop="productName" label="产品名称" min-width="200" sortable>

4
src/views/xm/core/xmProduct/XmProductTplMng.vue

@ -19,7 +19,7 @@
</el-row>
<el-row class="page-main" v-if="showType!='simple'">
<!--列表 XmProduct 产品表-->
<el-table ref="table" :height="maxTableHeight" :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column label="序号" width="60" type="index" v-if="showType!='simple'">
</el-table-column>
@ -60,7 +60,7 @@
<el-row class="page-main" v-else>
<!--列表 XmProduct 产品表-->
<el-table ref="table" :height="maxTableHeight" :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column label="序号" width="60" type="index">
</el-table-column>

2
src/views/xm/core/xmProductProjectLink/XmProductProjectLinkMng.vue

@ -14,7 +14,7 @@
</el-row>
<el-row>
<!--列表 XmProductProjectLink 产品与项目的关联关系表一般由产品经理挂接项目到产品上-->
<el-table ref="xmProductProjectLink" :data="xmProductProjectLinks" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmProductProjectLink" :data="xmProductProjectLinks" v-adaptive="{bottomOffset:30}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="name" v-if="xmProduct" label="包含的项目名称" min-width="150" >
<template scope="scope">
<el-link type="primary" @click="goToProject(scope.row,scope.$index)">{{scope.row.name}}</el-link>

2
src/views/xm/core/xmProductState/XmProductStateMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmProductState 功能状态表,无需前端维护所有数据由汇总统计得出-->
<el-table ref="xmProductStateTable" :data="xmProductStates" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmProductStateTable" :data="xmProductStates" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="planStartTime" label="开始时间" min-width="80" show-overflow-tooltip></el-table-column>

2
src/views/xm/core/xmProductStateHis/XmProductStateHisMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmProductStateHis 功能状态表,无需前端维护所有数据由汇总统计得出-->
<el-table ref="xmProductStateHisTable" :data="xmProductStateHiss" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmProductStateHisTable" :data="xmProductStateHiss" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="planStartTime" label="开始时间" min-width="80" show-overflow-tooltip></el-table-column>

4
src/views/xm/core/xmProductTemplate/XmProductTemplateMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row v-show="simple!=true" class="page-main">
<!--列表 XmProductTemplate 产品表-->
<el-table ref="table" :height="maxTableHeight" :data="xmProductTemplates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProductTemplates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column sortable type="index" width="40"></el-table-column>
<el-table-column prop="id" label="产品编号" min-width="80" ></el-table-column>
@ -29,7 +29,7 @@
<el-row v-show="simple==true" >
<!--列表 XmProductTemplate 产品表-->
<el-table ref="table" :height="maxTableHeight" :data="xmProductTemplates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProductTemplates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="productName" label="产品名称" min-width="80" ></el-table-column>
</el-table>
<el-pagination layout="total, prev, 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>

4
src/views/xm/core/xmProject/XmProjectBudgetCost.vue

@ -29,7 +29,7 @@
</el-select> -->
<el-table
ref="table"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
v-if="showType == '人力'"
:data="sumXmBudgetLaborsConvert"
highlight-current-row
@ -58,7 +58,7 @@
<el-table
ref="table"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
v-if="showType == '非人力'"
:data="sumXmBudgetNlaborsConvert"
highlight-current-row

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

@ -23,7 +23,7 @@
</el-select>
</el-row>
<el-table ref="table"
:height="maxTableHeight"
v-adaptive="{bottomOffset:30}"
v-if="showType == '人力'"
:data="sumXmCostLaborsConvert"
highlight-current-row

2
src/views/xm/core/xmProject/XmProjectForLink.vue

@ -16,7 +16,7 @@
</div>
</el-row>
<el-row>
<el-table ref="table" :height="tableHeight" stripe :data="xmProjects" highlight-current-row v-loading="load.list" border style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" stripe :data="xmProjects" highlight-current-row v-loading="load.list" border style="width: 100%;">
<el-table-column type="index" label="序号" width="55" ></el-table-column>
<el-table-column prop="id" label="项目编码" min-width="80" ></el-table-column>
<el-table-column prop="name" label="标题名称" min-width="80" ></el-table-column>

2
src/views/xm/core/xmProject/XmProjectMng.vue

@ -211,7 +211,7 @@
</el-row>
</el-row>
<el-row class="padding-top">
<el-table ref="table" :height="maxTableHeight" v-cloak v-show="!showType" fit stripe :data="ScreenData" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;" :border="true">
<el-table ref="table" v-adaptive="{bottomOffset:30}" v-cloak v-show="!showType" fit stripe :data="ScreenData" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;" :border="true">
<el-row slot="empty">
<el-result icon="info" title="信息提示" subTitle="没有查到相关项目,有可能是您暂时还没有项目,有可能是您无权限查询项目。">
<template slot="extra">

2
src/views/xm/core/xmProject/XmProjectRecycle.vue

@ -6,7 +6,7 @@
<el-button @click="searchXmProjects" icon="el-icon-search"></el-button>
</el-row>
<el-row class="padding-top">
<el-table ref="table" border :height="maxTableHeight" v-cloak stripe :data="xmProjects" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" border v-adaptive="{bottomOffset:30}" v-cloak stripe :data="xmProjects" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="index" label="序号" width="80" ></el-table-column>
<el-table-column prop="id" label="项目编码" min-width="120" ></el-table-column>
<el-table-column prop="name" label="标题" min-width="200" >

2
src/views/xm/core/xmProject/XmProjectTplMng.vue

@ -23,7 +23,7 @@
<!--列表 XmProject xm_project-->
<el-row v-loading="load.list">
<el-table :height="maxTableHeight" ref="table" v-cloak stripe :data="ScreenData" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table v-adaptive="{bottomOffset:30}" ref="table" v-cloak stripe :data="ScreenData" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="name" label="项目模板(学习/参考)" min-width="200" >
<template slot-scope="scope">
<div v-if="isSelect===true">{{scope.row.name}}</div>

2
src/views/xm/core/xmProjectKpi/XmProjectKpiMng.vue

@ -9,7 +9,7 @@
</div>
</el-menu>
<!--列表 XmProjectKpi xm_project_kpi-->
<el-table ref="table" :height="tableHeight" :data="xmProjectKpis" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProjectKpis" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="index" width="40"></el-table-column>
<el-table-column prop="kpiName" label="指标名称" min-width="80" ></el-table-column>
<el-table-column prop="minValue" label="正常值范围" min-width="80" >

2
src/views/xm/core/xmProjectState/XmProjectStateMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmProjectState 项目指标日统计表-->
<el-table ref="xmProjectStateTable" :data="xmProjectStates" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmProjectStateTable" :data="xmProjectStates" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="projectId" label="项目编号" min-width="80" show-overflow-tooltip></el-table-column>

2
src/views/xm/core/xmProjectStateHis/XmProjectStateHisMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmProjectStateHis 项目指标日统计表-->
<el-table ref="xmProjectStateHisTable" :data="xmProjectStateHiss" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmProjectStateHisTable" :data="xmProjectStateHiss" v-adaptive="{bottomOffset:30}" @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 sortable type="index" width="55" show-overflow-tooltip></el-table-column>
<el-table-column prop="projectId" label="项目编号" min-width="80" show-overflow-tooltip></el-table-column>

2
src/views/xm/core/xmProjectTaskTypeState/XmProjectTaskTypeStateMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="page-main ">
<!--列表 XmProjectTaskTypeState 按任务类型汇总-->
<el-table ref="table" :height="maxTableHeight" :data="xmProjectTaskTypeStates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProjectTaskTypeStates" @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="45"></el-table-column>
<el-table-column sortable type="index" width="45"></el-table-column>
<el-table-column prop="projectId" label="项目编号" min-width="80" ></el-table-column>

2
src/views/xm/core/xmProjectTemplate/XmProjectTemplateList.vue

@ -9,7 +9,7 @@
</el-row>
<el-row class="page-main">
<!--列表 XmProjectTemplate xm_project_template-->
<el-table ref="table" :height="maxTableHeight" :data="xmProjectTemplates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProjectTemplates" @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="45"></el-table-column>
<el-table-column sortable type="index" width="45"></el-table-column>
<el-table-column prop="name" label="项目名称" min-width="150" ></el-table-column>

2
src/views/xm/core/xmProjectTemplate/XmProjectTemplateMng.vue

@ -12,7 +12,7 @@
</el-row>
<el-row class="page-main">
<!--列表 XmProjectTemplate xm_project_template-->
<el-table ref="table" :height="maxTableHeight" :data="xmProjectTemplates" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmProjectTemplates" @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="45"></el-table-column>
<el-table-column sortable type="index" width="45"></el-table-column>
<el-table-column prop="name" label="模板名称" min-width="80" ></el-table-column>

2
src/views/xm/core/xmQuestion/XmQuestionEdit.vue

@ -84,7 +84,7 @@
<el-tab-pane label="缺陷描述" name="12" >
<el-form-item label="" prop="description" label-width="0px">
<vue-editor :height="maxTableHeight" v-if="visible && activateTabPaneName=='12'" class="rich-context" :id="'description_'+editForm.id" :branch-id="userInfo.branchId" v-model="editForm.description"></vue-editor>
<vue-editor v-adaptive="{bottomOffset:30}" v-if="visible && activateTabPaneName=='12'" class="rich-context" :id="'description_'+editForm.id" :branch-id="userInfo.branchId" v-model="editForm.description"></vue-editor>
</el-form-item>
<el-row style="float:right;" v-if="opType!=='add'">
<el-button @click.native="handleCancel">取消</el-button>

2
src/views/xm/core/xmQuestion/XmQuestionMng.vue

@ -132,7 +132,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmQuestion xm_question-->
<el-table element-loading-text="努力加载中" element-loading-spinner="el-icon-loading" ref="table" :height="maxTableHeight" :data="xmQuestions" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table element-loading-text="努力加载中" element-loading-spinner="el-icon-loading" ref="table" v-adaptive="{bottomOffset:30}" :data="xmQuestions" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column label="全选" type="selection" min-width="50" fixed="left"></el-table-column>
<el-table-column prop="id" label="缺陷编号" width="120" show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmQuestionHandle/XmQuestionHandleMng.vue

@ -2,7 +2,7 @@
<section>
<el-row>
<!--列表 XmQuestionHandle xm_question_handle-->
<el-table ref="table" :height="tableHeight" :data="xmQuestionHandles" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmQuestionHandles" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="handleStatus" label="bug状态" width="100" >
<template slot-scope="scope">

2
src/views/xm/core/xmRecord/XmRecord.vue

@ -7,7 +7,7 @@
</el-row>
<el-row class="page-main">
<!--列表 XmRecord xm_record-->
<el-table ref="table" :height="tableHeight" :data="xmRecords" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmRecords" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="index" width="40"></el-table-column>
<el-table-column prop="projectId" label="项目/产品" v-if="!simple" min-width="80" >
<template slot-scope="scope">

4
src/views/xm/core/xmRecordVisit/XmRecordVisitMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmRecordVisit 重要页面访问记录-->
<el-table ref="xmRecordVisitTable" :data="xmRecordVisits" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmRecordVisitTable" :data="xmRecordVisits" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -339,4 +339,4 @@ export default {
</script>
<style scoped>
</style>
</style>

4
src/views/xm/core/xmRptConfig/XmRptConfigMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmRptConfig 测试报告配置表-->
<el-table ref="xmRptConfigTable" :data="xmRptConfigs" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmRptConfigTable" :data="xmRptConfigs" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -314,4 +314,4 @@ export default {
</script>
<style scoped>
</style>
</style>

4
src/views/xm/core/xmRptData/XmRptDataMng.vue

@ -9,7 +9,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmRptData xm_rpt_data-->
<el-table ref="xmRptDataTable" :data="xmRptDatas" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmRptDataTable" :data="xmRptDatas" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -323,4 +323,4 @@ export default {
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmTask/XmPhase.vue

@ -129,7 +129,7 @@
fit
border
tooltip-effect="light"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
:tree-props="{ children: 'children' }"
row-key="id"
ref="table"

2
src/views/xm/core/xmTask/XmPhaseSelect.vue

@ -21,7 +21,7 @@
fit
border
tooltip-effect="light"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
:tree-props="{ children: 'children' }"
row-key="id"
ref="table"

42
src/views/xm/core/xmTask/XmTaskAgileKanban.vue

@ -5,8 +5,8 @@
:data="menusCpd"
header-cell-class-name="head-row"
border
:height="tableHeight"
style="width: 100%"
v-adaptive="{bottomOffset:30}"
style="width: 100%"
>
<el-table-column
:label="'用户故事 (' + menus.length + ')'"
@ -25,7 +25,7 @@
</template>
</el-table-column>
<template v-for="(type, tt) in taskStateCpd" style="min-width:200px;">
<el-table-column
<el-table-column
:label="type.label + '(' + type.number + ')'"
:key="tt"
width="250"
@ -66,9 +66,9 @@
:data-menu-id="scope.row.menuId"
:data-task-id="task.id"
:data-task-state="task.taskState"
class="task"
class="task"
v-for="(task, t) in tasks[scope.row.menuId][tt]"
:key="task.id + t"
:key="task.id + t"
>
<el-row >
<el-tag
@ -81,14 +81,14 @@
:key="task.id + index"
:type="item.className"
>{{ item.name }}</el-tag
>
>
<el-tag
title="进度"
style="border-radius: 30px"
:type="task.rate >= 100 ? 'success' : 'warning'"
>
{{ (task.rate != null ? task.rate : 0) + "%" }}
</el-tag>
</el-tag>
<span class="my-cell-btn"><el-button type="danger" icon="el-icon-delete" plain @click.stop="handleDel(task,tt)"></el-button></span>
</el-row>
<el-row>
@ -101,9 +101,9 @@
</span>
</el-row>
<el-row>
<div class="title">{{ task.name }}</div>
<div class="title">{{ task.name }}</div>
</el-row>
</div>
</template>
</transition-group>
@ -129,7 +129,7 @@
@cancel="editFormVisible = false"
@after-add-submit="afterExecEditSubmit"
@after-edit-submit="afterExecEditSubmit"
@submit="afterEditSubmit"
@submit="afterEditSubmit"
@edit-fields="onEditSomeFields"
></xm-task-edit>
</el-dialog>
@ -180,7 +180,7 @@
@select="onSelectedParentTask"
></xm-phase-select>
</el-dialog>
<el-dialog append-to-body title="需求明细" :visible.sync="menuDetailVisible" width="80%" top="20px" :close-on-click-modal="false">
<xm-menu-edit :visible="menuDetailVisible" :reload="true" :xm-menu="{menuId:editForm.menuId,menuName:editForm.menuName}" ></xm-menu-edit>
@ -554,13 +554,13 @@ export default {
let taskIndex = this.xmTasks.findIndex((d) => d.id === task.id);
this.$set(this.xmTasks, taskIndex, task);
},
onEditSomeFields(params){
var id=params.ids[0]
let taskIndex = this.xmTasks.findIndex((d) => d.id === id);
var task=this.xmTasks[taskIndex]
Object.assign(task,params )
this.$set(this.xmTasks, taskIndex, task);
this.$set(this.xmTasks, taskIndex, task);
},
getTaskStateIndex(taskState) {
return this.taskState.findIndex((i) => i.status == taskState);
@ -627,7 +627,7 @@ export default {
this.addForm.ptype = "0";
this.addFormVisible = true;
},
//xmTask
handleDel: function (row, index) {
this.$confirm("确认删除该记录吗?", "提示", {
@ -639,7 +639,7 @@ export default {
.then((res) => {
this.load.del = false;
var tips = res.data.tips;
if (tips.isOk) {
if (tips.isOk) {
var index=this.xmTasks.findIndex(k=>k.id==row.id)
this.xmTasks.splice(index,1)
}
@ -665,7 +665,7 @@ export default {
height: 100%;
width: 100%;
overflow: hidden;
}
}
.draggable {
display: flex;
@ -685,10 +685,10 @@ export default {
}
}
}
.transition-group {
.transition-group {
width: 100%;
cursor: pointer;
.task {
.task {
border:1px solid white;
min-height: 100px;
background: #fff;
@ -721,10 +721,10 @@ export default {
visibility: visible;
}
.task:hover{
.task:hover{
border:1px solid blue;
}
.title {
.title {
height: 40px;
overflow: hidden; //
text-overflow: ellipsis; //
@ -733,5 +733,5 @@ export default {
-webkit-line-clamp: 2; //
-webkit-box-orient: vertical; //
//
}
}
</style>

40
src/views/xm/core/xmTask/XmTaskAgileKanbanUser.vue

@ -5,8 +5,8 @@
:data="usersCpd"
header-cell-class-name="head-row"
border
:height="tableHeight"
style="width: 100%"
v-adaptive="{bottomOffset:30}"
style="width: 100%"
>
<el-table-column
:label="'执行人 (' + users.length + ')'"
@ -25,7 +25,7 @@
</template>
</el-table-column>
<template v-for="(type, tt) in taskStateCpd" style="min-width:200px;">
<el-table-column
<el-table-column
:label="type.label + '(' + type.number + ')'"
:key="tt"
width="250"
@ -66,7 +66,7 @@
:data-executor-userid="scope.row.executorUserid"
:data-task-id="task.id"
:data-task-state="task.taskState"
class="task"
class="task"
v-for="(task, t) in tasks[scope.row.executorUserid][tt]"
:key="task.id + t"
>
@ -81,14 +81,14 @@
:key="task.id + index"
:type="item.className"
>{{ item.name }}</el-tag
>
>
<el-tag
title="进度"
style="border-radius: 30px"
:type="task.rate >= 100 ? 'success' : 'warning'"
>
{{ (task.rate != null ? task.rate : 0) + "%" }}
</el-tag>
</el-tag>
<span class="my-cell-btn"><el-button type="danger" icon="el-icon-delete" plain @click.stop="handleDel(task,tt)"></el-button></span>
</el-row>
<el-row>
@ -101,9 +101,9 @@
</span>
</el-row>
<el-row>
<div class="title">{{ task.name }}</div>
<div class="title">{{ task.name }}</div>
</el-row>
</div>
</template>
</transition-group>
@ -180,7 +180,7 @@
@select="onSelectedParentTask"
></xm-phase-select>
</el-dialog>
<el-dialog append-to-body title="需求明细" :visible.sync="menuDetailVisible" width="80%" top="20px" :close-on-click-modal="false">
<xm-menu-edit :visible="menuDetailVisible" :reload="true" :xm-menu="{menuId:editForm.menuId,menuName:editForm.menuName}" ></xm-menu-edit>
@ -554,13 +554,13 @@ export default {
let taskIndex = this.xmTasks.findIndex((d) => d.id === task.id);
this.$set(this.xmTasks, taskIndex, task);
},
onEditSomeFields(params){
var id=params.ids[0]
let taskIndex = this.xmTasks.findIndex((d) => d.id === id);
var task=this.xmTasks[taskIndex]
Object.assign(task,params )
this.$set(this.xmTasks, taskIndex, task);
this.$set(this.xmTasks, taskIndex, task);
},
getTaskStateIndex(taskState) {
return this.taskState.findIndex((i) => i.status == taskState);
@ -619,7 +619,7 @@ export default {
this.addForm.verNum = task.verNum;
this.addForm.pverNum = task.pverNum;
this.addForm.createUserid = this.userInfo.userid;
this.addForm.createUsername = this.userInfo.username;
this.addForm.createUsername = this.userInfo.username;
this.addForm.startTime=task.startTime
this.addForm.endTime=task.endTime
this.addForm.qtype = "1";
@ -627,7 +627,7 @@ export default {
this.addForm.ptype = "0";
this.addFormVisible = true;
},
//xmTask
handleDel: function (row, index) {
this.$confirm("确认删除该记录吗?", "提示", {
@ -639,7 +639,7 @@ export default {
.then((res) => {
this.load.del = false;
var tips = res.data.tips;
if (tips.isOk) {
if (tips.isOk) {
var index=this.xmTasks.findIndex(k=>k.id==row.id)
this.xmTasks.splice(index,1)
}
@ -665,7 +665,7 @@ export default {
height: 100%;
width: 100%;
overflow: hidden;
}
}
.draggable {
display: flex;
@ -685,10 +685,10 @@ export default {
}
}
}
.transition-group {
.transition-group {
width: 100%;
cursor: pointer;
.task {
.task {
border:1px solid white;
min-height: 100px;
background: #fff;
@ -721,10 +721,10 @@ export default {
visibility: visible;
}
.task:hover{
.task:hover{
border:1px solid blue;
}
.title {
.title {
height: 40px;
overflow: hidden; //
text-overflow: ellipsis; //
@ -733,5 +733,5 @@ export default {
-webkit-line-clamp: 2; //
-webkit-box-orient: vertical; //
//
}
}
</style>

46
src/views/xm/core/xmTask/XmTaskAgileKanbanWeek.vue

@ -5,8 +5,8 @@
:data="weeksCpd"
header-cell-class-name="head-row"
border
:height="tableHeight"
style="width: 100%"
v-adaptive="{bottomOffset:30}"
style="width: 100%"
>
<el-table-column
:label="'计划周 (' + weeks.length + ')'"
@ -20,7 +20,7 @@
</template>
</el-table-column>
<template v-for="(type, tt) in taskStateCpd" style="min-width:200px;">
<el-table-column
<el-table-column
:label="type.label + '(' + type.number + ')'"
:key="tt"
width="250"
@ -61,9 +61,9 @@
:data-week-id="scope.row.weekId"
:data-task-id="task.id"
:data-task-state="task.taskState"
class="task"
class="task"
v-for="(task, t) in tasks[scope.row.weekId][tt]"
:key="task.id + t"
:key="task.id + t"
>
<el-row >
<el-tag
@ -76,14 +76,14 @@
:key="task.id + index"
:type="item.className"
>{{ item.name }}</el-tag
>
>
<el-tag
title="进度"
style="border-radius: 30px"
:type="task.rate >= 100 ? 'success' : 'warning'"
>
{{ (task.rate != null ? task.rate : 0) + "%" }}
</el-tag>
</el-tag>
<span class="my-cell-btn"><el-button type="danger" icon="el-icon-delete" plain @click.stop="handleDel(task,tt)"></el-button></span>
</el-row>
<el-row>
@ -96,9 +96,9 @@
</span>
</el-row>
<el-row>
<div class="title">{{ task.name }}</div>
<div class="title">{{ task.name }}</div>
</el-row>
</div>
</template>
</transition-group>
@ -124,7 +124,7 @@
@cancel="editFormVisible = false"
@after-add-submit="afterExecEditSubmit"
@after-edit-submit="afterExecEditSubmit"
@submit="afterEditSubmit"
@submit="afterEditSubmit"
@edit-fields="onEditSomeFields"
></xm-task-edit>
</el-dialog>
@ -175,7 +175,7 @@
@select="onSelectedParentTask"
></xm-phase-select>
</el-dialog>
<el-dialog append-to-body title="需求明细" :visible.sync="menuDetailVisible" width="80%" top="20px" :close-on-click-modal="false">
<xm-menu-edit :visible="menuDetailVisible" :reload="true" :xm-menu="{menuId:editForm.menuId,menuName:editForm.menuName}" ></xm-menu-edit>
@ -535,7 +535,7 @@ export default {
d.weekId = this.getWeekIdByDateStr(d.createTime) ;
d.weekName = "未设置计划时间";
}else{
d.weekId=this.getWeekIdByDateStr(d.startTime)
d.weekId=this.getWeekIdByDateStr(d.startTime)
d.weekName = d.weekId;
}
if (!weeks.length || !weekIds[d.weekId]) {
@ -551,7 +551,7 @@ export default {
});
this.tasks = tasks;
weeks.sort((v1,v2)=>{
return util.parseDate(v2.startTime?v2.startTime:v2.createTime,'yyyy-MM-dd HH:mm:ss').getTime()-util.parseDate(v1.startTime?v1.startTime:v1.createTime,'yyyy-MM-dd HH:mm:ss').getTime()
})
this.weeks = weeks;
@ -564,13 +564,13 @@ export default {
let taskIndex = this.xmTasks.findIndex((d) => d.id === task.id);
this.$set(this.xmTasks, taskIndex, task);
},
onEditSomeFields(params){
var id=params.ids[0]
let taskIndex = this.xmTasks.findIndex((d) => d.id === id);
var task=this.xmTasks[taskIndex]
Object.assign(task,params )
this.$set(this.xmTasks, taskIndex, task);
this.$set(this.xmTasks, taskIndex, task);
},
getTaskStateIndex(taskState) {
return this.taskState.findIndex((i) => i.status == taskState);
@ -637,7 +637,7 @@ export default {
this.addForm.ptype = "0";
this.addFormVisible = true;
},
//xmTask
handleDel: function (row, index) {
this.$confirm("确认删除该记录吗?", "提示", {
@ -649,7 +649,7 @@ export default {
.then((res) => {
this.load.del = false;
var tips = res.data.tips;
if (tips.isOk) {
if (tips.isOk) {
var index=this.xmTasks.findIndex(k=>k.id==row.id)
this.xmTasks.splice(index,1)
}
@ -675,7 +675,7 @@ export default {
height: 100%;
width: 100%;
overflow: hidden;
}
}
.draggable {
display: flex;
@ -695,10 +695,10 @@ export default {
}
}
}
.transition-group {
.transition-group {
width: 100%;
cursor: pointer;
.task {
.task {
border:1px solid white;
min-height: 100px;
background: #fff;
@ -731,10 +731,10 @@ export default {
visibility: visible;
}
.task:hover{
.task:hover{
border:1px solid blue;
}
.title {
.title {
height: 40px;
overflow: hidden; //
text-overflow: ellipsis; //
@ -743,5 +743,5 @@ export default {
-webkit-line-clamp: 2; //
-webkit-box-orient: vertical; //
//
}
}
</style>

2
src/views/xm/core/xmTask/XmTaskList.vue

@ -34,7 +34,7 @@
fit
border
row-key="id"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
>
<el-table-column v-show="isMultiSelect" sortable width="70" type="selection"></el-table-column>
<el-table-column prop="name" label="任务名称" min-width="260" show-overflow-tooltip>

2
src/views/xm/core/xmTask/XmTaskListForMenu.vue

@ -20,7 +20,7 @@
default-expand-all
:tree-props="{children: 'children' }"
row-key="id"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
ref="table"
>
<el-table-column v-show="isMultiSelect" sortable width="60" type="selection"></el-table-column>

2
src/views/xm/core/xmTask/XmTaskMng.vue

@ -354,7 +354,7 @@
fit
border
tooltip-effect="light"
:height="tableHeight"
v-adaptive="{bottomOffset:30}"
row-key="id"
>

4
src/views/xm/core/xmTaskEval/XmTaskEvalMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskEval xm_task_eval-->
<el-table ref="xmTaskEvalTable" :data="xmTaskEvals" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTaskEvalTable" :data="xmTaskEvals" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -359,4 +359,4 @@ export default {
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmTaskExecuser/XmTaskExecuserForTask.vue

@ -9,7 +9,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskExecuser xm_task_execuser-->
<el-table ref="table" :height="tableHeight" :data="xmTaskExecusers" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmTaskExecusers" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="expand">
<template slot-scope="props">
<el-form label-position="left" class="padding">

2
src/views/xm/core/xmTaskExecuser/XmTaskExecuserMng.vue

@ -17,7 +17,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskExecuser xm_task_execuser-->
<el-table ref="table" :height="tableHeight" :data="xmTaskExecusers" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmTaskExecusers" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column label="序号" type="index" width="60" fixed="left">
</el-table-column>
<el-table-column prop="username" label="用户姓名" width="150" sortable show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmTaskExecuser/XmTaskExecuserSelect.vue

@ -22,7 +22,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskExecuser xm_task_execuser-->
<el-table ref="table" :height="tableHeight" :data="xmTaskExecusers" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmTaskExecusers" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column label="" type="selection" width="60" fixed="left">
</el-table-column>

4
src/views/xm/core/xmTaskOrder/XmTaskOrderMng.vue

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskOrder 任务相关费用订单表-->
<el-table ref="xmTaskOrderTable" :data="xmTaskOrders" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTaskOrderTable" :data="xmTaskOrders" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -529,4 +529,4 @@ export default {
</script>
<style scoped>
</style>
</style>

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

@ -50,7 +50,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskSbill 任务结算表-->
<el-table ref="xmTaskSbillTable" :data="xmTaskSbills" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list"
<el-table ref="xmTaskSbillTable" :data="xmTaskSbills" v-adaptive="{bottomOffset:30}" @sort-change="sortChange" highlight-current-row v-loading="load.list"
border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;" :header-cell-style="{'text-align':'center'}"
:cell-style="{'text-align':'center'}">
<!-- <el-table-column type="selection" width="55" show-overflow-tooltip></el-table-column>-->

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

@ -10,7 +10,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTaskSbillDetail 工时登记表-->
<el-table ref="xmTaskSbillDetailTable" :data="xmTaskSbillDetails" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTaskSbillDetailTable" :data="xmTaskSbillDetails" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -18,33 +18,33 @@
<span class="cell-text"> {{scope.row.username}}} </span>
<span class="cell-bar"><el-input style="display:inline;" v-model="scope.row.username" placeholder="" @change="editSomeFields(scope.row,'username',$event)" :maxlength="22"></el-input></span>
</el-table-column>
-->
-->
<el-table-column prop="username" label="姓名" min-width="120" show-overflow-tooltip fixed="left">
<template slot-scope="scope">
<template slot-scope="scope">
<el-link title="查看该人员在当前任务下的所有工时记录"
type="primary"
style="display: inline"
@click="showPopover(scope.row, 'username', '', '')"
>{{ scope.row.username }}</el-link
>
>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="taskName" label="任务" min-width="120" show-overflow-tooltip fixed="left">
<template slot-scope="scope">
<template slot-scope="scope">
<el-link title="查看该任务下的所有工时记录"
type="primary"
style="display: inline"
@click="showPopover(scope.row, 'taskName', '', '')"
>{{ scope.row.taskName }}</el-link
>
>
</template>
</el-table-column>
<el-table-column label="结算信息">
</el-table-column>
<el-table-column label="结算信息">
<el-table-column prop="sstatus" label="结算状态" width="120" show-overflow-tooltip sortable>
<template slot-scope="scope">
<div class="cell-text">
<el-tag v-for="(item,index) in formatDictsWithClass(dicts,'sstatus',scope.row.sstatus)" :key="index" :type="item.className">{{item.name}}</el-tag>
<el-tag v-for="(item,index) in formatDictsWithClass(dicts,'sstatus',scope.row.sstatus)" :key="index" :type="item.className">{{item.name}}</el-tag>
</div>
<span class="cell-bar">
<el-select v-model="scope.row.sstatus" placeholder="结算状态" style="display:block;" @change="editSomeFields(scope.row,'sstatus',$event)">
@ -54,9 +54,9 @@
</template>
</el-table-column>
<el-table-column prop="sschemel" label="结算方案" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<el-tag v-for="(item,index) in formatDictsWithClass(dicts,'xmTaskSettleSchemel',scope.row.sschemel)" :key="index" :type="item.className">{{item.name}}</el-tag>
<template slot-scope="scope">
<el-tag v-for="(item,index) in formatDictsWithClass(dicts,'xmTaskSettleSchemel',scope.row.sschemel)" :key="index" :type="item.className">{{item.name}}</el-tag>
</template>
</el-table-column>
<el-table-column prop="uniPrice" label="工时单价" min-width="120" show-overflow-tooltip>
@ -71,19 +71,19 @@
style="display: inline"
@click="showPopover(scope.row, 'sworkload', '', '')"
>{{ scope.row.workload }} h</el-link
>
>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="samt" label="待结金额" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.samt}}
{{scope.row.samt}}
</template>
</el-table-column>
<el-table-column prop="tactAt" label="已结金额" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.tactAt}}
<template slot-scope="scope">
{{scope.row.tactAt}}
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="budgetAt" label="预算金额" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.budgetAt}} </span>
@ -95,17 +95,17 @@
</template>
</el-table-column>
<el-table-column prop="sfee" label="服务费" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.sfee}}
<template slot-scope="scope">
{{scope.row.sfee}}
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="shareFee" label="分享赚费用" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.sfee}}
<template slot-scope="scope">
{{scope.row.sfee}}
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="othFee" label="其它费用" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<template slot-scope="scope">
<span class="cell-text"> {{scope.row.othFee}} </span>
<span class="cell-bar"><el-input style="display:inline;" type="number" v-model="scope.row.othFee" placeholder="" @change="editSomeFields(scope.row,'othFee',$event)"></el-input></span>
</template>
@ -119,14 +119,14 @@
<template slot-scope="scope"><span class="cell-text"> {{scope.row.remark}} </span>
<span class="cell-bar"><el-input type="textarea" style="display:inline;" v-model="scope.row.remark" placeholder="" @change="editSomeFields(scope.row,'remark',$event)"></el-input></span>
</template>
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column label="任务信息">
<el-table-column prop="taskState" label="任务状态" width="120" show-overflow-tooltip sortable >
<template slot-scope="scope">
<template slot-scope="scope">
<el-tag v-for="(item,index) in formatDictsWithClass(dicts,'taskState',scope.row.taskState)" :key="index" :type="item.className">{{item.name}}</el-tag>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="initWorkload" label="初始工时" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.initWorkload}} </span>
@ -144,15 +144,15 @@
style="display: inline"
@click="showPopover(scope.row, 'workload', '', '')"
>{{ scope.row.workload }} h</el-link
>
>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="budgetAt" label="预算金额" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.budgetAt}} </span>
</template>
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column label="报价信息">
<el-table-column prop="quoteAt" label="报价金额" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
@ -164,7 +164,7 @@
<span> {{scope.row.quoteWorkload}} </span>
</template>
</el-table-column>
<el-table-column prop="qendTime" label="结束时间" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.qendTime}} </span>
@ -185,7 +185,7 @@
<template slot-scope="scope">
<span> {{scope.row.actStartTime}} </span>
</template>
</el-table-column>
</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>
@ -200,7 +200,7 @@
<xm-task-sbill-detail-edit op-type="add" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></xm-task-sbill-detail-edit>
</el-drawer>
</el-row>
<el-dialog
:title="
@ -218,11 +218,11 @@
:sbill-id="popoverConfig.sbillId"
:detail-id="popoverConfig.detailId"
:wstatus="popoverConfig.wstatus"
:sstatus="popoverConfig.sstatus"
:sstatus="popoverConfig.sstatus"
:userid="popoverConfig.userid"
></xm-workload-simple-list-for-biz-date>
</el-dialog>
<el-dialog
:title="
popoverPlusConfig.subTitle
@ -234,10 +234,10 @@
@close="searchXmTaskSbillDetails()"
>
<xm-workload-simple-list-for-biz-date
:visible="popoverPlusConfig.workloadDialogVisible"
:project-id="popoverPlusConfig.projectId"
:visible="popoverPlusConfig.workloadDialogVisible"
:project-id="popoverPlusConfig.projectId"
:wstatus="popoverPlusConfig.wstatus"
:sstatus="popoverPlusConfig.sstatus"
:sstatus="popoverPlusConfig.sstatus"
></xm-workload-simple-list-for-biz-date>
</el-dialog>
</section>
@ -245,12 +245,12 @@
<script>
import util from '@/common/js/util';//
import config from '@/common/config';//
import config from '@/common/config';//
import { initDicts,listXmTaskSbillDetail, delXmTaskSbillDetail, batchDelXmTaskSbillDetail,editSomeFieldsXmTaskSbillDetail } from '@/api/xm/core/xmTaskSbillDetail';
import XmTaskSbillDetailEdit from './XmTaskSbillDetailEdit';//
import { mapGetters } from 'vuex'
import XmWorkloadSimpleListForBizDate from '../xmWorkload/XmWorkloadSimpleListForBizDate';
export default {
name:'xmTaskSbillDetailMng',
components: {
@ -267,7 +267,7 @@
this.initData();
this.searchXmTaskSbillDetails()
}
},
},
},
data() {
return {
@ -292,7 +292,7 @@
addForm: {
userid:'',username:'',ctime:'',taskId:'',bizDate:'',remark:'',id:'',sbillId:'',stime:'',sstatus:'',amt:'',samt:'',workload:'',projectId:'',sworkload:'',bizMonth:'',budgetAt:'',budgetWorkload:'',initWorkload:'',quoteAt:'',quoteWorkload:'',sschemel:'',uniPrice:'',qendTime:'',qstartTime:'',actEndTime:'',actStartTime:''
},
editFormVisible: false,//
editForm: {
userid:'',username:'',ctime:'',taskId:'',bizDate:'',remark:'',id:'',sbillId:'',stime:'',sstatus:'',amt:'',samt:'',workload:'',projectId:'',sworkload:'',bizMonth:'',budgetAt:'',budgetWorkload:'',initWorkload:'',quoteAt:'',quoteWorkload:'',sschemel:'',uniPrice:'',qendTime:'',qstartTime:'',actEndTime:'',actStartTime:''
@ -313,7 +313,7 @@
workloadDialogVisible:false,
wstatus:'1',
sstatus:'1',
subTitle:'查询项目下的所有【待结算】工时记录',
subTitle:'查询项目下的所有【待结算】工时记录',
projectId:'',
}
}
@ -322,8 +322,8 @@
...util,
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getXmTaskSbillDetails();
},
handleCurrentChange(pageNum) {
@ -334,7 +334,7 @@
sortChange( obj ){
if(obj.order==null){
this.pageInfo.orderFields=[];
this.pageInfo.orderDirs=[];
this.pageInfo.orderDirs=[];
}else{
var dir='asc';
if(obj.order=='ascending'){
@ -342,14 +342,14 @@
}else{
dir='desc';
}
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderFields=[util.toLine(obj.prop)];
this.pageInfo.orderDirs=[dir];
}
this.getXmTaskSbillDetails();
},
searchXmTaskSbillDetails(){
this.pageInfo.count=true;
this.pageInfo.count=true;
this.getXmTaskSbillDetails();
},
// XmTaskSbillDetail
@ -362,9 +362,9 @@
};
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
}
params.orderBy= orderBys.join(",")
}
if(this.filters.key){
@ -383,22 +383,22 @@
if(this.projectId){
params.projectId=this.projectId
}
}
if(this.bizMonth){
params.bizMonth=this.bizMonth
}
}
this.load.list = true;
listXmTaskSbillDetail(params).then((res) => {
var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.total = res.data.total;
this.pageInfo.count=false;
this.xmTaskSbillDetails = 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 );
},
@ -409,7 +409,7 @@
this.editForm = Object.assign({}, row);
},
// XmTaskSbillDetail
showAdd: function () {
showAdd: function () {
this.popoverPlusConfig.workloadDialogVisible=true
this.popoverPlusConfig.projectId=this.projectId
},
@ -424,12 +424,12 @@
//xmTaskSbillDetail
selsChange: function (sels) {
this.sels = sels;
},
},
//xmTaskSbillDetail
handleDel: function (row,index) {
handleDel: function (row,index) {
this.$confirm('确认删除该记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
let params = { id:row.id };
delXmTaskSbillDetail(params).then((res) => {
@ -452,7 +452,7 @@
})
this.$confirm('确认删除选中记录吗?', '提示', {
type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true;
batchDelXmTaskSbillDetail(params).then((res) => {
this.load.del=false;
@ -487,23 +487,23 @@
if("1"==$event){
if(!row.quoteAt){
params['samt']=row.budgetAt
}else{
}else{
params['samt']=row.quoteAt
}
}else if("2"==$event){
if(!row.quoteAt){
params['samt']=row.budgetAt
}else{
}else{
params['samt']=row.quoteAt
}
}else if("3"==$event){
if(!row.quoteAt){
params['samt']=row.budgetAt
}else{
}else{
params['samt']=row.quoteAt
}
}
}
var func = editSomeFieldsXmTaskSbillDetail
func(params).then(res=>{
@ -527,7 +527,7 @@
initData: function(){
},
showPopover(row, fieldName, wstatus, sstatus) {
this.editForm = row;
this.popoverConfig={
@ -542,23 +542,23 @@
detailId:'',
userid:'',
}
this.popoverConfig.workloadDialogVisible = true;
this.popoverConfig.workloadDialogVisible = true;
this.popoverConfig.wstatus = wstatus;
this.popoverConfig.sstatus = sstatus;
if(fieldName=='username'){
this.popoverConfig.subTitle="查看【"+row.username+"】在任务【"+row.taskName+"】下的所有报工记录"
this.popoverConfig.taskId=row.taskId
this.popoverConfig.userid=row.userid
}else if(fieldName=='taskName'){
}else if(fieldName=='taskName'){
this.popoverConfig.subTitle="查看任务【"+row.taskName+"】下的所有报工记录"
this.popoverConfig.taskId=row.taskId
}else if(fieldName=='sworkload'||fieldName=='workload'){
}else if(fieldName=='sworkload'||fieldName=='workload'){
this.popoverConfig.subTitle="查看【"+row.username+"】已加入当前任务,当前结算单的待结工时明细"
this.popoverConfig.taskId=row.taskId
this.popoverConfig.detailId=row.id
this.popoverConfig.taskId=row.taskId
this.popoverConfig.detailId=row.id
this.popoverConfig.userid=row.userid
}
}
},
},//end methods
mounted() {
@ -575,4 +575,4 @@
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmTaskSkill/XmTaskSkillMng.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="page-main ">
<!--列表 XmTaskSkill xm_task_skill-->
<el-table ref="table" :height="tableHeight" :data="xmTaskSkills" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmTaskSkills" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column sortable type="index" width="40"></el-table-column>
<el-table-column prop="id" label="主键" min-width="80" ></el-table-column>

2
src/views/xm/core/xmTaskTemplate/XmTaskTemplateMng.vue

@ -22,7 +22,7 @@
</el-row>
<el-row class="page-main">
<!--列表 XmTaskTemplate xm_task_template select-confirm-->
<el-table ref="table" :load="loadXmTaskLazy" :height="maxTableHeight" :data="xmTaskTemplatesTreeData" row-key="id" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" :load="loadXmTaskLazy" v-adaptive="{bottomOffset:30}" :data="xmTaskTemplatesTreeData" row-key="id" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="name" label="任务名称" min-width="150" >
<template slot-scope="scope">

2
src/views/xm/core/xmTestCase/XmTestCaseMng.vue

@ -20,7 +20,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestCase 测试用例-->
<el-table ref="xmTestCaseTable" :data="xmTestCases" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTestCaseTable" :data="xmTestCases" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmTestCase/XmTestCaseSelect.vue

@ -23,7 +23,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestCase 测试用例-->
<el-table ref="xmTestCaseTable" :data="xmTestCases" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTestCaseTable" :data="xmTestCases" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">

28
src/views/xm/core/xmTestCasedb/XmTestCasedbMng.vue

@ -11,7 +11,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestCasedb 测试用例库-->
<el-table ref="xmTestCasedbTable" :data="xmTestCasedbs" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTestCasedbTable" :data="xmTestCasedbs" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>
<!--
@ -24,8 +24,8 @@
<template slot-scope="scope">
<span v-if="select!==true"><el-link @click="goCasedbInfo(scope.row)">{{scope.row.name}} </el-link> </span>
<span v-else> {{scope.row.name}} </span>
<span class="tool-bar">
<el-button type="warning" @click="goCasedbInfo(scope.row)" icon="el-icon-s-data" circle title="视图"></el-button>
<span class="tool-bar">
<el-button type="warning" @click="goCasedbInfo(scope.row)" icon="el-icon-s-data" circle title="视图"></el-button>
</span>
</template>
</el-table-column>
@ -34,10 +34,10 @@
<template slot-scope="scope">
<span> {{scope.row.productName}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="cusername" label="创建人" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<mdp-select-user-xm userid-key="cuserid" username-key="cusername" v-model="scope.row" :disabled="true">
<template slot-scope="scope">
<mdp-select-user-xm userid-key="cuserid" username-key="cusername" v-model="scope.row" :disabled="true">
</mdp-select-user-xm>
</template>
</el-table-column>
@ -45,16 +45,16 @@
<template slot-scope="scope">
<span> {{scope.row.ctime}} </span>
</template>
</el-table-column>
</el-table-column>
</template>
<template v-else>
<template v-else>
<el-table-column label="操作" width="180" fixed="right">
<template scope="scope">
<el-button type="primary" @click="$emit('select',scope.row)">选择</el-button>
<el-button type="primary" @click="$emit('select',scope.row)">选择</el-button>
</template>
</el-table-column>
</template>
</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>
@ -303,9 +303,9 @@ export default {
clearProduct(){
this.filters.xmProduct=null;
this.searchXmTestCasedbs();
},
},
onProductSelected(product){
this.filters.xmProduct=product;
this.filters.xmProduct=product;
this.searchXmTestCasedbs();
},
goCasedbInfo(row){
@ -316,7 +316,7 @@ export default {
casedbId:row.id
}
})
})
})
}
},//end methods
mounted() {
@ -333,4 +333,4 @@ export default {
</script>
<style scoped>
</style>
</style>

2
src/views/xm/core/xmTestPlan/XmTestPlanListForProject.vue

@ -8,7 +8,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestPlan 测试计划-->
<el-table :data="xmTestPlans" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table :data="xmTestPlans" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmTestPlan/XmTestPlanMng.vue

@ -15,7 +15,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestPlan 测试计划-->
<el-table ref="xmTestPlanTable" :data="xmTestPlans" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTestPlanTable" :data="xmTestPlans" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmTestPlan/XmTestPlanSelect.vue

@ -9,7 +9,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestPlan 测试计划-->
<el-table :data="xmTestPlans" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table :data="xmTestPlans" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmTestPlanCase/XmTestPlanCaseMng.vue

@ -22,7 +22,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestPlanCase 测试计划与用例关系表-->
<el-table ref="xmTestPlanCaseTable" :data="xmTestPlanCases" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTestPlanCaseTable" :data="xmTestPlanCases" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">

2
src/views/xm/core/xmTestPlanCase/XmTestPlanCaseSelect.vue

@ -15,7 +15,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmTestPlanCase 测试计划与用例关系表-->
<el-table ref="xmTestPlanCaseTable" :data="xmTestPlanCases" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="xmTestPlanCaseTable" :data="xmTestPlanCases" v-adaptive="{bottomOffset:30}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<!--
<el-table-column sortable prop="username" width="55" show-overflow-tooltip fixed="left">
<span class="cell-text"> {{scope.row.username}}} </span>

2
src/views/xm/core/xmWorkload/XmTaskSbillSelect.vue

@ -8,7 +8,7 @@
<el-row >
<!--列表 XmTaskSbill 结算表-->
<el-table ref="table" :height="maxTableHeight" :data="xmTaskSbills" :row-class-name="tableRowClassName" @sort-change="sortChange" :highlight-current-row="true" current-row-key="id" v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table ref="table" v-adaptive="{bottomOffset:30}" :data="xmTaskSbills" :row-class-name="tableRowClassName" @sort-change="sortChange" :highlight-current-row="true" current-row-key="id" v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column prop="name" label="结算单名称">
<template slot="header" slot-scope="scope">
结算单名称

2
src/views/xm/core/xmWorkload/XmWorkloadInfo.vue

@ -49,7 +49,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmWorkload 工时登记表-->
<el-table ref="xmWorkloadTable" :data="xmWorkloads" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row
<el-table ref="xmWorkloadTable" :data="xmWorkloads" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column sortable type="index" width="55" show-overflow-tooltip fixed="left"></el-table-column>

2
src/views/xm/core/xmWorkload/XmWorkloadMng.vue

@ -47,7 +47,7 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmWorkload 工时登记表-->
<el-table ref="xmWorkloadTable" :data="xmWorkloads" :height="maxTableHeight" @sort-change="sortChange" highlight-current-row
<el-table ref="xmWorkloadTable" :data="xmWorkloads" v-adaptive="{bottomOffset:30}" @sort-change="sortChange" highlight-current-row
v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;" :header-cell-style="{'text-align':'center'}"
:cell-style="{'text-align':'center'}">
<el-table-column type="selection" width="55" show-overflow-tooltip fixed="left"></el-table-column>

28
src/views/xm/rpt/his/rptDataSelect.vue

@ -4,34 +4,34 @@
<el-input v-model="filters.key" style="width: 30%;" placeholder="模糊查询"></el-input>
<el-checkbox v-model="filters.myCreate" true-label="1" false-label="0">我的</el-checkbox>
<mdp-date-range v-model="filters" style="width:220px" start-key="startBizDate" end-key="endBizDate"></mdp-date-range>
<el-button v-loading="load.list" :disabled="load.list==true" @click="searchXmRptDatas" icon="el-icon-search"></el-button>
<el-button v-loading="load.list" :disabled="load.list==true" @click="searchXmRptDatas" icon="el-icon-search"></el-button>
</el-row>
<el-row class="padding-top">
<!--列表 XmRptData xm_rpt_data-->
<el-table ref="xmRptDataTable" :data="xmRptDatas" :height="maxTableHeight" @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 fixed="left"></el-table-column>
<el-table ref="xmRptDataTable" :data="xmRptDatas" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column prop="rptName" label="报告名称" min-width="250" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.rptName}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="bizDate" label="业务日期" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.bizDate}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="cusername" label="创建人名称" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.cusername}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="操作" width="100" fixed="right">
<template scope="scope">
<el-button type="primary" @click="toRptDetail(scope.row)" icon="el-icon-s-data" plain>选择</el-button>
<el-button type="primary" @click="toRptDetail(scope.row)" icon="el-icon-s-data" plain>选择</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
</el-table>
</el-row>
<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>
</section>
</template>
@ -45,7 +45,7 @@ import { mapGetters } from 'vuex'
export default {
name:'xmRptDataList',
components: {
components: {
},
props:['visible','xmRptConfig',],
computed: {
@ -156,7 +156,7 @@ export default {
if(!this.xmRptConfig || !this.xmRptConfig.id){
return;
}
params.cfgId=this.xmRptConfig.id
this.load.list = true;
listXmRptData(params).then((res) => {
@ -170,11 +170,11 @@ export default {
}
this.load.list = false;
}).catch( err => this.load.list = false );
},
},
//xmRptData
selsChange: function (sels) {
this.sels = sels;
},
},
rowClick: function(row, event, column){
this.editForm=row
this.editFormBak={...row};
@ -207,4 +207,4 @@ export default {
</script>
<style scoped>
</style>
</style>

28
src/views/xm/rpt/index/indexForHis.vue

@ -1,7 +1,7 @@
<template>
<section class="padding">
<el-row>
<el-input v-model="filters.key" style="width: 30%;" placeholder="模糊查询"></el-input>
<el-input v-model="filters.key" style="width: 30%;" placeholder="模糊查询"></el-input>
<el-checkbox v-model="filters.myCreate" true-label="1" false-label="0">我的</el-checkbox>
<mdp-date-range v-model="filters" start-key="startBizDate" style="width:250px;" end-key="endBizDate"></mdp-date-range>
@ -12,30 +12,30 @@
</el-row>
<el-row class="padding-top">
<!--列表 XmRptData xm_rpt_data-->
<el-table ref="xmRptDataTable" :data="xmRptDatas" :height="maxTableHeight" @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 fixed="left"></el-table-column>
<el-table ref="xmRptDataTable" :data="xmRptDatas" v-adaptive="{bottomOffset:30}" @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 fixed="left"></el-table-column>
<el-table-column prop="rptName" label="报告名称" min-width="250" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.rptName}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="bizDate" label="业务日期" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.bizDate}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="cusername" label="创建人名称" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.cusername}} </span>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="操作" width="100" fixed="right">
<template scope="scope">
<el-button type="primary" @click="toRptDetail(scope.row)" icon="el-icon-s-data" plain>查看</el-button>
<el-button type="primary" @click="toRptDetail(scope.row)" icon="el-icon-s-data" plain>查看</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
</el-table>
</el-row>
<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>
</section>
</template>
@ -49,8 +49,8 @@ import { mapGetters } from 'vuex'
export default {
name:'xmRptDataList',
components: {
},
components: {
},
computed: {
...mapGetters(['userInfo']),
@ -152,8 +152,8 @@ export default {
if(this.filters.startBizDate){
params.startBizDate=this.filters.startBizDate
params.endBizDate=this.filters.endBizDate
}
}
if(this.filters.myCreate=='1'){
params.cuserid=this.userInfo.userid
}
@ -291,4 +291,4 @@ export default {
</script>
<style scoped>
</style>
</style>
Loading…
Cancel
Save