fix(douyu): 已绑定账号生成二维码不再立即成功, 正常等待扫码换绑
- 后端: get_xpd_bind_qr 生成二维码前记录绑定前状态(before_bound/ before_role_name); 轮询判断改为 —— 未绑定: 检测到 bind_role=1 成功; 已绑定(换绑): 角色名变化才算成功, 角色不变继续等待 - 前端: 弹窗保留二维码与角色信息; 轮询期间显示"当前绑定: 原角色", 换绑成功显示新角色; 确认绑定维持手动(小程序内人工确认)
This commit is contained in:
@@ -1064,30 +1064,36 @@ export default function DouyuTasksPage({ handbook }: { handbook: HandbookKind })
|
||||
const qrRoleName = resultText(qrRoleSourceResult, 'pending_role_name') || resultText(qrRoleSourceResult, 'role_name');
|
||||
const qrAreaName = resultText(qrRoleSourceResult, 'pending_area_name') || resultText(qrRoleSourceResult, 'area_name');
|
||||
const qrPlatName = resultText(qrRoleSourceResult, 'pending_plat_name') || resultText(qrRoleSourceResult, 'plat_name');
|
||||
const qrCurrentRoleName = qrQueryRoleName
|
||||
|| resultText(qrResult, 'current_role_name')
|
||||
|| (
|
||||
resultFlag(qrResult, 'is_bound_act')
|
||||
? resultText(qrResult, 'role_name')
|
||||
: ''
|
||||
)
|
||||
|| (qrQueryIsBoundAct ? qrQueryRoleName : '');
|
||||
const qrCurrentAreaName = resultText(qrQueryResult, 'area_name')
|
||||
|| resultText(qrResult, 'current_area_name')
|
||||
|| (
|
||||
resultFlag(qrResult, 'is_bound_act')
|
||||
? resultText(qrResult, 'area_name')
|
||||
: ''
|
||||
)
|
||||
|| (qrQueryIsBoundAct ? resultText(qrQueryResult, 'area_name') : '');
|
||||
const qrCurrentPlatName = resultText(qrQueryResult, 'plat_name')
|
||||
|| resultText(qrResult, 'current_plat_name')
|
||||
|| (
|
||||
resultFlag(qrResult, 'is_bound_act')
|
||||
? resultText(qrResult, 'plat_name')
|
||||
: ''
|
||||
)
|
||||
|| (qrQueryIsBoundAct ? resultText(qrQueryResult, 'plat_name') : '');
|
||||
const qrCurrentRoleName = isXpdBindTask
|
||||
? resultText(qrResult, 'before_role_name')
|
||||
: (qrQueryRoleName
|
||||
|| resultText(qrResult, 'current_role_name')
|
||||
|| (
|
||||
resultFlag(qrResult, 'is_bound_act')
|
||||
? resultText(qrResult, 'role_name')
|
||||
: ''
|
||||
)
|
||||
|| (qrQueryIsBoundAct ? qrQueryRoleName : ''));
|
||||
const qrCurrentAreaName = isXpdBindTask
|
||||
? resultText(qrResult, 'before_area_name')
|
||||
: (resultText(qrQueryResult, 'area_name')
|
||||
|| resultText(qrResult, 'current_area_name')
|
||||
|| (
|
||||
resultFlag(qrResult, 'is_bound_act')
|
||||
? resultText(qrResult, 'area_name')
|
||||
: ''
|
||||
)
|
||||
|| (qrQueryIsBoundAct ? resultText(qrQueryResult, 'area_name') : ''));
|
||||
const qrCurrentPlatName = isXpdBindTask
|
||||
? resultText(qrResult, 'before_plat_name')
|
||||
: (resultText(qrQueryResult, 'plat_name')
|
||||
|| resultText(qrResult, 'current_plat_name')
|
||||
|| (
|
||||
resultFlag(qrResult, 'is_bound_act')
|
||||
? resultText(qrResult, 'plat_name')
|
||||
: ''
|
||||
)
|
||||
|| (qrQueryIsBoundAct ? resultText(qrQueryResult, 'plat_name') : ''));
|
||||
const qrRoleLine = qrBindReady
|
||||
? [qrPlatName, qrAreaName, qrRoleName].filter(Boolean).join(' - ')
|
||||
: '';
|
||||
|
||||
Reference in New Issue
Block a user