项目集合视图优化

This commit is contained in:
陈裕财
2025-04-03 17:50:44 +08:00
parent 254401b0bf
commit 05b842e9c7
7 changed files with 149 additions and 73 deletions

View File

@@ -109,6 +109,7 @@ import { MdpTableMixin } from '@/components/mdp-ui/mixin/MdpTableMixin.js'
...mapState(useXmStore,['xmProduct']),
...mapState(useXmStore,['projectInfo']),
...mapState(useXmStore,['xmCollect']),
},
data() {
return {

View File

@@ -0,0 +1,41 @@
<template>
<mdp-select-att v-if="xmCollect?.id" crely-type="xm-collect" :crely-id="xmCollect.id" subOpType="mng"/>
</template>
<script>
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user';
import { useXmStore } from '@/store/modules/xm';
export default {
computed: {
...mapState(useUserStore,[
'userInfo','roles'
]),
...mapState(useXmStore,['xmCollect']),
},
watch:{
},
data() {
return {
}
},//end data
methods: {
},//end methods
components: {
//在下面添加其它组件
},
activated(){
},
mounted() {
}
}
</script>
<style scoped />

View File

@@ -45,7 +45,7 @@
</el-menu-item>
<el-sub-menu index="zhishi">
<template #title><icon icon="fa:book"/>知识</template>
<el-menu-item :index="'/xm/iteration/view/file?iterationId='+xmIteration.id">
<el-menu-item :index="'/xm/product/view/file?productId='+xmIteration.productId">
<template #title><icon icon="ep:document"/>文档</template>
</el-menu-item>
<el-menu-item :index="'/xm/iteration/view/record?iterationId='+xmIteration.id">

View File

@@ -0,0 +1,15 @@
<template>
<xm-task-box v-if="xmCollect?.id" :xm-collect="xmCollect" :params="{milestone:'1'}" queryScope="planTask"/>
</template>
<script>
import { mapState } from 'pinia'
import { useXmStore } from '@/store/modules/xm'
export default {
computed: {
...mapState(useXmStore,[ 'xmCollect']),
},
}
</script>

View File

@@ -1228,21 +1228,14 @@ export default {
}else if(this.queryScope=='task'){
params.ntype='0'
}
if ( this.queryScope == 'plan' ) {
if( !this.parentTask?.id && !params.projectId && !params.collectId){
this.$notify.warning("请先选中项目")
return false;
}
}else {
if( params.childQryType!='grandson' && !params.parentTaskid && !params.projectId && !params.menuId && !params.productId && !params.iterationId){
this.$notify.warning("请先选中项目")
return false;
}
}
if(this.deriveId){
params.id=this.deriveId
}
if(!params.parentTaskid && !params.projectId && !params.menuId && !params.productId && !params.iterationId&& !params.collectId && !params.id){
this.$notify.warning("请先选中项目")
return false;
}
return true;
},
openStorySelect(){

View File

@@ -0,0 +1,20 @@
<template>
<div class="padding">
<collect-form v-if="xmCollect?.id" :formData="xmCollect" subOpType="mng"/>
</div>
</template>
<script>
import { mapState } from 'pinia'
import { useXmStore } from '@/store/modules/xm'
import Form from './Form.vue'
export default {
computed:{
...mapState(useXmStore,["xmCollect"]),
},
components:{
collectForm: Form
}
}
</script>

View File

@@ -21,98 +21,104 @@
</div>
</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/link?collectId='+xmCollect.id">
<template #title><i class="odometer"></i>项目</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/plan?collectId='+xmCollect.id">
<template #title><i class="time"></i>计划</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/task?collectId='+xmCollect.id">
<template #title><i class="time"></i>任务</template>
</el-menu-item>
<!--
<el-menu-item :index="'/xm/pro/collect/view/task?collectId='+xmCollect.id" class="hidden-md-and-down">
<template #title><i class="s-operation"></i>任务</template>
</el-menu-item>
-->
<el-menu-item :index="'/xm/pro/collect/view/iteration?collectId='+xmCollect.id">
<template #title><i class="connection"></i>迭代</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/test/plan?collectId='+xmCollect.id">
<template #title><i class="question"></i>测试</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/projects?collectId='+xmCollect.id">
<template #title><icon icon="ep:odometer"/>项目</template>
</el-menu-item>
<el-sub-menu index="jihua">
<template #title><icon icon="fa:paper-plane"/>计划</template>
<el-menu-item :index="'/xm/pro/collect/view/plan?collectId='+xmCollect.id">
<template #title><icon icon="ep:stopwatch"/>总体计划</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/iteration?collectId='+xmCollect.id">
<template #title><icon icon="ep:connection"/>迭代计划</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/test/plan?collectId='+xmCollect.id">
<template #title><icon icon="ep:search"/>测试计划</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/task?collectId='+xmCollect.id">
<template #title><icon icon="ep:operation"/>任务列表</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/milestone?collectId='+xmCollect.id">
<template #title><icon icon="ep:star-filled"/>里程碑</template>
</el-menu-item>
</el-sub-menu>
<el-menu-item :index="'/xm/pro/collect/view/question?collectId='+xmCollect.id">
<template #title><i class="question"></i>缺陷</template>
<template #title><icon icon="fa:bug"/>缺陷</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/group?collectId='+xmCollect.id">
<template #title><i class="user-solid"></i>团队</template>
</el-menu-item>
<el-sub-menu index="caiwu" class="hidden-sm-and-down">
<template #title><i class="coin"></i>财务</template>
<template #title><icon icon="fa:sitemap"/>团队</template>
</el-menu-item>
<el-sub-menu index="caiwu">
<template #title><icon icon="fa-solid:coins"/>财务</template>
<el-menu-item :index="'/xm/pro/collect/view/contract?collectId='+xmCollect.id">
<template #title><i class="s-data"></i>合同管理</template>
<template #title><icon icon="fa-solid:balance-scale"/>合同管理</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/budget?collectId='+xmCollect.id">
<template #title><i class="coin"></i>预算</template>
<template #title><icon icon="ep:coin"/>预算</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/cost?collectId='+xmCollect.id">
<template #title><i class="coin"></i>费用</template>
<template #title><icon icon="fa-solid:shopping-cart"/>费用</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/workloadDay?collectId='+xmCollect.id">
<template #title
><i class="video-camera"></i>每日工时</template
><icon icon="fa-solid:user-clock"/>每日工时</template
>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/workloadMonth?collectId='+xmCollect.id">
<template #title
><i class="video-camera"></i>每月工时</template
><icon icon="fa-solid:user-cog"/>每月工时</template
>
</el-menu-item>
</el-sub-menu>
</el-sub-menu>
<el-menu-item :index="'/xm/pro/collect/view/rpt?collectId='+xmCollect.id">
<template #title><i class="s-data"></i>效能</template>
<template #title><icon icon="fa:bar-chart"/>效能</template>
</el-menu-item>
<el-sub-menu index="zhishi" class="hidden-md-and-down">
<template #title>知识</template>
<!-- <el-menu-item :index="'/xm/pro/collect/view/file?collectId='+xmCollect.id">
<template #title><i class="document"></i>文档</template>
<el-sub-menu index="zhishi">
<template #title><icon icon="fa:book"/>知识</template>
<el-menu-item :index="'/xm/pro/collect/view/file?collectId='+xmCollect.id">
<template #title><icon icon="ep:document"/>文档</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/env?collectId='+xmCollect.id">
<template #title><i class="setting"></i>环境清单</template>
</el-menu-item> -->
<el-menu-item :index="'/xm/pro/collect/view/record?collectId='+xmCollect.id">
<template #title><i class="edit-outline"></i>日志</template>
<template #title><icon icon="ep:edit"/>日志</template>
</el-menu-item>
</el-sub-menu>
<el-sub-menu index="更多">
<template #title>更多 </template>
<el-menu-item index="/forum">
<template #title><i class="date"></i>论坛</template>
</el-sub-menu>
<el-sub-menu index="shezhi">
<template #title><icon icon="ep:setting"/>设置</template>
<el-menu-item :index="'/xm/pro/collect/view/detail?collectId='+xmCollect.id">
<template #title><icon icon="ep:document"/>集合详情</template>
</el-menu-item>
<el-menu-item index="/im">
<template #title><i class="date"></i>即聊</template>
<!-- <el-menu-item :index="'/xm/pro/collect/view/setting?collectId='+xmCollect.id">
<template #title><icon icon="ep:setting"/>产品配置</template>
</el-menu-item> -->
<!-- <el-menu-item label="模块" :index="'/xm/pro/collect/view/func?collectId='+xmCollect.id">
<template #title><icon icon="ep:menu"/>产品模块</template>
</el-menu-item> -->
<el-menu-item :index="'/xm/pro/collect/view/link?collectId='+xmCollect.id">
<template #title><icon icon="ep:odometer"/>关联项目</template>
</el-menu-item>
<el-menu-item :index="'/xm/pro/collect/view/env?collectId='+xmCollect.id">
<template #title><icon icon="ep:setting"/>环境清单</template>
</el-menu-item>
<el-menu-item index="/helpCenter">
<template #title><i class="date"></i>客服</template>
</el-menu-item>
<el-menu-item index="/xm/pro/collect/mng" >
<template #title
><i class="back"></i>回到项目集首页</template
>
</el-menu-item>
</el-sub-menu>
</el-sub-menu>
<el-menu-item :index="'/'">
<template #title><i class="s-home"></i>首页</template>
<template #title><icon icon="fa:home"/></template>
</el-menu-item>
<el-menu-item>
<Screenfull class="custom-hover" color="var(--top-header-text-color)"/>
</el-menu-item>
</el-menu>
</template>
<script>
import { Screenfull } from '@/layout/components/Screenfull'
import { mapState } from 'pinia'
import { useUserStore } from '@/store/modules/user'
import { useXmStore } from '@/store/modules/xm'
@@ -144,7 +150,7 @@ export default {
}, //end methods
components: {
Screenfull
//在下面添加其它组件
},
mounted() {