vue2-client 1.16.62 → 1.16.64
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +7 -2
- package/.serena/project.yml +67 -0
- package/CLAUDE.md +12 -4
- package/package.json +1 -1
- package/src/assets/img/paymentMethod/icon1.png +0 -0
- package/src/assets/img/paymentMethod/icon2.png +0 -0
- package/src/assets/img/paymentMethod/icon3.png +0 -0
- package/src/assets/img/paymentMethod/icon4.png +0 -0
- package/src/assets/img/paymentMethod/icon5.png +0 -0
- package/src/assets/img/paymentMethod/icon6.png +0 -0
- package/src/base-client/components/common/HIS/demo.vue +14 -14
- package/src/base-client/components/common/Upload/Upload.vue +4 -4
- package/src/base-client/components/common/XCollapse/XCollapse.vue +34 -20
- package/src/base-client/components/common/XReport/XReportHospitalizationDemo.vue +45 -0
- package/src/base-client/components/common/XReportGrid/XReportDemo.vue +1 -1
- package/src/base-client/components/common/XReportGrid/XReportTrGroup.vue +19 -5
- package/src/base-client/components/his/XCharge/XChargeDemo.vue +0 -1
- package/src/base-client/components/his/XHDescriptions/XHDescriptions.vue +357 -170
- package/src/base-client/components/his/XSidebar/XSidebar.vue +123 -27
- package/src/pages/WorkflowDetail/WorkFlowDemo3.vue +203 -203
- package/src/router/async/router.map.js +1 -0
- package/src-base-client/components/his/XCharge/README.md +0 -0
- package/src-base-client/components/his/XCharge/XCharge.vue +0 -0
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</div>
|
|
14
14
|
|
|
15
15
|
<!-- 当有 layout 配置时使用 a-descriptions -->
|
|
16
|
-
<template v-if="config && config.layout">
|
|
16
|
+
<template v-if="config && config.layout && !wrapperClassObject['xhdesc-medical-history']">
|
|
17
17
|
<a-descriptions
|
|
18
18
|
:column="config.layout"
|
|
19
19
|
:size="(config && config.style && config.style.size)"
|
|
@@ -37,7 +37,24 @@
|
|
|
37
37
|
<span class="label-text">{{ item.label }}</span>
|
|
38
38
|
</div>
|
|
39
39
|
</template>
|
|
40
|
-
<
|
|
40
|
+
<a-tooltip
|
|
41
|
+
v-if="isContentOverflow(data[item.field])"
|
|
42
|
+
:title="data[item.field]"
|
|
43
|
+
placement="topLeft"
|
|
44
|
+
:overlay-style="{ maxWidth: '400px' }"
|
|
45
|
+
>
|
|
46
|
+
<div
|
|
47
|
+
class="content-wrapper ellipsis"
|
|
48
|
+
:data-full-text="data[item.field]"
|
|
49
|
+
>
|
|
50
|
+
{{ data[item.field] }}
|
|
51
|
+
</div>
|
|
52
|
+
</a-tooltip>
|
|
53
|
+
<div
|
|
54
|
+
v-else
|
|
55
|
+
class="content-wrapper"
|
|
56
|
+
:data-full-text="data[item.field]"
|
|
57
|
+
>
|
|
41
58
|
{{ data[item.field] }}
|
|
42
59
|
</div>
|
|
43
60
|
</a-descriptions-item>
|
|
@@ -59,7 +76,11 @@
|
|
|
59
76
|
<span class="label-text">{{ item.label }}</span>
|
|
60
77
|
</div>
|
|
61
78
|
</template>
|
|
62
|
-
<div
|
|
79
|
+
<div
|
|
80
|
+
class="content-wrapper"
|
|
81
|
+
:class="{ 'ellipsis': isContentOverflow(data[item.field]) }"
|
|
82
|
+
:data-full-text="data[item.field]"
|
|
83
|
+
>
|
|
63
84
|
{{ data[item.field] }}
|
|
64
85
|
</div>
|
|
65
86
|
</a-descriptions-item>
|
|
@@ -68,6 +89,67 @@
|
|
|
68
89
|
</a-descriptions>
|
|
69
90
|
</template>
|
|
70
91
|
|
|
92
|
+
<!-- 医疗病史模式:使用自定义HTML结构实现文本环绕 -->
|
|
93
|
+
<template v-else-if="config && config.layout && wrapperClassObject['xhdesc-medical-history']">
|
|
94
|
+
<div class="medical-history-descriptions">
|
|
95
|
+
<template v-if="data">
|
|
96
|
+
<!-- 显示前N个标签 -->
|
|
97
|
+
<div
|
|
98
|
+
v-for="(item) in visibleItemsFiltered"
|
|
99
|
+
:key="item.field"
|
|
100
|
+
:class="['medical-history-item', { 'with-divider': item.isLine }]"
|
|
101
|
+
>
|
|
102
|
+
<div class="medical-history-content">
|
|
103
|
+
<a-tooltip
|
|
104
|
+
v-if="isContentOverflow(data[item.field])"
|
|
105
|
+
:title="data[item.field]"
|
|
106
|
+
placement="topLeft"
|
|
107
|
+
:overlay-style="{ maxWidth: '400px' }"
|
|
108
|
+
>
|
|
109
|
+
<div class="medical-history-text ellipsis">
|
|
110
|
+
<span class="medical-history-label">{{ item.label }}:</span>{{ data[item.field] }}
|
|
111
|
+
</div>
|
|
112
|
+
</a-tooltip>
|
|
113
|
+
<div
|
|
114
|
+
v-else
|
|
115
|
+
class="medical-history-text"
|
|
116
|
+
>
|
|
117
|
+
<span class="medical-history-label">{{ item.label }}:</span>{{ data[item.field] }}
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
|
|
122
|
+
<!-- 展开后显示剩余标签 -->
|
|
123
|
+
<template v-if="showAllItems">
|
|
124
|
+
<div
|
|
125
|
+
v-for="item in hiddenItemsFiltered"
|
|
126
|
+
:key="item.field"
|
|
127
|
+
class="medical-history-item"
|
|
128
|
+
>
|
|
129
|
+
<div class="medical-history-content">
|
|
130
|
+
<a-tooltip
|
|
131
|
+
v-if="isContentOverflow(data[item.field])"
|
|
132
|
+
:title="data[item.field]"
|
|
133
|
+
placement="topLeft"
|
|
134
|
+
:overlay-style="{ maxWidth: '400px' }"
|
|
135
|
+
>
|
|
136
|
+
<div class="medical-history-text ellipsis">
|
|
137
|
+
<span class="medical-history-label">{{ item.label }}:</span>{{ data[item.field] }}
|
|
138
|
+
</div>
|
|
139
|
+
</a-tooltip>
|
|
140
|
+
<div
|
|
141
|
+
v-else
|
|
142
|
+
class="medical-history-text"
|
|
143
|
+
>
|
|
144
|
+
<span class="medical-history-label">{{ item.label }}:</span>{{ data[item.field] }}
|
|
145
|
+
</div>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
</template>
|
|
149
|
+
</template>
|
|
150
|
+
</div>
|
|
151
|
+
</template>
|
|
152
|
+
|
|
71
153
|
<!-- 当没有 layout 配置时使用自适应布局 -->
|
|
72
154
|
<template v-else>
|
|
73
155
|
<div class="flex-descriptions">
|
|
@@ -87,7 +169,24 @@
|
|
|
87
169
|
/>
|
|
88
170
|
<span class="label-text">{{ item.label }}:</span>
|
|
89
171
|
</div>
|
|
90
|
-
<
|
|
172
|
+
<a-tooltip
|
|
173
|
+
v-if="isContentOverflow(data[item.field])"
|
|
174
|
+
:title="data[item.field]"
|
|
175
|
+
placement="topLeft"
|
|
176
|
+
:overlay-style="{ maxWidth: '400px' }"
|
|
177
|
+
>
|
|
178
|
+
<div
|
|
179
|
+
class="content-wrapper ellipsis"
|
|
180
|
+
:data-full-text="data[item.field]"
|
|
181
|
+
>
|
|
182
|
+
{{ data[item.field] }}
|
|
183
|
+
</div>
|
|
184
|
+
</a-tooltip>
|
|
185
|
+
<div
|
|
186
|
+
v-else
|
|
187
|
+
class="content-wrapper"
|
|
188
|
+
:data-full-text="data[item.field]"
|
|
189
|
+
>
|
|
91
190
|
{{ data[item.field] }}
|
|
92
191
|
</div>
|
|
93
192
|
</div>
|
|
@@ -108,7 +207,11 @@
|
|
|
108
207
|
/>
|
|
109
208
|
<span class="label-text">{{ item.label }}:</span>
|
|
110
209
|
</div>
|
|
111
|
-
<div
|
|
210
|
+
<div
|
|
211
|
+
class="content-wrapper"
|
|
212
|
+
:class="{ 'ellipsis': isContentOverflow(data[item.field]) }"
|
|
213
|
+
:data-full-text="data[item.field]"
|
|
214
|
+
>
|
|
112
215
|
{{ data[item.field] }}
|
|
113
216
|
</div>
|
|
114
217
|
</div>
|
|
@@ -120,25 +223,79 @@
|
|
|
120
223
|
<!-- 可选:底部区域(分割线 + 三列内容) -->
|
|
121
224
|
<div v-if="config && config.footer && Array.isArray(config.footer.items) && data" class="xhdesc-footer">
|
|
122
225
|
<div class="xhdesc-divider" />
|
|
123
|
-
|
|
226
|
+
<!-- 医疗病史模式下的footer结构 -->
|
|
227
|
+
<div v-if="wrapperClassObject['xhdesc-medical-history']" class="medical-history-footer">
|
|
228
|
+
<div
|
|
229
|
+
v-for="(item, idx) in config.footer.items"
|
|
230
|
+
:key="item.field || idx"
|
|
231
|
+
class="medical-history-item">
|
|
232
|
+
<div class="medical-history-content">
|
|
233
|
+
<a-tooltip
|
|
234
|
+
v-if="isContentOverflow(data[item.field])"
|
|
235
|
+
:title="data[item.field]"
|
|
236
|
+
placement="topLeft"
|
|
237
|
+
:overlay-style="{ maxWidth: '400px' }"
|
|
238
|
+
>
|
|
239
|
+
<div class="medical-history-text ellipsis">
|
|
240
|
+
<span class="medical-history-label">{{ item.label }}:</span>{{ data[item.field] }}
|
|
241
|
+
</div>
|
|
242
|
+
</a-tooltip>
|
|
243
|
+
<div
|
|
244
|
+
v-else
|
|
245
|
+
class="medical-history-text"
|
|
246
|
+
>
|
|
247
|
+
<span class="medical-history-label">{{ item.label }}:</span>{{ data[item.field] }}
|
|
248
|
+
</div>
|
|
249
|
+
</div>
|
|
250
|
+
</div>
|
|
251
|
+
<!-- 右侧信息:换到下一行并靠右对齐(如 医生 / 医嘱日期) -->
|
|
252
|
+
<div
|
|
253
|
+
v-if="Array.isArray(config.footer.rightItems) && config.footer.rightItems.length"
|
|
254
|
+
class="footer-right">
|
|
255
|
+
<div
|
|
256
|
+
v-for="(item, ridx) in config.footer.rightItems"
|
|
257
|
+
:key="item.field || ridx"
|
|
258
|
+
class="footer-right-item">
|
|
259
|
+
<div class="label-wrapper"><span class="label-text">{{ item.label }}:</span></div>
|
|
260
|
+
<div
|
|
261
|
+
class="content-wrapper"
|
|
262
|
+
:class="{ 'ellipsis': isContentOverflow(data[item.field]) }"
|
|
263
|
+
:data-full-text="data[item.field]"
|
|
264
|
+
>{{ data[item.field] }}
|
|
265
|
+
</div>
|
|
266
|
+
</div>
|
|
267
|
+
</div>
|
|
268
|
+
</div>
|
|
269
|
+
<!-- 非医疗病史模式下的footer结构 -->
|
|
270
|
+
<div v-else class="footer-grid">
|
|
124
271
|
<div
|
|
125
272
|
v-for="(item, idx) in config.footer.items"
|
|
126
273
|
:key="item.field || idx"
|
|
127
274
|
class="description-item">
|
|
128
275
|
<div class="label-wrapper"><span class="label-text">{{ item.label }}:</span></div>
|
|
129
|
-
<div
|
|
276
|
+
<div
|
|
277
|
+
class="content-wrapper"
|
|
278
|
+
:class="{ 'ellipsis': isContentOverflow(data[item.field]) }"
|
|
279
|
+
:data-full-text="data[item.field]"
|
|
280
|
+
>{{ data[item.field] }}
|
|
281
|
+
</div>
|
|
130
282
|
</div>
|
|
131
283
|
</div>
|
|
132
284
|
<!-- 右侧信息:换到下一行并靠右对齐(如 医生 / 医嘱日期) -->
|
|
133
285
|
<div
|
|
134
|
-
v-if="Array.isArray(config.footer.rightItems) && config.footer.rightItems.length"
|
|
286
|
+
v-if="!wrapperClassObject['xhdesc-medical-history'] && Array.isArray(config.footer.rightItems) && config.footer.rightItems.length"
|
|
135
287
|
class="footer-right">
|
|
136
288
|
<div
|
|
137
289
|
v-for="(item, ridx) in config.footer.rightItems"
|
|
138
290
|
:key="item.field || ridx"
|
|
139
291
|
class="footer-right-item">
|
|
140
292
|
<div class="label-wrapper"><span class="label-text">{{ item.label }}:</span></div>
|
|
141
|
-
<div
|
|
293
|
+
<div
|
|
294
|
+
class="content-wrapper"
|
|
295
|
+
:class="{ 'ellipsis': isContentOverflow(data[item.field]) }"
|
|
296
|
+
:data-full-text="data[item.field]"
|
|
297
|
+
>{{ data[item.field] }}
|
|
298
|
+
</div>
|
|
142
299
|
</div>
|
|
143
300
|
</div>
|
|
144
301
|
</div>
|
|
@@ -265,6 +422,11 @@ export default {
|
|
|
265
422
|
},
|
|
266
423
|
toggleDetails () {
|
|
267
424
|
this.showAllItems = !this.showAllItems
|
|
425
|
+
},
|
|
426
|
+
// 判断内容是否超过三行
|
|
427
|
+
isContentOverflow (content) {
|
|
428
|
+
if (!content || typeof content !== 'string') return false
|
|
429
|
+
return content.length > 150
|
|
268
430
|
}
|
|
269
431
|
},
|
|
270
432
|
watch: {
|
|
@@ -333,10 +495,6 @@ export default {
|
|
|
333
495
|
white-space: nowrap;
|
|
334
496
|
}
|
|
335
497
|
|
|
336
|
-
.label-wrapper.with-avatar {
|
|
337
|
-
gap: 8px;
|
|
338
|
-
}
|
|
339
|
-
|
|
340
498
|
.label-text {
|
|
341
499
|
white-space: nowrap;
|
|
342
500
|
color: #313131; // 统一深灰
|
|
@@ -357,8 +515,7 @@ export default {
|
|
|
357
515
|
}
|
|
358
516
|
|
|
359
517
|
/* 强制移除任何链接样式(如接口返回含 <a>) */
|
|
360
|
-
::v-deep a
|
|
361
|
-
::deep a {
|
|
518
|
+
::v-deep a {
|
|
362
519
|
color: #313131 !important;
|
|
363
520
|
text-decoration: none !important;
|
|
364
521
|
}
|
|
@@ -379,10 +536,17 @@ export default {
|
|
|
379
536
|
}
|
|
380
537
|
|
|
381
538
|
.xhdesc-divider {
|
|
382
|
-
width: 100
|
|
539
|
+
width: calc(100% + 24px); /* 扩展到左右内边距之外 */
|
|
383
540
|
height: 0;
|
|
384
|
-
border-bottom: 1px
|
|
385
|
-
margin:
|
|
541
|
+
border-bottom: 1px solid #E5E9F0;
|
|
542
|
+
margin: 10px -12px 14px; /* 抵消左右 12px 内边距 */
|
|
543
|
+
overflow: hidden;
|
|
544
|
+
}
|
|
545
|
+
/* medical-history 模式:左 padding 11px,右 12px(由外层设置),做精确抵消 */
|
|
546
|
+
.patient-info-descriptions.xhdesc-medical-history .xhdesc-divider {
|
|
547
|
+
width: calc(100% + 23px);
|
|
548
|
+
margin-left: -11px;
|
|
549
|
+
margin-right: -12px;
|
|
386
550
|
}
|
|
387
551
|
|
|
388
552
|
.footer-grid {
|
|
@@ -408,13 +572,13 @@ export default {
|
|
|
408
572
|
}
|
|
409
573
|
|
|
410
574
|
/* Ant Design 描述列表样式覆盖 */
|
|
411
|
-
|
|
575
|
+
::v-deep(.ant-descriptions-row) {
|
|
412
576
|
display: flex;
|
|
413
577
|
flex-direction: row;
|
|
414
578
|
align-items: flex-start;
|
|
415
579
|
}
|
|
416
580
|
|
|
417
|
-
|
|
581
|
+
::v-deep(.ant-descriptions-item) {
|
|
418
582
|
padding: 0 !important;
|
|
419
583
|
display: flex !important;
|
|
420
584
|
align-items: flex-start !important;
|
|
@@ -424,7 +588,7 @@ export default {
|
|
|
424
588
|
margin-bottom: 16px;
|
|
425
589
|
}
|
|
426
590
|
|
|
427
|
-
|
|
591
|
+
::v-deep(.ant-descriptions-item-container) {
|
|
428
592
|
display: flex !important;
|
|
429
593
|
flex-direction: row !important;
|
|
430
594
|
align-items: flex-start !important;
|
|
@@ -433,7 +597,7 @@ export default {
|
|
|
433
597
|
width: 100% !important;
|
|
434
598
|
}
|
|
435
599
|
|
|
436
|
-
|
|
600
|
+
::v-deep(.ant-descriptions-item-label) {
|
|
437
601
|
color: rgba(0, 0, 0, 0.65);
|
|
438
602
|
padding: 0 !important;
|
|
439
603
|
margin: 0 !important;
|
|
@@ -446,7 +610,7 @@ export default {
|
|
|
446
610
|
padding-right: 2px !important;
|
|
447
611
|
}
|
|
448
612
|
|
|
449
|
-
|
|
613
|
+
::v-deep(.ant-descriptions-item-content) {
|
|
450
614
|
font-size: v-bind('(config && config.style && config.style.fontSize) || "14px"');
|
|
451
615
|
display: inline-flex !important;
|
|
452
616
|
align-items: center !important;
|
|
@@ -455,7 +619,7 @@ export default {
|
|
|
455
619
|
margin-left: 0px !important;
|
|
456
620
|
}
|
|
457
621
|
|
|
458
|
-
|
|
622
|
+
::v-deep(.ant-descriptions-item-colon) {
|
|
459
623
|
position: static !important;
|
|
460
624
|
display: inline-flex !important;
|
|
461
625
|
align-items: center !important;
|
|
@@ -464,18 +628,18 @@ export default {
|
|
|
464
628
|
margin-right: 2px !important;
|
|
465
629
|
}
|
|
466
630
|
|
|
467
|
-
|
|
631
|
+
::v-deep(.ant-descriptions-item-container:hover) {
|
|
468
632
|
background-color: rgba(0, 0, 0, 0.02);
|
|
469
633
|
border-radius: 4px;
|
|
470
634
|
}
|
|
471
635
|
|
|
472
|
-
|
|
636
|
+
::v-deep(.ant-btn-link) {
|
|
473
637
|
padding: 0;
|
|
474
638
|
height: auto;
|
|
475
639
|
line-height: 1;
|
|
476
640
|
}
|
|
477
641
|
|
|
478
|
-
|
|
642
|
+
::v-deep(.ant-btn-link:hover) {
|
|
479
643
|
color: #1890ff;
|
|
480
644
|
background: transparent;
|
|
481
645
|
}
|
|
@@ -513,12 +677,12 @@ export default {
|
|
|
513
677
|
}
|
|
514
678
|
|
|
515
679
|
/* 对于 Ant Design 描述列表的特殊处理 */
|
|
516
|
-
|
|
680
|
+
::v-deep(.ant-descriptions-item.with-divider) {
|
|
517
681
|
position: relative;
|
|
518
682
|
margin-bottom: 16px !important;
|
|
519
683
|
}
|
|
520
684
|
|
|
521
|
-
|
|
685
|
+
::v-deep(.ant-descriptions-item.with-divider::after) {
|
|
522
686
|
content: '';
|
|
523
687
|
position: absolute;
|
|
524
688
|
left: 0;
|
|
@@ -540,12 +704,12 @@ export default {
|
|
|
540
704
|
padding: 6.5px 12px;
|
|
541
705
|
|
|
542
706
|
/* *ant-btn-link */
|
|
543
|
-
|
|
707
|
+
::v-deep .ant-btn-link {
|
|
544
708
|
border: none;
|
|
545
709
|
}
|
|
546
710
|
|
|
547
711
|
/* *ant-descriptions-item-content */
|
|
548
|
-
|
|
712
|
+
::v-deep .ant-descriptions-item-content {
|
|
549
713
|
font-weight: bold;
|
|
550
714
|
}
|
|
551
715
|
}
|
|
@@ -554,179 +718,202 @@ export default {
|
|
|
554
718
|
.xhdesc-margin-top-12 {
|
|
555
719
|
margin-top: -12px;
|
|
556
720
|
}
|
|
557
|
-
.xhdesc-no-padding {
|
|
558
|
-
padding: 0px;
|
|
559
|
-
}
|
|
560
721
|
.xhdesc-no-padding {
|
|
561
722
|
padding: 0px;
|
|
562
723
|
&.patient-info-descriptions,
|
|
563
724
|
.patient-info-descriptions {
|
|
564
725
|
/* *ant-descriptions-item-content */
|
|
565
|
-
|
|
726
|
+
::v-deep .descriptions-container {
|
|
566
727
|
padding: 0px;
|
|
567
728
|
}
|
|
568
|
-
|
|
729
|
+
::v-deep .content-wrapper {
|
|
569
730
|
margin: 0px;
|
|
570
731
|
}
|
|
571
732
|
}
|
|
572
733
|
}
|
|
734
|
+
/* 医疗病史模式:自定义HTML结构样式 */
|
|
735
|
+
.medical-history-descriptions {
|
|
736
|
+
width: 100%;
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
.medical-history-item {
|
|
740
|
+
margin: 0;
|
|
741
|
+
width: 100%;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
.medical-history-item.with-divider {
|
|
745
|
+
position: relative;
|
|
746
|
+
padding-bottom: 4px; /* 分割线与上方间距 4px */
|
|
747
|
+
margin-bottom: 4px; /* 分割线与下方间距 4px */
|
|
748
|
+
}
|
|
749
|
+
|
|
750
|
+
.medical-history-item.with-divider::after {
|
|
751
|
+
content: '';
|
|
752
|
+
position: absolute;
|
|
753
|
+
left: 0;
|
|
754
|
+
bottom: 0; /* 贴合容器底部 */
|
|
755
|
+
width: 100%;
|
|
756
|
+
height: 0;
|
|
757
|
+
border-bottom: 1px solid rgba(0, 0, 0, 0.15);
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
.medical-history-content {
|
|
761
|
+
font-family: "Source Han Sans";
|
|
762
|
+
font-size: 18px;
|
|
763
|
+
line-height: 24px;
|
|
764
|
+
letter-spacing: 0em;
|
|
765
|
+
text-align: left;
|
|
766
|
+
word-break: break-word;
|
|
767
|
+
white-space: normal;
|
|
768
|
+
text-indent: 0;
|
|
769
|
+
padding-left: 0;
|
|
770
|
+
margin-left: 0;
|
|
771
|
+
/* 使用float实现真正的文本环绕 */
|
|
772
|
+
overflow: hidden;
|
|
773
|
+
/* 确保容器能够正确清除浮动 */
|
|
774
|
+
position: relative;
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
.medical-history-label {
|
|
778
|
+
font-family: "Source Han Sans";
|
|
779
|
+
font-size: 16px;
|
|
780
|
+
font-weight: 700;
|
|
781
|
+
color: #313131;
|
|
782
|
+
white-space: nowrap;
|
|
783
|
+
float: left;
|
|
784
|
+
margin-right: 0px;
|
|
785
|
+
/* 确保标签不会影响文本流 */
|
|
786
|
+
position: relative;
|
|
787
|
+
z-index: 1;
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
.medical-history-text {
|
|
791
|
+
font-family: "Source Han Sans";
|
|
792
|
+
font-size: 16px;
|
|
793
|
+
font-weight: 400;
|
|
794
|
+
color: #313131;
|
|
795
|
+
display: block;
|
|
796
|
+
overflow: hidden;
|
|
797
|
+
text-indent: 0;
|
|
798
|
+
padding-left: 0;
|
|
799
|
+
margin-left: 0;
|
|
800
|
+
word-break: break-word;
|
|
801
|
+
white-space: normal;
|
|
802
|
+
text-align: left;
|
|
803
|
+
line-height: 24px;
|
|
804
|
+
/* 确保文本能够正确环绕浮动元素 */
|
|
805
|
+
margin-top: 0;
|
|
806
|
+
margin-bottom: 0;
|
|
807
|
+
}
|
|
808
|
+
|
|
809
|
+
.medical-history-text.ellipsis {
|
|
810
|
+
display: -webkit-box;
|
|
811
|
+
-webkit-box-orient: vertical;
|
|
812
|
+
-webkit-line-clamp: 3;
|
|
813
|
+
line-clamp: 3;
|
|
814
|
+
overflow: hidden;
|
|
815
|
+
cursor: pointer;
|
|
816
|
+
position: relative;
|
|
817
|
+
word-break: break-word;
|
|
818
|
+
white-space: normal;
|
|
819
|
+
line-height: 24px;
|
|
820
|
+
text-indent: 0;
|
|
821
|
+
padding-left: 0;
|
|
822
|
+
margin-left: 0;
|
|
823
|
+
text-align: left;
|
|
824
|
+
-webkit-box-pack: start;
|
|
825
|
+
-webkit-box-align: start;
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
/* 使用-webkit-line-clamp时不需要手动添加省略号 */
|
|
829
|
+
.medical-history-text.ellipsis::after {
|
|
830
|
+
display: none;
|
|
831
|
+
}
|
|
832
|
+
|
|
833
|
+
/* 针对多行文本的特殊处理:确保换行文本与首行对齐 */
|
|
834
|
+
.medical-history-text.ellipsis::first-line {
|
|
835
|
+
text-indent: 0;
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
/* 为不支持-webkit-line-clamp的浏览器提供后备方案 */
|
|
839
|
+
@supports not (-webkit-line-clamp: 3) {
|
|
840
|
+
.medical-history-text.ellipsis {
|
|
841
|
+
display: block;
|
|
842
|
+
max-height: 72px; /* 3行 * 24px行高 */
|
|
843
|
+
overflow: hidden;
|
|
844
|
+
position: relative;
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
.medical-history-text.ellipsis::after {
|
|
848
|
+
content: '...';
|
|
849
|
+
position: absolute;
|
|
850
|
+
right: 0;
|
|
851
|
+
bottom: 0;
|
|
852
|
+
background: #fff;
|
|
853
|
+
padding-left: 4px;
|
|
854
|
+
display: block;
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
|
|
573
858
|
/* 医疗病史样式开关:通过 wrapperClassObject 添加类 xhdesc-medical-history */
|
|
574
859
|
.patient-info-descriptions.xhdesc-medical-history {
|
|
860
|
+
padding: 9px 12px 10px 11px !important;
|
|
575
861
|
/* 移除右侧空白(本模式不需要详情按钮预留空间) */
|
|
576
862
|
.descriptions-container {
|
|
577
863
|
padding-right: 0;
|
|
578
|
-
padding-left:
|
|
864
|
+
padding-left: 0px;
|
|
579
865
|
}
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
.flex-descriptions {
|
|
583
|
-
gap: 4px 16px;
|
|
584
|
-
}
|
|
585
|
-
|
|
586
|
-
.description-item {
|
|
587
|
-
padding: 2px 4px;
|
|
866
|
+
/* 医疗病史模式下:footer 区域使用与上方相同的医疗病史样式 */
|
|
867
|
+
.medical-history-footer {
|
|
588
868
|
width: 100%;
|
|
589
|
-
|
|
869
|
+
}
|
|
870
|
+
.medical-history-footer .footer-right {
|
|
871
|
+
margin-top: 8px;
|
|
590
872
|
display: flex;
|
|
591
|
-
|
|
873
|
+
justify-content: flex-end;
|
|
874
|
+
align-items: flex-start;
|
|
875
|
+
gap: 16px;
|
|
876
|
+
width: 100%;
|
|
592
877
|
}
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
.label-wrapper {
|
|
878
|
+
/* 右侧(医生/医嘱日期)标签与值的字体要求 */
|
|
879
|
+
.medical-history-footer .footer-right .label-wrapper .label-text {
|
|
596
880
|
font-family: "Source Han Sans";
|
|
597
|
-
font-size:
|
|
598
|
-
font-weight:
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
letter-spacing: 0em;
|
|
602
|
-
white-space: nowrap;
|
|
603
|
-
margin-right: 8px;
|
|
604
|
-
margin-bottom: 0;
|
|
605
|
-
display: inline;
|
|
881
|
+
font-size: 16px;
|
|
882
|
+
font-weight: 700;
|
|
883
|
+
color: #313131;
|
|
884
|
+
line-height: 22px;
|
|
606
885
|
}
|
|
607
|
-
|
|
608
|
-
.content-wrapper {
|
|
886
|
+
.medical-history-footer .footer-right .content-wrapper {
|
|
609
887
|
font-family: "Source Han Sans";
|
|
610
|
-
font-size:
|
|
888
|
+
font-size: 16px;
|
|
611
889
|
font-weight: 400;
|
|
612
|
-
line-height:
|
|
613
|
-
|
|
614
|
-
margin-left: 0;
|
|
615
|
-
max-width: none;
|
|
616
|
-
overflow: visible;
|
|
617
|
-
text-overflow: initial;
|
|
618
|
-
white-space: normal;
|
|
619
|
-
word-break: break-word;
|
|
620
|
-
display: inline;
|
|
621
|
-
}
|
|
622
|
-
|
|
623
|
-
/* 修复Ant Design描述列表的布局,保持字体样式 */
|
|
624
|
-
:deep(.ant-descriptions-item) {
|
|
625
|
-
display: block !important;
|
|
626
|
-
white-space: nowrap;
|
|
627
|
-
width: 100% !important;
|
|
628
|
-
margin-bottom: 8px;
|
|
629
|
-
margin-right: 0;
|
|
630
|
-
}
|
|
631
|
-
|
|
632
|
-
:deep(.ant-descriptions-item-container) {
|
|
633
|
-
display: inline !important;
|
|
634
|
-
white-space: nowrap;
|
|
635
|
-
width: auto !important;
|
|
636
|
-
align-items: start !important;
|
|
637
|
-
}
|
|
638
|
-
|
|
639
|
-
:deep(.ant-descriptions-item-label) {
|
|
640
|
-
display: inline !important;
|
|
641
|
-
white-space: nowrap !important;
|
|
642
|
-
min-width: auto !important;
|
|
643
|
-
padding-right: 1px !important;
|
|
644
|
-
/* 保持原有字体样式 */
|
|
645
|
-
font-family: "Source Han Sans" !important;
|
|
646
|
-
font-size: 18px !important;
|
|
647
|
-
font-weight: 600 !important;
|
|
648
|
-
line-height: 24px !important;
|
|
649
|
-
text-align: justify !important;
|
|
650
|
-
letter-spacing: 0em !important;
|
|
651
|
-
}
|
|
652
|
-
|
|
653
|
-
:deep(.ant-descriptions-item-content) {
|
|
654
|
-
display: inline !important;
|
|
655
|
-
white-space: normal !important;
|
|
656
|
-
word-break: break-word !important;
|
|
657
|
-
margin-left: 0 !important;
|
|
658
|
-
overflow: visible !important;
|
|
659
|
-
/* 保持原有字体样式 */
|
|
660
|
-
font-family: "Source Han Sans" !important;
|
|
661
|
-
font-size: 18px !important;
|
|
662
|
-
font-weight: 400 !important;
|
|
663
|
-
line-height: 24px !important;
|
|
664
|
-
letter-spacing: 0em !important;
|
|
665
|
-
}
|
|
666
|
-
|
|
667
|
-
:deep(.ant-descriptions-item-colon) {
|
|
668
|
-
margin-right: 2px !important;
|
|
669
|
-
display: inline !important;
|
|
670
|
-
}
|
|
671
|
-
|
|
672
|
-
/* 确保内部元素正确对齐 */
|
|
673
|
-
:deep(.ant-descriptions-item-label .label-wrapper) {
|
|
674
|
-
display: inline !important;
|
|
675
|
-
white-space: nowrap !important;
|
|
676
|
-
width: auto !important;
|
|
677
|
-
gap: 0 !important;
|
|
678
|
-
margin: 0 !important;
|
|
679
|
-
padding: 0 !important;
|
|
680
|
-
line-height: 24px !important;
|
|
890
|
+
line-height: 22px;
|
|
891
|
+
color: #313131;
|
|
681
892
|
}
|
|
682
893
|
|
|
683
|
-
|
|
684
|
-
display: block
|
|
685
|
-
|
|
686
|
-
width: 100%;
|
|
894
|
+
.medical-history-footer .footer-right .medical-history-item {
|
|
895
|
+
display: inline-block;
|
|
896
|
+
text-align: right;
|
|
687
897
|
}
|
|
688
898
|
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
:deep(.ant-descriptions-item-container) {
|
|
692
|
-
float: none !important;
|
|
693
|
-
flex: none !important;
|
|
694
|
-
flex-direction: row !important;
|
|
695
|
-
align-items: flex-start !important;
|
|
899
|
+
.medical-history-footer .footer-right .medical-history-content {
|
|
900
|
+
text-align: right;
|
|
696
901
|
}
|
|
697
902
|
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
903
|
+
.medical-history-footer .footer-right .medical-history-label {
|
|
904
|
+
float: none;
|
|
905
|
+
display: inline;
|
|
906
|
+
margin-right: 0px;
|
|
702
907
|
}
|
|
703
908
|
|
|
704
|
-
|
|
705
|
-
|
|
909
|
+
.medical-history-footer .footer-right .medical-history-text {
|
|
910
|
+
display: inline;
|
|
911
|
+
text-align: right;
|
|
706
912
|
}
|
|
707
913
|
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
display: inline-flex;
|
|
712
|
-
flex-direction: row;
|
|
713
|
-
align-items: center;
|
|
714
|
-
width: 100%;
|
|
715
|
-
}
|
|
716
|
-
.label-wrapper {
|
|
717
|
-
display: inline-flex;
|
|
718
|
-
margin-right: 4px;
|
|
719
|
-
margin-bottom: 0;
|
|
720
|
-
font-weight: 600; // 与上方保持一致
|
|
721
|
-
}
|
|
722
|
-
.content-wrapper {
|
|
723
|
-
display: inline-flex;
|
|
724
|
-
margin-left: 0;
|
|
725
|
-
max-width: 300px;
|
|
726
|
-
overflow: hidden;
|
|
727
|
-
text-overflow: ellipsis;
|
|
728
|
-
white-space: nowrap;
|
|
729
|
-
}
|
|
914
|
+
.medical-history-footer .footer-right .medical-history-text.ellipsis {
|
|
915
|
+
display: inline;
|
|
916
|
+
text-align: right;
|
|
730
917
|
}
|
|
731
918
|
}
|
|
732
919
|
</style>
|