diff --git a/pages/index/index.vue b/pages/index/index.vue
index 4c2039c..1ad06e8 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -292,6 +292,7 @@ export default {
};
uni.setStorageSync("abbotId", response.data.abbotId);
+ uni.setStorageSync("templeId", response.data.id);
// 重新启动跑马灯
this.stopMarquee();
diff --git a/pages/memorial/adminMemorial.vue b/pages/memorial/adminMemorial.vue
index ce01eb6..e5c4245 100644
--- a/pages/memorial/adminMemorial.vue
+++ b/pages/memorial/adminMemorial.vue
@@ -35,6 +35,7 @@
强制关闭
时长归零
增加时长
+ 寻找牌位
@@ -144,11 +145,12 @@ export default {
return false;
}
console.log("floodr", floorId);
+ let templeId = uni.getStorageSync("templeId");
return {
// 兼容字段:同时传 floorId 与后端现用的 regionId
// regionId: String(floorId),
- regionId: 1,
+ templeId: templeId,
command, // open | close
mac: "FFFFFFFFFFFF",
timeout: "11",
@@ -200,6 +202,31 @@ export default {
return { amount: value, unit: chosen.value };
},
+ // 输入寻找牌位所需参数:闪烁类型 与 超时时间
+ async promptSearchParams() {
+ // 输入闪烁类型(后端自定义字符串/代码)
+ const typeRes = await new Promise((resolve) => {
+ uni.showModal({
+ title: "输入闪烁类型",
+ editable: true,
+ placeholderText: "请输入类型代码或名称",
+ success: (res) => resolve(res),
+ });
+ });
+
+ if (!typeRes || !typeRes.confirm) {
+ throw new Error("UserCancelled");
+ }
+
+ const type = String((typeRes.content || "").trim());
+ if (!type) {
+ uni.showToast({ title: "闪烁类型不能为空", icon: "none" });
+ throw new Error("InvalidType");
+ }
+
+ return { type };
+ },
+
async handleAllOpen() {
const payload = this.buildGatewayPayload("open", "全开");
await this.performPut(
@@ -248,6 +275,33 @@ export default {
);
},
+ // 底部按钮:寻找牌位(闪烁)
+ async handleSearchMemorial() {
+ if (!this.ensureUnitSelected()) return;
+ try {
+ const { type } = await this.promptSearchParams();
+ const payload = {
+ memorialId: String(this.selectedUnitId),
+ type,
+ timeout: "11",
+ };
+ await this.performPut(
+ `/app/memorial/searchMemorail`,
+ payload,
+ "handleSearchMemorial",
+ );
+ } catch (e) {
+ if (
+ e &&
+ e.message !== "UserCancelled" &&
+ e.message !== "InvalidNumber" &&
+ e.message !== "InvalidType"
+ ) {
+ console.error("handleSearchMemorial prompt error", e);
+ }
+ }
+ },
+
// 底部按钮:增加时长
async handleIncreaseDuration() {
if (!this.ensureUnitSelected()) return;
@@ -411,13 +465,13 @@ export default {
bottom: 10rpx;
width: 100%;
background: #fffbf5;
- height: 200rpx;
+ height: 300rpx;
}
.btn-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
- grid-template-rows: 1fr 1fr;
+ grid-template-rows: 1fr 1fr 1fr;
gap: 20rpx;
padding: 20rpx 32rpx;
height: 100%;