Browse Source

优化

master
陈裕财 4 years ago
parent
commit
4ee444384a
  1. 8
      src/views/xm/core/xmIterationMenu/XmIterationMenuMng.vue
  2. 8
      src/views/xm/core/xmMenu/XmMenuMng.vue
  3. 20
      src/views/xm/core/xmMenu/XmMenuSelect.vue
  4. 4
      src/views/xm/core/xmProject/XmProjectOverview.vue
  5. 7
      src/views/xm/core/xmQuestion/XmQuestionAdd.vue
  6. 8
      src/views/xm/core/xmQuestion/XmQuestionEdit.vue
  7. 2
      src/views/xm/core/xmQuestion/XmQuestionMng.vue
  8. 9
      src/views/xm/core/xmTask/XmTaskAdd.vue
  9. 13
      src/views/xm/core/xmTask/XmTaskEdit.vue
  10. 6
      src/views/xm/core/xmTask/XmTaskList.vue
  11. 2
      src/views/xm/core/xmTask/XmTaskListForMenu.vue
  12. 8
      src/views/xm/core/xmTask/XmTaskMng.vue
  13. 2
      src/views/xm/core/xmTestCase/XmTestCaseAdd.vue
  14. 2
      src/views/xm/core/xmTestCase/XmTestCaseEdit.vue

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

@ -15,7 +15,7 @@
</el-row> </el-row>
<el-row class="page-main padding-top padding-left"> <el-row class="page-main padding-top padding-left">
<!--列表 XmIterationMenu 迭代定义--> <!--列表 XmIterationMenu 迭代定义-->
<el-table ref="table" :height="maxTableHeight" :data="xmIterationMenusTreeData" 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 ref="table" :height="maxTableHeight" :data="xmIterationMenusTreeData" row-key="menuId" :tree-props="{children: 'children'}" @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 type="selection" width="45"></el-table-column>
<el-table-column prop="menuName" label="已加入迭代的用户故事" min-width="140" > <el-table-column prop="menuName" label="已加入迭代的用户故事" min-width="140" >
@ -45,7 +45,7 @@
</el-row> </el-row>
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<xm-menu-select ref="menusSelect" iterationFilterType="not-join-curr-iteration" checkScope="0" :xm-product="xmIteration?{id:xmIteration.productId}:null" :xm-iteration="xmIteration" :visible="menuVisible" :is-select-menu="true" :multi="true" @menus-selected="onSelectedMenus" ></xm-menu-select>
<xm-menu-select ref="menusSelect" iterationFilterType="not-join-curr-iteration" checkScope="3" :xm-product="xmIteration?{id:xmIteration.productId}:null" :xm-iteration="xmIteration" :visible="menuVisible" :is-select-menu="true" :multi="true" @menus-selected="onSelectedMenus" ></xm-menu-select>
</el-col> </el-col>
</el-row> </el-row>
</section> </section>
@ -76,8 +76,8 @@
}, },
}, },
watch:{ watch:{
'xmIteration':function(xmIteration){
this.onIterationRowClick(xmIteration)
'xmIteration.id':function(){
this.onIterationRowClick(this.xmIteration)
} }
}, },
data() { data() {

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

@ -176,7 +176,7 @@
</span> </span>
</el-row> </el-row>
<el-row class="padding-top"> <el-row class="padding-top">
<el-table :cell-style="cellStyleCalc" :expand-row-keys="expandRowKeysCpd" :header-cell-style="cellStyleCalc" :row-style="{height:'60px'}" lazy :load="loadXmMenusLazy" stripe fit border ref="table" :height="maxTableHeight" :data="xmMenusTreeData" current-row-key="menuId" row-key="menuId" :tree-props="{children: 'children', hasChildren: 'childrenCnt'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick">
<el-table :cell-style="cellStyleCalc" :expand-row-keys="expandRowKeysCpd" :header-cell-style="cellStyleCalc" :row-style="{height:'60px'}" 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-column sortable type="selection" width="40"></el-table-column> <el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="menuName" label="需求名称" min-width="300" fixed="left"> <el-table-column prop="menuName" label="需求名称" min-width="300" fixed="left">
@ -757,10 +757,8 @@
afterAddSubmit(row){ afterAddSubmit(row){
this.addFormVisible=false; this.addFormVisible=false;
this.pageInfo.count=true; this.pageInfo.count=true;
//this.getXmMenus();
if(!row.pmenuId){
this.xmMenus.push(row);
}
//this.getXmMenus();
this.xmMenus.push(row);
if(this.parentMenu){ if(this.parentMenu){
this.parentMenu.childrenCnt=this.parentMenu.childrenCnt?this.parentMenu.childrenCnt+1:1; this.parentMenu.childrenCnt=this.parentMenu.childrenCnt?this.parentMenu.childrenCnt+1:1;
} }

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

@ -138,7 +138,7 @@
<el-button style="float:right;" type="primary" v-if="multi" v-on:click="multiSelectedConfirm">确认选择</el-button> <el-button style="float:right;" type="primary" v-if="multi" v-on:click="multiSelectedConfirm">确认选择</el-button>
</el-row> </el-row>
<el-row style="padding-top:12px;"> <el-row style="padding-top:12px;">
<el-table ref="table" class="menu-table" lazy :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 ref="table" class="menu-table" :height="maxTableHeight" :data="xmMenusTreeData" row-key="menuId" :tree-props="{children: 'children'}" @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 v-if="multi" type="selection" width="50"></el-table-column>
<el-table-column prop="menuName" label="需求名称" min-width="140" > <el-table-column prop="menuName" label="需求名称" min-width="140" >
@ -161,7 +161,7 @@
<el-table-column prop="iterationName" label="迭代" min-width="140" > </el-table-column> <el-table-column prop="iterationName" label="迭代" min-width="140" > </el-table-column>
<el-table-column label="操作" width="100" fixed="right" > <el-table-column label="操作" width="100" fixed="right" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button :disabled="checkScope && checkScope!==scope.row.ntype" type="primary" @click="selectedMenu( scope.row,scope.$index)">选择</el-button>
<el-button :disabled=" checkScope!==scope.row.dclass" type="primary" @click="selectedMenu( scope.row,scope.$index)">选择</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -203,7 +203,7 @@
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
export default { export default {
props:['isSelectMenu','multi','visible','xmIteration','xmProduct','selProject','checkScope'/**0-需求,1-需求池 */,'iterationFilterType','taskFilterType'],
props:['isSelectMenu','multi','visible','xmIteration','xmProduct','selProject','checkScope'/**1-史诗,2-特性,3-用户故事 */,'iterationFilterType','taskFilterType'],
computed: { computed: {
...mapGetters([ ...mapGetters([
'userInfo','roles' 'userInfo','roles'
@ -217,25 +217,25 @@
watch:{ watch:{
visible:function(visible){ visible:function(visible){
if(visible==true){ if(visible==true){
this.getXmMenus();
this.searchXmMenus();
} }
}, },
xmItertaion(){
"xmIteration"(){
if(this.iterationFilterType){ if(this.iterationFilterType){
this.filters.iterationFilterType=this.iterationFilterType this.filters.iterationFilterType=this.iterationFilterType
} }
if(this.xmIteration){ if(this.xmIteration){
this.filters.iteration=this.xmIteration this.filters.iteration=this.xmIteration
} }
this.getXmMenus();
this.searchXmMenus();
}, },
xmProduct(){
"xmProduct"(){
this.filters.product=this.xmProduct this.filters.product=this.xmProduct
this.getXmMenus();
this.searchXmMenus();
}, },
selProject(){
this.getXmMenus();
"selProject"(){
this.searchXmMenus();
} }
}, },
data() { data() {

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

@ -285,10 +285,10 @@ export default {
return this.selProject.totalProgress; return this.selProject.totalProgress;
}, },
taskStartTime: function (){ taskStartTime: function (){
return this.selProject.startTime.substring(0,10);
return this.selProject.startTime?this.selProject.startTime.substring(0,10):'';
}, },
taskEndTime: function (){ taskEndTime: function (){
return this.selProject.endTime.substring(0,10);
return this.selProject.endTime?this.selProject.endTime.substring(0,10):'';
}, },
taskMng: function (){ taskMng: function (){
return this.selProject.createUsername; return this.selProject.createUsername;

7
src/views/xm/core/xmQuestion/XmQuestionAdd.vue

@ -130,7 +130,7 @@
</el-drawer> </el-drawer>
<el-drawer append-to-body title="需求选择" :visible.sync="selectMenuVisible" size="70%" :close-on-click-modal="false"> <el-drawer append-to-body title="需求选择" :visible.sync="selectMenuVisible" size="70%" :close-on-click-modal="false">
<xm-menu-select :is-select-menu="true" checkScope="0" @selected="onSelectedMenu" :sel-project="filters.selProject"></xm-menu-select>
<xm-menu-select :is-select-menu="true" checkScope="3" @selected="onSelectedMenu" :sel-project="filters.selProject" :xm-product="xmProduct"></xm-menu-select>
</el-drawer> </el-drawer>
</el-row> </el-row>
<el-row> <el-row>
@ -177,7 +177,7 @@
} }
}, },
props:['xmQuestion','visible',"selProject",'qtype','xmTestCaseExec','xmTestCase'],
props:['xmQuestion','visible',"selProject",'qtype','xmTestCaseExec','xmTestCase','xmProduct'],
watch: { watch: {
'xmQuestion':function( xmQuestion ) { 'xmQuestion':function( xmQuestion ) {
this.addForm=Object.assign(this.addForm, this.xmQuestion); this.addForm=Object.assign(this.addForm, this.xmQuestion);
@ -280,6 +280,9 @@
params.description=params.description.replace(/<p>\n<br>\n<\p>/g,""); params.description=params.description.replace(/<p>\n<br>\n<\p>/g,"");
params.description=params.description.replace("<p><br><\p>",""); params.description=params.description.replace("<p><br><\p>","");
} }
if(this.xmProduct && this.xmProduct.id){
params.productId=this.xmProduct.id
}
addXmQuestion(params).then((res) => { addXmQuestion(params).then((res) => {
this.load.add=false this.load.add=false
var tips=res.data.tips; var tips=res.data.tips;

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

@ -87,14 +87,14 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="解决方案" prop="solution"> <el-form-item label="解决方案" prop="solution">
<el-select v-model="editForm.solution" placeholder="请选择解决方案"> <el-select v-model="editForm.solution" placeholder="请选择解决方案">
<el-option v-for="(i,index) in dicts['bugSolution']" :label="i.name" :value="i.id" :key="index">{{i.name}}</el-option> <el-option v-for="(i,index) in dicts['bugSolution']" :label="i.name" :value="i.id" :key="index">{{i.name}}</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="缺陷类别" prop="bugType"> <el-form-item label="缺陷类别" prop="bugType">
<el-select v-model="editForm.bugType" placeholder="请选择缺陷类别"> <el-select v-model="editForm.bugType" placeholder="请选择缺陷类别">
<el-option v-for="(i,index) in dicts['bugType']" :label="i.name" :value="i.id" :key="index">{{i.name}}</el-option> <el-option v-for="(i,index) in dicts['bugType']" :label="i.name" :value="i.id" :key="index">{{i.name}}</el-option>
@ -179,8 +179,8 @@
<xm-task-list :sel-project="selProject" @task-selected="onSelectedTask"></xm-task-list> <xm-task-list :sel-project="selProject" @task-selected="onSelectedTask"></xm-task-list>
</el-drawer> </el-drawer>
<el-drawer append-to-body title="需求选择" :visible.sync="selectMenuVisible" size="70%" :close-on-click-modal="false">
<xm-menu-select :is-select-menu="true" checkScope="0" @selected="onSelectedMenu" :sel-project="selProject"></xm-menu-select>
<el-drawer append-to-body title="需求选择" :visible.sync="selectMenuVisible" size="60%" :close-on-click-modal="false">
<xm-menu-select :is-select-menu="true" checkScope="3" @selected="onSelectedMenu" :sel-project="selProject"></xm-menu-select>
</el-drawer> </el-drawer>
</el-row> </el-row>
</el-row> </el-row>

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

@ -241,7 +241,7 @@
<!--新增 XmQuestion xm_question界面--> <!--新增 XmQuestion xm_question界面-->
<el-dialog title="新增缺陷" :visible.sync="addFormVisible" width="80%" top="20px" append-to-body :close-on-click-modal="false"> <el-dialog title="新增缺陷" :visible.sync="addFormVisible" width="80%" top="20px" append-to-body :close-on-click-modal="false">
<xm-question-add :xm-test-case-exec="xmTestCaseExec" :xm-test-case="xmTestCase" :qtype="qtype" :sel-project=" filters.selProject " :xm-question="addForm" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></xm-question-add>
<xm-question-add :xm-test-case-exec="xmTestCaseExec" :xm-product="filters.product" :xm-test-case="xmTestCase" :qtype="qtype" :sel-project=" filters.selProject " :xm-question="addForm" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></xm-question-add>
</el-dialog> </el-dialog>
<xm-group-dialog ref="xmGroupDialog" :sel-project=" filters.selProject " :is-select-single-user="1" @user-confirm="onUserConfirm"></xm-group-dialog> <xm-group-dialog ref="xmGroupDialog" :sel-project=" filters.selProject " :is-select-single-user="1" @user-confirm="onUserConfirm"></xm-group-dialog>
<el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="60%" :close-on-click-modal="false"> <el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="60%" :close-on-click-modal="false">

9
src/views/xm/core/xmTask/XmTaskAdd.vue

@ -352,15 +352,6 @@
taskState: [ taskState: [
{ required: true, message: '请选择任务状态', trigger: 'change' } { required: true, message: '请选择任务状态', trigger: 'change' }
], ],
taskType: [
{ required: true, message: '请选择任务类型', trigger: 'change' }
],
taskClass: [
{ required: true, message: '请选择是否结算', trigger: 'change' }
],
toTaskCenter: [
{ required: true, message: '请选择是否发布', trigger: 'change' }
],
sortLevel: [ sortLevel: [
{ required: true, message: '排序号不能为空', trigger: 'change' } { required: true, message: '排序号不能为空', trigger: 'change' }
], ],

13
src/views/xm/core/xmTask/XmTaskEdit.vue

@ -230,7 +230,7 @@
</el-drawer> </el-drawer>
<el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="80%" :close-on-click-modal="false"> <el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="80%" :close-on-click-modal="false">
<xm-menu-select :is-select-menu="true" checkScope="0" @selected="onMenuSelected" :sel-project="xmProject"></xm-menu-select>
<xm-menu-select :is-select-menu="true" checkScope="3" @selected="onMenuSelected" :sel-project="xmProject"></xm-menu-select>
</el-drawer> </el-drawer>
<el-drawer title="选中任务" :visible.sync="selectTaskVisible" size="80%" append-to-body :close-on-click-modal="false"> <el-drawer title="选中任务" :visible.sync="selectTaskVisible" size="80%" append-to-body :close-on-click-modal="false">
@ -339,16 +339,7 @@ import XmMenuEdit from '../xmMenu/XmMenuEdit.vue';
], ],
taskState: [ taskState: [
{ required: true, message: '请选择任务状态', trigger: 'blur' } { required: true, message: '请选择任务状态', trigger: 'blur' }
],
taskClass: [
{ required: true, message: '请选择是否结算', trigger: 'blur' }
],
toTaskCenter: [
{ required: true, message: '请选择是否发布', trigger: 'blur' }
],
sortLevel: [
{ required: true, message: '排序号不能为空', trigger: 'blur' }
],
],
// execuser:[{ // execuser:[{
// validator: validateExec, trigger: 'blur' // validator: validateExec, trigger: 'blur'
// }], // }],

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

@ -22,9 +22,7 @@
</el-row> </el-row>
<el-row class="page-main"> <el-row class="page-main">
<el-table <el-table
ref="taskTable"
lazy
:load="loadXmTaskLazy"
ref="taskTable"
:data="tasksTreeData" :data="tasksTreeData"
@sort-change="sortChange" @sort-change="sortChange"
v-loading="load.list" v-loading="load.list"
@ -34,7 +32,7 @@
stripe stripe
fit fit
border border
:tree-props="{children: 'children', hasChildren: 'childrenCnt'}"
:tree-props="{children: 'children' }"
row-key="id" row-key="id"
:height="tableHeight" :height="tableHeight"
> >

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

@ -18,7 +18,7 @@
stripe stripe
fit fit
default-expand-all default-expand-all
:tree-props="{children: 'children', hasChildren: 'childrenCnt'}"
:tree-props="{children: 'children' }"
row-key="id" row-key="id"
:height="tableHeight" :height="tableHeight"
ref="table" ref="table"

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

@ -377,9 +377,7 @@
@submit="afterEditSubmit" @submit="afterEditSubmit"
></xm-task-agile-kanban> ></xm-task-agile-kanban>
<el-table class="task-table" <el-table class="task-table"
v-else
lazy
:load="loadXmTaskLazy"
v-else
:data="tasksTreeData" :data="tasksTreeData"
@sort-change="sortChange" @sort-change="sortChange"
v-loading="load.list" v-loading="load.list"
@ -392,7 +390,7 @@
border border
tooltip-effect="light" tooltip-effect="light"
:height="tableHeight" :height="tableHeight"
:tree-props="{ children: 'children', hasChildren: 'childrenCnt' }"
:tree-props="{ children: 'children' }"
row-key="id" row-key="id"
ref="table" ref="table"
:row-style="{height:'60px'}" :row-style="{height:'60px'}"
@ -853,7 +851,7 @@
<xm-menu-select <xm-menu-select
:visible="batchRelTasksWithMenuVisible" :visible="batchRelTasksWithMenuVisible"
:is-select-menu="true" :is-select-menu="true"
checkScope="0"
checkScope="3"
@selected="onBatchRelTasksWithMenu" @selected="onBatchRelTasksWithMenu"
:xm-product="filters.product" :xm-product="filters.product"
:sel-project="filters.selProject" :sel-project="filters.selProject"

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

@ -34,7 +34,7 @@
</el-form> </el-form>
<el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="60%" :close-on-click-modal="false"> <el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="60%" :close-on-click-modal="false">
<xm-menu-select :visible="menuVisible" checkScope="0" :is-select-menu="true" :multi="true" @menus-selected="onSelectedMenus" ></xm-menu-select>
<xm-menu-select :visible="menuVisible" checkScope="3" :is-select-menu="true" :multi="true" @menus-selected="onSelectedMenus" ></xm-menu-select>
</el-drawer> </el-drawer>
</el-row> </el-row>
</section> </section>

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

@ -36,7 +36,7 @@
</el-form> </el-form>
<el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="60%" :close-on-click-modal="false"> <el-drawer append-to-body title="需求选择" :visible.sync="menuVisible" size="60%" :close-on-click-modal="false">
<xm-menu-select checkScope="0" :visible="menuVisible" :is-select-menu="true" :multi="true" @menus-selected="onSelectedMenus" ></xm-menu-select>
<xm-menu-select checkScope="3" :visible="menuVisible" :is-select-menu="true" :multi="true" @menus-selected="onSelectedMenus" ></xm-menu-select>
</el-drawer> </el-drawer>
</el-row> </el-row>
</section> </section>

Loading…
Cancel
Save