zhou zhou
3 小时以前 6477d7156272a6f1fe126c781958369bb10970c6
rsf-admin/src/i18n/en.js
@@ -126,6 +126,7 @@
    },
    create: {
        title: 'Create',
        init: 'Init',
        empty: {
            title: 'Data Empty',
            desc: 'Please Create Data First',
@@ -136,6 +137,7 @@
        title: 'Update'
    },
    menu: {
        basStationArea: 'BasStationArea',
        dashboard: 'Dashboard',
        settings: 'Settings',
        basicInfo: 'BasicInfo',
@@ -148,6 +150,10 @@
        token: 'Token',
        operation: 'Operation',
        config: 'Config',
        aiParam: 'AI Params',
        aiPrompt: 'Prompts',
        aiMcpMount: 'MCP Mounts',
        aiCallLog: 'AI Observe',
        tenant: 'Tenant',
        userLogin: 'Token',
        customer: 'Customer',
@@ -157,6 +163,7 @@
        warehouse: 'Warehouse',
        warehouseAreas: 'WarehouseAreas',
        loc: 'Loc',
        locItem: 'LocItem',
        locType: 'LocType',
        locArea: 'locArea',
        locAreaMat: 'Logic Areas',
@@ -216,10 +223,472 @@
        locDeadReport: 'Locs Dead Report',
        stockStatistic: 'Stock Statistic',
        statisticCount: 'Statistic Count',
        preparation: "备料单",
        menuPda: 'MenuPda',
        taskPathTemplate: 'TaskPathTemplate',
        taskPathTemplateNode: 'TaskPathTemplateNode',
        subsystemFlowTemplate: 'SubsystemFlowTemplate',
        flowStepTemplate: 'FlowStepTemplate',
        taskPathTemplateMerge: 'TaskPathTemplateMerge',
        missionFlowStepInstance: 'Mission Flow Steps',
    },
    ai: {
        common: {
            cancel: "Cancel",
            close: "Close",
            save: "Save",
            new: "New",
            detail: "Details",
            delete: "Delete",
            enabled: "Enabled",
            disabled: "Disabled",
            saveSuccess: "Saved successfully",
            updateSuccess: "Updated successfully",
            deleteSuccess: "Deleted successfully",
            deleteFailed: "Delete failed",
            operationFailed: "Operation failed",
            confirmDelete: "Delete \"%{name}\"?",
            none: "None",
            notValidated: "Not validated",
            notTested: "Not tested",
            lastUpdatedBy: "Last updated by",
            lastUpdatedAt: "Last updated at",
            target: "Target",
            lastTest: "Last test",
            prompt: "Prompt",
            model: "Model",
            error: "Error",
            testing: "Testing...",
        },
        runtimeSummary: {
            fetchFailed: "Failed to load runtime summary",
            title: "Current Runtime",
            description: "Shows the active model, prompt, and MCP mounts.",
            currentModel: "Current Model",
            validateStatus: "Validate %{status}",
            currentPrompt: "Current Prompt",
            lastUpdated: "Last updated: %{time} / %{user}",
            enabledMcp: "Enabled MCP",
            enabledMcpCount: "%{count} enabled",
        },
        param: {
            fields: {
                providerType: "Provider Type",
                model: "Model",
                baseUrl: "Base URL",
                apiKey: "API Key",
                temperature: "Temperature",
                topP: "Top P",
                maxTokens: "Max Tokens",
                timeoutMs: "Timeout(ms)",
                streamingEnabled: "Enable Streaming",
                validateStatus: "Latest Validate Status",
                lastValidateElapsedMs: "Latest Validate Elapsed(ms)",
                lastValidateTime: "Latest Validate Time",
                lastValidateMessage: "Latest Validate Result",
            },
            list: {
                emptyTitle: "No AI parameter configs",
                emptyDescription: "Create an OpenAI-compatible model card first.",
                streaming: "Streaming",
                nonStreaming: "Non-streaming",
            },
            dialog: {
                create: "New AI Parameter",
                edit: "Edit AI Parameter",
                show: "View AI Parameter Details",
            },
            validate: {
                success: "AI parameter validation succeeded",
                failed: "AI parameter validation failed",
                loading: "Validating...",
                beforeSave: "Validate Before Save",
                description: "Validates the current Base URL, API Key, and model directly.",
            },
            form: {
                sections: {
                    main: "Main Configuration",
                    runtime: "Runtime and Audit",
                },
            },
        },
        prompt: {
            fields: {
                code: "Code",
                scene: "Scene",
                systemPrompt: "System Prompt",
                userPromptTemplate: "User Prompt Template",
            },
            list: {
                emptyTitle: "No prompt configs",
                emptyDescription: "Once you create a prompt card, AI chat will load it dynamically.",
                sceneValue: "Scene: %{value}",
            },
            dialog: {
                create: "New Prompt",
                edit: "Edit Prompt",
                show: "View Prompt Details",
            },
            preview: {
                defaultInput: "Please summarize what this page can do",
                success: "Prompt preview generated",
                failed: "Prompt preview failed",
                title: "Prompt Preview",
                input: "Sample Input",
                metadata: "Sample Metadata JSON",
                loading: "Rendering...",
                render: "Render Preview",
                description: "Render the System Prompt and User Prompt with the current form values.",
                resolvedVariables: "Resolved variables: %{value}",
                renderedSystemPrompt: "Rendered System Prompt",
                renderedUserPrompt: "Rendered User Prompt",
            },
            form: {
                sections: {
                    main: "Prompt Configuration",
                    runtime: "Runtime and Audit",
                },
            },
        },
        mcp: {
            fields: {
                transportType: "Transport Type",
                builtinCode: "Built-in MCP",
                serverUrl: "Server URL",
                endpoint: "SSE Endpoint",
                headersJson: "Headers JSON",
                command: "Command",
                argsJson: "Args JSON",
                envJson: "Env JSON",
                requestTimeoutMs: "Timeout(ms)",
                sort: "Sort",
                healthStatus: "Health Status",
                lastInitElapsedMs: "Last Init Elapsed(ms)",
                lastTestTime: "Last Test Time",
                lastTestMessage: "Last Test Result",
            },
            groups: {
                builtin: {
                    title: "Built-in MCP",
                    description: "Built-in tool mounts for exposing platform capabilities directly.",
                },
                sse: {
                    title: "Remote SSE MCP",
                    description: "Mount external tools through a remote MCP server.",
                },
                stdio: {
                    title: "Local STDIO MCP",
                    description: "Mount external MCP tools through a local command process.",
                },
            },
            health: {
                healthy: "Healthy",
                unhealthy: "Failed",
            },
            list: {
                emptyTitle: "No MCP mounts",
                emptyDescription: "Create a built-in MCP, remote SSE mount, or local STDIO mount.",
                sortValue: "Sort %{value}",
                timeoutValue: "Timeout %{value} ms",
                initValue: "Init %{value} ms",
                noConnectivityTest: "No connectivity test has been run yet",
                connectivityTest: "Connectivity Test",
            },
            dialog: {
                create: "New MCP Mount",
                edit: "Edit MCP Mount",
                show: "View MCP Mount Details",
            },
            connectivity: {
                success: "Connectivity test completed",
                failed: "Connectivity test failed",
            },
            form: {
                testBeforeSave: "Test Before Save",
                testDescription: "Validate connectivity directly with the current draft without saving.",
                sections: {
                    main: "MCP Mount Configuration",
                    runtime: "Runtime Info",
                },
            },
            tools: {
                schemaParseFailed: "Failed to parse input schema: %{message}",
                loadFailed: "Failed to load tools",
                inputRequired: "Please enter tool test JSON",
                testSuccess: "Tool %{name} test completed",
                testFailed: "Tool test failed",
                saveBeforePreview: "Save the mount before previewing tools and running tests.",
                title: "Tool Preview and Test",
                description: "Supports connectivity checks, structured schema preview, and generated test forms from input parameters.",
                refresh: "Refresh Tools",
                noTools: "No tools were resolved for this mount.",
                connectivityInit: "Init %{value} ms",
                connectivityToolCount: "Tools %{count}",
                purpose: "Purpose: %{value}",
                fieldCount: "%{count} fields",
                returnDirect: "Return Direct",
                normal: "Normal",
                queryBoundary: "Query boundary: %{value}",
                exampleQuestions: "Example Questions",
                formattedSchema: "Formatted Input Schema",
                testInput: "Test Input JSON",
                testInputPlaceholder: "Example: {\"code\":\"A01\"}",
                executeTest: "Run Test",
                testResult: "Test Result",
            },
        },
        observe: {
            fields: {
                requestId: "Request ID",
                promptCode: "Prompt Code",
                userId: "User ID",
                sessionId: "Session ID",
                mountedMcp: "MCP Mounts",
            },
            summary: {
                fetchFailed: "Failed to load AI observe stats",
                title: "Observe Overview",
                description: "Statistics for AI chats and MCP tool calls in the current tenant.",
                callCount: "AI Calls",
                successFailure: "Success %{success} / Failed %{failure}",
                avgElapsed: "Average Elapsed",
                firstToken: "First token %{value} ms",
                tokenUsage: "Token Usage",
                avgToken: "Average %{value}",
                toolSuccessRate: "Tool Success Rate",
                toolCallFailure: "Calls %{call} / Failed %{failure}",
            },
            status: {
                completed: "Success",
                failed: "Failed",
                aborted: "Aborted",
            },
            detail: {
                mcpLogsFailed: "Failed to load MCP call logs",
                title: "AI Call Details",
                mcpLogs: "MCP Tool Call Logs",
                noMcpLogs: "No MCP tool logs were generated for this call.",
                inputSummary: "Input Summary",
                outputSummary: "Output Summary / Error",
            },
            list: {
                emptyTitle: "No AI call logs",
                emptyDescription: "After starting AI chats, statistics and audit records will appear here.",
                userValue: "User %{value}",
                elapsedValue: "Elapsed %{value} ms",
                tokenValue: "Token %{value}",
                mcpToolCalls: "MCP / Tool Calls",
                mcpToolSummary: "%{mcp} mounts, %{success} tool successes, %{failure} failures",
            },
        },
        drawer: {
            title: "AI Chat",
            runtimeFailed: "Failed to load AI runtime",
            sessionListFailed: "Failed to load AI sessions",
            sessionDeleted: "Session deleted",
            deleteSessionFailed: "Failed to delete AI session",
            pinned: "Session pinned",
            unpinned: "Session unpinned",
            pinFailed: "Failed to update session pin state",
            renamed: "Session renamed",
            renameFailed: "Failed to rename session",
            memoryCleared: "Session memory cleared",
            clearMemoryFailed: "Failed to clear session memory",
            retainLatestRoundSuccess: "Only the latest round was kept",
            retainLatestRoundFailed: "Failed to keep only the latest round",
            stopSuccess: "Current output stopped",
            chatFailed: "AI chat failed",
            newSession: "New Session",
            sessionList: "Sessions",
            searchPlaceholder: "Search session titles",
            noSessions: "No history sessions",
            sessionTitle: "Session %{id}",
            pinAction: "Pin session",
            unpinAction: "Unpin session",
            renameAction: "Rename session",
            deleteAction: "Delete session",
            toolTrace: "Tool Trace",
            thinkingProcess: "Thinking Process",
            thinkingExpand: "Show Thinking Process",
            thinkingCollapse: "Hide Thinking Process",
            thinkingEmpty: "Organizing the current stage information...",
            thinkingStatusStarted: "Started",
            thinkingStatusUpdated: "In Progress",
            thinkingStatusCompleted: "Completed",
            thinkingStatusFailed: "Failed",
            thinkingStatusAborted: "Aborted",
            noToolTrace: "No tool call was triggered in this round",
            unknownTool: "Unknown tool",
            toolStatusFailed: "Failed",
            toolStatusCompleted: "Completed",
            toolStatusRunning: "Running",
            collapseDetail: "Hide Details",
            viewDetail: "View Details",
            toolInput: "Input: %{value}",
            toolOutput: "Output summary: %{value}",
            toolError: "Error: %{value}",
            hasSummary: "Summary",
            noSummary: "No Summary",
            hasFacts: "Facts",
            noFacts: "No Facts",
            retainLatestRound: "Keep Latest Round",
            clearMemory: "Clear Memory",
            loadingRuntime: "Loading AI runtime info...",
            emptyHint: "AI responses stream back through SSE here. You can also maintain parameters, prompts, and MCP mounts from the quick links above.",
            userRole: "You",
            assistantRole: "AI",
            thinking: "Thinking...",
            inputPlaceholder: "Type your question. Press Enter to send, Shift + Enter for a new line",
            clearInput: "Clear Input",
            stop: "Stop",
            send: "Send",
            renameDialogTitle: "Rename Session",
            sessionTitleField: "Session Title",
            requestMetric: "Req: %{value}",
            sessionMetric: "Session: %{id}",
            promptMetric: "Prompt: %{value}",
            modelMetric: "Model: %{value}",
            mcpMetric: "MCP: %{value}",
            historyMetric: "History: %{value}",
            recentMetric: "Recent: %{value}",
            elapsedMetric: "Elapsed: %{value} ms",
            firstTokenMetric: "First token: %{value} ms",
            tokenMetric: "Tokens: prompt %{prompt} / completion %{completion} / total %{total}",
        },
    },
    table: {
        field: {
            basStationArea: {
                type: "type",
                stationAreaName: "stationAreaName",
                inAble: "inAble",
                outAble: "outAble",
                useStatus: "useStatus",
                area: "area",
                isCrossZone: "isCrossZone",
                crossZoneArea: "crossZoneArea",
                isWcs: "isWcs",
                wcsData: "wcsData",
                containerType: "containerType",
                barcode: "barcode",
                autoTransfer: "autoTransfer",
                stationAreaId: "stationAreaId",
                stationAlias: "stationAlias",
            },
            taskPathTemplateMerge: {
                templateCode: "templateCode",
                templateName: "templateName",
                sourceType: "sourceType",
                targetType: "targetType",
                conditionExpression: "conditionExpression",
                conditionDesc: "conditionDesc",
                version: "version",
                isCurrent: "isCurrent",
                effectiveTime: "effectiveTime",
                expireTime: "expireTime",
                priority: "priority",
                timeoutMinutes: "timeoutMinutes",
                maxRetryTimes: "maxRetryTimes",
                retryIntervalSeconds: "retryIntervalSeconds",
                remark: "remark",
                stepSize: "stepSize",
            },
            flowStepTemplate: {
                flowId: "flowId",
                flowCode: "flowCode",
                stepOrder: "stepOrder",
                stepCode: "stepCode",
                stepName: "stepName",
                stepType: "stepType",
                actionType: "actionType",
                actionConfig: "actionConfig",
                inputMapping: "inputMapping",
                outputMapping: "outputMapping",
                conditionExpression: "conditionExpression",
                skipOnFail: "skipOnFail",
                retryEnabled: "retryEnabled",
                retryConfig: "retryConfig",
                timeoutSeconds: "timeoutSeconds",
            },
            flowStepInstance: {
                flowInstanceId: "Flow Instance ID",
                flowInstanceNo: "Flow Instance No",
                stepTemplateId: "Step Template ID",
                errorCode: "Error Code",
                errorMessage: "Error Message",
                startTime: "Start Time",
                endTime: "End Time",
                durationSeconds: "Duration(s)",
                inputData: "Input Data",
                outputData: "Output Data",
                retryTimes: "Retry Times",
                id: "ID",
                stepOrder: "Step Order",
                stepCode: "Step Code",
                stepName: "Step Name",
                stepType: "Step Type",
                status: "Status",
                executeResult: "Execute Result",
                taskNo: "Task No",
                createTime: "Create Time",
                wmsNextTaskStatus: "WMS Next Task Status",
                wmsNowTaskStatus: "WMS Now Task Status",
            },
            subsystemFlowTemplate: {
                flowCode: "flowCode",
                flowName: "flowName",
                systemCode: "systemCode",
                systemName: "systemName",
                nodeType: "nodeType",
                version: "version",
                isCurrent: "isCurrent",
                effectiveTime: "effectiveTime",
                timeoutStrategy: "timeoutStrategy",
                timeoutSeconds: "timeoutSeconds",
                maxRetryTimes: "maxRetryTimes",
                needNotify: "needNotify",
                notifyTemplate: "notifyTemplate",
                remark: "remark",
            },
            taskPathTemplateNode: {
                templateId: "templateId",
                templateCode: "templateCode",
                nodeOrder: "nodeOrder",
                nodeCode: "nodeCode",
                nodeName: "nodeName",
                nodeType: "nodeType",
                systemCode: "systemCode",
                systemName: "systemName",
                executeParams: "executeParams",
                resultSchema: "resultSchema",
                timeoutMinutes: "timeoutMinutes",
                mandatory: "mandatory",
                parallelExecutable: "parallelExecutable",
                preCondition: "preCondition",
                postCondition: "postCondition",
                nextNodeRules: "nextNodeRules",
            },
            taskPathTemplate: {
                templateCode: "templateCode",
                templateName: "templateName",
                sourceType: "sourceType",
                targetType: "targetType",
                conditionExpression: "conditionExpression",
                conditionDesc: "conditionDesc",
                version: "version",
                isCurrent: "isCurrent",
                effectiveTime: "effectiveTime",
                expireTime: "expireTime",
                priority: "priority",
                timeoutMinutes: "timeoutMinutes",
                maxRetryTimes: "maxRetryTimes",
                retryIntervalSeconds: "retryIntervalSeconds",
                remark: "remark",
                createdBy: "createdBy",
                updatedBy: "updatedBy",
                createdTime: "createdTime",
                updatedTime: "updatedTime",
            },
            outBound: {
                stockWithdrawal: 'StockWithdrawal',
                withdrawal: 'Withdrawal'
@@ -227,10 +696,14 @@
            basContainer: {
                containerType: 'containerType',
                codeType: 'codeType',
                startNo: 'Start No',
                code: 'Barcode',
                endNo: 'End No',
                areas: 'areas',
            },
            basStation: {
                stationName: 'stationName',
                stationId: 'stationId',
                inAble: 'inAble',
                outAble: 'outAble',
                type: 'Site Type',
@@ -287,6 +760,26 @@
                sort: "sort",
            },
            menu: {
                name: "name",
                parentId: "parent id",
                parentName: "higher",
                path: "path",
                pathName: "pathName",
                route: "route",
                component: "component",
                brief: "brief",
                code: "code",
                type: "type",
                authority: "authority",
                icon: "icon",
                sort: "sort",
                meta: "meta",
                enums: {
                    menu: 'Menu',
                    button: 'Button',
                }
            },
            menuPda: {
                name: "name",
                parentId: "parent id",
                parentName: "higher",
@@ -377,6 +870,7 @@
                valid: "validity",
                validWarn: "validityWarn",
                flagCheck: "flagCheck",
                tenantId: "tenantId",
            },
            matnrGroup: {
                name: "name",
@@ -400,6 +894,7 @@
                name: "name",
                wareId: "ware",
                code: "code",
                sort: "Sort",
                shipperId: "shipperId",
                supplierId: "supplierId",
                flagMinus: "flagMinus",
@@ -916,6 +1411,8 @@
                deviceSite: "deviceSite",
                flagInit: "flagInit",
                channel: "channel",
                areaIdStart: "areaIdStart",
                areaIdEnd: "areaIdEnd",
            },
            waitPakin: {
                code: "code",
@@ -942,6 +1439,8 @@
            },
            waitPakinItem: {
                pakinId: "pakinId",
                type: "type",
                wkType: "wkType",
                maktx: "maktx",
                matnrId: "matnrId",
                matnrCode: "matnrCode",
@@ -1310,13 +1809,16 @@
        detail: "Detail",
        unenable: 'unenable',
        locInit: 'loc init',
        init: "Init",
        siteInit: 'site init',
        pathInit: 'Path init',
        batch: 'batch',
        pick: 'Pick',
        check: 'Check',
        confirm: 'confirm',
        cancel: "cancel",
        delete: 'Delete',
        copy: 'copy',
        query: "Query",
        bulkExport: "Bulk Export",
        continue: 'Continue Receipt',
@@ -1357,8 +1859,13 @@
        order: 'Orders',
        modiftySite: 'Modify SiteNo',
        selectWave: 'Select Wave Rule',
        flowStep: "Flow Step",
        jumpCurrent: "Jump To Current",
    },
    placeholder: {
        warehouseAreasCode: "use for warehouse areas code prefix",
    },
    request: {
        error: {
            stock: "Insufficient inventory to deliver !!",