Files
cn-rdms-web/src/views/project/project/execution/composables/use-task-view-context.ts
hongawen b2da882b31 feat(execution): 实现执行模块视角切换和快捷过滤功能
- 添加执行视角切换功能(my/all),支持不同身份维度查看
- 实现逾期/本周到期快捷过滤功能,提升执行管理效率
- 重构执行区域UI布局,优化用户体验和界面结构
- 集成Element Plus表单验证,在用户选择器组件中使用
- 优化执行状态筛选和计数逻辑,提升数据展示准确性
- 实现执行视角切换时的数据同步刷新机制
- 添加执行完成操作的二次确认对话框
- 重构权限码检查逻辑,统一使用query权限码进行控制
- 移除auth store依赖,精简代码结构
- 优化执行状态看板和任务计数的加载机制
- 实现执行创建和编辑流程的状态同步更新
- 统一任务工作区的执行范围传递方式,提高性能
- 添加执行详情面板的操作按钮权限控制
- 优化执行删除后的数据刷新逻辑,确保视图一致性
2026-05-29 16:40:25 +08:00

35 lines
723 B
TypeScript

import { reactive } from 'vue';
/**
* 任务 tab 的身份维度视角。
*
* 范围维度(全部 / 某状态 / 某具体执行)由父组件的 selectedStatus + selectedExecution 单独维护,
* 与本身份维度自由组合。
*
* - my: 我参与的(owner 或活跃协办)
* - all: 所有任务(需 project:task:query 权限)
*/
export type ViewContextType = 'my' | 'all';
export interface ViewContext {
type: ViewContextType;
}
export function useTaskViewContext() {
const state = reactive<ViewContext>({ type: 'my' });
function switchToMine() {
state.type = 'my';
}
function switchToAll() {
state.type = 'all';
}
return {
context: state,
switchToMine,
switchToAll
};
}