TEAM-LEADER-OPERATIONS-AND-FIELDS.md 11 KB

组长端功能操作路径(操作步骤)

1. 组长工作台(Dashboard) → 项目详情

  • 入口路径
    • 网页端:/team-leader/dashboard
    • 企微端:/wxwork/:cid/team-leader/dashboard
  • 操作步骤
    • 在项目列表/卡片中,通过搜索与筛选(类型、紧急程度、阶段等)定位项目。
    • 点击项目卡片上的“查看/进入项目”,跳转到企微项目详情对应阶段:
    • 路径:/wxwork/:cid/project/:projectId/:stagePath?roleName=team-leader
    • 阶段映射(示例逻辑见 Dashboard 代码):
      • 订单分配order
      • 确认需求requirements
      • 交付执行delivery
      • 售后归档aftercare

2. 项目详情四阶段页面(组长视角)

  • 入口路径
    • /wxwork/:cid/project/:projectId/:stageId?roleName=team-leader
  • 顶部阶段切换
    • 点击顶部的四个阶段标签「订单分配 / 确认需求 / 交付执行 / 售后归档」:
    • 前端通过 goToStage(stageId)switchStage(stageId) 切换子路由。
    • URL 在 order / requirements / delivery / aftercare 之间切换。
  • 订单分配阶段的组长审批
    • 展示条件
    • 当前用户角色为组长(roleName组长 / 设计组长 / team-leader)。
    • 项目当前阶段为 订单分配(或等价英文 order)。
    • 项目 data.approvalStatus === 'pending'
    • 操作路径
    • 打开订单分配子页(order)。
    • 组长视角下会显示审批操作区:
      • 点击「审批通过」:
      • 更新 data.approvalStatus = 'approved',写入审批记录 approvalHistory
      • currentStage 更新为 确认需求
      • 保存项目后,派发 stage:completed 事件,父组件自动推进阶段并导航到下一个阶段。
      • 点击「驳回」:
      • 弹出输入框填写驳回原因;
      • 更新 data.approvalStatus = 'rejected'data.lastRejectionReason,并写入 approvalHistory
      • currentStage 保持(或回退为)订单分配,等待客服重新调整并再次提交。

3. 团队管理(Team Management) → 项目详情

  • 入口路径
    • /team-leader/team-management
    • 或:/wxwork/:cid/team-leader/team-management
  • 操作步骤
    • 在设计师列表中浏览各设计师:
    • 查看:工作量(轻/中/重)、能力评分、满意度、完成项目数等。
    • 在某设计师的任务列表中:
    • 点击任务对应的项目名称 → 调用 viewProjectDetails(projectId)
      • 路径:/wxwork/:cid/project/:projectId
      • 进入该项目的企微项目详情页(再通过顶部阶段导航进行阶段切换或审批)。

4. 质量管理(Quality Management) → 整改任务与能力提升

  • 入口路径
    • /team-leader/quality-management
  • 质量整改任务处理
    • 在列表中查看每条整改任务:
    • 字段包括:项目名、设计师、问题描述、优先级(高/中/低)、状态(待处理/处理中/待审核/已完成)、建议完成时间、SOP 合规得分、组长评语、关联 SOP 等。
    • 点击「批准」:
    • 将任务状态置为 completed
    • 调用同步方法(如 syncToProjectReview)把结果同步到项目评审/质量记录中;
    • 弹出提示(如“已批准任务:XXX”)。
    • 点击「拒绝」:
    • 输入拒绝原因;
    • 将任务状态恢复为 pending
    • 保存 managerComment 为拒绝原因,供后续追踪。
  • 教学与考核
    • 视频教程列表:
    • 可按关键词和阶段筛选(建模/渲染/后期),点击某条教程进行播放(当前实现为模拟弹窗/日志,实际项目可跳播放器页面)。
    • 实践作业列表:
    • submitted 状态作业进行评审:
      • 输入 0–100 分数;
      • 更新作业 scorestatus='reviewed'
      • 将得分同步至团队能力看板(与 team-management 绩效数据联动)。

5. 知识库与能力复制(Knowledge Base)

  • 入口路径
    • /team-leader/knowledge-base
  • SOP 规范管理
    • 查看各阶段 SOP 内容(建模/渲染/后期等):
    • 每条 SOP 包含:阶段说明、详细要求列表、时间轴(Day1/Day2 任务)、质量指标(例如“模型精度 ≥95%”)。
    • 组长可以:
    • 新建 SOP(添加新的规范条目);
    • 编辑现有 SOP;
    • 导出单阶段或整套 SOP(当前实现为模拟日志,实际可对接 PDF 导出)。
  • 视频教程库
    • 使用搜索框与阶段筛选组合过滤教程列表;
    • 分页浏览教程(按上传时间与播放量等排序),点击教程进行播放。
  • 能力考核任务
    • 创建考核任务(标题、描述、阶段、难度、预期耗时等);
    • 将考核任务分配给指定设计师(设置 assigneeIddeadline);
    • 查看考核提交与评分结果,将表现反馈到绩效与晋升决策中。

6. 负载日历(Workload Calendar) → 排期与项目跳转

  • 入口路径
    • /team-leader/workload-calendar
  • 视图与筛选
    • 支持三种视图:日视图 / 周视图 / 月视图;
    • 支持按设计师(单人或全部)、阶段(待分配/需求方案/执行/收尾验收/归档)、快捷时间范围(全部/今天/3 天内/7 天内)筛选任务;
    • 日历格子上展示当天任务数、逾期标记等。
  • 操作路径
    • 点击某天或某设计师,查看该视图下的任务列表;
    • 在任务列表中点击项目,调用 navigateToProject
    • 路径:/wxwork/:cid/project/:projectId
    • 从日历排期直接进入对应的项目详情页面,继续进行阶段操作或审批。

组长端项目已有数据及字段(数据视角)

1. 通用 Project 模型(跨模块使用)

源文件:src/app/models/project.model.ts

  • 核心字段

    • id: string:项目 ID。
    • name: string:项目名称。
    • customerName: string:客户姓名。
    • customerPhone?: string:客户电话。
    • customerWechat?: string:客户微信。
    • customerType?: string:客户类型(如新客户/老客户)。
    • customerSource?: string:客户来源(如朋友圈/信息流等)。
    • customerRemark?: string:客户备注。
    • customerInfo?: CustomerInfo:客户详细偏好信息:
    • colorPreference?: string:色彩偏好。
    • spaceRequirements?: string:空间需求。
    • materialPreference?: string:材质偏好。
    • customerTags: CustomerTag[]:客户标签数组:
    • source: '朋友圈' | '信息流'
    • needType: '硬装' | '软装'
    • preference: '现代' | '宋式' | '欧式'
    • colorAtmosphere: string
    • highPriorityNeeds: string[]:高优先级需求列表。
    • requirements?: RequirementItem[]:项目需求明细:
    • id: string
    • description: string
    • status: string
    • priority: 'high' | 'medium' | 'low'
    • status: ProjectStatus:项目状态:
    • '进行中' | '已完成' | '已暂停' | '已延期' | '待分配'
    • currentStage: ProjectStage:当前阶段(见阶段枚举)。
    • stage: ProjectStage:与 currentStage 保持一致,用于兼容。
    • createdAt: Date:项目创建时间。
    • deadline: Date:截至日期。
    • assigneeId: string:当前负责人 ID(设计师 Profile)。
    • assigneeName: string:当前负责人姓名。
    • skillsRequired: string[]:期望的设计师技能标签(用于智能匹配)。
    • finalPaymentAmount?: number:尾款金额。
    • customerReviewCompleted?: boolean:客户评价是否完成。
    • customerReviewCompletedAt?: Date:客户评价完成时间。
  • 阶段枚举 ProjectStage

    • 四大核心阶段(规范化字段):
    • 订单分配
    • 确认需求
    • 交付执行
    • 售后归档
    • 细分阶段(兼容旧数据):
    • 需求沟通
    • 方案确认
    • 建模
    • 软装
    • 渲染
    • 后期
    • 尾款结算
    • 客户评价
    • 投诉处理

2. Task 任务模型(负载日历 & 排期)

  • 源文件同上 project.model.tsTask 接口
  • 核心字段
    • id: string:任务 ID。
    • projectId: string:所属项目 ID。
    • projectName: string:所属项目名称。
    • title: string:任务标题。
    • description: any:任务描述。
    • assignee: any:负责人(设计师)。
    • stage: ProjectStage:任务所在项目阶段(与上文阶段枚举一致)。
    • deadline: Date:任务截止时间。
    • priority: any:任务优先级(通常为 high / medium / low)。
    • isOverdue: boolean:是否逾期。
    • isCompleted: boolean:是否已完成。
    • completedDate?: Date:完成时间。

这些字段主要被 WorkloadCalendarComponent 与组长工作台用来计算:某设计师在特定时间窗内的任务数量、逾期数量以及整体负载状态(空闲/正常/繁忙/异常),并支撑跳转到项目详情进行下一步操作。

3. 组长 Dashboard 本地 Project 视图模型

源文件:src/app/pages/team-leader/dashboard/dashboard.ts 中的 interface Project(注意:这是前端视图模型,基于后台 Project 聚合转换而来)。

  • 核心字段
    • id: string:项目 ID。
    • name: string:项目名称。
    • type: 'soft' | 'hard':项目类型(软装/硬装)。
    • memberType: 'vip' | 'normal':客户等级(VIP/普通)。
    • designerName: string:当前负责设计师。
    • status: string:状态(例如进行中/已完成等,通常由阶段和财务状态推导)。
    • expectedEndDate: Date:预期结束时间(兼容旧字段)。
    • deadline: Date:真实截止时间(新字段)。
    • createdAt?: Date:实际开始时间。
    • isOverdue: boolean:是否逾期。
    • overdueDays: number:逾期天数。
    • dueSoon: boolean:是否临期(例如 3 天内到期)。
    • urgency: 'high' | 'medium' | 'low':紧急程度标记。
    • phases: ProjectPhase[]:项目阶段进度条数据:
    • name: string:阶段名称(如待确认、需求沟通、建模…)。
    • percentage: number:阶段占比。
    • startPercentage: number:阶段开始位置。
    • isCompleted: boolean:是否完成。
    • isCurrent: boolean:是否当前进行中阶段。
    • currentStage: string:当前阶段(规范化后的中文阶段名,用于映射 URL)。
    • qualityRating?: 'excellent' | 'qualified' | 'unqualified' | 'pending':质量评级。
    • lastCustomerFeedback?: string:最近客户反馈内容。
    • searchIndex?: string:本地构建的搜索索引(项目名+设计师名小写拼接)。

以上字段主要用于组长工作台页面做排序、筛选、搜索以及在项目卡片上展示「阶段进度条」「临期/逾期标识」「质量评级」等信息,并决定点击项目时跳转到哪个阶段的详情页。


如需后续扩展,我可以基于本文件继续添加:

  • 按「页面维度」的字段表(例如:工作台/团队管理/质量管理分别用到哪些字段);
  • 或者导出为对外说明文档(仅保留业务含义,不暴露内部实现细节)。