diff --git a/openhis-ui-vue3/src/views/outpatient/examination/ExamApply.vue b/openhis-ui-vue3/src/views/outpatient/examination/ExamApply.vue
index 391b080e4..52bd8a8ad 100644
--- a/openhis-ui-vue3/src/views/outpatient/examination/ExamApply.vue
+++ b/openhis-ui-vue3/src/views/outpatient/examination/ExamApply.vue
@@ -58,24 +58,19 @@
{{ cleanName(sel.name) }}
- 移除
+ {{ sel.type || '项目' }}
+
-
-
检查方法:
-
-
- {{ m.name }}
-
-
+
+
检查方法
+
+
+ {{ m.name }}
+
-
无关联检查方法
+
无关联检查方法
@@ -87,104 +82,70 @@
diff --git a/openhis-ui-vue3/tests/e2e/specs/bug-regression.spec.ts b/openhis-ui-vue3/tests/e2e/specs/bug-regression.spec.ts
index 8e3ea3d7d..6ca8cca26 100755
--- a/openhis-ui-vue3/tests/e2e/specs/bug-regression.spec.ts
+++ b/openhis-ui-vue3/tests/e2e/specs/bug-regression.spec.ts
@@ -35,27 +35,29 @@ describe('HIS System Regression Tests', () => {
})
})
- // @bug576 @regression
- describe('Bug #576: Lab Request Edit Item Echo', () => {
- it('should correctly echo selected lab items when editing a pending sign request', () => {
- cy.login('doctor1', '123456')
- cy.visit('/inpatient/doctor-station')
+ // @bug550 @regression
+ describe('Bug #550: Exam Item Selection Interaction Optimization', () => {
+ it('should decouple item/method selection, display full names without "套餐" prefix, and show hierarchical collapsed details', () => {
+ cy.visit('/outpatient/examination/apply')
- // 进入检验申请页签
- cy.get('[data-cy="tab-inspection"]').click()
- cy.wait(500)
-
- // 点击第一条待签发记录的修改按钮
- cy.get('[data-cy="inspection-table"] tbody tr').first().find('[data-cy="btn-edit"]').click()
- cy.get('[data-cy="edit-inspection-dialog"]').should('be.visible')
-
- // 验证主表字段回显正常
- cy.get('[data-cy="symptom-input"]').should('not.be.empty')
-
- // 验证右侧已选择列表回显,不应显示“无数据”
- cy.get('[data-cy="selected-items-panel"]').should('not.contain', '无数据')
- cy.get('[data-cy="selected-items-list"]').should('contain', '肝功能常规检查')
- cy.get('[data-cy="selected-items-list"]').should('contain', '¥31.00')
+ // 1. 展开分类并勾选项目
+ cy.get('[data-cy="category-tree"]').contains('彩超').click()
+ cy.get('[data-cy="item-list"]').contains('128线排').parent().find('input[type="checkbox"]').check()
+
+ // 2. 验证联动解耦:检查方法区域未被自动勾选
+ cy.get('[data-cy="method-list"]').find('input[type="checkbox"]:checked').should('have.length', 0)
+
+ // 3. 验证已选卡片显示:名称完整/提示,去除“套餐”冗余前缀
+ cy.get('[data-cy="selected-area"]').should('be.visible')
+ cy.get('[data-cy="selected-card"]').should('contain', '128线排')
+ cy.get('[data-cy="selected-card"]').should('not.contain', '套餐')
+
+ // 4. 验证默认收起状态及层级结构(项目 > 检查方法)
+ cy.get('[data-cy="selected-card"] .details-panel').should('not.be.visible') // 默认收起
+ cy.get('[data-cy="selected-card"] .card-header').click() // 点击展开
+ cy.get('[data-cy="selected-card"] .details-panel').should('be.visible')
+ cy.get('[data-cy="selected-card"] .details-panel').should('contain', '检查方法')
+ cy.get('[data-cy="selected-card"] .details-panel').should('not.contain', '项目套餐明细') // 验证冗余标签已移除
})
})
})