cnhis-design-vue 3.3.1-release.5 → 3.3.2-release.0

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.
Files changed (198) hide show
  1. package/README.md +87 -87
  2. package/es/components/audio-sdk/index.d.ts +20 -0
  3. package/es/components/audio-sdk/src/Index.vue.d.ts +20 -0
  4. package/es/components/audio-sdk/src/Index.vue2.js +1 -1
  5. package/es/components/audio-sdk/src/audioSDK.d.ts +1 -0
  6. package/es/components/audio-sdk/src/audioSDK.js +11 -3
  7. package/es/components/audio-sdk/src/components/recording-modal.vue.d.ts +10 -0
  8. package/es/components/audio-sdk/src/components/recording.vue.d.ts +10 -0
  9. package/es/components/audio-sdk/src/components/recording.vue2.js +5 -0
  10. package/es/components/audio-sdk/src/constants/index.d.ts +1 -0
  11. package/es/components/audio-sdk/src/constants/index.js +3 -0
  12. package/es/components/audio-sdk/src/utils/recorder/fft.d.ts +4 -0
  13. package/es/components/audio-sdk/src/utils/recorder/mp3-engine.d.ts +4 -0
  14. package/es/components/audio-sdk/src/utils/recorder/mp3.d.ts +4 -0
  15. package/es/components/audio-sdk/src/utils/recorder/recorder.d.ts +4 -0
  16. package/es/components/audio-sdk/src/utils/recorder/wave.d.ts +4 -0
  17. package/es/components/audio-sdk/src/utils/recordingModal.js +13 -2
  18. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  19. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  20. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  21. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  22. package/es/components/callback/src/components/render/popupMaps.d.ts +17 -1
  23. package/es/components/card-render/index.d.ts +4 -4
  24. package/es/components/card-render/src/CardRender.vue.d.ts +4 -4
  25. package/es/components/card-render/src/components/index.d.ts +23 -23
  26. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  27. package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +12 -6
  28. package/es/components/field-editor/index.d.ts +4 -0
  29. package/es/components/field-editor/src/FieldEditor.vue.d.ts +4 -0
  30. package/es/components/form-config/index.d.ts +80 -5
  31. package/es/components/form-config/src/FormConfig.vue.d.ts +80 -5
  32. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +4 -0
  33. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +57 -4
  34. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +16 -1
  35. package/es/components/form-config/src/constants/index.d.ts +2 -1
  36. package/es/components/form-config/src/constants/index.js +1 -0
  37. package/es/components/form-config/src/hooks/useConfigurationField.js +19 -1
  38. package/es/components/form-config/src/hooks/useLocale.d.ts +1 -0
  39. package/es/components/form-config/src/hooks/useLocale.js +1 -0
  40. package/es/components/form-config/src/types/index.d.ts +1 -0
  41. package/es/components/form-render/index.d.ts +4 -0
  42. package/es/components/form-render/src/FormRender.vue.d.ts +4 -0
  43. package/es/components/form-render/src/FormRender.vue2.js +3 -2
  44. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +4 -0
  45. package/es/components/form-render/src/components/renderer/combination/combination.js +1 -1
  46. package/es/components/form-render/src/components/renderer/date.d.ts +2 -2
  47. package/es/components/form-render/src/components/renderer/input.d.ts +16 -4
  48. package/es/components/form-render/src/components/renderer/input.js +39 -7
  49. package/es/components/form-render/src/components/renderer/levelSearchCascader/index.js +3 -0
  50. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -0
  51. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -0
  52. package/es/components/form-render/src/components/renderer/radio_checkbox.js +9 -8
  53. package/es/components/form-render/src/components/renderer/text.js +1 -1
  54. package/es/components/form-render/src/components/renderer/textarea.d.ts +16 -1
  55. package/es/components/form-render/src/components/renderer/textarea.js +36 -8
  56. package/es/components/form-render/src/hooks/useBusinessBinding.js +1 -0
  57. package/es/components/form-render/src/hooks/useComplexOptions.js +3 -2
  58. package/es/components/form-render/src/hooks/useFieldListAdaptor.d.ts +2 -2
  59. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +4 -3
  60. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +2 -0
  61. package/es/components/form-render/src/hooks/useFormField.d.ts +2 -0
  62. package/es/components/form-render/src/hooks/useFormField.js +5 -1
  63. package/es/components/form-render/src/hooks/useFormValidator.js +1 -0
  64. package/es/components/form-render/src/hooks/usePresetScope.js +1 -0
  65. package/es/components/form-render/src/types/fieldItem.d.ts +11 -0
  66. package/es/components/form-render/src/types/index.d.ts +1 -0
  67. package/es/components/form-render/src/utils/index.js +1 -0
  68. package/es/components/form-render/src/utils/schema.js +60 -15
  69. package/es/components/guide/src/renderer.d.ts +2 -2
  70. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  71. package/es/components/iho-table/index.d.ts +13 -1
  72. package/es/components/iho-table/src/IhoTable.vue.d.ts +13 -2
  73. package/es/components/iho-table/src/IhoTable.vue2.js +27 -20
  74. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +6 -0
  75. package/es/components/index.css +1 -1
  76. package/es/components/index.d.ts +1 -2
  77. package/es/components/index.js +0 -3
  78. package/es/components/info-header/index.d.ts +13 -0
  79. package/es/components/info-header/src/InfoHeader.vue.d.ts +13 -0
  80. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +1 -0
  81. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +1 -0
  82. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +5 -0
  83. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +4 -0
  84. package/es/components/scale-view/index.d.ts +1 -1
  85. package/es/components/scale-view/src/ScaleView.vue.d.ts +1 -1
  86. package/es/components/scale-view/src/ScaleView.vue2.js +2 -2
  87. package/es/components/scale-view/src/hooks/scaleview-init.d.ts +1 -1
  88. package/es/components/scale-view/src/hooks/scaleview-init.js +2 -2
  89. package/es/components/select-person/src/SelectPerson.vue2.js +8 -5
  90. package/es/components/shortcut-setter/index.d.ts +16 -1
  91. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +16 -1
  92. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +11 -11
  93. package/es/env.d.ts +25 -25
  94. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  95. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  96. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  97. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  98. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  99. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  100. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  101. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  102. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  103. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  104. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  105. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  106. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  107. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  108. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  109. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  110. package/es/shared/assets/img/failure.png.js +1 -1
  111. package/es/shared/assets/img/no-permission.png.js +1 -1
  112. package/es/shared/assets/img/nodata.png.js +1 -1
  113. package/es/shared/assets/img/notfound.png.js +1 -1
  114. package/es/shared/assets/img/qr.png.js +1 -1
  115. package/es/shared/assets/img/success.png.js +1 -1
  116. package/es/shared/assets/img/table_style_2.png.js +1 -1
  117. package/es/shared/assets/img/video.png.js +1 -1
  118. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  119. package/es/shared/assets/img/xb_big.png.js +1 -1
  120. package/es/shared/assets/img/xb_small.png.js +1 -1
  121. package/es/shared/components/CancelRadio/CancelRadio.d.ts +7 -0
  122. package/es/shared/components/CancelRadio/CancelRadio.js +6 -6
  123. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  124. package/es/shared/package.json.js +1 -1
  125. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  126. package/es/shared/utils/tapable/index.d.ts +139 -0
  127. package/package.json +76 -77
  128. package/es/components/ai-chat/index.d.ts +0 -680
  129. package/es/components/ai-chat/index.js +0 -10
  130. package/es/components/ai-chat/src/Index.vue.d.ts +0 -682
  131. package/es/components/ai-chat/src/Index.vue.js +0 -6
  132. package/es/components/ai-chat/src/Index.vue2.js +0 -175
  133. package/es/components/ai-chat/src/api/index.d.ts +0 -8
  134. package/es/components/ai-chat/src/api/index.js +0 -87
  135. package/es/components/ai-chat/src/components/ChatAudio.vue.d.ts +0 -38
  136. package/es/components/ai-chat/src/components/ChatAudio.vue.js +0 -6
  137. package/es/components/ai-chat/src/components/ChatAudio.vue2.js +0 -103
  138. package/es/components/ai-chat/src/components/ChatBI.vue.d.ts +0 -101
  139. package/es/components/ai-chat/src/components/ChatBI.vue.js +0 -6
  140. package/es/components/ai-chat/src/components/ChatBI.vue2.js +0 -73
  141. package/es/components/ai-chat/src/components/ChatCard.d.ts +0 -43
  142. package/es/components/ai-chat/src/components/ChatCard.js +0 -403
  143. package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +0 -203
  144. package/es/components/ai-chat/src/components/ChatFooter.vue.js +0 -6
  145. package/es/components/ai-chat/src/components/ChatFooter.vue2.js +0 -373
  146. package/es/components/ai-chat/src/components/ChatMain.d.ts +0 -2
  147. package/es/components/ai-chat/src/components/ChatMain.js +0 -350
  148. package/es/components/ai-chat/src/components/ChatMainDefault.d.ts +0 -2
  149. package/es/components/ai-chat/src/components/ChatMainDefault.js +0 -278
  150. package/es/components/ai-chat/src/components/ChatPatient.vue.d.ts +0 -59
  151. package/es/components/ai-chat/src/components/ChatPatient.vue.js +0 -6
  152. package/es/components/ai-chat/src/components/ChatPatient.vue2.js +0 -218
  153. package/es/components/ai-chat/src/components/ChatPrompt.vue.d.ts +0 -45
  154. package/es/components/ai-chat/src/components/ChatPrompt.vue.js +0 -6
  155. package/es/components/ai-chat/src/components/ChatPrompt.vue2.js +0 -143
  156. package/es/components/ai-chat/src/components/ChatRight.vue.d.ts +0 -57
  157. package/es/components/ai-chat/src/components/ChatRight.vue.js +0 -6
  158. package/es/components/ai-chat/src/components/ChatRight.vue2.js +0 -190
  159. package/es/components/ai-chat/src/components/card/JsonCard.d.ts +0 -25
  160. package/es/components/ai-chat/src/components/card/JsonCard.js +0 -574
  161. package/es/components/ai-chat/src/components/message-render/CardRender.d.ts +0 -16
  162. package/es/components/ai-chat/src/components/message-render/CardRender.js +0 -80
  163. package/es/components/ai-chat/src/components/message-render/FormRender.d.ts +0 -16
  164. package/es/components/ai-chat/src/components/message-render/FormRender.js +0 -173
  165. package/es/components/ai-chat/src/components/mobile/MobileChatAudio.vue.d.ts +0 -36
  166. package/es/components/ai-chat/src/components/mobile/MobileChatAudio.vue.js +0 -6
  167. package/es/components/ai-chat/src/components/mobile/MobileChatAudio.vue2.js +0 -96
  168. package/es/components/ai-chat/src/components/mobile/MobileChatFooter.vue.d.ts +0 -105
  169. package/es/components/ai-chat/src/components/mobile/MobileChatFooter.vue.js +0 -6
  170. package/es/components/ai-chat/src/components/mobile/MobileChatFooter.vue2.js +0 -260
  171. package/es/components/ai-chat/src/components/svgs/AddIcon.vue.js +0 -18
  172. package/es/components/ai-chat/src/components/svgs/AudioIcon.vue.js +0 -37
  173. package/es/components/ai-chat/src/components/svgs/KeyboardIcon.vue.js +0 -20
  174. package/es/components/ai-chat/src/components/svgs/MicroPhone.vue.js +0 -48
  175. package/es/components/ai-chat/src/hooks/index.d.ts +0 -2
  176. package/es/components/ai-chat/src/hooks/index.js +0 -2
  177. package/es/components/ai-chat/src/hooks/useChartAudioContext.d.ts +0 -18
  178. package/es/components/ai-chat/src/hooks/useChartAudioContext.js +0 -202
  179. package/es/components/ai-chat/src/hooks/useData.d.ts +0 -77
  180. package/es/components/ai-chat/src/hooks/useData.js +0 -289
  181. package/es/components/ai-chat/src/hooks/useFooterContext.d.ts +0 -38
  182. package/es/components/ai-chat/src/hooks/useFooterContext.js +0 -218
  183. package/es/components/ai-chat/src/hooks/useProgram.d.ts +0 -14
  184. package/es/components/ai-chat/src/hooks/useProgram.js +0 -306
  185. package/es/components/ai-chat/src/hooks/useSSE.d.ts +0 -9
  186. package/es/components/ai-chat/src/hooks/useSSE.js +0 -138
  187. package/es/components/ai-chat/src/hooks/useWebsocket.d.ts +0 -4
  188. package/es/components/ai-chat/src/hooks/useWebsocket.js +0 -66
  189. package/es/components/ai-chat/src/types/index.d.ts +0 -45
  190. package/es/components/ai-chat/src/types/index.js +0 -1
  191. package/es/components/ai-chat/src/utils/index.d.ts +0 -7
  192. package/es/components/ai-chat/src/utils/index.js +0 -41
  193. package/es/components/ai-chat/style/index.css +0 -1
  194. package/es/shared/assets/img/ai__avatar.png.js +0 -3
  195. package/es/shared/assets/img/file-emr.png.js +0 -3
  196. package/es/shared/assets/img/file.png.js +0 -3
  197. package/es/shared/assets/img/logo.png.js +0 -3
  198. package/es/shared/assets/img/use.png.js +0 -3
@@ -1,25 +0,0 @@
1
- import { PropType } from 'vue';
2
- import { AnyObject } from '../../../../../shared/types';
3
- declare const _default: import("vue").DefineComponent<{
4
- item: {
5
- type: PropType<AnyObject>;
6
- default: () => {};
7
- };
8
- messageItem: {
9
- type: PropType<AnyObject>;
10
- default: () => {};
11
- };
12
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, never[], never, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
- item: {
14
- type: PropType<AnyObject>;
15
- default: () => {};
16
- };
17
- messageItem: {
18
- type: PropType<AnyObject>;
19
- default: () => {};
20
- };
21
- }>> & {}, {
22
- item: AnyObject;
23
- messageItem: AnyObject;
24
- }>;
25
- export default _default;
@@ -1,574 +0,0 @@
1
- import { defineComponent, ref, computed, createVNode, resolveComponent, createTextVNode } from 'vue';
2
- import { NButton } from 'naive-ui';
3
- import fileIcon from '../../../../../shared/assets/img/file.png.js';
4
- import fileEmrIcon from '../../../../../shared/assets/img/file-emr.png.js';
5
- import useIcon from '../../../../../shared/assets/img/use.png.js';
6
- import { CheckmarkCircle } from '@vicons/ionicons5';
7
- import { isArray, isString } from 'lodash-es';
8
- import { useData } from '../../hooks/useData.js';
9
- import '../../utils/index.js';
10
-
11
- var JsonCard = /* @__PURE__ */ defineComponent({
12
- name: "ChatJsonCard",
13
- inheritAttrs: false,
14
- props: {
15
- item: {
16
- type: Object,
17
- default: () => ({})
18
- },
19
- messageItem: {
20
- type: Object,
21
- default: () => ({})
22
- }
23
- },
24
- emits: [],
25
- setup(props, {
26
- attrs,
27
- slots,
28
- emit: _emit
29
- }) {
30
- const {
31
- state,
32
- isStreamingOutput,
33
- configs,
34
- emit,
35
- sendMessage,
36
- toNext,
37
- $dialog
38
- } = useData();
39
- const {
40
- messageType,
41
- content = {}
42
- } = props.messageItem;
43
- const recommendedChecked = ref([]);
44
- const selectedList = ref([]);
45
- const vac01 = computed(() => {
46
- var _a, _b;
47
- return (_b = (_a = configs.value) == null ? void 0 : _a.vac01) != null ? _b : "";
48
- });
49
- const vac06 = computed(() => {
50
- var _a, _b;
51
- return (_b = (_a = configs.value) == null ? void 0 : _a.vac06) != null ? _b : "";
52
- });
53
- const diagnosis = computed(() => {
54
- return content == null ? void 0 : content.diagnosis;
55
- });
56
- const diagnosisHasHeader = computed(() => {
57
- var _a;
58
- return messageType === "diagnosis_added" && ((_a = diagnosis.value) == null ? void 0 : _a.length);
59
- });
60
- const hasHeader = computed(() => {
61
- return diagnosisHasHeader.value || messageType === "medical_added";
62
- });
63
- const hasFooter = computed(() => {
64
- return messageType && ["diagnosis", "diagnosis_added", "treatment_plan"].includes(messageType);
65
- });
66
- const innerData = computed(() => {
67
- var _a, _b;
68
- if (messageType === "diagnosis_added") {
69
- return ((_a = content.recommendedExaminations) == null ? void 0 : _a.filter((i) => i.type !== "outer")) || [];
70
- } else if (messageType === "treatment_plan") {
71
- return ((_b = content.medications) == null ? void 0 : _b.filter((i) => i.type !== "outer")) || [];
72
- }
73
- return [];
74
- });
75
- const outerData = computed(() => {
76
- var _a, _b, _c;
77
- if (messageType === "diagnosis_added") {
78
- return ((_b = (_a = content.recommendedExaminations) == null ? void 0 : _a.filter) == null ? void 0 : _b.call(_a, (i) => i.type === "outer")) || [];
79
- } else if (messageType === "treatment_plan") {
80
- return ((_c = content.medications) == null ? void 0 : _c.filter((i) => i.type === "outer")) || [];
81
- }
82
- return [];
83
- });
84
- const init = () => {
85
- var _a, _b;
86
- if (messageType === "diagnosis_added") {
87
- recommendedChecked.value = (_b = (_a = innerData.value) == null ? void 0 : _a.map) == null ? void 0 : _b.call(_a, (item) => item.name);
88
- }
89
- };
90
- init();
91
- const selectItem = (item, key = "name") => {
92
- if (selectedList.value.includes(item[key])) {
93
- selectedList.value = selectedList.value.filter((v) => v !== item[key]);
94
- } else {
95
- selectedList.value.push(item[key]);
96
- }
97
- };
98
- const recommendedTagClick = (item) => {
99
- var _a;
100
- if (recommendedChecked.value.includes(item.name)) {
101
- recommendedChecked.value = (_a = recommendedChecked.value) == null ? void 0 : _a.filter((name) => name !== item.name);
102
- } else {
103
- recommendedChecked.value.push(item.name);
104
- }
105
- };
106
- function possibleConditionClick(e, item) {
107
- var _a, _b, _c;
108
- (_a = e == null ? void 0 : e.preventDefault) == null ? void 0 : _a.call(e);
109
- (_b = e == null ? void 0 : e.stopPropagation) == null ? void 0 : _b.call(e);
110
- if (state.loading)
111
- return;
112
- let arr = item ? [item] : [];
113
- if (!arguments.length) {
114
- arr = (_c = content.possibleConditions) == null ? void 0 : _c.filter((conditions) => selectedList.value.includes(conditions.code));
115
- }
116
- if (!arr.length)
117
- return;
118
- if (!isStreamingOutput.value) {
119
- state.loadingText = "\u4F9D\u636E\u5F53\u524D\u8BCA\u65AD\u4E0E\u75C5\u5386\u5185\u5BB9\u5206\u6790\uFF0C\u6B63\u5728\u7B5B\u4E3A\u60A8\u7B5B\u9009\u548C\u5339\u914D\u6700\u9002\u5408\u7684\u68C0\u9A8C\u68C0\u67E5\u9879\u76EE";
120
- }
121
- const flowResult = "\u5F15\u7528\u8BCA\u65AD####" + JSON.stringify({
122
- vaa07: vac01.value,
123
- vac06: vac06.value,
124
- possibleConditions: arr
125
- });
126
- sendMessage({
127
- ...props.item,
128
- opType: "diagnosis",
129
- contents: [{
130
- role: "user",
131
- content: "",
132
- contentType: "text"
133
- }],
134
- possibleConditions: arr,
135
- flowResult
136
- });
137
- }
138
- async function inspectionItemMethod(e, item) {
139
- var _a, _b, _c;
140
- if (!isString(e)) {
141
- (_a = e == null ? void 0 : e.preventDefault) == null ? void 0 : _a.call(e);
142
- (_b = e == null ? void 0 : e.stopPropagation) == null ? void 0 : _b.call(e);
143
- }
144
- if (state.loading)
145
- return;
146
- if (e === "edit") {
147
- const bbx05List = item ? recommendedChecked.value.includes(item.name) ? [item.name] : [] : [...recommendedChecked.value];
148
- emit("program", {
149
- key: "medical_order",
150
- params: {
151
- bbx05List: JSON.stringify(bbx05List),
152
- vac01: vac01.value,
153
- type: 3
154
- }
155
- });
156
- } else {
157
- let arr = item ? [item] : [];
158
- if (!item) {
159
- arr = (_c = innerData.value) == null ? void 0 : _c.filter((recommendedExamination) => recommendedChecked.value.includes(recommendedExamination.name));
160
- }
161
- const flowResult = "\u5F15\u7528\u533B\u5631####" + JSON.stringify({
162
- vaa07: vac01.value,
163
- vac06: vac06.value,
164
- recommendedExaminations: arr
165
- });
166
- sendMessage({
167
- ...props.item,
168
- opType: "medical_order",
169
- contents: [{
170
- role: "user",
171
- content: "",
172
- contentType: "text"
173
- }],
174
- recommendedExaminations: arr,
175
- flowResult
176
- });
177
- }
178
- }
179
- const openReportDetail = async () => {
180
- var _a;
181
- const _content = ((_a = content.reports) == null ? void 0 : _a[0]) || {};
182
- emit("program", {
183
- key: "report",
184
- params: {
185
- vaa07: vac01.value,
186
- reportType: _content.reportType,
187
- reportId: _content.reportId
188
- }
189
- });
190
- };
191
- const treatmentPlan = async (e, item) => {
192
- var _a, _b, _c, _d, _e;
193
- (_a = e == null ? void 0 : e.preventDefault) == null ? void 0 : _a.call(e);
194
- (_b = e == null ? void 0 : e.stopPropagation) == null ? void 0 : _b.call(e);
195
- if (state.loading)
196
- return;
197
- const drugNameList = item ? [item.name] : selectedList.value;
198
- const params = {
199
- drugNameList: JSON.stringify(drugNameList),
200
- vac01: vac01.value,
201
- type: 3
202
- };
203
- if (!isStreamingOutput.value) {
204
- emit("program", {
205
- key: "recommend_treatment_plan",
206
- params
207
- });
208
- return;
209
- }
210
- const arr = (_c = innerData.value) == null ? void 0 : _c.filter((medications) => drugNameList.includes(medications.name));
211
- const _hasInventory = arr.some((v) => !hasInventory(v.inventory));
212
- function toDo() {
213
- const flowResult = "\u5F15\u7528\u6CBB\u7597\u65B9\u6848####" + JSON.stringify(params);
214
- sendMessage({
215
- ...props.item,
216
- contents: [{
217
- role: "user",
218
- content: "",
219
- contentType: "text"
220
- }],
221
- flowResult
222
- });
223
- }
224
- if (_hasInventory) {
225
- $dialog.warning({
226
- title: "\u63D0\u793A",
227
- maskClosable: false,
228
- content: "\u5B58\u5728\u5E93\u5B58\u544A\u6025\u7684\u836F\u7269\uFF0C\u8BF7\u8C28\u614E\u5F00\u65B9",
229
- positiveText: ((_d = window.getLanguageByCode) == null ? void 0 : _d.call(window, "10010.1.27")) || "\u786E\u5B9A",
230
- negativeText: ((_e = window.getLanguageByCode) == null ? void 0 : _e.call(window, "10010.1.28")) || "\u53D6\u6D88",
231
- onPositiveClick: () => {
232
- toDo();
233
- }
234
- });
235
- return;
236
- }
237
- toDo();
238
- };
239
- const footerClick = (type) => {
240
- const disabled = messageType === "diagnosis_added" ? !recommendedChecked.value.length : !selectedList.value.length;
241
- if (disabled)
242
- return;
243
- if (messageType === "diagnosis")
244
- return possibleConditionClick();
245
- if (messageType === "diagnosis_added")
246
- return inspectionItemMethod(type);
247
- if (messageType === "treatment_plan")
248
- return treatmentPlan();
249
- };
250
- async function openRight() {
251
- var _a;
252
- if (messageType === "medical") {
253
- emit("program", {
254
- key: "medical",
255
- params: {
256
- vac01: (_a = configs.value) == null ? void 0 : _a.vac01,
257
- type: 1
258
- }
259
- });
260
- } else {
261
- if (isStreamingOutput.value) {
262
- state.consultationContent = state.record.find((item) => item.contents[0].messageType === messageType);
263
- } else {
264
- state.consultationContent = props.item;
265
- }
266
- state.showRight = true;
267
- }
268
- }
269
- const renderInquiryAndMedical = () => {
270
- var _a, _b;
271
- const isInquiry = messageType === "inquiry";
272
- const isLink = messageType === "link";
273
- const {
274
- linkType,
275
- linkURL,
276
- linkProcess,
277
- linkParams
278
- } = content || {};
279
- function onClick() {
280
- if (isLink) {
281
- if (linkType == 0) {
282
- window.open(linkURL, "_blank");
283
- } else if (linkType == 1) {
284
- if (state.bpmnProcessDoing)
285
- return;
286
- state.bpmnProcessId = linkProcess;
287
- toNext(linkProcess, linkParams);
288
- }
289
- return;
290
- }
291
- openRight();
292
- }
293
- const disabled = isLink && linkType == 1 && state.bpmnProcessDoing;
294
- return createVNode("div", {
295
- "class": ["inquiry_medical-box", {
296
- disabled
297
- }],
298
- "onClick": () => onClick()
299
- }, [createVNode("div", {
300
- "class": "left-img"
301
- }, [createVNode("img", {
302
- "src": isInquiry || isLink ? fileIcon : fileEmrIcon
303
- }, null)]), createVNode("div", {
304
- "class": "right-text"
305
- }, [createVNode("p", {
306
- "class": "top-info"
307
- }, [isInquiry ? (_a = content.summary) == null ? void 0 : _a.inquiryStr : content.info]), createVNode("p", {
308
- "class": "sum-time"
309
- }, [createTextVNode("\u521B\u5EFA\u65F6\u95F4\uFF1A"), ((_b = content.summary) == null ? void 0 : _b.creationTime) || content.creationTime])])]);
310
- };
311
- const renderDiagnosis = () => {
312
- var _a;
313
- return createVNode("div", {
314
- "class": "diagnosis-box"
315
- }, [createVNode("div", {
316
- "class": "title"
317
- }, [createTextVNode("\u8BCA\u65AD\u8F85\u52A9")]), createVNode("div", {
318
- "class": "desc"
319
- }, [content.patientHistory]), (_a = content.possibleConditions) == null ? void 0 : _a.map((item) => {
320
- return createVNode("div", {
321
- "class": ["con-item", {
322
- active: selectedList.value.includes(item.code)
323
- }],
324
- "onClick": () => selectItem(item, "code")
325
- }, [createVNode("div", {
326
- "class": "item-left"
327
- }, [createVNode("div", {
328
- "class": "item-top"
329
- }, [createVNode("a", {
330
- "href": item.link,
331
- "target": "_blank"
332
- }, [createTextVNode("\u3010"), item.condition, createTextVNode("\u3011")]), item.code, createTextVNode("("), item.probability, createTextVNode(")")]), createVNode("div", {
333
- "class": "btm-desc"
334
- }, [item.description])]), createVNode("img", {
335
- "class": "right-icon",
336
- "src": useIcon,
337
- "onClick": (e) => possibleConditionClick(e, item)
338
- }, null)]);
339
- })]);
340
- };
341
- const renderDiagnosisAdded = () => {
342
- var _a, _b;
343
- return createVNode("div", {
344
- "class": "diagnosis-added-box"
345
- }, [createVNode("div", {
346
- "class": "recommended-wrap"
347
- }, [createVNode("div", {
348
- "class": "title"
349
- }, [createTextVNode("\u68C0\u9A8C\u68C0\u67E5\u63A8\u8350")]), (_a = innerData.value) == null ? void 0 : _a.map((item) => {
350
- return createVNode("div", {
351
- "class": ["con-item", {
352
- active: recommendedChecked.value.includes(item.name)
353
- }],
354
- "onClick": () => recommendedTagClick(item)
355
- }, [createVNode("div", {
356
- "class": "item-left"
357
- }, [createVNode("p", {
358
- "class": "name"
359
- }, [item.name]), createVNode("div", {
360
- "class": "desc"
361
- }, [item.description])]), createVNode("img", {
362
- "class": "right-icon",
363
- "src": useIcon,
364
- "onClick": (e) => inspectionItemMethod(e, item)
365
- }, null)]);
366
- })]), ((_b = outerData.value) == null ? void 0 : _b.length) ? createVNode("div", {
367
- "class": "recommended-wrap outer-wrap"
368
- }, [createVNode("div", {
369
- "class": "title"
370
- }, [createTextVNode("\u5176\u4ED6\u68C0\u9A8C\u68C0\u67E5\u63A8\u8350")]), outerData.value.map((item) => {
371
- return createVNode("div", {
372
- "class": "con-item outer-item"
373
- }, [createVNode("div", {
374
- "class": "item-left"
375
- }, [createVNode("p", {
376
- "class": "name"
377
- }, [item.name]), createVNode("div", {
378
- "class": "desc"
379
- }, [item.description])])]);
380
- })]) : null]);
381
- };
382
- const renderReport = () => {
383
- var _a;
384
- const _content = content || {};
385
- const reportInterpretationList = ((_a = _content.reportInterpretation) == null ? void 0 : _a.replace(/\\n|\n|\r/g, "<br>").split("<br>")) || [""];
386
- const reportInterpretation = reportInterpretationList.map((str, idx) => [str, idx === reportInterpretationList.length - 1 ? null : createVNode("br", null, null)]);
387
- return createVNode("div", {
388
- "class": "report-message-box"
389
- }, [createVNode("div", {
390
- "class": "top-title"
391
- }, [createVNode("div", {
392
- "class": "left-title"
393
- }, [createVNode(resolveComponent("n-icon"), {
394
- "component": CheckmarkCircle
395
- }, null), _content.reportName]), createVNode("div", {
396
- "class": "right-detail"
397
- }, [createVNode(NButton, {
398
- "text": true,
399
- "onClick": openReportDetail
400
- }, {
401
- default: () => [createTextVNode("\u62A5\u544A\u8BE6\u60C5")]
402
- }), createVNode(NButton, {
403
- "text": true
404
- }, {
405
- default: () => [createTextVNode("\u63A8\u8350\u65B9\u6848")]
406
- })])]), createVNode("div", {
407
- "class": "center-img"
408
- }, [_content.images.map((v) => v.imageType === "pdf" ? createVNode("embed", {
409
- "class": "pdf-embed",
410
- "src": v.image,
411
- "type": "application/pdf"
412
- }, null) : createVNode(resolveComponent("n-image"), {
413
- "src": v.image
414
- }, null))]), createVNode("div", {
415
- "class": "bottom-interpretation"
416
- }, [reportInterpretation, createVNode("div", {
417
- "class": "desc-tip"
418
- }, [createTextVNode("\u8BF7\u6CE8\u610F\uFF0C\u8F85\u52A9\u8BCA\u65AD\u7531AI\u63A8\u8350\uFF0C\u7ED3\u679C\u4EC5\u4F9B\u4E34\u5E8A\u53C2\u8003\u3002")])])]);
419
- };
420
- const hasInventory = (inventory) => inventory && +inventory > 10;
421
- const renderTreatmentPlan = () => {
422
- var _a, _b, _c;
423
- return createVNode("div", {
424
- "class": "treatment-plan-box"
425
- }, [createVNode("div", {
426
- "class": "top-div"
427
- }, [createVNode("div", {
428
- "class": "title"
429
- }, [content.title])]), createVNode("div", {
430
- "class": "desc"
431
- }, [content.description]), createVNode("div", {
432
- "class": "medication-wrap"
433
- }, [createVNode("div", {
434
- "class": "title"
435
- }, [createTextVNode("\u836F\u7269")]), innerData.value.map((item) => {
436
- return createVNode("div", {
437
- "class": ["con-item", {
438
- active: selectedList.value.includes(item.name)
439
- }],
440
- "onClick": () => selectItem(item)
441
- }, [!hasInventory(item.inventory) ? createVNode("span", {
442
- "class": "inventory-tag"
443
- }, [createVNode("span", null, [createTextVNode("\u5E93\u5B58\u544A\u6025\u3010"), item.inventory, createTextVNode("\u3011")])]) : null, createVNode("div", {
444
- "class": "item-left"
445
- }, [createVNode("p", {
446
- "class": "name"
447
- }, [item.name]), createVNode("ul", null, [createVNode("li", null, [createTextVNode("\u7528\u91CF: "), item.dosage, item.purpose]), createVNode("li", null, [createTextVNode("\u7528\u6CD5: "), item.usageInstructions]), item.bby06 ? createVNode("li", null, [createTextVNode("\u89C4\u683C\uFF1A"), item.bby06]) : null])]), createVNode("img", {
448
- "class": "right-icon",
449
- "src": useIcon,
450
- "onClick": (e) => treatmentPlan(e, item)
451
- }, null)]);
452
- })]), ((_a = content.precautions) == null ? void 0 : _a.length) ? createVNode("div", {
453
- "class": "precaution-wrap"
454
- }, [createVNode("div", {
455
- "class": "title"
456
- }, [createTextVNode("\u6CE8\u610F\u4E8B\u9879")]), createVNode("div", {
457
- "class": "precaution-div"
458
- }, [(_b = content.precautions) == null ? void 0 : _b.map((p, index) => {
459
- return createVNode("div", {
460
- "class": "treatment-item"
461
- }, [index + 1, createTextVNode(". "), p]);
462
- })])]) : null, ((_c = outerData.value) == null ? void 0 : _c.length) ? createVNode("div", {
463
- "class": "medication-wrap"
464
- }, [createVNode("div", {
465
- "class": "title"
466
- }, [createTextVNode("\u5176\u4ED6\u6CBB\u7597\u65B9\u6848\u63A8\u8350")]), outerData.value.map((item) => {
467
- return createVNode("div", {
468
- "class": "con-item outer-item"
469
- }, [createVNode("div", {
470
- "class": "item-left"
471
- }, [createVNode("p", {
472
- "class": "name"
473
- }, [item.name]), createVNode("ul", null, [createVNode("li", null, [createTextVNode("\u7528\u91CF: "), item.dosage, item.purpose]), createVNode("li", null, [createTextVNode("\u7528\u6CD5: "), item.usageInstructions]), item.bby06 ? createVNode("li", null, [createTextVNode("\u89C4\u683C\uFF1A"), item.bby06]) : null])])]);
474
- })]) : null]);
475
- };
476
- function renderMedicalAdded() {
477
- if (!isArray(content))
478
- return null;
479
- const itemRender = content.map((medicalAdviceDetailItem) => {
480
- const {
481
- itemName,
482
- sample,
483
- execDeptName
484
- } = medicalAdviceDetailItem || {};
485
- let str = "";
486
- if (itemName) {
487
- str += itemName;
488
- }
489
- const getPrefix = () => !str || str.endsWith("/") ? "" : "/";
490
- if (sample) {
491
- str += getPrefix() + sample;
492
- }
493
- if (execDeptName) {
494
- str += getPrefix() + execDeptName;
495
- }
496
- return createVNode("div", {
497
- "class": "item"
498
- }, [createVNode("span", null, [str]), createVNode("span", {
499
- "class": "time"
500
- }, [medicalAdviceDetailItem.beginExecTime])]);
501
- });
502
- return createVNode("div", {
503
- "class": "medical-added-box"
504
- }, [itemRender]);
505
- }
506
- const renderHeader = () => {
507
- if (!hasHeader.value)
508
- return null;
509
- const list = messageType === "medical_added" ? [{}] : diagnosis.value;
510
- return list.map((diagnosisItem) => {
511
- return createVNode("div", {
512
- "class": "card-header"
513
- }, [createVNode("span", {
514
- "class": "left-title"
515
- }, [createVNode(resolveComponent("n-icon"), {
516
- "component": CheckmarkCircle
517
- }, null), messageType === "medical_added" ? "\u5DF2\u5B8C\u6210\u7533\u8BF7\u5355\u5F00\u7ACB" : `\u5DF2\u6DFB\u52A0\u8BCA\u65AD\uFF1A${diagnosisItem.name}`]), messageType === "medical_added" ? null : createVNode("span", {
518
- "class": "right-desc"
519
- }, [createTextVNode("\u521B\u5EFA\u65F6\u95F4: "), diagnosisItem.createdTime])]);
520
- });
521
- };
522
- const renderFooter = () => {
523
- var _a;
524
- if (!hasFooter.value)
525
- return null;
526
- const disabled = state.loading || (messageType === "diagnosis_added" ? !((_a = recommendedChecked.value) == null ? void 0 : _a.length) : !selectedList.value.length);
527
- return createVNode("div", {
528
- "class": "card-footer"
529
- }, [createVNode("span", {
530
- "class": "left-desc"
531
- }, [createTextVNode("\u8BF7\u6CE8\u610F\uFF0C\u63A8\u8350\u4FE1\u606F\u7531AI\u751F\u6210\uFF0C\u7ED3\u679C\u4EC5\u4F9B\u4E34\u5E8A\u53C2\u8003")]), createVNode("div", {
532
- "class": "right-btns"
533
- }, [messageType && ["diagnosis_added", "treatment_plan"].includes(messageType) ? createVNode(NButton, {
534
- "size": "large",
535
- "disabled": disabled,
536
- "onClick": () => footerClick("edit")
537
- }, {
538
- default: () => [createTextVNode("\u7F16\u8F91\u6240\u9009")]
539
- }) : null, createVNode("span", {
540
- "class": ["right-btn", {
541
- disabled
542
- }],
543
- "onClick": () => footerClick()
544
- }, [createTextVNode("\u5F15\u7528\u6240\u9009")])])]);
545
- };
546
- const renderContent = () => {
547
- if (messageType && ["inquiry", "medical", "link"].includes(messageType))
548
- return renderInquiryAndMedical();
549
- if (messageType == "diagnosis")
550
- return renderDiagnosis();
551
- if (messageType == "diagnosis_added")
552
- return renderDiagnosisAdded();
553
- if (messageType == "treatment_plan")
554
- return renderTreatmentPlan();
555
- if (messageType == "report_message")
556
- return renderReport();
557
- if (messageType == "medical_added")
558
- return renderMedicalAdded();
559
- return "\u9ED8\u8BA4json\u5185\u5BB9";
560
- };
561
- const renderVM = () => {
562
- return createVNode("section", {
563
- "class": "json-card_section"
564
- }, [renderHeader(), createVNode("div", {
565
- "class": "card-content"
566
- }, [renderContent()]), renderFooter()]);
567
- };
568
- return () => {
569
- return renderVM();
570
- };
571
- }
572
- });
573
-
574
- export { JsonCard as default };
@@ -1,16 +0,0 @@
1
- import { PropType } from 'vue';
2
- import { MessageItem } from '../../types';
3
- declare const _default: import("vue").DefineComponent<{
4
- msgItem: {
5
- type: PropType<MessageItem>;
6
- default: () => {};
7
- };
8
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
9
- msgItem: {
10
- type: PropType<MessageItem>;
11
- default: () => {};
12
- };
13
- }>>, {
14
- msgItem: MessageItem;
15
- }>;
16
- export default _default;