Browse Source

优化

master
陈裕财 3 years ago
parent
commit
cbdde6d9b4
  1. 195
      src/views/xm/core/xmMenu/XmMenuMng.vue
  2. 95
      src/views/xm/core/xmQuestion/XmQuestionMng.vue

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

@ -14,7 +14,7 @@
<el-popover <el-popover
placement="top-start" placement="top-start"
title="更多查询条件或者操作" title="更多查询条件或者操作"
width="600"
width="800"
v-model="moreVisible" v-model="moreVisible"
trigger="manual" > trigger="manual" >
@ -26,128 +26,110 @@
>关闭</el-button >关闭</el-button
> >
</el-row> </el-row>
<el-divider></el-divider>
<el-row>
<el-descriptions class="margin-top" size="mini" :column="2" border>
<template slot="extra">
<el-button @click="showParentMenu" icon="el-icon-top" title="更换上级">更换上级</el-button> <el-button @click="showParentMenu" icon="el-icon-top" title="更换上级">更换上级</el-button>
<el-button @click="handleExport" icon="el-icon-download">导出</el-button> <el-button @click="handleExport" icon="el-icon-download">导出</el-button>
<el-button @click="loadTasksToXmMenuState" icon="el-icon-s-marketing">汇总进度</el-button> <el-button @click="loadTasksToXmMenuState" icon="el-icon-s-marketing">汇总进度</el-button>
<el-button type="danger" @click="batchDel" icon="el-icon-delete" title="删除">删除</el-button> <el-button type="danger" @click="batchDel" icon="el-icon-delete" title="删除">删除</el-button>
<el-button type="primary" style="float:right;" @click="searchXmMenus" icon="el-icon-search">查询</el-button>
</template>
</el-row>
<el-row>
<font class="more-label-font">显示方式:</font
>
<span class="more-label-font">
<el-descriptions-item>
<template slot="label">
<i class="el-icon-s-grid"></i>
显示方式
</template>
<el-radio v-model="displayType" label="agileUser">故事看板</el-radio> <el-radio v-model="displayType" label="agileUser">故事看板</el-radio>
<el-radio v-model="displayType" label="table">列表</el-radio> <el-radio v-model="displayType" label="table">列表</el-radio>
</span>
</el-row>
<el-divider></el-divider>
<el-row>
<el-col :span="14">
<el-row>
<font class="more-label-font">
责任人:
</font>
<mdp-select-user-xm label="选择责任人" v-model="filters.mmUser" :clearable="true"></mdp-select-user-xm>
</el-row>
<el-row>
<font class="more-label-font">
归属模块:
</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
责任人
</template>
<mdp-select-user-xm style="max-width:180px;" label="选择责任人" v-model="filters.mmUser" :clearable="true"></mdp-select-user-xm>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-key"></i>
需求编号
</template>
<el-input v-model="filters.menuId" placeholder="需求编号查询" clearable></el-input>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-document"></i>
归属模块
</template>
<span v-if="filters.func">{{ filters.func.name }}&nbsp;</span><el-button type="text" v-if="filters.func" @click="filters.func=null" icon="el-icon-close"></el-button><el-button @click="funcVisible=true" type="text">选择模块</el-button> <span v-if="filters.func">{{ filters.func.name }}&nbsp;</span><el-button type="text" v-if="filters.func" @click="filters.func=null" icon="el-icon-close"></el-button><el-button @click="funcVisible=true" type="text">选择模块</el-button>
</el-row>
<el-row v-if="!xmIteration || !xmIteration.id">
<font class="more-label-font">
归属迭代:
</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-connection"></i>
归属迭代
</template>
<xm-iteration-select v-if="!xmIteration || !xmIteration.id" style="display:inline;" :auto-select="false" :product-id="filters.product?filters.product.id:null" :link-project-id="selProject?selProject.id:null" placeholder="迭代" @row-click="onIterationSelected" @clear="onIterationClearSelect"> <xm-iteration-select v-if="!xmIteration || !xmIteration.id" style="display:inline;" :auto-select="false" :product-id="filters.product?filters.product.id:null" :link-project-id="selProject?selProject.id:null" placeholder="迭代" @row-click="onIterationSelected" @clear="onIterationClearSelect">
</xm-iteration-select> </xm-iteration-select>
</el-row>
<el-row>
<font class="more-label-font">标签条件:</font>
<el-button v-if="!filters.tags||filters.tags.length==0" @click.native="$refs.tagDialog.open()" icon="el-icon-search">标签</el-button>
<el-tag v-else @click="$refs.tagDialog.open()" closable @close="clearFiltersTag(filters.tags[0])">{{filters.tags[0].tagName.substr(0,5)}}({{filters.tags.length}})</el-tag>
</el-row>
<el-row>
<font class="more-label-font">
是否加入迭代:
</font>
<el-select v-model="filters.iterationFilterType" placeholder="加入过迭代?" clearable style="width: 200px;" >
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-connection"></i>
迭代情况
</template>
<el-select v-model="filters.iterationFilterType" placeholder="加入过迭代?" clearable >
<el-option value="not-join-any-iteration" label="未加入过迭代"></el-option> <el-option value="not-join-any-iteration" label="未加入过迭代"></el-option>
<el-option value="join-any-iteration" label="已加入过迭代"></el-option> <el-option value="join-any-iteration" label="已加入过迭代"></el-option>
<el-option value="not-join-curr-iteration" :label="'未加入迭代【'+filters.iteration.iterationName+'】'" v-if="filters.iteration && filters.iteration.id"></el-option> <el-option value="not-join-curr-iteration" :label="'未加入迭代【'+filters.iteration.iterationName+'】'" v-if="filters.iteration && filters.iteration.id"></el-option>
<el-option value="join-curr-iteration" :label="'已加入本迭代【'+filters.iteration.iterationName+'】'" v-if="filters.iteration && filters.iteration.id"></el-option> <el-option value="join-curr-iteration" :label="'已加入本迭代【'+filters.iteration.iterationName+'】'" v-if="filters.iteration && filters.iteration.id"></el-option>
</el-select> </el-select>
</el-row>
<el-row>
<font class="more-label-font">
是否分配任务:
</font>
<el-select v-model="filters.taskFilterType" placeholder="已分配任务的需求?" clearable style="width: 200px;">
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-time"></i>
任务情况
</template>
<el-select v-model="filters.taskFilterType" placeholder="已分配任务的需求?" clearable >
<el-option value="not-join-any-project" label="未分配过任务的需求"></el-option> <el-option value="not-join-any-project" label="未分配过任务的需求"></el-option>
<el-option value="join-any-project" label="已分配过任务的需求"></el-option> <el-option value="join-any-project" label="已分配过任务的需求"></el-option>
<el-option value="not-join-curr-project" :label="'未分配任务到项目【'+selProject.name+'】'" v-if="selProject && selProject.id"></el-option> <el-option value="not-join-curr-project" :label="'未分配任务到项目【'+selProject.name+'】'" v-if="selProject && selProject.id"></el-option>
<el-option value="join-curr-project" :label="'已分配任务到项目【'+selProject.name+'】'" v-if="selProject && selProject.id"></el-option> <el-option value="join-curr-project" :label="'已分配任务到项目【'+selProject.name+'】'" v-if="selProject && selProject.id"></el-option>
</el-select> </el-select>
</el-row>
</el-col>
<el-col :span="10">
<el-row>
<font class="more-label-font">
需求类型:
</font>
<el-select style="width:100px;" v-model="filters.dtype" clearable placeholder="需求类型">
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-document"></i>
需求类型
</template>
<el-select v-model="filters.dtype" clearable placeholder="需求类型">
<el-option v-for="i in this.dicts.demandType" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.demandType" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-row>
<el-row>
<font class="more-label-font">
需求来源:
</font>
<el-select style="width:100px;" v-model="filters.source" placeholder="需求来源" clearable >
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-document"></i>
需求来源
</template>
<el-select v-model="filters.source" placeholder="需求来源" clearable >
<el-option v-for="i in this.dicts.demandSource" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.demandSource" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-row>
<el-row>
<font class="more-label-font">
需求层次:
</font>
<el-select style="width:100px;" v-model="filters.dlvl" placeholder="需求层次" clearable >
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-document"></i>
需求层次
</template>
<el-select v-model="filters.dlvl" placeholder="需求层次" clearable >
<el-option v-for="i in this.dicts.demandLvl" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.demandLvl" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-row>
<!--
<el-row>
<font class="more-label-font">
优先级:
</font>
<el-select v-model="filters.priority" placeholder="优先级" clearable style="width: 200px;">
<el-option v-for="i in dicts.priority" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</el-row>
-->
<!--
<el-row>
<font class="more-label-font">
需求状态:
</font>
<el-select v-model="filters.status" placeholder="需求状态" clearable style="width: 200px;">
<el-option :value="item.id" :label="item.name" v-for="(item,index) in dicts.menuStatus" :key="index"></el-option>
</el-select>
</el-row>
-->
<el-row>
<font class="more-label-font">
需求编号:
</font>
<el-input v-model="filters.menuId" style="width: 100px;" placeholder="需求编号查询" clearable></el-input>
</el-row>
<el-row>
<font class="more-label-font">开始时间:</font>
</el-descriptions-item>
<el-descriptions-item :span="2">
<template slot="label">
<i class="el-icon-watch"></i>
开始时间
</template>
<mdp-date-range <mdp-date-range
v-model="filters" v-model="filters"
type="daterange" type="daterange"
@ -162,9 +144,13 @@
:auto-default="false" :auto-default="false"
key="planStartTime" key="planStartTime"
></mdp-date-range> ></mdp-date-range>
</el-row>
<el-row>
<font class="more-label-font">结束时间:</font>
</el-descriptions-item>
<el-descriptions-item :span="2">
<template slot="label">
<i class="el-icon-watch-1"></i>
结束时间
</template>
<mdp-date-range <mdp-date-range
v-model="filters" v-model="filters"
type="daterange" type="daterange"
@ -179,14 +165,9 @@
:auto-default="false" :auto-default="false"
key="planEndTime" key="planEndTime"
></mdp-date-range> ></mdp-date-range>
</el-row>
</el-col>
</el-row>
</el-descriptions-item>
</el-descriptions>
<el-row>
<el-button type="primary" style="float:right;" @click="searchXmMenus" icon="el-icon-search">查询</el-button>
</el-row>
<el-button slot="reference" icon="el-icon-more" @click="moreVisible=!moreVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="moreVisible=!moreVisible"></el-button>
</el-popover> </el-popover>
<span style="float:right;"> <span style="float:right;">

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

@ -24,50 +24,62 @@
width="800" width="800"
v-model="moreVisible" v-model="moreVisible"
trigger="manual" > trigger="manual" >
<el-descriptions class="margin-top" :column="2" border>
<template slot="extra">
<el-button @click="moreVisible=false" type="text" style="float:right;margin-top:-40px;" icon="el-icon-close">关闭</el-button> <el-button @click="moreVisible=false" type="text" style="float:right;margin-top:-40px;" icon="el-icon-close">关闭</el-button>
<el-divider></el-divider>
<el-row>
<el-button @click="handleExport" icon="el-icon-download">导出</el-button> <el-button @click="handleExport" icon="el-icon-download">导出</el-button>
</el-row>
<el-divider></el-divider>
<el-row>
<el-col :span="12">
<font class="more-label-font">创建者:</font>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="searchXmQuestions">查询</el-button> </template>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
创建者
</template>
<mdp-select-user-xm label="选择创建者" v-model="filters.createUser" :clearable="true"></mdp-select-user-xm> <mdp-select-user-xm label="选择创建者" v-model="filters.createUser" :clearable="true"></mdp-select-user-xm>
</el-col>
<el-col :span="12">
<font class="more-label-font">指派给:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-user"></i>
指派给
</template>
<mdp-select-user-xm label="选择负责人" v-model="filters.handlerUser" :clearable="true"></mdp-select-user-xm> <mdp-select-user-xm label="选择负责人" v-model="filters.handlerUser" :clearable="true"></mdp-select-user-xm>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<font class="more-label-font">需求:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-document"></i>
需求
</template>
<font v-if=" filters.menus && filters.menus.length>0"> <font v-if=" filters.menus && filters.menus.length>0">
<el-tag v-for="(item,index) in filters.menus" :key="index" closable @close="clearFiltersMenu(item)">{{item.menuName.substr(0,10)}}</el-tag> <el-tag v-for="(item,index) in filters.menus" :key="index" closable @close="clearFiltersMenu(item)">{{item.menuName.substr(0,10)}}</el-tag>
</font> </font>
<el-button v-else @click="showMenu" type="plian" icon="el-icon-search">选需求</el-button> <el-button v-else @click="showMenu" type="plian" icon="el-icon-search">选需求</el-button>
</el-col>
<el-col :span="12">
<font class="more-label-font">缺陷编号:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-question"></i>
缺陷编号
</template>
<el-input v-model="filters.id" style="width:200px;" clearable></el-input> <el-input v-model="filters.id" style="width:200px;" clearable></el-input>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<font class="more-label-font">优先级:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-top"></i>
优先级
</template>
<mdp-select-dict v-model="filters.priority" placeholder="请选择优先级" clearable style="width:200px;" :dict="dicts['priority']"/> <mdp-select-dict v-model="filters.priority" placeholder="请选择优先级" clearable style="width:200px;" :dict="dicts['priority']"/>
</el-col>
<el-col :span="12">
<font class="more-label-font">解决方案:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-document-checked"></i>
解决方案
</template>
<mdp-select-dict v-model="filters.solution" placeholder="请选择解决方案" clearable style="width:200px;" :dict="dicts['bugSolution']"/> <mdp-select-dict v-model="filters.solution" placeholder="请选择解决方案" clearable style="width:200px;" :dict="dicts['bugSolution']"/>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<font class="more-label-font">创建时间:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-watch"></i>
创建时间
</template>
<el-date-picker <el-date-picker
v-model="dateRanger" v-model="dateRanger"
type="daterange" type="daterange"
@ -80,9 +92,12 @@
: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-col>
<el-col :span="12">
<font class="more-label-font">更新时间:</font>
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
<i class="el-icon-watch-1"></i>
更新时间
</template>
<el-date-picker <el-date-picker
v-model="ltimeRanger" v-model="ltimeRanger"
type="daterange" type="daterange"
@ -95,11 +110,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-col>
</el-row>
<el-row>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="searchXmQuestions">查询</el-button>
</el-row>
</el-descriptions-item>
</el-descriptions>
<el-button slot="reference" icon="el-icon-more" @click="moreVisible=!moreVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="moreVisible=!moreVisible"></el-button>
</el-popover> </el-popover>
<span style="float:right;"> <span style="float:right;">

Loading…
Cancel
Save