Files
FileCollect/软件需求文档.md
2025-10-20 07:11:14 +08:00

9.4 KiB
Raw Permalink Blame History

图片收集小程序需求文档

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 参考资料

  • 微信小程序开发文档
  • 企业信息管理系统最佳实践

本文档为初步需求分析,实际开发过程中可能根据具体情况进行调整和完善。