"use strict"; const common_vendor = require("../../common/vendor.js"); const request_api = require("../../request/api.js"); const components_flow_flowAssigneeUtils = require("./flowAssigneeUtils.js"); if (!Array) { const _easycom_u_popup2 = common_vendor.resolveComponent("u-popup"); _easycom_u_popup2(); } const _easycom_u_popup = () => "../../uni_modules/uview-plus/components/u-popup/u-popup.js"; if (!Math) { (FlowAssigneeTree + _easycom_u_popup)(); } const FlowAssigneeTree = () => "./FlowAssigneeTree.js"; const _sfc_main = { __name: "FlowAssigneePickerPopup", props: { show: { type: Boolean, default: false }, taskId: { type: String, default: "" }, pickerIdentityId: { type: String, default: "" }, pickerName: { type: String, default: "" } }, emits: ["update:pickerIdentityId", "update:pickerName", "cancel", "confirm"], setup(__props, { emit: __emit }) { const props = __props; const emit = __emit; const loading = common_vendor.ref(false); const deptTree = common_vendor.ref([]); const localPickerIdentityId = common_vendor.ref(""); const localPickerName = common_vendor.ref(""); const pickerDisplayName = common_vendor.computed(() => { const user = components_flow_flowAssigneeUtils.findAssigneeUserInDeptTree(deptTree.value, localPickerIdentityId.value); return user ? components_flow_flowAssigneeUtils.formatAssigneeDisplayName(user) : localPickerName.value; }); const syncLocalPicker = () => { localPickerIdentityId.value = props.pickerIdentityId || ""; localPickerName.value = props.pickerName || ""; }; const fetchAssigneeTree = async () => { if (!props.taskId) { deptTree.value = []; return; } loading.value = true; try { const res = await request_api.getFlowApproverCandidates(props.taskId); if (res.code === 0) { deptTree.value = components_flow_flowAssigneeUtils.normalizeApproverDeptTree(res.data); } else { deptTree.value = []; common_vendor.index.showToast({ title: res.msg || "获取处理人失败", icon: "none" }); } } catch (error) { common_vendor.index.__f__("error", "at components/flow/FlowAssigneePickerPopup.vue:93", "获取处理人失败:", error); deptTree.value = []; common_vendor.index.showToast({ title: "获取处理人失败", icon: "none" }); } finally { loading.value = false; } }; common_vendor.watch( () => props.show, async (visible) => { if (!visible) return; syncLocalPicker(); await fetchAssigneeTree(); } ); const handleUserSelect = (user) => { const identityId = components_flow_flowAssigneeUtils.resolveAssigneeIdentityId(user); if (!identityId) return; localPickerIdentityId.value = identityId; localPickerName.value = components_flow_flowAssigneeUtils.formatAssigneeDisplayName(user); emit("update:pickerIdentityId", identityId); emit("update:pickerName", localPickerName.value); }; const handleCancel = () => { emit("cancel"); }; const handleConfirm = () => { if (!localPickerIdentityId.value) { common_vendor.index.showToast({ title: "请选择下一步处理人", icon: "none" }); return; } const user = components_flow_flowAssigneeUtils.findAssigneeUserInDeptTree(deptTree.value, localPickerIdentityId.value); if (!user) { common_vendor.index.showToast({ title: "所选身份无效,请重新选择", icon: "none" }); return; } const name = components_flow_flowAssigneeUtils.formatAssigneeDisplayName(user); emit("update:pickerIdentityId", localPickerIdentityId.value); emit("update:pickerName", name); emit("confirm", { identityId: localPickerIdentityId.value, name, user }); }; return (_ctx, _cache) => { return common_vendor.e({ a: common_vendor.o(handleCancel), b: __props.pickerIdentityId }, __props.pickerIdentityId ? { c: common_vendor.t(pickerDisplayName.value) } : {}, { d: loading.value }, loading.value ? {} : !__props.taskId ? {} : deptTree.value.length === 0 ? {} : { g: common_vendor.o(handleUserSelect), h: common_vendor.p({ depts: deptTree.value, ["selected-identity-id"]: __props.pickerIdentityId }) }, { e: !__props.taskId, f: deptTree.value.length === 0, i: common_vendor.o(handleCancel), j: common_vendor.o(handleConfirm), k: common_vendor.o(handleCancel), l: common_vendor.p({ show: __props.show, mode: "bottom", round: "20" }), m: common_vendor.gei(_ctx, "") }); }; } }; const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-2685d664"]]); wx.createComponent(Component); //# sourceMappingURL=../../../.sourcemap/mp-weixin/components/flow/FlowAssigneePickerPopup.js.map