更新记录

1.0.0(2026-05-13)

星云药房管理系统

项目介绍

星云药房管理系统是一个基于uni-app和uniCloud开发的专业药店管理解决方案,提供药品进销存管理、销售管理、采购管理、会员管理、财务管理等全方位功能,支持多平台部署(H5、PC Web)。

主要功能

核心功能

  • 药品管理:药品信息维护、分类管理、库存管理、效期预警
  • 销售管理:零售收银、销售订单、销售退货、销售统计
  • 采购管理:采购订单、供应商管理、入库管理
  • 库存管理:库存查询、库存预警、盘点管理、库存调拨
  • 会员管理:会员信息、会员等级、积分管理、储值管理
  • 财务管理:日常收支、财务报表、成本核算
  • 人事管理:员工管理、考勤管理、绩效考核、工资管理
  • 系统管理:用户权限、角色管理、操作日志、数据备份

药品管理模块

  • 药品列表:药品信息增删改查、批量导入导出
  • 药品分类:多级分类管理、分类统计
  • 库存管理:实时库存查询、库存预警、库存盘点
  • 效期管理:效期预警、近效期药品提醒

销售管理模块

  • 收银台:快速收银、扫码销售、会员识别
  • 销售订单:订单管理、订单查询、订单统计
  • 销售退货:退货申请、退货审核、退款处理
  • 销售报表:销售统计、销售排行、趋势分析

采购管理模块

  • 采购订单:采购申请、采购审批、订单跟踪
  • 供应商管理:供应商信息、供货记录、评价管理
  • 入库管理:采购入库、退货出库、库存更新

会员管理模块

  • 会员列表:会员信息、消费记录、积分明细
  • 会员等级:等级设置、升降级规则、权益配置
  • 积分管理:积分规则、积分兑换、积分明细
  • 储值管理:充值、消费、退款、余额查询

财务管理模块

  • 日常收支:收入支出记录、分类统计
  • 财务报表:日报、周报、月报、年报
  • 成本核算:采购成本、销售成本、利润分析

人事管理模块

  • 员工管理:员工信息、部门管理、职位管理
  • 考勤管理:考勤记录、考勤统计、异常处理
  • 绩效考核:考核指标、考核评分、绩效统计
  • 工资管理:工资核算、工资发放、工资条

系统管理模块

  • 用户管理:系统用户、权限分配
  • 角色管理:角色定义、权限配置
  • 操作日志:操作记录、日志查询、日志导出
  • 数据备份:自动备份、手动备份、数据恢复

技术栈

前端技术

  • 框架:uni-app (Vue.js跨平台框架)
  • UI组件库:Element UI
  • 图表库:ECharts
  • 状态管理:Vuex
  • 样式预处理:SCSS

后端技术

  • 云开发:uniCloud (阿里云)
  • 数据库:NoSQL数据库 (MongoDB)
  • 用户系统:uni-id
  • 云函数框架:vk-unicloud-router

项目结构

├── App.vue              # 应用入口文件
├── main.js              # 应用入口JS
├── pages.json           # 页面路由配置
├── manifest.json        # 应用配置文件
├── common/              # 公共资源
│   ├── css/             # 公共样式
│   └── function/        # 公共函数
├── pages/               # 页面文件
│   └── pharmacy/        # 药房管理页面
│       ├── drug/        # 药品管理
│       ├── inventory/   # 库存管理
│       ├── sales/       # 销售管理
│       ├── purchase/    # 采购管理
│       ├── vip/         # 会员管理
│       ├── finance/     # 财务管理
│       ├── hr/          # 人事管理
│       ├── admin/       # 系统管理
│       ├── report/      # 报表统计
│       ├── warning/     # 预警管理
│       ├── store/       # 门店管理
│       ├── cashier/     # 收银台
│       ├── dashboard/   # 数据仪表盘
│       └── log/         # 日志管理
├── static/              # 静态资源
│   ├── logo.png         # 应用Logo
│   └── images/          # 图片资源
├── store/               # Vuex状态管理
├── uni_modules/         # uni-app模块
│   ├── uni-id/          # 用户系统
│   ├── vk-unicloud/     # 云开发框架
│   └── element-ui/      # UI组件库
└── uniCloud-aliyun/     # uniCloud云开发资源
    ├── cloudfunctions/  # 云函数
    │   └── router/
    │       └── service/
    │           └── admin/
    │               ├── common/      # 公共接口
    │               ├── z_timer_pharmacy_daily/   # 日常定时任务
    │               ├── z_timer_pharmacy_order/   # 订单定时任务
    │               └── z_timer_pharmacy_stat/    # 统计定时任务
    └── database/        # 数据库配置

安装指南

前置条件

  • 安装HBuilderX编辑器 (3.1.10+)
  • 注册DCloud开发者账号
  • 创建uniCloud云服务空间 (阿里云)

项目导入

  1. 克隆或下载项目代码
  2. 在HBuilderX中导入项目
  3. 关联uniCloud云服务空间

云开发环境配置

  1. 右键点击uniCloud目录,选择运行云服务空间初始化向导
  2. 根据提示完成初始化配置
  3. 上传common模块和router云函数
  4. 部署定时任务云函数

数据库初始化

需要创建以下数据库集合:

  • xy-drug - 药品信息
  • xy-drug-category - 药品分类
  • xy-inventory - 库存信息
  • xy-inventory-record - 库存变动记录
  • xy-inventory-warning - 库存预警
  • xy-sales - 销售订单
  • xy-sales-return - 销售退货
  • xy-purchase - 采购订单
  • xy-supplier - 供应商
  • xy-customer - 客户
  • xy-vip - 会员
  • xy-vip-level - 会员等级
  • xy-finance - 财务记录
  • xy-staff - 员工
  • xy-department - 部门
  • xy-attendance - 考勤
  • xy-performance - 绩效
  • xy-salary - 工资
  • xy-role - 角色
  • xy-user - 系统用户
  • xy-operation-log - 操作日志
  • xy-backup - 备份记录
  • xy-daily-report - 日报
  • xy-weekly-report - 周报
  • xy-monthly-report - 月报
  • xy-drug-sales-rank - 药品销售排行
  • xy-staff-performance - 员工业绩
  • xy-member-consumption - 会员消费
  • xy-recharge-record - 充值记录
  • xy-sales-archive - 销售订单归档

功能页面说明

数据仪表盘 (pages/pharmacy/dashboard/index.vue)

展示关键业务数据:今日销售额、订单数、会员数、库存预警等,提供数据可视化图表。

药品管理 (pages/pharmacy/drug/list.vue)

药品信息维护,支持新增、编辑、删除、批量导入导出,提供药品分类管理和效期预警。

库存管理 (pages/pharmacy/inventory/list.vue)

实时库存查询、库存预警、库存盘点、入库出库管理。

收银台 (pages/pharmacy/cashier/index.vue)

快速收银界面,支持扫码销售、会员识别、多种支付方式。

销售订单 (pages/pharmacy/sales/order.vue)

销售订单管理,支持订单查询、退货处理、订单统计。

采购管理 (pages/pharmacy/purchase/list.vue)

采购订单管理,支持采购申请、审批、入库、供应商管理。

会员管理 (pages/pharmacy/vip/list.vue)

会员信息管理,支持会员等级、积分、储值管理。

财务管理 (pages/pharmacy/finance/daily.vue)

日常收支记录、财务报表、成本核算。

人事管理 (pages/pharmacy/hr/staff.vue)

员工管理、考勤管理、绩效考核、工资管理。

系统设置 (pages/pharmacy/admin/user.vue)

用户权限管理、角色配置、操作日志、数据备份。

开发说明

云函数调用方式

项目使用vk-unicloud-router框架,统一使用公共接口:

// 列表查询
this.vk.callFunction({
    url: 'admin/common/sys/getList',
    data: {
        dbName: 'xy-drug',
        whereJson: { delete_flag: { $ne: 1 } }
    }
});

// 新增/修改
this.vk.callFunction({
    url: 'admin/common/sys/addOrUpdate',
    data: {
        dbName: 'xy-drug',
        dataJson: { ... }
    }
});

// 单条查询
this.vk.callFunction({
    url: 'admin/common/sys/getInfo',
    data: {
        dbName: 'xy-drug',
        _id: 'xxx'
    }
});

数据库操作规范

  • 所有查询必须添加 delete_flag: { $ne: 1 } 过滤软删除数据
  • 列表数据使用 Array.isArray(res.rows) ? res.rows : [] 处理
  • 删除操作使用软删除(设置 delete_flag: 1

定时任务

系统包含三个定时任务云函数:

  1. z_timer_pharmacy_daily - 每天凌晨2点执行

    • 药品效期检查
    • 库存预警生成
    • 已取消订单清理
    • 销售数据统计
  2. z_timer_pharmacy_order - 每小时执行

    • 超时订单自动取消
    • 已完成订单归档
    • 采购入库库存更新
    • 退货申请自动处理
  3. z_timer_pharmacy_stat - 每小时执行

    • 药品销售排行统计
    • 员工业绩统计
    • 会员消费统计
    • 日报/周报/月报生成

发布部署

H5 Web

  1. 选择发行 -> H5
  2. 配置相关参数后生成H5包
  3. 部署到Web服务器

微信小程序

  1. 在manifest.json中配置微信小程序信息
  2. 选择发行 -> 小程序-微信
  3. 按照提示完成发布流程

APP

  1. 选择发行 -> App云端打包
  2. 配置应用信息和证书
  3. 等待打包完成并下载安装包

注意事项

  1. 开发环境和生产环境需要分别配置
  2. 敏感信息如AppID、密钥等应配置在安全的地方
  3. 云函数修改后需要重新上传才能生效
  4. 数据库 schema 修改后需要同步更新
  5. 定时任务云函数需要在uniCloud控制台配置触发器
  6. 建议定期备份数据库,防止数据丢失

更新日志

v1.0.0 (2025-08-31)

  • 完成基础框架搭建
  • 实现药品管理、库存管理、销售管理核心功能
  • 实现采购管理、会员管理、财务管理
  • 实现人事管理、系统管理
  • 添加数据仪表盘和报表统计
  • 实现定时任务自动处理
  • 完善权限管理和操作日志

License

MIT


平台兼容性

云端兼容性

阿里云 腾讯云 支付宝云

uni-app(4.36)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × × × ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × - × ×

其他

多语言 暗黑模式 宽屏模式
×

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。