R82 修复企微 userid 兼容登录
这个提交包含在:
@@ -216,10 +216,18 @@ async function exchangeWecomCode(config, code) {
|
||||
}
|
||||
const payloadKeys = payload && typeof payload === "object" ? Object.keys(payload).sort() : [];
|
||||
const hasStringValue = (value) => typeof value === "string" && value.trim().length > 0;
|
||||
const pickCandidate = (...values) => {
|
||||
for (const value of values) {
|
||||
if (hasStringValue(value)) {
|
||||
return value.trim();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
};
|
||||
return {
|
||||
externalUserId: typeof payload.UserId === "string" && payload.UserId.trim() ? payload.UserId.trim() : null,
|
||||
externalOpenUserId: typeof payload.OpenId === "string" && payload.OpenId.trim() ? payload.OpenId.trim() : null,
|
||||
deviceId: typeof payload.DeviceId === "string" ? payload.DeviceId : null,
|
||||
externalUserId: pickCandidate(payload.UserId, payload.userid),
|
||||
externalOpenUserId: pickCandidate(payload.OpenId, payload.openid),
|
||||
deviceId: pickCandidate(payload.DeviceId, payload.deviceid),
|
||||
diagnostics: {
|
||||
errcode: Number(payload.errcode ?? 0),
|
||||
errmsg: typeof payload.errmsg === "string" ? payload.errmsg : null,
|
||||
@@ -229,6 +237,8 @@ async function exchangeWecomCode(config, code) {
|
||||
userid: hasStringValue(payload.userid),
|
||||
OpenId: hasStringValue(payload.OpenId),
|
||||
openid: hasStringValue(payload.openid),
|
||||
DeviceId: hasStringValue(payload.DeviceId),
|
||||
deviceid: hasStringValue(payload.deviceid),
|
||||
external_userid: hasStringValue(payload.external_userid),
|
||||
user_ticket: hasStringValue(payload.user_ticket),
|
||||
corpid: hasStringValue(payload.corpid),
|
||||
|
||||
在新工单中引用
屏蔽一个用户