吸收数字员工管理端通知运营预览
This commit is contained in:
@@ -1083,7 +1083,7 @@ function checkDigitalOpsNotificationReportWorkbenches() {
|
||||
[dailyReportWorkbench, "请求审批", "daily report approval UI"],
|
||||
[dailyReportWorkbench, "确认回执", "daily report confirmation UI"],
|
||||
[docs, "完整人机介入入口", "docs managed service ops absorption"],
|
||||
[docs, "真实管理端通知页面预览", "docs notification workbench absorption"],
|
||||
[docs, "正式管理端通知运营预览", "docs notification workbench absorption"],
|
||||
[docs, "诊断修复动作预览", "docs diagnostic repair absorption"],
|
||||
[docs, "管理端正式日报页面预览", "docs daily report workbench absorption"],
|
||||
];
|
||||
@@ -1602,6 +1602,90 @@ function checkDigitalAdminRouteGovernanceWorkbench() {
|
||||
console.log("[DigitalEmployeeCheck] admin route governance workbench hooks OK");
|
||||
}
|
||||
|
||||
function checkDigitalAdminNotificationWorkbench() {
|
||||
console.log("\n[DigitalEmployeeCheck] Verify admin notification workbench hooks");
|
||||
const backendRoot = path.resolve(packageRoot, "..", "..", "..", "qiming-backend");
|
||||
const qimingRoot = path.resolve(packageRoot, "..", "..", "..", "qiming");
|
||||
const servicePath = path.join(
|
||||
backendRoot,
|
||||
"app-platform-modules",
|
||||
"app-platform-agent",
|
||||
"app-platform-agent-core-application",
|
||||
"src",
|
||||
"main",
|
||||
"java",
|
||||
"com",
|
||||
"xspaceagi",
|
||||
"agent",
|
||||
"core",
|
||||
"application",
|
||||
"service",
|
||||
"DigitalEmployeeSyncApplicationServiceImpl.java",
|
||||
);
|
||||
const dtoPath = path.join(
|
||||
backendRoot,
|
||||
"app-platform-modules",
|
||||
"app-platform-agent",
|
||||
"app-platform-agent-core-adapter",
|
||||
"src",
|
||||
"main",
|
||||
"java",
|
||||
"com",
|
||||
"xspaceagi",
|
||||
"agent",
|
||||
"core",
|
||||
"adapter",
|
||||
"dto",
|
||||
"digital",
|
||||
"DigitalEmployeeAdminWorkbenchRowDto.java",
|
||||
);
|
||||
const testPath = path.join(
|
||||
backendRoot,
|
||||
"app-platform-modules",
|
||||
"app-platform-agent",
|
||||
"app-platform-agent-core-application",
|
||||
"src",
|
||||
"test",
|
||||
"java",
|
||||
"com",
|
||||
"xspaceagi",
|
||||
"agent",
|
||||
"core",
|
||||
"application",
|
||||
"service",
|
||||
"DigitalEmployeeSyncApplicationServiceImplTest.java",
|
||||
);
|
||||
const qimingOpsPath = path.join(qimingRoot, "src", "pages", "SystemManagement", "Content", "DigitalEmployeeOps", "index.tsx");
|
||||
const qimingTypesPath = path.join(qimingRoot, "src", "types", "interfaces", "systemManage.ts");
|
||||
const docsPath = path.resolve(packageRoot, "..", "..", "docs", "digital-employee-frontend-integration-plan.md");
|
||||
const service = fs.readFileSync(servicePath, "utf8");
|
||||
const dto = fs.readFileSync(dtoPath, "utf8");
|
||||
const test = fs.readFileSync(testPath, "utf8");
|
||||
const qimingOps = fs.readFileSync(qimingOpsPath, "utf8");
|
||||
const qimingTypes = fs.readFileSync(qimingTypesPath, "utf8");
|
||||
const docs = fs.readFileSync(docsPath, "utf8");
|
||||
const requiredSnippets = [
|
||||
[service, "notifications", "backend notification view"],
|
||||
[service, "isNotificationRow", "backend notification matcher"],
|
||||
[dto, "notification_id", "backend notification id row field"],
|
||||
[service, "action_notification", "backend action notification classifier"],
|
||||
[service, "notification", "backend notification kind classifier"],
|
||||
[test, "queryAdminWorkbenchNotificationsReturnsNotificationRowsOnly", "backend notification workbench test"],
|
||||
[qimingTypes, "notifications", "qiming notification view type"],
|
||||
[qimingOps, "通知运营", "qiming notification workbench tab"],
|
||||
[qimingOps, "标记已读", "qiming notification read action"],
|
||||
[qimingOps, "忽略", "qiming notification dismiss action"],
|
||||
[docs, "正式管理端通知运营预览", "docs notification workbench absorption"],
|
||||
];
|
||||
const missing = requiredSnippets
|
||||
.filter(([content, snippet]) => !content.includes(snippet))
|
||||
.map(([, , label]) => label);
|
||||
if (missing.length > 0) {
|
||||
throw new Error(`Missing admin notification workbench hooks: ${missing.join(", ")}`);
|
||||
}
|
||||
console.log("[DigitalEmployeeCheck] admin notification workbench hooks OK");
|
||||
}
|
||||
|
||||
function checkLocalDatabaseSchema() {
|
||||
console.log("\n[DigitalEmployeeCheck] Verify local SQLite digital schema");
|
||||
const dbPath = path.join(os.homedir(), ".qimingclaw", "qimingclaw.db");
|
||||
@@ -1667,6 +1751,7 @@ function main() {
|
||||
checkDigitalAdminApprovalGovernanceWorkbench();
|
||||
checkDigitalAdminServiceOperationsWorkbench();
|
||||
checkDigitalAdminRouteGovernanceWorkbench();
|
||||
checkDigitalAdminNotificationWorkbench();
|
||||
checkLocalDatabaseSchema();
|
||||
console.log("\n[DigitalEmployeeCheck] All checks passed");
|
||||
} catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user