# 任务:企业微信嵌入显示管理模块开发 请您参考./rules/所有及子级.md的开发规范和范式要求。 分析目前实现的静态页面./src/app/pages/designer/project-detail/ 所有内容。 构思设计企业微信端项目管理所需的功能 ## 企微端项目管理页面 - 项目预加载页面:会话数据及员工数据 - 根据wxwork相关组件及示例,在当前页面加载会话窗口上下文、当前企业员工数据 - 窗口上下文决定入口,还有对应的ContactInfo.id和GroupChat.id - 企业员工数据,认定了当前用户的身份,对应不同功能和提示 - 预加载的信息中,如果查询不到当前项目,可以展示群聊相关的其他项目(能可能为空) - 可以用骨架屏,引导用户对当前群组创建项目 - 默认项目名称是群聊名字,并提供修改 - 创建项目后,加载组件:项目详情(组件@input传入群组GroupChat、项目Project、员工Profile) - 两个入口:群聊进管项目,客户进查画像 - 企业微信中客户联系工具条,可以从群聊和客户两处打开 - 群聊打开,获取的是GroupChat - 根据参数,加载群聊当前项目,展示组件:项目详情 - 联系人打开,获取的是ContactInfo - 根据参数,展示组件:客户画像 - 显示该客户基础信息、所在群聊及项目、跟进记录 - 点击群聊,通过WxworkSDK 跳转进入群聊 ## 架构设计和规则 - 通过预加载页面获取群组GroupChat、项目Project、员工Profile数据后,再通过组件加载对应功能页面 - 主要为了方便调试,调试时候,可以通过路由携带:groupid :projectid :profileid - 让对应功能组件从route参数加载对应的数据,而不需要只依赖于@Input传入 - 此处需要判断若@Input上面的对应FmodeObject空,则根据路由传入参数加载 - 企微会话进入的页面,都是手机竖屏的布局,要考虑到内容设计主次分明,且项目各阶段方便切换 - 企业微信开发相关部分,请您充分参考:./rules/wxwork/*.md - 合理设计企微上下文及当前用户获取参数,尽量优化加载速度的同时,确保新员工新会话都能正常同步创建对应的Profile ContactInfo GroupChat数据到数据库,方便项目管理功能调用。 - 数据请参考./rules/schemas.md,使用FmodeParse FmodeObject FmodeQuery实现増删查改 - 项目详情页,还有四大阶段和状态的区分,因此需要合理使用二级路由,和二级子组件来合理规划拆分项目结构,方便维护 ## 功能模块目录 ./src/modules/project 项目管理模块下 - 项目预加载页面 - 客户画像组件 - 项目详情组件 - 需要充分展示出项目各个阶段的核心功能 - 客户信息: - 只有客服能看手机、微信、邮箱 - 客户标签和项目相关的偏好画像、需求、方案是全员能看 - 订单分配:主要由客服操作 - 填写项目必备信息,创建对应的报价细项 - 确认需求:全员操作,主要由组长组员完成 - 重点功能是上传参考图、CAD图,并说明图的具体内容 - 其中参考图,提供色彩分析弹出组件 - CAD图,只有人工填写描述,方便全员查看 - 其他需求创建和碳写(根据聊天问答获取的其他需求卡片) - AI生成方案页 - AI分析的完整方案分析(可参考大模型调用示例项目 /home/ryan/workspace/nova/nova-admin/projects/ai-k12-daofa/src/modules/daofa/search/search.component.ts) - 根据参考图、参考图获取的色彩分析报告,在根据方案所需各个维度的参数 - 进行调用大模型,输出方案分析文档,辅助设计师理解 - 第一次需要生成,方案生成后要保存到需求分析中,方便其他人加载查看 - 也可以在参考图更多,填写了更多需求,可以重新分析 - 交付执行:主要是组员操作 - 完成各个场景对应交付物上传(根据报价项目清单中,不同的场景),每个场景都需要 - 白模:上传白模图片 - 软装:上传软装小图 - 渲染:展示渲染进度信息 - 后期:上传后期处理后图片 - 每个交付物都有一个自查项,打勾的交互,方便组员自查 - 组长可以在交付执行页面,给组员对应的交付,提出ProjectIssue,来自组长的Issue - 组员需要更明显得看到,以便于根据要求修改调整 - 发起交付 - 组员上传完所有交付物,可以发起交付 - 通知项目群聊的客户,已完成,并且发起收款请求 - 售后归档:主要是客服操作 - 处理尾款、客户评价、项目复盘等工作 - 完成后,可以点击归档,该群聊当前项目将设为空,该项目为已归档历史项目,显示在列表里 ## 任务计划 请您完成上面所有核心功能模块的设计和产品结构分析,写在./docs/prd/<端>-<功能>-<页面>。 请您逐个完成上述所有功能,包括页面、数据对接、大模型调用,并确保正常运行。 # FAQ:服务功能对接 > 请参考/home/ryan/workspace/nova/nova-admin/projects/ai-k12-daofa/src/modules/daofa/search/search.component.ts,文件服务使用NovaUploadService.参考[Pasted text #1 +481 lines]大模型LLM用法,还有通过completionJSON携带images实现的图片解析(彻底替代OCR),以及[Pasted text #2 +862 lines]中客户端JS SDK点击按钮后触发的群聊跳转还有消息发送,而不通过API > /cost ⎿ Total cost: $11.84 Total duration (API): 1h 1m 6s Total duration (wall): 7h 25m 49s Total code changes: 11993 lines added, 157 lines removed Usage by model: claude-3-5-haiku: 53.4k input, 2.5k output, 0 cache read, 0 cache write ($0.0528) claude-sonnet: 9.7k input, 146.9k output, 6.3m cache read, 2.0m cache write ($11.79) # FAQ:订单页面细化 1. 为了进一步将src/app/pages/designer/project-detail/project-detail.ts所有功能界面交互,迁移到./src/modules/project子页面内,请您先分析原有逻辑.再查看./rules/schemas.md,充分准备好交互逻辑,再开始开发 2.请您参考./docs/data/quotation.md重新设计和开发stage-order页面 特别是订单确认这部分要参考src/app/pages/designer/project-detail/project-detail.ts和src/app/pages/designer/project-detail/project-detail.html及相关页面组件的交互. 项目信息填写分类应该是家装\工装, 价格表应该是客户直接快速选场景,下面价格表就出来了,可以直接用,创建订单,只有要调整的再人工调整. 注意:分配设计师,要按照project-detail.ts中点开后选择项目组在选择组和组员的方式,注意项目组使用Departmnet表 - Department 项目组(部门) - name String 项目组名称 - type "project" 项目组 - leader Pointer 组长 - company Pointer 指向当前帐套. 3.并检查下aftercare requirements两个阶段Angular报错递归调用等细节问题 4.delivery中出现的场景来自于order阶段报价中的场景要数据动态加载,每个场景都需要建模\软装\渲染\后期阶段.您不用询问直接继续,直到完成所有. 注意使用div-scss而不是Ionic.请您合理规划整个计划任务,完成更完整更可用的项目管理模块./src/modules/project. # FAQ:修复入口路由规则 请您参考rules/schemas.md,将src/modules/project/pages/contact/contact.component.ts和src/modules /project/pages/project-detail/project-detail.component.ts增加可以通过路由参数加载必备信息进入 的方式且优先与企微加载(避免从网页进入企微相关函数报错)并同步修改app.routes.ts将路由规则使用写 在./docs/project.md.注意逻辑是企微端进入后后台才会有对应数据,而从后台进入加载的ContactInfo是有 external_userid属性的,从后台进入的GroupChat是有chat_id属性的.特别是注意可以使用rules/wxwork/au th.md实现不影响页面加载的用户授权及Profile同步的逻辑,并在localStorage的"Parse/ProfileId"记录当 前profile,通过全局服务一个函数获取当前profile员工档案信息(网页端也会用同样规则通过缓存的"Parse/ProfileId"加载当前员工).请您分析需求,合理设计,完成开发.务必完成所有细节