Browse Source

优化

master
陈裕财 5 years ago
parent
commit
9fc80cb5b9
  1. 4
      config/index.js
  2. 6
      src/styles/mdp.scss
  3. 6
      src/views/xm/core/xmIteration/XmIterationComplex.vue
  4. 13
      src/views/xm/core/xmMenu/XmMenuMng.vue
  5. 33
      src/views/xm/core/xmProduct/XmProductMng.vue

4
config/index.js

@ -11,7 +11,7 @@ module.exports = {
assetsSubDirectory: 'static', assetsSubDirectory: 'static',
assetsPublicPath: '/', assetsPublicPath: '/',
proxyTable: { proxyTable: {
/**
'/api/m1/xm': { '/api/m1/xm': {
target: 'http://localhost:7067', target: 'http://localhost:7067',
changeOrigin: true, changeOrigin: true,
@ -19,7 +19,7 @@ module.exports = {
'^/api/m1/xm': '/xm' '^/api/m1/xm': '/xm'
} }
}, },
/**
'/api/m1/workflow': { '/api/m1/workflow': {
target: 'http://localhost:7080', target: 'http://localhost:7080',
changeOrigin: true, changeOrigin: true,

6
src/styles/mdp.scss

@ -165,14 +165,14 @@
.tips{ .tips{
position:absolute; position:absolute;
font-size: 10px;
bottom: 0px;
font-size: 14px;
bottom: -10px;
color: red; color: red;
padding-left: 10px; padding-left: 10px;
flex: 0 0 auto; flex: 0 0 auto;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
justify-content: flex-start; justify-content: flex-start;
align-items: center;
align-items: bottom;
overflow-x: hidden; overflow-x: hidden;
} }

6
src/views/xm/core/xmIteration/XmIterationComplex.vue

@ -15,13 +15,13 @@
<xm-menu-mng v-if="xmIteration" :xm-iteration="xmIteration" :sel-project="selProject"></xm-menu-mng> <xm-menu-mng v-if="xmIteration" :xm-iteration="xmIteration" :sel-project="selProject"></xm-menu-mng>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="任务" lazy > <el-tab-pane label="任务" lazy >
<xm-task-mng v-if="xmIteration" :sel-project="selProject"></xm-task-mng>
<xm-task-mng v-if="xmIteration" :xm-iteration="xmIteration" :sel-project="selProject"></xm-task-mng>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="缺陷" lazy > <el-tab-pane label="缺陷" lazy >
<xm-question-mng v-if="xmIteration" :sel-project="selProject"></xm-question-mng>
<xm-question-mng v-if="xmIteration" :xm-iteration="xmIteration" :sel-project="selProject"></xm-question-mng>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="迭代概览" lazy > <el-tab-pane label="迭代概览" lazy >
<xm-iteration-state-show v-if="xmIteration" :sel-project="selProject"></xm-iteration-state-show>
<xm-iteration-state-show v-if="xmIteration" :xm-iteration="xmIteration" :sel-project="selProject"></xm-iteration-state-show>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
<el-row> <el-row>

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

@ -5,7 +5,7 @@
<xm-product-mng :sel-project="selProject" @row-click="onProductSelected" ref="xmProductMng" :simple="true"></xm-product-mng> <xm-product-mng :sel-project="selProject" @row-click="onProductSelected" ref="xmProductMng" :simple="true"></xm-product-mng>
</el-col> </el-col>
<el-col :span="18" class="padding-left"> <el-col :span="18" class="padding-left">
<el-row >
<el-row>
<el-select v-model="filters.taskFilterType" placeholder="是否分配了任务?" clearable > <el-select v-model="filters.taskFilterType" placeholder="是否分配了任务?" clearable >
<el-option value="not-join" label="未分配任何任务的故事"></el-option> <el-option value="not-join" label="未分配任何任务的故事"></el-option>
<el-option value="join" label="已分配任务的故事"></el-option> <el-option value="join" label="已分配任务的故事"></el-option>
@ -23,12 +23,9 @@
:default-time="['00:00:00','23:59:59']" :default-time="['00:00:00','23:59:59']"
:picker-options="pickerOptions" :picker-options="pickerOptions"
></el-date-picker> ></el-date-picker>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询" clearable>
<template slot="append">
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmMenus" icon="el-icon-search"></el-button>
</template>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询" clearable>
</el-input> </el-input>
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmMenus" icon="el-icon-search"></el-button>
<el-button type="primary" @click="showAdd" icon="el-icon-plus">故事</el-button> <el-button type="primary" @click="showAdd" icon="el-icon-plus">故事</el-button>
<el-button @click="toBatchEdit" icon="el-icon-edit">修改</el-button> <el-button @click="toBatchEdit" icon="el-icon-edit">修改</el-button>
@ -89,9 +86,9 @@
</el-col> </el-col>
</el-row> </el-row>
<el-button slot="reference" icon="el-icon-more" circle></el-button> <el-button slot="reference" icon="el-icon-more" circle></el-button>
</el-popover>
</el-popover>
</el-row>
</el-row>
<el-row class="padding-top"> <el-row class="padding-top">
<el-table size="mini" stripe fit border ref="table" :height="tableHeight" :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" @selection-change="selsChange" @row-click="rowClick"> <el-table size="mini" stripe fit border ref="table" :height="tableHeight" :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @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>

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

@ -5,7 +5,6 @@
<el-option :label="userInfo.branchName+'机构下所有的产品'" value="branchId"></el-option> <el-option :label="userInfo.branchName+'机构下所有的产品'" value="branchId"></el-option>
<el-option label="我相关的产品" value="compete"></el-option> <el-option label="我相关的产品" value="compete"></el-option>
<el-option label="按产品编号精确查找" value="productId"></el-option> <el-option label="按产品编号精确查找" value="productId"></el-option>
<el-option label="后台智能匹配" value=""></el-option>
</el-select> </el-select>
<el-input v-if="filters.queryScope=='productId'" style="width:20%;" v-model="filters.id" placeholder="输入产品编号" @keyup.enter.native="searchXmProducts"> <el-input v-if="filters.queryScope=='productId'" style="width:20%;" v-model="filters.id" placeholder="输入产品编号" @keyup.enter.native="searchXmProducts">
</el-input> </el-input>
@ -38,21 +37,20 @@
trigger="click" > trigger="click" >
<el-row> <el-row>
<el-col :span="24" style="padding-top:5px;"> <el-col :span="24" style="padding-top:5px;">
<el-divider content-position="left"><strong>查询条件</strong></el-divider>
<font class="more-label-font"> <font class="more-label-font">
产品查询范围 产品查询范围
</font> </font>
<el-select size="mini" v-model="filters.queryScope" style="width:100%;" placeholder="产品查询范围"> <el-select size="mini" v-model="filters.queryScope" style="width:100%;" placeholder="产品查询范围">
<el-option :label="userInfo.branchName+'机构下所有的产品'" value="branchId"></el-option>
<el-option :label="userInfo.branchName+'机构下的产品'" value="branchId"></el-option>
<el-option label="我相关的产品" value="compete"></el-option> <el-option label="我相关的产品" value="compete"></el-option>
<el-option label="按产品编号精确查找" value="productId"></el-option>
<el-option label="后台智能匹配" value=""></el-option>
<el-option label="按产品编号精确查找" value="productId"></el-option>
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="24" style="padding-top:5px;"> <el-col :span="24" style="padding-top:5px;">
<el-input v-if="filters.queryScope=='productId'" size="mini" v-model="filters.id" style="width:100%;" placeholder="输入产品编号" @keyup.enter.native="searchXmProducts"> <el-input v-if="filters.queryScope=='productId'" size="mini" v-model="filters.id" style="width:100%;" placeholder="输入产品编号" @keyup.enter.native="searchXmProducts">
</el-input> </el-input>
</el-col> </el-col>
<el-col v-show="!selProject&&filters.queryScope!='productId'" :span="24" style="padding-top:5px;"> <el-col v-show="!selProject&&filters.queryScope!='productId'" :span="24" style="padding-top:5px;">
<font class="more-label-font">创建时间:</font> <font class="more-label-font">创建时间:</font>
<el-date-picker <el-date-picker
@ -68,7 +66,6 @@
:picker-options="pickerOptions" :picker-options="pickerOptions"
></el-date-picker> ></el-date-picker>
</el-col> </el-col>
<el-col :span="24" style="padding-top:5px;"> <el-col :span="24" style="padding-top:5px;">
<font class="more-label-font"> <font class="more-label-font">
产品名称: 产品名称:
@ -84,7 +81,18 @@
<el-button size="mini" v-else @click="selectFiltersPmUser()">选责任人</el-button> <el-button size="mini" v-else @click="selectFiltersPmUser()">选责任人</el-button>
<el-button size="mini" @click="setFiltersPmUserAsMySelf()">我的</el-button> <el-button size="mini" @click="setFiltersPmUserAsMySelf()">我的</el-button>
</el-col> </el-col>
<el-col :span="24" style="padding-top:5px;">
<el-col v-if="selProject" :span="24" style="padding-top:5px;">
<font class="more-label-font">
项目 <el-tag v-if="selProject">{{selProject?selProject.name:''}}</el-tag>
</font>
</el-col>
<el-col v-if="xmIteration" :span="24" style="padding-top:5px;">
<font class="more-label-font">
迭代 <el-tag v-if="xmIteration">{{xmIteration.iterationName}}</el-tag>
</font>
</el-col>
<el-col :span="24" style="padding-top:10px;">
<el-button type="primary" size="mini" @click="searchXmProducts" >查询</el-button> <el-button type="primary" size="mini" @click="searchXmProducts" >查询</el-button>
</el-col> </el-col>
</el-row> </el-row>
@ -182,7 +190,7 @@
import UsersSelect from "@/views/mdp/sys/user/UsersSelect"; import UsersSelect from "@/views/mdp/sys/user/UsersSelect";
export default { export default {
props:['selProject'],
props:['selProject','xmIteration'],
computed: { computed: {
...mapGetters([ ...mapGetters([
'userInfo','roles' 'userInfo','roles'
@ -307,18 +315,19 @@
} }
if(this.filters.queryScope=="branchId"){ if(this.filters.queryScope=="branchId"){
params.branchId=this.userInfo.branchId
params.projectId=null;
params.branchId=this.userInfo.branchId
} }
if(!this.selProject && this.filters.queryScope!='productId'){
if(!this.selProject && !this.xmIteration && this.filters.queryScope!='productId' && this.filters.queryScope!='compete'){
if(!this.dateRanger || this.dateRanger.length==0){ if(!this.dateRanger || this.dateRanger.length==0){
this.$message({showClose: true, message: "创建日期范围不能为空", type: 'error' }); this.$message({showClose: true, message: "创建日期范围不能为空", type: 'error' });
return; return;
} }
params.ctimeStart=this.dateRanger[0]+" 00:00:00" params.ctimeStart=this.dateRanger[0]+" 00:00:00"
params.ctimeEnd=this.dateRanger[1]+" 23:59:59" params.ctimeEnd=this.dateRanger[1]+" 23:59:59"
}
if(this.xmIteration){
params.iterationId=this.xmIteration.id
} }
if(this.filters.key!==""){ if(this.filters.key!==""){
params.key="%"+this.filters.key+"%" params.key="%"+this.filters.key+"%"
} }

Loading…
Cancel
Save