Commit 1a4c1b8b authored by liguangyu06's avatar liguangyu06
Browse files

从 temp 选择性同步框架与用例到 main

合入自动化代码、用例 CSV/MD/spec/PO 及登录态修复;不含 knowledge-base、.cursor、data/scan 等 temp 全量备份内容。
parent f6eec849
# Auto-generated from basic-user-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/user/platform/person
# Scanned: 2026-10-20T07:54:40.566Z
# Page: 基础设置 > 用户管理 > 用户管理
# Note: advanced filter panel was opened during scan
# Note: filter dropdown was opened during scan
# Note: edit dialog was opened during scan
page: basic-user
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/user/platform/person
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_roleManage:
description: "角色管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "角色管理"
playwright: "page.getByRole('menuitem', { name: '角色管理' })"
menu_userManage:
description: "用户管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "用户管理"
playwright: "page.getByRole('menuitem', { name: '用户管理' })"
menu_unionUserManage:
description: "医共体用户管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "医共体用户管理"
playwright: "page.getByRole('menuitem', { name: '医共体用户管理' })"
userManage:
description: "用户管理"
element_type: tab
section: "main::main"
strategy: text
value: "用户管理"
playwright: "page.getByText('用户管理')"
tab_userManage:
description: "用户管理"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/user/platform/person"
playwright: "page.locator('#rc-tabs-0-tab-/basic/user/platform/person')"
el_e5a793e5908dInput:
description: "姓名、登录账号"
element_type: text
section: "main::main"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
el_e7a791e5aea4Select:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "科室"
playwright: "page.getByText('科室', { exact: true })"
el_e5a793e5908dInput_2:
description: "姓名"
element_type: search
section: "main::main"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
el_e8a792e889b2Select:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "角色"
playwright: "page.getByText('角色', { exact: true })"
el_e8a792e889b2Input:
description: "角色"
element_type: search
section: "main::main"
strategy: id
value: "form_item_roleCode"
playwright: "page.locator('#form_item_roleCode')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
advancedFilterBtn:
description: "高级筛选"
element_type: filter_trigger
section: "main::main"
strategy: css
value: ".advance-filter"
playwright: "page.locator('.advance-filter')"
addBtn:
description: "新 增"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新 增"
playwright: "page.getByRole('button', { name: '新 增' })"
el_457863656ce5afbce585a5Btn:
description: "Excel导入"
element_type: button
section: "main::main"
strategy: role
role: button
name: "Excel导入"
playwright: "page.getByRole('button', { name: 'Excel导入' })"
tableDensity:
description: "column-height"
element_type: span
section: "main::main"
strategy: label
value: "column-height"
playwright: "page.getByLabel('column-height')"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
el_e68e88e69d83Btn:
description: "授权"
element_type: button
section: "main::main"
strategy: role
role: button
name: "授权"
playwright: "page.getByRole('button', { name: '授权' })"
el_e9878de7bdaee5af86e7a081Btn:
description: "重置密码"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重置密码"
playwright: "page.getByRole('button', { name: '重置密码' })"
el_e5a793e5908dInput_3:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
el_e7a791e5aea4Input:
description: "科室"
element_type: search
section: "main::main"
strategy: id
value: "form_item_deptId"
playwright: "page.locator('#form_item_deptId')"
statusSelect:
description: "状态"
element_type: select
section: "main::main"
strategy: label_text
value: "状态"
playwright: "page.getByText('状态', { exact: true })"
filterApplyBtn:
description: "筛 选"
element_type: button
section: "main::main"
strategy: role
role: button
name: "筛 选"
playwright: "page.getByRole('button', { name: '筛 选' })"
# --- main::pagination ---
pagination_el_e585b1313432e69da13132333530e69da12fe9a1b5e8b7b3e887b3e9a1b5:
description: "共 142 条12350 条/页跳至页"
element_type: ul
section: "main::pagination"
strategy: text
value: "共 142 条12350 条/页跳至页"
playwright: "page.getByText('共 142 条12350 条/页跳至页')"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_page_2:
description: "2"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "2"
playwright: "page.getByText('2')"
pagination_page_3:
description: "3"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "3"
playwright: "page.getByText('3')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "50 条/页"
playwright: "page.getByText('50 条/页')"
# --- main::panel:高级筛选 ---
drawer_el_e5a793e5908dInput:
description: "请输入"
element_type: text
section: "main::panel:高级筛选"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
drawer_el_e7a791e5aea4Select:
description: "请选择"
element_type: select
section: "main::panel:高级筛选"
strategy: label_text
value: "科室"
playwright: "page.getByText('科室', { exact: true })"
drawer_el_e7a791e5aea4Input:
description: "科室"
element_type: search
section: "main::panel:高级筛选"
strategy: id
value: "form_item_deptId"
playwright: "page.locator('#form_item_deptId')"
drawer_el_e8a792e889b2Select:
description: "请选择"
element_type: select
section: "main::panel:高级筛选"
strategy: label_text
value: "角色"
playwright: "page.getByText('角色', { exact: true })"
drawer_el_e8a792e889b2Input:
description: "角色"
element_type: search
section: "main::panel:高级筛选"
strategy: id
value: "form_item_roleCode"
playwright: "page.locator('#form_item_roleCode')"
drawer_statusSelect:
description: "状态"
element_type: select
section: "main::panel:高级筛选"
strategy: label_text
value: "状态"
playwright: "page.getByText('状态', { exact: true })"
# --- main::panel:drawer:footer ---
# --- main::modal:编辑用户 ---
el_e8b4a6e58fb7Input:
description: "请输入"
element_type: text
section: "main::modal:编辑用户"
strategy: id
value: "form_item_userCode"
playwright: "page.locator('#form_item_userCode')"
el_e5a793e5908dInput_4:
description: "请输入"
element_type: text
section: "main::modal:编辑用户"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
el_e88194e7b3bbe696b9e5bc8fInput:
description: "请输入"
element_type: text
section: "main::modal:编辑用户"
strategy: id
value: "form_item_tel"
playwright: "page.locator('#form_item_tel')"
el_e58cbbe999a2e59198e5b7a5e7bc96e58fb7Input:
description: "请输入"
element_type: text
section: "main::modal:编辑用户"
strategy: id
value: "form_item_erpCode"
playwright: "page.locator('#form_item_erpCode')"
el_e7adbee5908de59bbee78987:
description: "签名图片"
element_type: span
section: "main::modal:编辑用户"
strategy: role
role: button
name: "签名图片"
playwright: "page.getByRole('button', { name: '签名图片' })"
el_e7a681e794a8:
description: "禁用"
element_type: radio
section: "main::modal:编辑用户"
strategy: text
value: "禁用"
playwright: "page.getByText('禁用')"
enable:
description: "启用"
element_type: radio
section: "main::modal:编辑用户"
strategy: text
value: "启用"
playwright: "page.getByText('启用')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:编辑用户"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
confirmBtn:
description: "确 定"
element_type: button
section: "main::modal:编辑用户"
strategy: role
role: button
name: "确 定"
playwright: "page.getByRole('button', { name: '确 定' })"
import type { Locator, Page } from '@playwright/test';
import { WhFlowSharedLocators } from './wh-flow-shared.locator';
/** 审批流程设置。选择器来自 locators/spd/flow-def.locator.yaml */
export class FlowDefLocators extends WhFlowSharedLocators {
readonly typeSearch: Locator;
readonly addFlowBtn: Locator;
readonly saveBtn: Locator;
readonly resetBtn: Locator;
readonly defaultFlow: Locator;
readonly customFlow: Locator;
readonly conditionCancel: Locator;
constructor(page: Page) {
super(page);
this.typeSearch = page.getByPlaceholder('流程名称');
this.addFlowBtn = page.getByRole('button', { name: '新增流程' });
this.saveBtn = page.getByRole('button', { name: /保\s*存/ });
this.resetBtn = page.getByRole('button', { name: /重\s*置/ });
this.defaultFlow = page.getByText('默认审批流', { exact: true }).first();
this.customFlow = page.getByText('自定义审批流', { exact: true }).first();
this.conditionCancel = page.getByRole('button', { name: /取\s*消/ });
}
typeItems(): Locator {
return this.page.locator(
'.ant-layout-sider .ant-menu-item, .ant-layout-sider li, [class*="left"] .ant-menu-item, [class*="biz"] li',
);
}
selectedType(): Locator {
return this.page
.locator('.ant-layout-sider .ant-menu-item-selected, .ant-layout-sider .ant-menu-item-active, [class*="selected"]')
.first();
}
}
# Auto-generated from flow-def-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/flowSet/workflow/flowSet
# Scanned: 2026-10-20T09:05:57.781Z
# Page: 基础设置 > 流程设置 > 审批流程设置
page: flow-def
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/flowSet/workflow/flowSet
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_el_e5aea1e689b9e6b581e7a88be8aebee7bdae:
description: "审批流程设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "审批流程设置"
playwright: "page.getByRole('menuitem', { name: '审批流程设置' })"
menu_el_e5aea1e689b9e6b581e5ae9ee4be8b:
description: "审批流实例"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "审批流实例"
playwright: "page.getByRole('menuitem', { name: '审批流实例' })"
el_e5aea1e689b9e6b581e7a88be8aebee7bdae:
description: "审批流程设置"
element_type: tab
section: "main::main"
strategy: text
value: "审批流程设置"
playwright: "page.getByText('审批流程设置')"
tab_el_e5aea1e689b9e6b581e7a88be8aebee7bdae:
description: "审批流程设置"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/flowSet/workflow/flowSet"
playwright: "page.locator('#rc-tabs-0-tab-/basic/flowSet/workflow/flowSet')"
el_e5aea1e689b9e6b581e7a88be8aebee7bdaeInput:
description: "流程名称"
element_type: text
section: "main::main"
strategy: placeholder
value: "流程名称"
playwright: "page.getByPlaceholder('流程名称')"
el_e696b0e5a29ee6b581e7a88bBtn:
description: "新增流程"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新增流程"
playwright: "page.getByRole('button', { name: '新增流程' })"
Input:
description: "1"
element_type: text
section: "main::main"
strategy: id
value: "form_item_pageList_0_modelName"
playwright: "page.locator('#form_item_pageList_0_modelName')"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
el_e588a0e999a4Btn:
description: "删除"
element_type: button
section: "main::main"
strategy: role
role: button
name: "删除"
playwright: "page.getByRole('button', { name: '删除' })"
2Input_2:
description: "2"
element_type: text
section: "main::main"
strategy: id
value: "form_item_pageList_1_modelName"
playwright: "page.locator('#form_item_pageList_1_modelName')"
saveBtn:
description: "保 存"
element_type: button
section: "main::main"
strategy: role
role: button
name: "保 存"
playwright: "page.getByRole('button', { name: '保 存' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
form_item_pagelist_2_modelnameInput:
description: "text"
element_type: text
section: "main::main"
strategy: id
value: "form_item_pageList_2_modelName"
playwright: "page.locator('#form_item_pageList_2_modelName')"
# --- main::modal:条件配置 ---
el_e6b7bbe58aa0Btn:
description: "添 加"
element_type: button
section: "main::modal:条件配置"
strategy: role
role: button
name: "添 加"
playwright: "page.getByRole('button', { name: '添 加' })"
el_e698afe590a6e8b685e99990Select:
description: "是否超限"
element_type: select
section: "main::modal:条件配置"
strategy: text
value: "是否超限"
playwright: "page.getByText('是否超限')"
form_item_tablelist_0_conditiontypeInput:
description: "search"
element_type: search
section: "main::modal:条件配置"
strategy: id
value: "form_item_tableList_0_conditionType"
playwright: "page.locator('#form_item_tableList_0_conditionType')"
el_e698afSelect:
description: "是"
element_type: select
section: "main::modal:条件配置"
strategy: text
value: "是"
playwright: "page.getByText('是')"
form_item_tablelist_0_conditiontextInput:
description: "search"
element_type: search
section: "main::modal:条件配置"
strategy: id
value: "form_item_tableList_0_conditionText"
playwright: "page.locator('#form_item_tableList_0_conditionText')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:条件配置"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
import type { Locator, Page } from '@playwright/test';
import { WhFlowSharedLocators } from './wh-flow-shared.locator';
/** 审批流实例。选择器来自 locators/spd/flow-inst.locator.yaml */
export class FlowInstLocators extends WhFlowSharedLocators {
readonly orderNo: Locator;
readonly summary: Locator;
readonly startDate: Locator;
readonly endDate: Locator;
readonly queryBtn: Locator;
readonly resetBtn: Locator;
readonly detailBtn: Locator;
readonly backBtn: Locator;
constructor(page: Page) {
super(page);
this.orderNo = page.locator('#form_item_orderNo').or(page.getByPlaceholder('单据编号')).first();
this.summary = page.locator('#form_item_msg').or(page.getByPlaceholder('摘要')).first();
this.startDate = page.locator('#form_item_dateValue').first();
this.endDate = page.getByPlaceholder('截止时间').first();
this.queryBtn = page.getByRole('button', { name: /查\s*询/ });
this.resetBtn = page.getByRole('button', { name: /重\s*置/ });
this.detailBtn = page.getByRole('button', { name: '详情' });
this.backBtn = page.getByRole('button', { name: /返\s*回/ });
}
statusSelect(): Locator {
return this.page.locator('.ant-form-item').filter({ hasText: '审批状态' }).locator('.ant-select').first();
}
bizTypeSelect(): Locator {
return this.page.locator('.ant-form-item').filter({ hasText: '业务类型' }).locator('.ant-select').first();
}
}
# Auto-generated from flow-inst-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/flowSet/workflow/flowCase
# Scanned: 2026-10-20T09:08:51.288Z
# Page: 基础设置 > 流程设置 > 审批流实例
# Note: filter dropdown was opened during scan
# Note: detail view was opened during scan
page: flow-inst
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/flowSet/workflow/flowCase
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_el_e5aea1e689b9e6b581e7a88be8aebee7bdae:
description: "审批流程设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "审批流程设置"
playwright: "page.getByRole('menuitem', { name: '审批流程设置' })"
menu_el_e5aea1e689b9e6b581e5ae9ee4be8b:
description: "审批流实例"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "审批流实例"
playwright: "page.getByRole('menuitem', { name: '审批流实例' })"
el_e5aea1e689b9e6b581e5ae9ee4be8b:
description: "审批流实例"
element_type: tab
section: "main::main"
strategy: text
value: "审批流实例"
playwright: "page.getByText('审批流实例')"
tab_el_e5aea1e689b9e6b581e5ae9ee4be8b:
description: "审批流实例"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/flowSet/workflow/flowCase"
playwright: "page.locator('#rc-tabs-0-tab-/basic/flowSet/workflow/flowCase')"
documentNo:
description: "单据编号"
element_type: text
section: "main::main"
strategy: id
value: "form_item_orderNo"
playwright: "page.locator('#form_item_orderNo')"
el_e5aea1e689b9e78ab6e68081Select:
description: "审批状态"
element_type: select
section: "main::main"
strategy: label_text
value: "审批状态"
playwright: "page.getByText('审批状态', { exact: true })"
el_e5aea1e689b9e78ab6e68081Input:
description: "审批状态"
element_type: search
section: "main::main"
strategy: id
value: "form_item_procState"
playwright: "page.locator('#form_item_procState')"
el_e58f91e8b5b7e697b6e997b4DateRange:
description: "发起时间"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "发起时间"
playwright: "page.getByText('发起时间', { exact: true })"
el_e58f91e8b5b7e697b6e997b4Input:
description: "开始时间"
element_type: text
section: "main::main"
strategy: id
value: "form_item_dateValue"
playwright: "page.locator('#form_item_dateValue')"
el_e58f91e8b5b7e697b6e997b4Input_2:
description: "截止时间"
element_type: text
section: "main::main"
strategy: placeholder
value: "截止时间"
playwright: "page.getByPlaceholder('截止时间')"
el_e4b89ae58aa1e7b1bbe59e8bSelect:
description: "业务类型"
element_type: select
section: "main::main"
strategy: label_text
value: "业务类型"
playwright: "page.getByText('业务类型', { exact: true })"
el_e4b89ae58aa1e7b1bbe59e8bInput:
description: "业务类型"
element_type: search
section: "main::main"
strategy: id
value: "form_item_businessType"
playwright: "page.locator('#form_item_businessType')"
el_e69198e8a681Input:
description: "摘要"
element_type: text
section: "main::main"
strategy: id
value: "form_item_msg"
playwright: "page.locator('#form_item_msg')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
tableDensity:
description: "column-height"
element_type: span
section: "main::main"
strategy: label
value: "column-height"
playwright: "page.getByLabel('column-height')"
detailBtn:
description: "详情"
element_type: button
section: "main::main"
strategy: role
role: button
name: "详情"
playwright: "page.getByRole('button', { name: '详情' })"
el_e58f91e8b5b7e5aea1e689b9e8928be58d8ee58f91e8b5b7e4babae5a484e79086e697b6e997b4efbc9a323032362d31302d323031363a34383a353028e88097e697b630e5b08fe697b630e58886e9929f30e7a79229e5aea1e689b9e6848fe8a781efbc9ae28094:
description: "发起审批蒋华发起人处理时间:2026-10-20 16:48:50(耗时0小时0分钟0秒)审批意见:—"
element_type: div
section: "main::main"
strategy: role
role: button
name: "发起审批蒋华发起人处理时间:2026-10-20 16:48:50(耗时0小时0分钟0秒)审批意见:—"
playwright: "page.getByRole('button', { name: '发起审批蒋华发起人处理时间:2026-10-20 16:48:50(耗时0小时0分钟0秒)审批意见:—' })"
el_e5aea1e689b9e9809ae8bf87e8928be58d8ee8bf90e890a5e4b8bbe7aea1e5a484e79086e697b6e997b4efbc9a323032362d31302d323031363a34383a353028e88097e697b630e5b08fe697b630e58886e9929f31e7a79229e5aea1e689b9e6848fe8a781efbc9ae887aae58aa8e5aea1e689b9:
description: "审批通过蒋华运营主管处理时间:2026-10-20 16:48:50(耗时0小时0分钟1秒)审批意见:自动审批"
element_type: div
section: "main::main"
strategy: role
role: button
name: "审批通过蒋华运营主管处理时间:2026-10-20 16:48:50(耗时0小时0分钟1秒)审批意见:自动审批"
playwright: "page.getByRole('button', { name: '审批通过蒋华运营主管处理时间:2026-10-20 16:48:50(耗时0小时0分钟1秒)审批意见:自动审批' })"
# --- main::pagination ---
pagination_el_e585b132333632e69da13132333435e280a2e280a2e280a234383530e69da12fe9a1b5e8b7b3e887b3e9a1b5:
description: "共 2362 条12345•••4850 条/页跳至页"
element_type: ul
section: "main::pagination"
strategy: text
value: "共 2362 条12345•••4850 条/页跳至页"
playwright: "page.getByText('共 2362 条12345•••4850 条/页跳至页')"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_page_2:
description: "2"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "2"
playwright: "page.getByText('2')"
pagination_page_3:
description: "3"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "3"
playwright: "page.getByText('3')"
pagination_page_4:
description: "4"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "4"
playwright: "page.getByText('4')"
pagination_page_5:
description: "5"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "5"
playwright: "page.getByText('5')"
pagination_el_e59091e5908e35e9a1b5:
description: "向后 5 页"
element_type: li
section: "main::pagination"
strategy: text
value: "向后 5 页"
playwright: "page.getByText('向后 5 页')"
pagination_page_48:
description: "48"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "48"
playwright: "page.getByText('48')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "50 条/页"
playwright: "page.getByText('50 条/页')"
# --- main::detail:采购计划详情 ---
backBtn:
description: "返 回"
element_type: button
section: "main::detail:采购计划详情"
strategy: role
role: button
name: "返 回"
playwright: "page.getByRole('button', { name: '返 回' })"
tableDensity_2:
description: "column-height"
element_type: span
section: "main::detail:采购计划详情"
strategy: label
value: "column-height"
playwright: "page.getByLabel('column-height')"
el_e585b132e69da1313530e69da12fe9a1b5:
description: "共 2 条150 条/页"
element_type: ul
section: "main::detail:采购计划详情"
strategy: text
value: "共 2 条150 条/页"
playwright: "page.getByText('共 2 条150 条/页')"
prevPageBtn:
description: "上一页"
element_type: li
section: "main::detail:采购计划详情"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
page_1:
description: "1"
element_type: pagination_item
section: "main::detail:采购计划详情"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
nextPageBtn:
description: "下一页"
element_type: li
section: "main::detail:采购计划详情"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::detail:采购计划详情"
strategy: text
value: "50 条/页"
playwright: "page.getByText('50 条/页')"
# Auto-generated from surgery-base-pkg-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/operationSetting/baseMaintenance
# Scanned: 2026-10-20T08:47:17.301Z
# Page: 基础设置 > 手术套包设置 > 基础包维护
# Note: dialog/modal was opened during scan
page: surgery-base-pkg
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/operationSetting/baseMaintenance
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_basePkgMaintenance:
description: "基础包维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础包维护"
playwright: "page.getByRole('menuitem', { name: '基础包维护' })"
menu_operTypeMaintenance:
description: "术种维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "术种维护"
playwright: "page.getByRole('menuitem', { name: '术种维护' })"
menu_stdPkgMaintenance:
description: "标准套包维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "标准套包维护"
playwright: "page.getByRole('menuitem', { name: '标准套包维护' })"
basePkgMaintenance:
description: "基础包维护"
element_type: tab
section: "main::main"
strategy: text
value: "基础包维护"
playwright: "page.getByText('基础包维护')"
tab_basePkgMaintenance:
description: "基础包维护"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/operationSetting/baseMaintenance"
playwright: "page.locator('#rc-tabs-0-tab-/basic/operationSetting/baseMaintenance')"
addCategoryBtn:
description: "新增分类"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新增分类"
playwright: "page.getByRole('button', { name: '新增分类' })"
addBasePkgBtn:
description: "新增基础包"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新增基础包"
playwright: "page.getByRole('button', { name: '新增基础包' })"
categorySearchInput:
description: "请输入分类名称"
element_type: text
section: "main::main"
strategy: placeholder
value: "请输入分类名称"
playwright: "page.getByPlaceholder('请输入分类名称')"
tree_node_e7b1bb313231:
description: "类12121313"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类12121313"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类12121313\\s*$/ })"
tree_node_e58c85323131:
description: "包2112412"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包2112412"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包2112412\\s*$/ })"
tree_node_e58c85415554:
description: "包AUTO-BASE-1792473862012-33"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包AUTO-BASE-1792473862012-33"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包AUTO-BASE-1792473862012-33\\s*$/ })"
tree_el_e58c854155544f2d424153452d313739323437333839313334382d313539_2:
description: "包AUTO-BASE-1792473891348-159"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包AUTO-BASE-1792473891348-159"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包AUTO-BASE-1792473891348-159\\s*$/ })"
tree_el_e58c854155544f2d424153452d313739323437333933343839312d393337_2:
description: "包AUTO-BASE-1792473934891-937"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包AUTO-BASE-1792473934891-937"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包AUTO-BASE-1792473934891-937\\s*$/ })"
tree_node_e7b1bb323032:
description: "类20240324"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类20240324"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20240324\\s*$/ })"
tree_el_e7b1bb3230323530353136_2:
description: "类20250516"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类20250516"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20250516\\s*$/ })"
tree_el_e7b1bb3230323630373039_2:
description: "类20260709"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类20260709"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20260709\\s*$/ })"
tree_el_e7b1bb32303236e59b9ee5bd92e6b58be8af95_2:
description: "类2026回归测试"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类2026回归测试"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类2026回归测试\\s*$/ })"
tree_node_e7b1bb323531:
description: "类2512回归"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类2512回归"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类2512回归\\s*$/ })"
tree_node_e7b1bb544553:
description: "类TEST"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类TEST"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类TEST\\s*$/ })"
tree_node_e7b1bb6a6d5f:
description: "类jm_基础包分类01"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类jm_基础包分类01"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm_基础包分类01\\s*$/ })"
tree_el_e7b1bb6a6d5fe59fbae7a180e58c85e58886e7b1bb3032_2:
description: "类jm_基础包分类02"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类jm_基础包分类02"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm_基础包分类02\\s*$/ })"
tree_node_e7b1bbe58fa3:
description: "类口腔科基础包分类1"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类口腔科基础包分类1"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类口腔科基础包分类1\\s*$/ })"
tree_node_e7b1bbe59fba:
description: "类基础包0613"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类基础包0613"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类基础包0613\\s*$/ })"
tree_el_e7b1bbe59fbae7a180e58c8531_2:
description: "类基础包1"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类基础包1"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类基础包1\\s*$/ })"
tree_node_e7b1bbe5a496:
description: "类外科手术"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类外科手术"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类外科手术\\s*$/ })"
tree_node_e7b1bbe5b091:
description: "类少"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类少"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类少\\s*$/ })"
tree_node_e7b1bbe6898b:
description: "类手术分类"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类手术分类"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类手术分类\\s*$/ })"
tree_node_e7b1bbe69588:
description: "类效期"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类效期"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类效期\\s*$/ })"
tree_node_e7b1bbe88386:
description: "类胆囊手术"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类胆囊手术"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类胆囊手术\\s*$/ })"
tree_node_e7b1bbe9ab98:
description: "类高值包"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类高值包"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类高值包\\s*$/ })"
tree_node_e7b1bb31:
description: "类1"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类1"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类1\\s*$/ })"
tree_node_e7b1bb33:
description: "类3"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类3"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类3\\s*$/ })"
tree_node_e7b1bb6a6d37:
description: "类jm73"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类jm73"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm73\\s*$/ })"
tree_node_e7b1bbe5bf83:
description: "类心内科手术"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类心内科手术"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类心内科手术\\s*$/ })"
tree_node_e7b1bbe9aaa8:
description: "类骨科手术"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类骨科手术"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类骨科手术\\s*$/ })"
productName:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_keyword"
playwright: "page.locator('#table_search_form_keyword')"
specModel:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_goodsSpec"
playwright: "page.locator('#table_search_form_goodsSpec')"
manufacturer:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_goodsMfrsName"
playwright: "page.locator('#table_search_form_goodsMfrsName')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
addProductBtn:
description: "添加产品"
element_type: button
section: "main::main"
strategy: role
role: button
name: "添加产品"
playwright: "page.getByRole('button', { name: '添加产品' })"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
removeBtn:
description: "移除"
element_type: button
section: "main::main"
strategy: role
role: button
name: "移除"
playwright: "page.getByRole('button', { name: '移除' })"
# --- main::pagination ---
pagination_el_e585b133e69da1313530e69da12fe9a1b5:
description: "共 3 条150 条/页"
element_type: ul
section: "main::pagination"
strategy: text
value: "共 3 条150 条/页"
playwright: "page.getByText('共 3 条150 条/页')"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "50 条/页"
playwright: "page.getByText('50 条/页')"
# --- main::modal:新增基础包 ---
basePkgName:
description: "请输入"
element_type: text
section: "main::modal:新增基础包"
strategy: id
value: "form_item_pkgName"
playwright: "page.locator('#form_item_pkgName')"
basePkgCategorySelect:
description: "请选择"
element_type: select
section: "main::modal:新增基础包"
strategy: label_text
value: "所属分类"
playwright: "page.getByText('所属分类', { exact: true })"
basePkgCategory:
description: "所属分类"
element_type: search
section: "main::modal:新增基础包"
strategy: id
value: "form_item_kindId"
playwright: "page.locator('#form_item_kindId')"
basePkgCode:
description: "请输入"
element_type: text
section: "main::modal:新增基础包"
strategy: id
value: "form_item_pkgCode"
playwright: "page.locator('#form_item_pkgCode')"
remark:
description: "请输入"
element_type: textarea
section: "main::modal:新增基础包"
strategy: id
value: "form_item_remark"
playwright: "page.locator('#form_item_remark')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:新增基础包"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
confirmBtn:
description: "确 认"
element_type: button
section: "main::modal:新增基础包"
strategy: role
role: button
name: "确 认"
playwright: "page.getByRole('button', { name: '确 认' })"
# --- main::modal:新增分类 ---
basePkgCategoryName:
description: "请输入"
element_type: text
section: "main::modal:新增分类"
strategy: id
value: "form_item_kindName"
playwright: "page.locator('#form_item_kindName')"
# Auto-generated from surgery-oper-type-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/operationSetting/typeMaintenance
# Scanned: 2026-10-20T08:47:41.945Z
# Page: 基础设置 > 手术套包设置 > 术种维护
# Note: filter dropdown was opened during scan
# Note: dialog/modal was opened during scan
page: surgery-oper-type
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/operationSetting/typeMaintenance
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_basePkgMaintenance:
description: "基础包维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础包维护"
playwright: "page.getByRole('menuitem', { name: '基础包维护' })"
menu_operTypeMaintenance:
description: "术种维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "术种维护"
playwright: "page.getByRole('menuitem', { name: '术种维护' })"
menu_stdPkgMaintenance:
description: "标准套包维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "标准套包维护"
playwright: "page.getByRole('menuitem', { name: '标准套包维护' })"
operTypeMaintenance:
description: "术种维护"
element_type: tab
section: "main::main"
strategy: text
value: "术种维护"
playwright: "page.getByText('术种维护')"
tab_operTypeMaintenance:
description: "术种维护"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/operationSetting/typeMaintenance"
playwright: "page.locator('#rc-tabs-0-tab-/basic/operationSetting/typeMaintenance')"
addBtn:
description: "新增"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新增"
playwright: "page.getByRole('button', { name: '新增' })"
operTypeCategoryInput:
description: "请输入术种分类名称"
element_type: text
section: "main::main"
strategy: placeholder
value: "请输入术种分类名称"
playwright: "page.getByPlaceholder('请输入术种分类名称')"
operationName:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_operationName"
playwright: "page.locator('#table_search_form_operationName')"
diseaseName:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_disease"
playwright: "page.locator('#table_search_form_disease')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
addOperTypeBtn:
description: "新增术种"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新增术种"
playwright: "page.getByRole('button', { name: '新增术种' })"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
enableBtn:
description: "启用"
element_type: button
section: "main::main"
strategy: role
role: button
name: "启用"
playwright: "page.getByRole('button', { name: '启用' })"
# --- main::pagination ---
pagination_el_e585b132e69da1313530e69da12fe9a1b5:
description: "共 2 条150 条/页"
element_type: ul
section: "main::pagination"
strategy: text
value: "共 2 条150 条/页"
playwright: "page.getByText('共 2 条150 条/页')"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "50 条/页"
playwright: "page.getByText('50 条/页')"
pagination_pageSizeSelect_2:
description: "50 条/页205010020 条/页50 条/页100 条/页200 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "50 条/页205010020 条/页50 条/页100 条/页200 条/页"
playwright: "page.getByText('50 条/页205010020 条/页50 条/页100 条/页200 条/页')"
# --- main::modal:分类维护 ---
operTypeCategoryName:
description: "请输入"
element_type: text
section: "main::modal:分类维护"
strategy: id
value: "basic_kindName"
playwright: "page.locator('#basic_kindName')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:分类维护"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
saveBtn:
description: "保 存"
element_type: button
section: "main::modal:分类维护"
strategy: role
role: button
name: "保 存"
playwright: "page.getByRole('button', { name: '保 存' })"
import type { Locator, Page } from '@playwright/test';
/**
* 基础设置 · 手术套包设置(基础包维护 / 术种维护 / 标准套包维护)。
* 定位来源:locators/spd/surgery-*.locator.yaml(由交互元素扫描提炼)。
* 三页同组页签 + 左树 + 右列表 + 分页 + 弹窗,共用类只放稳定定位。
*/
export class SurgerySharedLocators {
readonly menuBasic: Locator;
readonly surgerySubmenuTitle: Locator;
readonly leftTree: Locator;
readonly treeSearchInput: Locator;
readonly tableHeader: Locator;
readonly tableBody: Locator;
readonly empty: Locator;
readonly pagination: Locator;
readonly paginationTotal: Locator;
readonly paginationActive: Locator;
readonly paginationPrev: Locator;
readonly paginationNext: Locator;
readonly dialog: Locator;
readonly formError: Locator;
constructor(protected readonly page: Page) {
this.menuBasic = page.getByRole('menuitem', { name: '基础设置' });
this.surgerySubmenuTitle = page
.locator('.ant-menu-submenu-title')
.filter({ hasText: /^\s*手术套包设置\s*$/ })
.first();
this.leftTree = page.locator('.ant-tree').first();
this.treeSearchInput = page.locator('.ant-tree ~ * input, .ant-tree input').first();
this.tableHeader = page.locator('.ant-table-thead th');
this.tableBody = page.locator('.ant-table-tbody');
this.empty = page.locator('.ant-empty, .ant-empty-description').first();
this.pagination = page.locator('.ant-pagination').first();
this.paginationTotal = page.locator('.ant-pagination-total-text').first();
this.paginationActive = page.locator('.ant-pagination-item-active').first();
this.paginationPrev = page.locator('.ant-pagination-prev').first();
this.paginationNext = page.locator('.ant-pagination-next').first();
this.dialog = page.locator('.ant-modal-content, .ant-modal-wrap .ant-modal, .ant-drawer-open').last();
this.formError = page.locator('.ant-form-item-explain-error, .ant-message-error, .ant-notification-notice');
}
/** 侧栏叶子菜单(基础包维护/术种维护/标准套包维护,既有 role=menuitem 也有 .ant-menu-item)。 */
menuLeaf(name: string): Locator {
const pattern = new RegExp(`^\\s*${name}\\s*$`);
return this.page
.getByRole('menuitem', { name: pattern })
.or(this.page.locator('.ant-menu-item').filter({ hasText: pattern }))
.first();
}
/** 同组页签(URL 型 rc-tabs 或文本 Tab 均覆盖)。 */
tab(name: string): Locator {
const pattern = new RegExp(name);
return this.page
.locator('.ant-tabs-tab')
.filter({ hasText: pattern })
.first()
.or(this.page.getByRole('tab', { name: pattern }).first())
.or(this.page.getByText(pattern).first());
}
button(name: string, root: Locator | Page = this.page): Locator {
const compact = name.replace(/\s/g, '');
const pattern = new RegExp(compact.split('').join('\\s*'));
return root.getByRole('button', { name: pattern });
}
/** 树节点:按可见文本包含匹配。 */
treeNode(text: string): Locator {
return this.leftTree.locator('.ant-tree-node-content-wrapper').filter({ hasText: text }).first();
}
treeNodes(): Locator {
return this.leftTree.locator('.ant-tree-node-content-wrapper');
}
/** 弹窗内表单控件按 id 定位(CSV 明确给出 #form_item_xxx / #basic_kindName)。 */
byId(id: string): Locator {
return this.page.locator(id.startsWith('#') ? id : `#${id}`).first();
}
/** 弹窗内确定类按钮(「确 认」「确 定」「保 存」「确定(N)」)。 */
confirmLikeButton(root: Locator | Page = this.dialog): Locator {
return root
.getByRole('button')
.filter({ hasText: /确\s*[认定]|保\s*存/ })
.first();
}
cancelLikeButton(root: Locator | Page = this.dialog): Locator {
return root.getByRole('button', { name: /取\s*消/ }).first();
}
}
# Auto-generated from surgery-std-pkg-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/operationSetting/standardMaintenance
# Scanned: 2026-10-20T08:47:54.322Z
# Page: 基础设置 > 手术套包设置 > 标准套包维护
page: surgery-std-pkg
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/operationSetting/standardMaintenance
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_basePkgMaintenance:
description: "基础包维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础包维护"
playwright: "page.getByRole('menuitem', { name: '基础包维护' })"
menu_operTypeMaintenance:
description: "术种维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "术种维护"
playwright: "page.getByRole('menuitem', { name: '术种维护' })"
menu_stdPkgMaintenance:
description: "标准套包维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "标准套包维护"
playwright: "page.getByRole('menuitem', { name: '标准套包维护' })"
stdPkgMaintenance:
description: "标准套包维护"
element_type: tab
section: "main::main"
strategy: text
value: "标准套包维护"
playwright: "page.getByText('标准套包维护')"
tab_stdPkgMaintenance:
description: "标准套包维护"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/operationSetting/standardMaintenance"
playwright: "page.locator('#rc-tabs-0-tab-/basic/operationSetting/standardMaintenance')"
addBtn:
description: "新 增"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新 增"
playwright: "page.getByRole('button', { name: '新 增' })"
stdPkgTreeSearchInput:
description: "请输入术种分类名称、术种名称、标准套包名称"
element_type: text
section: "main::main"
strategy: placeholder
value: "请输入术种分类名称、术种名称、标准套包名称"
playwright: "page.getByPlaceholder('请输入术种分类名称、术种名称、标准套包名称')"
tree_node_e7b1bbe69caa:
description: "类未建分类(2)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类未建分类(2)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类未建分类(2)\\s*$/ })"
tree_node_e69caf313128:
description: "术11(4)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "术11(4)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*术11(4)\\s*$/ })"
tree_node_e58c857171:
description: "包qq"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包qq"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包qq\\s*$/ })"
tree_node_e58c857474:
description: "包tt"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包tt"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包tt\\s*$/ })"
tree_node_e58c85e695a3:
description: "包散货包"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包散货包"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包散货包\\s*$/ })"
tree_node_e58c85e6b7b7:
description: "包混包"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "包混包"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包混包\\s*$/ })"
tree_node_e69caf313231:
description: "术1212(0)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "术1212(0)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*术1212(0)\\s*$/ })"
tree_node_e7b1bb313334:
description: "类134(2)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类134(2)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类134(2)\\s*$/ })"
tree_node_e7b1bb323032:
description: "类20240325(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类20240325(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20240325(1)\\s*$/ })"
tree_el_e7b1bb3230323530353136283129_2:
description: "类20250516(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类20250516(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20250516(1)\\s*$/ })"
tree_el_e7b1bb32303236283129_2:
description: "类2026(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类2026(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类2026(1)\\s*$/ })"
tree_node_e7b1bb323531:
description: "类2512回归(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类2512回归(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类2512回归(1)\\s*$/ })"
tree_node_e7b1bb414141:
description: "类AAAAA(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类AAAAA(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类AAAAA(1)\\s*$/ })"
tree_node_e7b1bb544553:
description: "类TEST(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类TEST(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类TEST(1)\\s*$/ })"
tree_node_e7b1bb6a6d37:
description: "类jm73(2)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类jm73(2)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm73(2)\\s*$/ })"
tree_node_e7b1bb6a6d5f:
description: "类jm_术种分类01(4)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类jm_术种分类01(4)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm_术种分类01(4)\\s*$/ })"
tree_node_e7b1bbe58fa3:
description: "类口腔内科手术(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类口腔内科手术(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类口腔内科手术(1)\\s*$/ })"
tree_el_e7b1bbe58fa3e88594e5a496e7a791e6898be69caf283329_2:
description: "类口腔外科手术(3)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类口腔外科手术(3)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类口腔外科手术(3)\\s*$/ })"
tree_node_e7b1bbe69caf:
description: "类术种0613(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类术种0613(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类术种0613(1)\\s*$/ })"
tree_node_e7b1bbe883b8:
description: "类胸外科(1)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类胸外科(1)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类胸外科(1)\\s*$/ })"
tree_node_e7b1bbe9aaa8:
description: "类骨外科(8)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类骨外科(8)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类骨外科(8)\\s*$/ })"
tree_el_e7b1bbe9aaa8e7a791283229_2:
description: "类骨科(2)"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "类骨科(2)"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类骨科(2)\\s*$/ })"
productName:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_keyword"
playwright: "page.locator('#table_search_form_keyword')"
specModel:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_goodsSpec"
playwright: "page.locator('#table_search_form_goodsSpec')"
manufacturer:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_goodsMfrsName"
playwright: "page.locator('#table_search_form_goodsMfrsName')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
addBasePkgBtn:
description: "添加基础包"
element_type: button
section: "main::main"
strategy: role
role: button
name: "添加基础包"
playwright: "page.getByRole('button', { name: '添加基础包' })"
addLoosePartBtn:
description: "添加散件"
element_type: button
section: "main::main"
strategy: role
role: button
name: "添加散件"
playwright: "page.getByRole('button', { name: '添加散件' })"
productOverviewBtn:
description: "产品概览"
element_type: button
section: "main::main"
strategy: role
role: button
name: "产品概览"
playwright: "page.getByRole('button', { name: '产品概览' })"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
removeBtn:
description: "移除"
element_type: button
section: "main::main"
strategy: role
role: button
name: "移除"
playwright: "page.getByRole('button', { name: '移除' })"
# --- main::modal:添加基础包 ---
addBasePkgSearchInput:
description: "请输入分类/基础包名称"
element_type: text
section: "main::modal:添加基础包"
strategy: placeholder
value: "请输入分类/基础包名称"
playwright: "page.getByPlaceholder('请输入分类/基础包名称')"
tree_node_e7b1bb313231:
description: "类12121313"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类12121313"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类12121313\\s*$/ })"
tree_node_e58c85415554:
description: "包AUTO-BASE-1792473862012-33"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "包AUTO-BASE-1792473862012-33"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包AUTO-BASE-1792473862012-33\\s*$/ })"
Input:
description: "1"
element_type: text
section: "main::modal:添加基础包"
strategy: role
role: spinbutton
name: "1"
playwright: "page.getByRole('spinbutton', { name: '1' })"
tree_el_e58c854155544f2d424153452d313739323437333839313334382d313539_2:
description: "包AUTO-BASE-1792473891348-159"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "包AUTO-BASE-1792473891348-159"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包AUTO-BASE-1792473891348-159\\s*$/ })"
tree_el_e58c854155544f2d424153452d313739323437333933343839312d393337_2:
description: "包AUTO-BASE-1792473934891-937"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "包AUTO-BASE-1792473934891-937"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*包AUTO-BASE-1792473934891-937\\s*$/ })"
tree_el_e7b1bb3230323430333234_2:
description: "类20240324"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类20240324"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20240324\\s*$/ })"
tree_el_e7b1bb3230323530353136_2:
description: "类20250516"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类20250516"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类20250516\\s*$/ })"
tree_el_e7b1bb32303236e59b9ee5bd92e6b58be8af95_2:
description: "类2026回归测试"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类2026回归测试"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类2026回归测试\\s*$/ })"
tree_el_e7b1bb32353132e59b9ee5bd92_2:
description: "类2512回归"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类2512回归"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类2512回归\\s*$/ })"
tree_el_e7b1bb54455354_2:
description: "类TEST"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类TEST"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类TEST\\s*$/ })"
tree_el_e7b1bb6a6d5fe59fbae7a180e58c85e58886e7b1bb3031_2:
description: "类jm_基础包分类01"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类jm_基础包分类01"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm_基础包分类01\\s*$/ })"
tree_el_e7b1bb6a6d5fe59fbae7a180e58c85e58886e7b1bb3032_2:
description: "类jm_基础包分类02"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类jm_基础包分类02"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm_基础包分类02\\s*$/ })"
tree_el_e7b1bbe58fa3e88594e7a791e59fbae7a180e58c85e58886e7b1bb31_2:
description: "类口腔科基础包分类1"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类口腔科基础包分类1"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类口腔科基础包分类1\\s*$/ })"
tree_node_e7b1bbe59fba:
description: "类基础包0613"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类基础包0613"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类基础包0613\\s*$/ })"
tree_node_e7b1bbe5a496:
description: "类外科手术"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类外科手术"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类外科手术\\s*$/ })"
tree_node_e7b1bbe69588:
description: "类效期"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类效期"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类效期\\s*$/ })"
tree_node_e7b1bbe88386:
description: "类胆囊手术"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类胆囊手术"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类胆囊手术\\s*$/ })"
tree_node_e7b1bbe9ab98:
description: "类高值包"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类高值包"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类高值包\\s*$/ })"
tree_el_e7b1bb6a6d3733_2:
description: "类jm73"
element_type: tree_title
section: "main::modal:添加基础包"
strategy: tree_node
value: "类jm73"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*类jm73\\s*$/ })"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:添加基础包"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
confirmBtn:
description: "确定(0)"
element_type: button
section: "main::modal:添加基础包"
strategy: role
role: button
name: "确定(0)"
playwright: "page.getByRole('button', { name: '确定(0)' })"
# Auto-generated from vendor-auth-final-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/authAuditFinal
# Scanned: 2026-10-20T08:41:58.554Z
# Page: 基础设置 > 厂商管理 > 授权变更终审
# Note: filter dropdown was opened during scan
page: vendor-auth-final
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/authAuditFinal
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
authFinal:
description: "授权变更终审"
element_type: tab
section: "main::main"
strategy: text
value: "授权变更终审"
playwright: "page.getByText('授权变更终审')"
tab_authFinal:
description: "授权变更终审"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/authAuditFinal"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/authAuditFinal')"
operationDateDateRange:
description: "制单日期"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "制单日期"
playwright: "page.getByText('制单日期', { exact: true })"
dateRange:
description: "开始日期"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_dateValue"
playwright: "page.locator('#table_search_form_dateValue')"
operationDateInput:
description: "结束日期"
element_type: text
section: "main::main"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
documentNo:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_orderNo"
playwright: "page.locator('#table_search_form_orderNo')"
el_e99480e594aee59586Select:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "销售商"
playwright: "page.getByText('销售商', { exact: true })"
supplierId:
description: "销售商"
element_type: search
section: "main::main"
strategy: id
value: "table_search_form_provId"
playwright: "page.locator('#table_search_form_provId')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
# Auto-generated from vendor-auth-first-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/authAudit
# Scanned: 2026-10-20T08:41:49.683Z
# Page: 基础设置 > 厂商管理 > 授权变更初审
# Note: filter dropdown was opened during scan
page: vendor-auth-first
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/authAudit
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
authFirst:
description: "授权变更初审"
element_type: tab
section: "main::main"
strategy: text
value: "授权变更初审"
playwright: "page.getByText('授权变更初审')"
tab_authFirst:
description: "授权变更初审"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/authAudit"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/authAudit')"
operationDateDateRange:
description: "制单日期"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "制单日期"
playwright: "page.getByText('制单日期', { exact: true })"
dateRange:
description: "开始日期"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_dateValue"
playwright: "page.locator('#table_search_form_dateValue')"
operationDateInput:
description: "结束日期"
element_type: text
section: "main::main"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
documentNo:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_orderNo"
playwright: "page.locator('#table_search_form_orderNo')"
el_e99480e594aee59586Select:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "销售商"
playwright: "page.getByText('销售商', { exact: true })"
supplierId:
description: "销售商"
element_type: search
section: "main::main"
strategy: id
value: "table_search_form_provId"
playwright: "page.locator('#table_search_form_provId')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
# Auto-generated from vendor-cert-diff-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/scjs/yc/certCompare
# Scanned: 2026-10-20T08:43:43.547Z
# Page: 基础设置 > 厂商管理 > 注册证差异对比
page: vendor-cert-diff
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/scjs/yc/certCompare
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
certDiff:
description: "注册证差异对比"
element_type: tab
section: "main::main"
strategy: text
value: "注册证差异对比"
playwright: "page.getByText('注册证差异对比')"
tab_certDiff:
description: "注册证差异对比"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/scjs/yc/certCompare"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/scjs/yc/certCompare')"
el_e789a9e69699e5908de7a7b0Input:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_goodsName"
playwright: "page.locator('#table_search_form_goodsName')"
specModel:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_goodsSpec"
playwright: "page.locator('#table_search_form_goodsSpec')"
statusSelect:
description: "启用"
element_type: select
section: "main::main"
strategy: label_text
value: "状态"
playwright: "page.getByText('状态', { exact: true })"
statusInput:
description: "状态"
element_type: search
section: "main::main"
strategy: id
value: "table_search_form_mgiTbStatus"
playwright: "page.locator('#table_search_form_mgiTbStatus')"
searchBtn:
description: "查询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查询"
playwright: "page.getByRole('button', { name: '查询' })"
resetBtn:
description: "重置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重置"
playwright: "page.getByRole('button', { name: '重置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
el_e7ab8be58db3e69bb4e696b0Btn:
description: "立即更新"
element_type: button
section: "main::main"
strategy: role
role: button
name: "立即更新"
playwright: "page.getByRole('button', { name: '立即更新' })"
exportBtn:
description: "导出"
element_type: button
section: "main::main"
strategy: role
role: button
name: "导出"
playwright: "page.getByRole('button', { name: '导出' })"
# --- main::pagination ---
pagination_el_e585b137363537e69da13132333435e280a2e280a2e280a23339323030e69da12fe9a1b5e8b7b3e887b3e9a1b5:
description: "共 7657 条12345•••39200 条/页跳至页"
element_type: ul
section: "main::pagination"
strategy: text
value: "共 7657 条12345•••39200 条/页跳至页"
playwright: "page.getByText('共 7657 条12345•••39200 条/页跳至页')"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_page_2:
description: "2"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "2"
playwright: "page.getByText('2')"
pagination_page_3:
description: "3"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "3"
playwright: "page.getByText('3')"
pagination_page_4:
description: "4"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "4"
playwright: "page.getByText('4')"
pagination_page_5:
description: "5"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "5"
playwright: "page.getByText('5')"
pagination_el_e59091e5908e35e9a1b5:
description: "向后 5 页"
element_type: li
section: "main::pagination"
strategy: text
value: "向后 5 页"
playwright: "page.getByText('向后 5 页')"
pagination_page_39:
description: "39"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "39"
playwright: "page.getByText('39')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pagination_pageSizeSelect:
description: "200 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "200 条/页"
playwright: "page.getByText('200 条/页')"
# Auto-generated from vendor-cert-final-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/regCertAuditFinal
# Scanned: 2026-10-20T08:42:16.674Z
# Page: 基础设置 > 厂商管理 > 注册证变更终审
# Note: filter dropdown was opened during scan
page: vendor-cert-final
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/regCertAuditFinal
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
certFinal:
description: "注册证变更终审"
element_type: tab
section: "main::main"
strategy: text
value: "注册证变更终审"
playwright: "page.getByText('注册证变更终审')"
tab_certFinal:
description: "注册证变更终审"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/regCertAuditFinal"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/regCertAuditFinal')"
operationDateDateRange:
description: "制单日期"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "制单日期"
playwright: "page.getByText('制单日期', { exact: true })"
dateRange:
description: "开始日期"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_dateValue"
playwright: "page.locator('#table_search_form_dateValue')"
operationDateInput:
description: "结束日期"
element_type: text
section: "main::main"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
documentNo:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_orderNo"
playwright: "page.locator('#table_search_form_orderNo')"
changeTypeSelect:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "变更类型"
playwright: "page.getByText('变更类型', { exact: true })"
changeTypeInput:
description: "变更类型"
element_type: search
section: "main::main"
strategy: id
value: "table_search_form_chgType"
playwright: "page.locator('#table_search_form_chgType')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
# Auto-generated from vendor-cert-first-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/regCertAudit
# Scanned: 2026-10-20T08:42:07.556Z
# Page: 基础设置 > 厂商管理 > 注册证变更初审
# Note: filter dropdown was opened during scan
page: vendor-cert-first
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/regCertAudit
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
certFirst:
description: "注册证变更初审"
element_type: tab
section: "main::main"
strategy: text
value: "注册证变更初审"
playwright: "page.getByText('注册证变更初审')"
tab_certFirst:
description: "注册证变更初审"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/regCertAudit"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/regCertAudit')"
operationDateDateRange:
description: "制单日期"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "制单日期"
playwright: "page.getByText('制单日期', { exact: true })"
dateRange:
description: "开始日期"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_dateValue"
playwright: "page.locator('#table_search_form_dateValue')"
operationDateInput:
description: "结束日期"
element_type: text
section: "main::main"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
documentNo:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_orderNo"
playwright: "page.locator('#table_search_form_orderNo')"
changeTypeSelect:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "变更类型"
playwright: "page.getByText('变更类型', { exact: true })"
changeTypeInput:
description: "变更类型"
element_type: search
section: "main::main"
strategy: id
value: "table_search_form_chgType"
playwright: "page.locator('#table_search_form_chgType')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
# Auto-generated from vendor-eval-indicator-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/indicators
# Scanned: 2026-10-20T08:44:01.895Z
# Page: 基础设置 > 厂商管理 > 评价指标维护
# Note: filter dropdown was opened during scan
# Note: dialog/modal was opened during scan
page: vendor-eval-indicator
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/indicators
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
evalIndicator:
description: "评价指标维护"
element_type: tab
section: "main::main"
strategy: text
value: "评价指标维护"
playwright: "page.getByText('评价指标维护')"
tab_evalIndicator:
description: "评价指标维护"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/indicators"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/indicators')"
el_e68c87e6a087e58886e7b1bb:
description: "指标分类"
element_type: a
section: "main::main"
strategy: text
value: "指标分类"
playwright: "page.getByText('指标分类')"
addBtn:
description: "新增"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新增"
playwright: "page.getByRole('button', { name: '新增' })"
categoryNameInput:
description: "分类名称"
element_type: text
section: "main::main"
strategy: placeholder
value: "分类名称"
playwright: "page.getByPlaceholder('分类名称')"
tree_node_e68c87e6a087:
description: "指标一级分类"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "指标一级分类"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*指标一级分类\\s*$/ })"
tree_node_313131:
description: "111"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "111"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*111\\s*$/ })"
tree_node_323232:
description: "222"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "222"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*222\\s*$/ })"
tree_node_53e6b58be8af:
description: "S测试"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "S测试"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*S测试\\s*$/ })"
tree_node_e6b58be8af95:
description: "测试指标"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "测试指标"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*测试指标\\s*$/ })"
tree_node_323630363236:
description: "260626回归指标分类"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "260626回归指标分类"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*260626回归指标分类\\s*$/ })"
tree_node_30363137e68c:
description: "0617指标"
element_type: tree_title
section: "main::main"
strategy: tree_node
value: "0617指标"
tree: ".ant-tree"
playwright: "page.locator('.ant-tree .ant-tree-title').filter({ hasText: /^\\s*0617指标\\s*$/ })"
el_e68c87e6a087e7bc96e7a081Input:
description: "请输入指标编码"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_indicatorsCode"
playwright: "page.locator('#table_search_form_indicatorsCode')"
el_e68c87e6a087e5908de7a7b0Input:
description: "请输入指标名称"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_indicatorsName"
playwright: "page.locator('#table_search_form_indicatorsName')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
detailBtn:
description: "详情"
element_type: button
section: "main::main"
strategy: role
role: button
name: "详情"
playwright: "page.getByRole('button', { name: '详情' })"
logBtn:
description: "日志"
element_type: button
section: "main::main"
strategy: role
role: button
name: "日志"
playwright: "page.getByRole('button', { name: '日志' })"
# --- main::pagination ---
pagination_indicatorCode:
description: "共 31 条150 条/页"
element_type: ul
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
pagination_indicatorCodeBtn:
description: "指标编号"
element_type: button
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
pagination_indicatorCode_2:
description: "共 31 条150 条/页205010020 条/页50 条/页100 条/页200 条/页"
element_type: ul
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
pagination_pageSizeSelect_2:
description: "50 条/页205010020 条/页50 条/页100 条/页200 条/页"
element_type: select
section: "main::pagination"
strategy: label_text
value: "指标编号"
playwright: "page.getByText('指标编号', { exact: true })"
# --- main::modal:新增 ---
el_e4b88ae7baa7e58886e7b1bbSelect:
description: "请选择"
element_type: select
section: "main::modal:新增"
strategy: label_text
value: "上级分类"
playwright: "page.getByText('上级分类', { exact: true })"
basePkgCategoryName:
description: "分类名称"
element_type: text
section: "main::modal:新增"
strategy: id
value: "form_item_kindName"
playwright: "page.locator('#form_item_kindName')"
enable:
description: "启用"
element_type: radio
section: "main::modal:新增"
strategy: text
value: "启用"
playwright: "page.getByText('启用')"
disable:
description: "停用"
element_type: radio
section: "main::modal:新增"
strategy: text
value: "停用"
playwright: "page.getByText('停用')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:新增"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
confirmBtn:
description: "确 定"
element_type: button
section: "main::modal:新增"
strategy: role
role: button
name: "确 定"
playwright: "page.getByRole('button', { name: '确 定' })"
# Auto-generated from vendor-eval-scheme-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/evaluationPlan
# Scanned: 2026-10-20T08:43:52.262Z
# Page: 基础设置 > 厂商管理 > 评价方案维护
# Note: dialog/modal was opened during scan
page: vendor-eval-scheme
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/evaluationPlan
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
evalScheme:
description: "评价方案维护"
element_type: tab
section: "main::main"
strategy: text
value: "评价方案维护"
playwright: "page.getByText('评价方案维护')"
tab_evalScheme:
description: "评价方案维护"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/evaluationPlan"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/evaluationPlan')"
el_e5889be5bbbae697a5e69c9fDateRange:
description: "创建日期"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "创建日期"
playwright: "page.getByText('创建日期', { exact: true })"
dateRange:
description: "开始日期"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_dateValue"
playwright: "page.locator('#table_search_form_dateValue')"
el_e5889be5bbbae697a5e69c9fInput:
description: "结束日期"
element_type: text
section: "main::main"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
el_e590afe794a8e697a5e69c9fDateRange:
description: "启用日期"
element_type: datepicker
section: "main::main"
strategy: label_text
value: "启用日期"
playwright: "page.getByText('启用日期', { exact: true })"
el_e590afe794a8e697a5e69c9fInput:
description: "开始日期"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_startTimeValue"
playwright: "page.locator('#table_search_form_startTimeValue')"
el_e590afe794a8e697a5e69c9fInput_2:
description: "结束日期"
element_type: text
section: "main::main"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
schemeCodeInput:
description: "请输入方案编码"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_planCode"
playwright: "page.locator('#table_search_form_planCode')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
expandFilterBtn:
description: "展开"
element_type: button
section: "main::main"
strategy: role
role: button
name: "展开"
playwright: "page.getByRole('button', { name: '展开' })"
addBtn:
description: "新 增"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新 增"
playwright: "page.getByRole('button', { name: '新 增' })"
# --- main::modal:新增方案 ---
el_e696b9e6a188e5908de7a7b0Input:
description: "方案名称"
element_type: text
section: "main::modal:新增方案"
strategy: id
value: "form_item_planName"
playwright: "page.locator('#form_item_planName')"
remark:
description: "限255字符"
element_type: textarea
section: "main::modal:新增方案"
strategy: id
value: "form_item_remark"
playwright: "page.locator('#form_item_remark')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:新增方案"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
confirmBtn:
description: "确 定"
element_type: button
section: "main::modal:新增方案"
strategy: role
role: button
name: "确 定"
playwright: "page.getByRole('button', { name: '确 定' })"
# Auto-generated from vendor-holiday-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/basic/prov/holiday
# Scanned: 2026-10-20T08:44:28.895Z
# Page: 基础设置 > 厂商管理 > 供应商节假日管理
# Note: dialog/modal was opened during scan
# Note: edit dialog was opened during scan
page: vendor-holiday
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/basic/prov/holiday
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
vendorHoliday:
description: "供应商节假日管理"
element_type: tab
section: "main::main"
strategy: text
value: "供应商节假日管理"
playwright: "page.getByText('供应商节假日管理')"
tab_vendorHoliday:
description: "供应商节假日管理"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/basic/prov/holiday"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/basic/prov/holiday')"
addBtn:
description: "新 增"
element_type: button
section: "main::main"
strategy: role
role: button
name: "新 增"
playwright: "page.getByRole('button', { name: '新 增' })"
nameOrYearInput:
description: "请输入名称/年度"
element_type: text
section: "main::main"
strategy: placeholder
value: "请输入名称/年度"
playwright: "page.getByPlaceholder('请输入名称/年度')"
editBtn:
description: "编辑"
element_type: button
section: "main::main"
strategy: role
role: button
name: "编辑"
playwright: "page.getByRole('button', { name: '编辑' })"
el_e689b9e9878fe588a0e999a4Btn:
description: "批量删除"
element_type: button
section: "main::main"
strategy: role
role: button
name: "批量删除"
playwright: "page.getByRole('button', { name: '批量删除' })"
# --- main::pagination ---
pagination_add:
description: "共 16 条150 条/页"
element_type: ul
section: "main::pagination"
strategy: label_text
value: "新 增"
playwright: "page.getByText('新 增', { exact: true })"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: label_text
value: "新 增"
playwright: "page.getByText('新 增', { exact: true })"
pagination_addBtn:
description: "新 增"
element_type: button
section: "main::pagination"
strategy: label_text
value: "新 增"
playwright: "page.getByText('新 增', { exact: true })"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: label_text
value: "新 增"
playwright: "page.getByText('新 增', { exact: true })"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: label_text
value: "新 增"
playwright: "page.getByText('新 增', { exact: true })"
# --- main::modal:新增 ---
el_e5908de7a7b0Input:
description: "请输入"
element_type: text
section: "main::modal:新增"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
yearDateRange:
description: "年度"
element_type: datepicker
section: "main::modal:新增"
strategy: label_text
value: "年度"
playwright: "page.getByText('年度', { exact: true })"
yearInput:
description: "2026"
element_type: text
section: "main::modal:新增"
strategy: id
value: "form_item_yearly"
playwright: "page.locator('#form_item_yearly')"
el_e8b5b7e6ada2e697a5e69c9fDateRange:
description: "起止日期"
element_type: datepicker
section: "main::modal:新增"
strategy: label_text
value: "起止日期"
playwright: "page.getByText('起止日期', { exact: true })"
el_e8b5b7e6ada2e697a5e69c9fInput:
description: "开始日期"
element_type: text
section: "main::modal:新增"
strategy: id
value: "form_item_holidayDate"
playwright: "page.locator('#form_item_holidayDate')"
el_e8b5b7e6ada2e697a5e69c9fInput_2:
description: "结束日期"
element_type: text
section: "main::modal:新增"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
remark:
description: "请输入"
element_type: textarea
section: "main::modal:新增"
strategy: id
value: "form_item_remark"
playwright: "page.locator('#form_item_remark')"
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:新增"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
confirmBtn:
description: "确 认"
element_type: button
section: "main::modal:新增"
strategy: role
role: button
name: "确 认"
playwright: "page.getByRole('button', { name: '确 认' })"
# --- main::modal:编辑 ---
el_e5908de7a7b0Input_2:
description: "请输入"
element_type: text
section: "main::modal:编辑"
strategy: id
value: "form_item_cname"
playwright: "page.locator('#form_item_cname')"
el_e5908de7a7b0:
description: "close-circle"
element_type: span
section: "main::modal:编辑"
strategy: label
value: "close-circle"
playwright: "page.getByLabel('close-circle')"
yearDateRange_2:
description: "年度"
element_type: datepicker
section: "main::modal:编辑"
strategy: label_text
value: "年度"
playwright: "page.getByText('年度', { exact: true })"
yearInput_2:
description: "2026"
element_type: text
section: "main::modal:编辑"
strategy: id
value: "form_item_yearly"
playwright: "page.locator('#form_item_yearly')"
el_e8b5b7e6ada2e697a5e69c9fDateRange_2:
description: "起止日期"
element_type: datepicker
section: "main::modal:编辑"
strategy: label_text
value: "起止日期"
playwright: "page.getByText('起止日期', { exact: true })"
el_e8b5b7e6ada2e697a5e69c9fInput_3:
description: "开始日期"
element_type: text
section: "main::modal:编辑"
strategy: id
value: "form_item_holidayDate"
playwright: "page.locator('#form_item_holidayDate')"
el_e8b5b7e6ada2e697a5e69c9fInput_4:
description: "结束日期"
element_type: text
section: "main::modal:编辑"
strategy: placeholder
value: "结束日期"
playwright: "page.getByPlaceholder('结束日期')"
remark_2:
description: "请输入"
element_type: textarea
section: "main::modal:编辑"
strategy: id
value: "form_item_remark"
playwright: "page.locator('#form_item_remark')"
# Auto-generated from vendor-qual-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/basic/qcManage
# Scanned: 2026-10-20T08:41:30.230Z
# Page: 基础设置 > 厂商管理 > 供应商资质管理
# Note: filter dropdown was opened during scan
page: vendor-qual
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/basic/qcManage
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
vendorQual:
description: "供应商资质管理"
element_type: tab
section: "main::main"
strategy: text
value: "供应商资质管理"
playwright: "page.getByText('供应商资质管理')"
tab_vendorQual:
description: "供应商资质管理"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/basic/qcManage"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/basic/qcManage')"
supplierName:
description: "请输入"
element_type: text
section: "main::main"
strategy: id
value: "table_search_form_provName"
playwright: "page.locator('#table_search_form_provName')"
el_e8af81e4bbb6e7b1bbe59e8bSelect:
description: "请选择"
element_type: select
section: "main::main"
strategy: label_text
value: "证件类型"
playwright: "page.getByText('证件类型', { exact: true })"
el_e8af81e4bbb6e7b1bbe59e8bInput:
description: "证件类型"
element_type: search
section: "main::main"
strategy: id
value: "table_search_form_certType"
playwright: "page.locator('#table_search_form_certType')"
searchBtn:
description: "查 询"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查 询"
playwright: "page.getByRole('button', { name: '查 询' })"
resetBtn:
description: "重 置"
element_type: button
section: "main::main"
strategy: role
role: button
name: "重 置"
playwright: "page.getByRole('button', { name: '重 置' })"
exportBtn:
description: "导 出"
element_type: button
section: "main::main"
strategy: role
role: button
name: "导 出"
playwright: "page.getByRole('button', { name: '导 出' })"
viewDetailBtn:
description: "查看"
element_type: button
section: "main::main"
strategy: role
role: button
name: "查看"
playwright: "page.getByRole('button', { name: '查看' })"
# --- main::pagination ---
pagination_action:
description: "共 30 条150 条/页"
element_type: ul
section: "main::pagination"
strategy: label_text
value: "操作"
playwright: "page.getByText('操作', { exact: true })"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: label_text
value: "操作"
playwright: "page.getByText('操作', { exact: true })"
pagination_actionBtn:
description: "操作"
element_type: button
section: "main::pagination"
strategy: label_text
value: "操作"
playwright: "page.getByText('操作', { exact: true })"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: label_text
value: "操作"
playwright: "page.getByText('操作', { exact: true })"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: label_text
value: "操作"
playwright: "page.getByText('操作', { exact: true })"
# --- main::modal:承诺书 ---
cancelBtn:
description: "取 消"
element_type: button
section: "main::modal:承诺书"
strategy: role
role: button
name: "取 消"
playwright: "page.getByRole('button', { name: '取 消' })"
# Auto-generated from vendor-query-elements.json
# Source: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/factory
# Scanned: 2026-10-20T08:41:21.432Z
# Page: 基础设置 > 厂商管理 > 厂商查询
page: vendor-query
module: spd-basic
url: http://spdtest.cmic.com.cn:8080/spd/basic/mfrs/paltform/mfrsName/factory
locators:
# --- main::main ---
menu_home:
description: "首页"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "首页"
playwright: "page.getByRole('menuitem', { name: '首页' })"
menu_basicSetting:
description: "基础设置"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "基础设置"
playwright: "page.getByRole('menuitem', { name: '基础设置' })"
menu_purchase:
description: "采购管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "采购管理"
playwright: "page.getByRole('menuitem', { name: '采购管理' })"
menu_opening:
description: "期初管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "期初管理"
playwright: "page.getByRole('menuitem', { name: '期初管理' })"
menu_centerStock:
description: "中心库管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "中心库管理"
playwright: "page.getByRole('menuitem', { name: '中心库管理' })"
menu_deptBusiness:
description: "科室业务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "科室业务管理"
playwright: "page.getByRole('menuitem', { name: '科室业务管理' })"
menu_finance:
description: "财务管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "财务管理"
playwright: "page.getByRole('menuitem', { name: '财务管理' })"
menu_orthoVolume:
description: "骨科带量"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "骨科带量"
playwright: "page.getByRole('menuitem', { name: '骨科带量' })"
menu_general:
description: "综合管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "综合管理"
playwright: "page.getByRole('menuitem', { name: '综合管理' })"
menu_yangcai:
description: "阳采管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "阳采管理"
playwright: "page.getByRole('menuitem', { name: '阳采管理' })"
menu_processCenter:
description: "流程中心"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "流程中心"
playwright: "page.getByRole('menuitem', { name: '流程中心' })"
menu_logistics:
description: "后勤物资管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "后勤物资管理"
playwright: "page.getByRole('menuitem', { name: '后勤物资管理' })"
menu_statReport:
description: "统计报表"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "统计报表"
playwright: "page.getByRole('menuitem', { name: '统计报表' })"
menu_dataViz:
description: "数据可视化"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "数据可视化"
playwright: "page.getByRole('menuitem', { name: '数据可视化' })"
menu_vendorQuery:
description: "厂商查询"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "厂商查询"
playwright: "page.getByRole('menuitem', { name: '厂商查询' })"
menu_vendorQual:
description: "供应商资质管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商资质管理"
playwright: "page.getByRole('menuitem', { name: '供应商资质管理' })"
menu_authFirst:
description: "授权变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更初审"
playwright: "page.getByRole('menuitem', { name: '授权变更初审' })"
menu_certFirst:
description: "注册证变更初审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更初审"
playwright: "page.getByRole('menuitem', { name: '注册证变更初审' })"
menu_certFinal:
description: "注册证变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证变更终审"
playwright: "page.getByRole('menuitem', { name: '注册证变更终审' })"
menu_authFinal:
description: "授权变更终审"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "授权变更终审"
playwright: "page.getByRole('menuitem', { name: '授权变更终审' })"
menu_certDiff:
description: "注册证差异对比"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "注册证差异对比"
playwright: "page.getByRole('menuitem', { name: '注册证差异对比' })"
menu_evalScheme:
description: "评价方案维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价方案维护"
playwright: "page.getByRole('menuitem', { name: '评价方案维护' })"
menu_evalIndicator:
description: "评价指标维护"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "评价指标维护"
playwright: "page.getByRole('menuitem', { name: '评价指标维护' })"
menu_vendorHoliday:
description: "供应商节假日管理"
element_type: li
section: "main::main"
strategy: role
role: menuitem
name: "供应商节假日管理"
playwright: "page.getByRole('menuitem', { name: '供应商节假日管理' })"
vendorQuery:
description: "厂商查询"
element_type: tab
section: "main::main"
strategy: text
value: "厂商查询"
playwright: "page.getByText('厂商查询')"
tab_vendorQuery:
description: "厂商查询"
element_type: div
section: "main::main"
strategy: id
value: "rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/factory"
playwright: "page.locator('#rc-tabs-0-tab-/basic/mfrs/paltform/mfrsName/factory')"
mfrsNameInput:
description: "厂商名称"
element_type: text
section: "main::main"
strategy: placeholder
value: "厂商名称"
playwright: "page.getByPlaceholder('厂商名称')"
tableDensity:
description: "column-height"
element_type: span
section: "main::main"
strategy: label
value: "column-height"
playwright: "page.getByLabel('column-height')"
# --- main::pagination ---
pagination_el_e585b1343430e69da13132333435e280a2e280a2e280a2393530e69da12fe9a1b5e8b7b3e887b3e9a1b5:
description: "共 440 条12345•••950 条/页跳至页"
element_type: ul
section: "main::pagination"
strategy: text
value: "共 440 条12345•••950 条/页跳至页"
playwright: "page.getByText('共 440 条12345•••950 条/页跳至页')"
pagination_prevPageBtn:
description: "上一页"
element_type: li
section: "main::pagination"
strategy: text
value: "上一页"
playwright: "page.getByText('上一页')"
pagination_page_1:
description: "1"
element_type: pagination_item
section: "main::pagination"
strategy: css
value: ".ant-pagination-item-active"
playwright: "page.locator('.ant-pagination-item-active')"
pagination_page_2:
description: "2"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "2"
playwright: "page.getByText('2')"
pagination_page_3:
description: "3"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "3"
playwright: "page.getByText('3')"
pagination_page_4:
description: "4"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "4"
playwright: "page.getByText('4')"
pagination_page_5:
description: "5"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "5"
playwright: "page.getByText('5')"
pagination_el_e59091e5908e35e9a1b5:
description: "向后 5 页"
element_type: li
section: "main::pagination"
strategy: text
value: "向后 5 页"
playwright: "page.getByText('向后 5 页')"
pagination_page_9:
description: "9"
element_type: pagination_item
section: "main::pagination"
strategy: text
value: "9"
playwright: "page.getByText('9')"
pagination_nextPageBtn:
description: "下一页"
element_type: li
section: "main::pagination"
strategy: text
value: "下一页"
playwright: "page.getByText('下一页')"
pagination_pageSizeSelect:
description: "50 条/页"
element_type: select
section: "main::pagination"
strategy: text
value: "50 条/页"
playwright: "page.getByText('50 条/页')"
import type { Locator, Page } from '@playwright/test';
/** 基础设置 · 厂商管理。叶子菜单是 .ant-menu-item,不是 role=menuitem。 */
export class VendorSharedLocators {
readonly menuBasic: Locator;
readonly vendorSubmenuTitle: Locator;
readonly tableHeader: Locator;
readonly empty: Locator;
readonly paginationTotal: Locator;
readonly nextPage: Locator;
readonly prevPage: Locator;
readonly formError: Locator;
constructor(protected readonly page: Page) {
this.menuBasic = page.getByRole('menuitem', { name: '基础设置' });
this.vendorSubmenuTitle = page.locator('.ant-menu-submenu-title').filter({ hasText: /^厂商管理$/ });
this.tableHeader = page.locator('.ant-table-thead th');
this.empty = page.locator('.ant-empty, .ant-empty-description').first();
this.paginationTotal = page.locator('.ant-pagination-total-text').first();
this.nextPage = page.locator('.ant-pagination-next').first();
this.prevPage = page.locator('.ant-pagination-prev').first();
this.formError = page.locator('.ant-form-item-explain-error, .ant-message-notice, .ant-notification-notice');
}
menuLeaf(name: string): Locator {
return this.page.locator('.ant-menu-item').filter({ hasText: new RegExp(`^\\s*${name}\\s*$`) }).first();
}
button(name: string, root: Locator | Page = this.page): Locator {
const compact = name.replace(/\s/g, '');
const pattern = new RegExp(compact.split('').join('\\s*'));
return root.getByRole('button', { name: pattern });
}
tab(name: string): Locator {
return this.page.locator('.ant-tabs-tab').filter({ hasText: new RegExp(name) }).first();
}
putPage(): Locator {
return this.page.locator('.put-page').last();
}
dialog(): Locator {
return this.page.locator('.ant-modal-wrap .ant-modal, .ant-drawer-open').last();
}
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment