diff --git a/modules/medications/add.php b/modules/medications/add.php new file mode 100644 index 0000000..05b4a17 --- /dev/null +++ b/modules/medications/add.php @@ -0,0 +1,158 @@ + + + + + + 新增药品 - 电子病历系统 + + + + +
+

+ + + + 新增药品 +

+
+ + + +
+ 药品信息添加成功!
'; + echo ''; + } else { + echo '
添加失败:' . mysqli_error($connID) . '
'; + } + } + ?> + +
+
+

+ + + + 新增药品信息 +

+
+
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ +
+

填写说明

+
    +
  • 药品名称请使用通用名称,如:阿莫西林胶囊
  • +
  • 规格格式示例:0.25g*24粒、100ml/瓶、50mg*10片
  • +
  • 生产厂家请填写完整的企业名称
  • +
  • 价格为可选项,可后续在编辑时补充
  • +
+
+ +
+ + + + + + 取消 + +
+
+
+
+ + + \ No newline at end of file diff --git a/modules/medications/edit.php b/modules/medications/edit.php new file mode 100644 index 0000000..0d08901 --- /dev/null +++ b/modules/medications/edit.php @@ -0,0 +1,201 @@ + + + + + + 编辑药品 - 电子病历系统 + + + + +
+

+ + + + 编辑药品信息 +

+
+ + + +
+ 无效的药品ID
'; + exit; + } + + if ($_SERVER['REQUEST_METHOD'] == 'POST') { + $name = mysqli_real_escape_string($connID, $_POST['name']); + $specification = mysqli_real_escape_string($connID, $_POST['specification']); + $unit = mysqli_real_escape_string($connID, $_POST['unit']); + $manufacturer = mysqli_real_escape_string($connID, $_POST['manufacturer']); + $price = $_POST['price'] ? (float)$_POST['price'] : null; + + $sql = "UPDATE medications SET + name = '$name', + specification = '$specification', + unit = '$unit', + manufacturer = '$manufacturer', + price = " . ($price ? "'$price'" : "NULL") . " + WHERE id = $medication_id"; + + if (mysqli_query($connID, $sql)) { + echo '
药品信息更新成功!
'; + echo ''; + } else { + echo '
更新失败:' . mysqli_error($connID) . '
'; + } + } + + $sql = "SELECT * FROM medications WHERE id = $medication_id"; + $result = mysqli_query($connID, $sql); + + if (mysqli_num_rows($result) == 0) { + echo '
药品不存在
'; + exit; + } + + $medication = mysqli_fetch_assoc($result); + ?> + +
+
+

+ + + + 编辑药品信息 +

+

+ 当前编辑: - +

+
+
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ +
+

编辑说明

+
    +
  • 修改药品信息会影响新创建的处方
  • +
  • 价格修改不会影响已开具的处方
  • +
  • 如有库存相关业务,请谨慎修改规格和单位信息
  • +
  • 生产厂家变更请确认药品批准文号等相关信息
  • +
+
+ +
+ + + + + + 返回列表 + + + + + + 取消 + +
+
+
+
+ +
+ 创建时间: +
+ + + \ No newline at end of file diff --git a/modules/medications/list.php b/modules/medications/list.php new file mode 100644 index 0000000..e4f9343 --- /dev/null +++ b/modules/medications/list.php @@ -0,0 +1,278 @@ + + + + + + 药品管理 - 电子病历系统 + + + + +
+

+ + + + 药品管理 +

+
+ + + +
+
+
+

+ + + + 药品列表 +

+
+ + + + + 新增药品 + +
+
+
+
+
+ + + + + 清除 + +
+
+ +
+ + + + + + + + + + + + + + + 0): + while($medication = mysqli_fetch_assoc($result)): + ?> + + + + + + + + + + + + + + + + +
ID药品名称规格单位生产厂家价格添加时间操作
+ + ¥ + + 未设置 + + + 查看 + 编辑 + +
+ + 未找到匹配的药品信息 + + 暂无药品数据 + +
+
+
+
+ +
+
+
+

快速统计

+ 0"); + $avg_price_result = mysqli_fetch_assoc($avg_price)['avg_price']; + + $expensive_count = mysqli_query($connID, "SELECT COUNT(*) as count FROM medications WHERE price > 50"); + $expensive_count_result = mysqli_fetch_assoc($expensive_count)['count']; + ?> +
+
+ 药品总数 + +
+
+ 平均价格 + ¥ +
+
+ 高价药品 + +
+
+
+
+ +
+
+

常用药品

+ +
+ +
+
+ +
+
+ 使用 +
+ +
+
+
+ +
+
+

最新药品

+ +
+ +
+
+ + + ¥ + +
+
+
+ +
+
+ +
+
+
+
+
+ + + + \ No newline at end of file diff --git a/modules/medications/view.php b/modules/medications/view.php new file mode 100644 index 0000000..657f6c1 --- /dev/null +++ b/modules/medications/view.php @@ -0,0 +1,424 @@ +alert('无效的药品ID'); window.location.href='list.php';"; + exit; +} + +// 查询药品信息 +$sql = "SELECT * FROM medications WHERE id = $medication_id"; +$result = mysqli_query($connID, $sql); + +if (mysqli_num_rows($result) == 0) { + echo ""; + exit; +} + +$medication = mysqli_fetch_assoc($result); + +// 获取药品使用统计信息 +$stats_sql = "SELECT + COUNT(DISTINCT mr.id) as total_prescriptions, + COUNT(DISTINCT mr.patient_id) as total_patients, + COUNT(CASE WHEN DATE(mr.created_at) = CURDATE() THEN 1 END) as today_prescriptions, + COUNT(CASE WHEN mr.created_at >= DATE_SUB(NOW(), INTERVAL 30 DAY) THEN 1 END) as month_prescriptions + FROM medical_records mr + WHERE mr.prescription LIKE '%{$medication['name']}%'"; + +$stats_result = mysqli_query($connID, $stats_sql); +$stats = mysqli_fetch_assoc($stats_result); + +// 获取最近的处方记录 +$recent_prescriptions_sql = "SELECT mr.*, p.name as patient_name, p.phone as patient_phone, d.name as doctor_name + FROM medical_records mr + JOIN patients p ON mr.patient_id = p.id + JOIN doctors d ON mr.doctor_id = d.id + WHERE mr.prescription LIKE '%{$medication['name']}%' + ORDER BY mr.created_at DESC + LIMIT 5"; + +$recent_prescriptions_result = mysqli_query($connID, $recent_prescriptions_sql); +?> + + + + + + + 药品详情 - <?php echo htmlspecialchars($medication['name']); ?> - 电子病历系统 + + + + + +
+

+ + + + 药品详情 +

+
+ + + +
+ +
+
+ 💊 +
+
+ + 0): ?> + ¥ + +
+
+
药品编号:
+
+ + +
+
+
+
总处方次数
+
+
+
+
使用患者数
+
+
+
+
今日处方
+
+
+
+
本月处方
+
+
+ +
+ +
+
+

+ + + + 基本信息 +

+
+
+
+
药品名称
+
+
+
+
药品规格
+
+
+
+
计量单位
+
+
+
+
单价
+
+ 0): ?> + ¥ + + 未设置 + +
+
+
+
入库时间
+
+
+
+
+ + +
+
+

+ + + + 生产信息 +

+
+
+
+
生产厂家
+
+
+
+
+
+ + +
+
+
+

+ + + + 最近处方记录 +

+
+
+ 0): ?> + +
+
+ + +
+
+ 主治医生: +
+
+ 联系电话: +
+
+ 处方详情: + 100): ?>... +
+ +
+ +
+ 查看全部处方 +
+ +
+ 暂无处方记录 +
+ +
+
+
+ + +
+ 返回药品列表 + 编辑信息 + 开具处方 +
+
+ + \ No newline at end of file