37 lines
1.1 KiB
JavaScript
37 lines
1.1 KiB
JavaScript
const { get } = require("../../utils/api");
|
|
const { showError } = require("../../utils/page-helpers");
|
|
|
|
Page({
|
|
data: { member: null, loading: false },
|
|
|
|
onLoad(options) {
|
|
wx.setNavigationBarTitle({ title: "成员资料" });
|
|
this.load(options.id);
|
|
},
|
|
|
|
async load(id) {
|
|
if (!id) return;
|
|
this.setData({ loading: true });
|
|
try {
|
|
const member = await get(`/api/directory/${id}`);
|
|
const isTeacher = member.membership_role === "teacher";
|
|
const isCommittee = !isTeacher && Boolean(member.committee_role);
|
|
this.setData({
|
|
member: {
|
|
...member,
|
|
role_text: isTeacher ? "老师" : (isCommittee ? member.committee_role : ""),
|
|
show_role_text: isTeacher || isCommittee,
|
|
role_mark: isTeacher ? "师" : (isCommittee ? "委" : "成"),
|
|
class_role_text: isTeacher
|
|
? "老师"
|
|
: member.committee_role || "班级成员"
|
|
}
|
|
});
|
|
} catch (error) {
|
|
showError(error, "加载资料失败");
|
|
} finally {
|
|
this.setData({ loading: false });
|
|
}
|
|
}
|
|
});
|