背景:家庭成员众多、药品繁杂,易导致过期、误用、重复购买等问题。传统纸质记录方式低效且易丢失。目标:构建一个智能化家庭药品管理平台,帮助用户高效管理家庭药品库存、记录用药信息、接收用药提醒,提升家庭用药安全性和便利性。基于微信云开发,提供移动端随时随地的药品管理体验。
药品入库流程:
进入首页 → 点击"扫码添加"或"我的药箱"中的"添加新药品"
扫描药品二维码快速识别 或 手动录入药品信息
记录药品名称、规格、分类、有效期、购买日期
药品自动保存到云数据库中
日常管理流程:
进入"我的药箱" → 搜索/筛选药品 → 查看即将过期提醒
点击药品卡片查看详细信息 → 对比药物相互作用
过期药品可直接删除
用药提醒流程:
进入"用药提醒" → 点击"添加提醒"
选择药品 → 设置服药频率(每日1/2/3次)→ 指定提醒时间
设置提醒持续天数 → 保存提醒
系统在指定时间推送提醒 → 用户完成记录
家庭共享流程:
进入"家庭共享" → 邀请家庭成员
所有成员共享同一药箱数据库和提醒任务
多人协作管理家庭药品
症状自诊流程:
进入"症状自诊" → 输入症状描述
系统推荐相关用药方案和注意事项
1. 整体架构与技术栈
架构设计:采用微信云开发+前端分离的架构,前端负责UI交互,后端云函数处理业务逻辑。核心技术栈:
前端:微信小程序原生框架(WXML/WXSS/JS)+ iconfont 字体图标库
后端:云函数(Node.js) + 云数据库(JSON 文档型) + 云存储
开发工具:微信开发者工具 v3.0.0+
环境:云开发环境 ID(drug-management-1gs23)
我的药箱模块 ✅
完成药品列表展示、搜索、筛选功能
实现数据统计:药品总数、即将过期数、分类数
集成删除确认 + 错误处理机制
代码量:266 行 JS + 123 行 WXML + 完整样式表
数据绑定字段:7 个页面变量,3 个计算函数
云函数后端服务 ✅
编写 438 行完整的云函数入口
实现 16 个操作接口(增删改查):
药品操作:getMedicineList、addMedicine、updateMedicine、deleteMedicine、getMedicineDetail(5 个)
提醒操作:getReminderList、addReminder、updateReminder、deleteReminder(4 个)
家庭功能:getFamilyMembers、addFamilyMember、removeFamilyMember(3 个)
统计功能:getHealthStatistics、getSymptomRecommendation、getExpiredMedicines(3 个)
路由分发 + 错误处理 + 日期计算逻辑
数据库操作封装 ✅
云数据库初始化(DB + Collection 管理)
分页查询实现:skip + limit + count 统计
正则搜索:支持多字段模糊查询
时间戳处理:serverDate() + 日期格式化
前端数据交互 ✅
实现完整的生命周期管理(onLoad、onShow、onSearchInput、onSwitch)
列表更新机制:加载 → 统计 → 过滤 → 渲染
错误降级:云函数失败 → 使用模拟数据(3 条样本数据)
用户交互:删除确认弹窗 + Toast 提示 + Loading 加载指示