diff --git a/web/src/api/gas/alarmmessage/index.ts b/web/src/api/gas/alarmmessage/index.ts
new file mode 100644
index 0000000..3c9eb79
--- /dev/null
+++ b/web/src/api/gas/alarmmessage/index.ts
@@ -0,0 +1,52 @@
+import request from '@/config/axios'
+import type { Dayjs } from 'dayjs';
+
+/** GAS手持探测器推送信息 */
+export interface AlarmMessage {
+ id: number; // 主键ID
+ detectorId: number; // 手持表id
+ name: string; // 持有人名称
+ sn: string; // 设备编号
+ message: string; // 消息
+ pushSnList: string; // 推送设备sn,逗号分割
+ remark: string; // 备注
+ deptId: number; // 部门id
+ }
+
+// GAS手持探测器推送 API
+export const AlarmMessageApi = {
+ // 查询GAS手持探测器推送分页
+ getAlarmMessagePage: async (params: any) => {
+ return await request.get({ url: `/gas/alarm-message/page`, params })
+ },
+
+ // 查询GAS手持探测器推送详情
+ getAlarmMessage: async (id: number) => {
+ return await request.get({ url: `/gas/alarm-message/get?id=` + id })
+ },
+
+ // 新增GAS手持探测器推送
+ createAlarmMessage: async (data: AlarmMessage) => {
+ return await request.post({ url: `/gas/alarm-message/create`, data })
+ },
+
+ // 修改GAS手持探测器推送
+ updateAlarmMessage: async (data: AlarmMessage) => {
+ return await request.put({ url: `/gas/alarm-message/update`, data })
+ },
+
+ // 删除GAS手持探测器推送
+ deleteAlarmMessage: async (id: number) => {
+ return await request.delete({ url: `/gas/alarm-message/delete?id=` + id })
+ },
+
+ /** 批量删除GAS手持探测器推送 */
+ deleteAlarmMessageList: async (ids: number[]) => {
+ return await request.delete({ url: `/gas/alarm-message/delete-list?ids=${ids.join(',')}` })
+ },
+
+ // 导出GAS手持探测器推送 Excel
+ exportAlarmMessage: async (params) => {
+ return await request.download({ url: `/gas/alarm-message/export-excel`, params })
+ }
+}
\ No newline at end of file
diff --git a/web/src/views/HandDevice/Home/components/TopPanel.vue b/web/src/views/HandDevice/Home/components/TopPanel.vue
index ff95954..f9275bd 100644
--- a/web/src/views/HandDevice/Home/components/TopPanel.vue
+++ b/web/src/views/HandDevice/Home/components/TopPanel.vue
@@ -27,7 +27,7 @@
diff --git a/web/src/views/gas/alarmmessage/index.vue b/web/src/views/gas/alarmmessage/index.vue
new file mode 100644
index 0000000..17bbc21
--- /dev/null
+++ b/web/src/views/gas/alarmmessage/index.vue
@@ -0,0 +1,280 @@
+
+