9.4 KiB
9.4 KiB
图片收集小程序需求文档
1. 产品概述
1.1 产品名称
图片收集小程序
1.2 产品定位
专为企业内部设计的图片收集与管理工具,用于上级公司统一收集、整理和管理各下级部门提交的图片资料。
1.3 产品目标
- 提供便捷的图片上传功能,支持多部门、多用户操作
- 建立统一的图片管理体系,便于分类、查询和统计
- 简化图片审核流程,提高工作效率
- 确保图片资料的安全存储和访问权限控制
2. 用户分析
2.1 用户角色
- 管理员:系统最高权限,负责用户管理、系统配置、部门管理
- 信息员:负责发表收集任务,指定要收集的部门,同时审核图片是否符合要求,查询任务进度
- 部门负责人:可同时管理多个部门,对所有管理部门的图片上传、审核和查询拥有权限
- 普通用户:仅能上传本部门图片并查看自己上传的图片状态
2.2 用户痛点
- 传统邮件或聊天软件传输图片效率低下,易丢失
- 图片资料分散,难以统一管理和查找
- 缺乏有效的审核机制,无法确保图片质量
- 难以追踪图片提交进度和完成情况
3. 功能需求
3.1 用户管理模块
- 用户注册/登录:支持手机号注册,验证码登录
- 角色分配:管理员可设置用户角色(管理员、信息员、部门负责人、普通用户)
- 部门管理:管理员可创建、编辑、删除部门信息
- 用户绑定部门:管理员可将用户分配到一个或多个部门,支持一个用户管理多个部门的场景
3.2 图片上传模块
- 单张/批量上传:支持选择本地图片单张上传或多张批量上传
- 图片预览:上传前可预览图片
- 图片信息填写:上传时需填写图片标题、描述、分类标签等信息
- 上传状态显示:显示上传进度和结果
- 失败重试机制:上传失败时支持重试
3.3 图片审核模块
- 待审核列表:显示所有待审核的图片,信息员和管理员可查看所有待审核图片,部门负责人可查看其负责的所有部门的待审核图片
- 审核操作:支持通过或拒绝,拒绝时需填写原因(信息员、部门负责人和管理员均有审核权限)
- 审核历史记录:记录每张图片的审核状态和审核人
- 批量审核:支持多张图片批量审核
3.4 图片管理模块
- 图片列表:显示所有图片,支持分页(管理员和信息员可查看所有图片,部门负责人可查看其负责的所有部门的图片,普通用户仅可查看自己上传的图片)
- 图片分类:按部门、分类标签等进行分类展示
- 搜索功能:支持按图片标题、描述、上传人、日期等条件搜索,部门负责人可按负责部门筛选
- 图片查看:点击图片可放大查看详细信息
- 图片删除:管理员和部门负责人可删除各自权限范围内的图片
- 图片统计:显示各部门图片上传数量、审核通过率等统计信息(管理员和信息员可见全部,部门负责人可见其负责部门的统计)
- 收集任务管理:信息员可创建、编辑、删除图片收集任务,指定任务名称、描述、截止时间、目标部门等信息
3.5 消息通知模块
- 审核通知:图片审核结果通过小程序消息通知用户
- 任务提醒:提醒用户完成图片上传任务
- 系统通知:发布系统公告和重要信息
4. 非功能需求
4.1 性能需求
- 响应时间:页面加载时间不超过3秒
- 并发处理:支持至少500名用户同时在线使用
- 上传速度:5MB图片上传时间不超过10秒
- 图片格式与大小:支持JPG、PNG、WEBP格式,单张图片大小不超过10MB,建议使用压缩后的图片以提高加载速度
4.2 安全需求
- 数据加密:用户密码加密存储,图片传输加密
- 访问控制:基于角色的访问控制,确保数据安全
- 数据备份:定期对图片数据进行备份
4.3 兼容性需求
- 设备兼容:支持主流手机型号(iOS 13+,Android 8+)
- 网络环境:支持WiFi和4G/5G网络环境
4.4 可用性需求
- 界面简洁:操作流程简单明了,易于上手
- 错误提示:提供清晰的错误提示和操作引导
- 离线功能:
- 支持在无网络环境下缓存已上传的图片信息
- 支持在离线状态下编写图片描述和标签,待网络恢复后自动提交
- 提供离线任务提醒功能
5. 数据需求
5.1 用户数据
- 用户ID、手机号、密码(加密)、姓名、角色、所属部门列表(支持多部门关联)、注册时间、最后登录时间
5.2 部门数据
- 部门ID、部门名称、负责人ID列表(支持多负责人)、创建时间、描述
5.3 图片数据
- 图片ID、图片URL、标题、描述、上传者ID、所属部门ID、上传时间、审核状态、审核人ID、审核时间、分类标签
5.4 任务数据
- 任务ID、任务名称、任务描述、创建人ID(信息员)、创建时间、截止时间、目标部门ID列表、任务状态、完成情况统计
5.5 操作日志数据
- 日志ID、操作人ID、操作类型、操作时间、操作对象、操作结果
6. 界面设计
6.1 整体风格
- 简洁、专业,符合企业形象
- 主色调:蓝色系(代表专业、信任)
- 辅助色:灰色系(用于中性背景和次要元素)
6.2 主要页面
- 登录页:简洁的登录界面,包含手机号输入框、验证码输入框和登录按钮
- 首页:
- 管理员/信息员:显示待处理任务、统计图表、最新上传图片
- 部门负责人:可切换查看所有管理部门的待处理任务、待审核图片、部门图片统计
- 普通用户:显示个人待完成任务、我的上传图片列表
- 上传页:简洁的图片选择区域、信息填写表单,可选择关联任务
- 图片列表页:图片卡片式展示,支持筛选和搜索
- 图片详情页:大图展示、详细信息、审核状态、关联任务
- 审核页:待审核图片列表、快速审核按钮
- 任务管理页(信息员专属):任务列表、创建任务、任务详情、任务进度统计
- 任务详情页:显示任务信息、参与部门、提交状态统计、相关图片列表
- 个人中心:用户信息、我的上传、消息通知等
- 管理中心:用户管理、部门管理、系统设置等
7. 技术实现建议
7.1 前端技术
- 开发工具:HBuilderX
- 开发框架:uni-app
- 后台管理框架:uni-admin
- UI框架:uView
- 技术要点:
- 采用组件化开发提高代码复用性
- 使用Vue.js语法规范
- 遵循uni-app项目结构规范
- 利用uView组件库构建统一的UI界面
- 利用uni-app跨平台能力适配不同端
- 前端权限控制与后端权限管理保持一致
- 后台管理页面遵循uni-admin的界面设计规范
7.2 后端技术
- 云开发平台:uni-cloud
- 数据库:uniCloud数据库
- 文件存储:uniCloud云存储
- 后端逻辑:云函数(JavaScript/TypeScript)
- 数据安全:
- 利用uniCloud数据库权限规则控制数据访问
- 敏感数据加密存储
- 实现基于角色的权限控制
- 关键操作记录审计日志
7.3 API设计
- 基于uniCloud云函数的API设计
- 统一的错误处理机制
- 定义统一的错误码体系
- 提供友好的错误提示信息
- 记录详细的错误日志用于调试
- 完善的接口文档
- 利用uniCloud权限控制实现用户鉴权
- 支持请求缓存和限流机制
8. 项目实施计划
8.1 开发阶段
- 需求分析与设计:2周
- 详细功能设计
- 数据库设计
- 接口设计
- UI原型设计
- 前端开发:4周
- 基础框架搭建
- 小程序端开发
- 后台管理端(uni-admin)开发
- UI组件封装与优化
- 后端开发:4周
- uni-cloud环境配置
- 数据库表结构设计
- 云函数开发
- 权限体系实现
- 联调测试:2周
- 功能测试
- 性能测试
- 兼容性测试
- 安全测试
8.2 上线计划
- 内部测试:1周
- 修复bug
- 性能优化
- 试点部门使用:1周
- 收集反馈
- 迭代优化
- 全公司推广使用:持续进行
- 用户培训
- 系统维护与升级
9. 风险评估与应对策略
9.1 潜在风险
- 用户操作不熟悉导致使用困难
- 图片存储容量和成本控制
- 网络环境不佳影响上传体验
9.2 应对策略
- 提供详细的使用指南和在线帮助
- 制定合理的存储策略,定期清理无效图片
- 优化上传机制,支持断点续传
10. 附录
10.1 术语定义
- 图片分类:为便于管理,根据图片内容或用途设定的标签
- 审核状态:包括待审核、已通过、已拒绝
- 部门负责人:可同时负责管理多个部门的用户和图片审核的人员,系统支持一个用户关联多个部门
- 信息员:负责创建收集任务并审核图片的人员
- 收集任务:由信息员创建的特定图片收集活动,包含任务要求、截止时间和目标部门
10.2 参考资料
- 微信小程序开发文档
- 企业信息管理系统最佳实践
本文档为初步需求分析,实际开发过程中可能根据具体情况进行调整和完善。