优化快手 Cloud 主链路状态机
This commit is contained in:
@@ -3,6 +3,12 @@ import QRCode from "qrcode";
|
||||
import { ElMessageBox } from "element-plus";
|
||||
|
||||
import { showError, showSuccess } from "@/lib/feedback";
|
||||
import {
|
||||
hasKuaishouCloudRedeemResultStatus,
|
||||
isClaimInactiveTaskStatus,
|
||||
isKuaishouCloudCompletedStatus,
|
||||
isKuaishouCloudRoleConfirmedStatus,
|
||||
} from "@/domain/task-status";
|
||||
import { formatAdminDateTime } from "@/utils/admin-time";
|
||||
import {
|
||||
confirmKuaishouCloudClaimRole,
|
||||
@@ -75,7 +81,7 @@ export function useKuaishouCloudClaim(token: () => string) {
|
||||
const canEnterBindingStep = computed(() => isTicketVerified.value);
|
||||
const isRoleReady = computed(() => Boolean(roleName.value || roleId.value));
|
||||
const isRoleConfirmed = computed(
|
||||
() => String(task.value?.status || "").trim() === "role_confirmed"
|
||||
() => isKuaishouCloudRoleConfirmedStatus(task.value?.status)
|
||||
);
|
||||
const isDispatched = computed(
|
||||
() => String(flow.value?.dispatch.status || "").trim() === "success"
|
||||
@@ -83,28 +89,17 @@ export function useKuaishouCloudClaim(token: () => string) {
|
||||
|
||||
const isCompleted = computed(
|
||||
() =>
|
||||
String(task.value?.status || "").trim() === "completed" ||
|
||||
isKuaishouCloudCompletedStatus(task.value?.status) ||
|
||||
String(flow.value?.consume.status || "").trim() === "success"
|
||||
);
|
||||
|
||||
const hasRedeemResult = computed(() => {
|
||||
const status = String(task.value?.status || "").trim();
|
||||
return (
|
||||
isDispatched.value ||
|
||||
[
|
||||
"dispatched_pending_return",
|
||||
"completed",
|
||||
"manual_review",
|
||||
"failed",
|
||||
].includes(status)
|
||||
);
|
||||
return isDispatched.value || hasKuaishouCloudRedeemResultStatus(task.value?.status);
|
||||
});
|
||||
|
||||
const canSubmitTicket = computed(
|
||||
() =>
|
||||
!["completed", "manual_review", "closed", "expired"].includes(
|
||||
String(task.value?.status || "").trim()
|
||||
) && !submitting.value
|
||||
!isClaimInactiveTaskStatus(task.value?.status) && !submitting.value
|
||||
);
|
||||
|
||||
const currentStep = computed(() => {
|
||||
@@ -323,12 +318,10 @@ export function useKuaishouCloudClaim(token: () => string) {
|
||||
}
|
||||
|
||||
function resolveNextPollDelay() {
|
||||
const taskStatus = String(task.value?.status || "").trim();
|
||||
|
||||
if (
|
||||
!flow.value ||
|
||||
hasRedeemResult.value ||
|
||||
["closed", "expired", "manual_review", "failed"].includes(taskStatus)
|
||||
isClaimInactiveTaskStatus(task.value?.status)
|
||||
) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user