140 lines
4.8 KiB
JavaScript
140 lines
4.8 KiB
JavaScript
"use strict";
|
|
const common_vendor = require("../../common/vendor.js");
|
|
const request_api = require("../../request/api.js");
|
|
const utils_draftCache = require("../../utils/draftCache.js");
|
|
const utils_useDraftCache = require("../../utils/useDraftCache.js");
|
|
const components_hazard_hazardForm = require("../../components/hazard/hazardForm.js");
|
|
if (!Math) {
|
|
HazardFormPanel();
|
|
}
|
|
const HazardFormPanel = () => "../../components/hazard/HazardFormPanel.js";
|
|
const _sfc_main = {
|
|
__name: "add",
|
|
setup(__props) {
|
|
const formRef = common_vendor.ref(null);
|
|
const taskId = common_vendor.ref("");
|
|
const checkPointId = common_vendor.ref("");
|
|
const oneTableId = common_vendor.ref("");
|
|
const draftSnapshot = common_vendor.ref(null);
|
|
const draftInitialized = common_vendor.ref(false);
|
|
const hazardExtraParams = common_vendor.computed(() => ({
|
|
taskId: taskId.value,
|
|
checkPointId: checkPointId.value,
|
|
locationDraftKey: utils_draftCache.buildDraftKey(
|
|
utils_draftCache.DRAFT_NS.HAZARD_ADD,
|
|
"location",
|
|
oneTableId.value,
|
|
taskId.value,
|
|
checkPointId.value
|
|
)
|
|
}));
|
|
const getDraftKey = () => utils_draftCache.buildDraftKey(
|
|
utils_draftCache.DRAFT_NS.HAZARD_ADD,
|
|
oneTableId.value,
|
|
taskId.value,
|
|
checkPointId.value
|
|
);
|
|
const {
|
|
showRestoreBanner,
|
|
clear: clearDraft,
|
|
restore: restoreDraft,
|
|
save: saveDraft,
|
|
bindAutoSave
|
|
} = utils_useDraftCache.useDraftCache({
|
|
getKey: getDraftKey,
|
|
getPayload: () => {
|
|
var _a, _b;
|
|
return ((_b = (_a = formRef.value) == null ? void 0 : _a.getPayload) == null ? void 0 : _b.call(_a)) || {};
|
|
},
|
|
hasContent: components_hazard_hazardForm.hasHazardFormContent,
|
|
applyPayload: (data) => {
|
|
common_vendor.nextTick$1(() => {
|
|
var _a, _b;
|
|
(_b = (_a = formRef.value) == null ? void 0 : _a.applyPayload) == null ? void 0 : _b.call(_a, data);
|
|
});
|
|
},
|
|
clearForm: () => {
|
|
var _a, _b;
|
|
(_b = (_a = formRef.value) == null ? void 0 : _a.resetForm) == null ? void 0 : _b.call(_a);
|
|
},
|
|
canSave: () => draftInitialized.value,
|
|
requireInitialized: true,
|
|
showRestoreToast: false,
|
|
onAfterRestore: (data) => {
|
|
draftSnapshot.value = data;
|
|
}
|
|
});
|
|
const fetchTaskInfo = async (tableId) => {
|
|
try {
|
|
const startRes = await request_api.enterCheckPlan(tableId);
|
|
if (startRes.code === 0 && startRes.data) {
|
|
const tid = startRes.data.taskId;
|
|
const detailRes = await request_api.getCheckTaskDetail(tid);
|
|
if (detailRes.code === 0 && detailRes.data) {
|
|
taskId.value = detailRes.data.taskId;
|
|
checkPointId.value = detailRes.data.checkPointId;
|
|
}
|
|
}
|
|
} catch (error) {
|
|
common_vendor.index.__f__("error", "at pages/hiddendanger/add.vue:91", "获取任务信息失败:", error);
|
|
}
|
|
};
|
|
const clearLocationPickerDraft = () => {
|
|
utils_draftCache.removeDraft(hazardExtraParams.value.locationDraftKey);
|
|
};
|
|
const restoreFormDraft = async () => {
|
|
await common_vendor.nextTick$1();
|
|
restoreDraft();
|
|
};
|
|
const onSubmitSuccess = () => {
|
|
clearLocationPickerDraft();
|
|
clearDraft(false);
|
|
};
|
|
bindAutoSave(() => draftSnapshot.value);
|
|
const initPage = async (options = {}) => {
|
|
if (options.taskId) {
|
|
taskId.value = options.taskId;
|
|
}
|
|
if (options.checkPointId) {
|
|
checkPointId.value = options.checkPointId;
|
|
}
|
|
if (options.id) {
|
|
oneTableId.value = options.id;
|
|
if (!options.taskId || !options.checkPointId) {
|
|
await fetchTaskInfo(options.id);
|
|
}
|
|
}
|
|
draftInitialized.value = true;
|
|
await restoreFormDraft();
|
|
};
|
|
common_vendor.onLoad(async (options) => {
|
|
await initPage(options);
|
|
});
|
|
common_vendor.onHide(() => {
|
|
saveDraft();
|
|
});
|
|
return (_ctx, _cache) => {
|
|
return {
|
|
a: common_vendor.sr(formRef, "44bd6550-0", {
|
|
"k": "formRef"
|
|
}),
|
|
b: common_vendor.o(onSubmitSuccess),
|
|
c: common_vendor.o(($event) => common_vendor.unref(clearDraft)(true)),
|
|
d: common_vendor.o(($event) => draftSnapshot.value = $event),
|
|
e: common_vendor.p({
|
|
["page-mode"]: true,
|
|
title: "新增隐患排查",
|
|
mode: "direct",
|
|
["extra-params"]: hazardExtraParams.value,
|
|
["show-draft-banner"]: common_vendor.unref(showRestoreBanner),
|
|
["canvas-id"]: "hazardAddWatermarkCanvas"
|
|
}),
|
|
f: common_vendor.gei(_ctx, "")
|
|
};
|
|
};
|
|
}
|
|
};
|
|
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-44bd6550"]]);
|
|
wx.createPage(MiniProgramPage);
|
|
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/hiddendanger/add.js.map
|