cnhis-design-vue 3.3.1-beta.11 → 3.3.1-beta.13

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 (182) hide show
  1. package/README.md +87 -87
  2. package/es/components/ai-chat/index.d.ts +10 -145
  3. package/es/components/ai-chat/src/Index.vue.d.ts +10 -145
  4. package/es/components/ai-chat/src/Index.vue2.js +1 -1
  5. package/es/components/ai-chat/src/components/ChatCard.js +1 -1
  6. package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +2 -55
  7. package/es/components/ai-chat/src/components/ChatFooter.vue2.js +1 -1
  8. package/es/components/ai-chat/src/utils/index.d.ts +0 -1
  9. package/es/components/ai-chat/src/utils/index.js +1 -1
  10. package/es/components/ai-chat/style/index.css +1 -1
  11. package/es/components/audio-sdk/index.d.ts +304 -2
  12. package/es/components/audio-sdk/index.js +1 -1
  13. package/es/components/audio-sdk/src/Index.vue.d.ts +304 -0
  14. package/es/components/audio-sdk/src/Index.vue.js +1 -0
  15. package/es/components/audio-sdk/src/Index.vue2.js +1 -0
  16. package/es/components/audio-sdk/src/audioSDK.d.ts +5 -8
  17. package/es/components/audio-sdk/src/audioSDK.js +1 -1
  18. package/es/components/audio-sdk/src/components/form.vue.d.ts +51 -0
  19. package/es/components/audio-sdk/src/components/form.vue.js +1 -0
  20. package/es/components/audio-sdk/src/components/form.vue2.js +1 -0
  21. package/es/components/audio-sdk/src/components/recording-modal.vue.d.ts +91 -0
  22. package/es/components/audio-sdk/src/components/recording-modal.vue.js +1 -0
  23. package/es/components/audio-sdk/src/components/recording-modal.vue2.js +1 -0
  24. package/es/components/audio-sdk/src/components/recording.vue.d.ts +43 -4
  25. package/es/components/audio-sdk/src/components/recording.vue2.js +1 -1
  26. package/es/components/audio-sdk/src/utils/index.d.ts +4 -0
  27. package/es/components/audio-sdk/src/utils/index.js +1 -0
  28. package/es/components/audio-sdk/src/utils/recordingModal.d.ts +7 -4
  29. package/es/components/audio-sdk/src/utils/recordingModal.js +1 -1
  30. package/es/components/audio-sdk/style/index.css +1 -1
  31. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  32. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  33. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  34. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  35. package/es/components/callback/src/components/render/popupMaps.d.ts +7 -1
  36. package/es/components/card-render/src/components/index.d.ts +23 -23
  37. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  38. package/es/components/date-picker/src/DatePicker.vue2.js +1 -1
  39. package/es/components/editor/src/Editor.js +1 -1
  40. package/es/components/editor/style/index.css +0 -1
  41. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  42. package/es/components/field-editor/index.d.ts +7 -1
  43. package/es/components/field-editor/src/FieldEditor.vue.d.ts +7 -1
  44. package/es/components/form-config/index.d.ts +38 -3
  45. package/es/components/form-config/src/FormConfig.vue.d.ts +38 -3
  46. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +7 -1
  47. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +17 -1
  48. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +8 -1
  49. package/es/components/form-render/index.d.ts +7 -1
  50. package/es/components/form-render/index.js +1 -1
  51. package/es/components/form-render/src/FormRender.vue.d.ts +7 -1
  52. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  53. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +7 -1
  54. package/es/components/form-render/src/components/renderer/date.d.ts +2 -0
  55. package/es/components/form-render/src/components/renderer/date.js +1 -1
  56. package/es/components/form-render/src/components/renderer/formItem.d.ts +2 -0
  57. package/es/components/form-render/src/components/renderer/formItem.js +1 -1
  58. package/es/components/form-render/src/components/renderer/input.d.ts +5 -0
  59. package/es/components/form-render/src/components/renderer/input.js +1 -1
  60. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +14 -1
  61. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +14 -1
  62. package/es/components/form-render/src/components/renderer/select.d.ts +5 -0
  63. package/es/components/form-render/src/components/renderer/select.js +1 -1
  64. package/es/components/form-render/src/components/tooltipMessage.vue.d.ts +12 -1
  65. package/es/components/form-render/src/components/tooltipMessage.vue2.js +1 -1
  66. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  67. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +4 -0
  68. package/es/components/form-render/src/types/fieldItem.d.ts +1 -0
  69. package/es/components/form-render/src/types/index.d.ts +2 -0
  70. package/es/components/form-render/src/utils/index.d.ts +1 -0
  71. package/es/components/form-render/src/utils/index.js +1 -1
  72. package/es/components/form-render/style/index.css +1 -1
  73. package/es/components/iho-chat/index.d.ts +1 -0
  74. package/es/components/iho-chat/src/Index.vue.d.ts +1 -0
  75. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  76. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +1 -0
  77. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  78. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  79. package/es/components/iho-table/index.d.ts +26 -23
  80. package/es/components/iho-table/index.js +1 -1
  81. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  82. package/es/components/iho-table/src/hooks/tapHooks/index.d.ts +1 -1
  83. package/es/components/iho-table/src/hooks/tapHooks/index.js +1 -1
  84. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks.d.ts +3 -3
  85. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks.js +1 -1
  86. package/es/components/iho-table/src/hooks/useTablePlugin.js +1 -1
  87. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  88. package/es/components/iho-table/src/plugins/headerPlugin/index.d.ts +1 -1
  89. package/es/components/iho-table/src/plugins/headerPlugin/index.js +1 -1
  90. package/es/components/iho-table/src/plugins/highLightSetPlugin.js +1 -1
  91. package/es/components/iho-table/src/plugins/index.d.ts +78 -0
  92. package/es/components/iho-table/src/plugins/index.js +1 -1
  93. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.d.ts +7 -0
  94. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.js +1 -1
  95. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  96. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.d.ts +1 -2
  97. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js +1 -1
  98. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/checkRendererPlugin.js +1 -1
  99. package/es/components/iho-table/src/plugins/stickyFixedPlugin.js +1 -1
  100. package/es/components/iho-table/src/plugins/varialbleHeightPlugin.js +1 -1
  101. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/utils.js +1 -1
  102. package/es/components/iho-table/src/types/index.d.ts +1 -0
  103. package/es/components/iho-table/src/types/pluginType.d.ts +2 -2
  104. package/es/components/index.css +1 -1
  105. package/es/components/index.d.ts +2 -1
  106. package/es/components/index.js +1 -1
  107. package/es/components/info-header/index.d.ts +24 -2
  108. package/es/components/info-header/src/InfoHeader.vue.d.ts +24 -2
  109. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +2 -0
  110. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +2 -0
  111. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +9 -1
  112. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +7 -1
  113. package/es/components/scale-view/index.d.ts +3 -2
  114. package/es/components/scale-view/src/ScaleView.vue.d.ts +3 -2
  115. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  116. package/es/components/scale-view/src/hooks/scaleview-init.d.ts +3 -1
  117. package/es/components/scale-view/src/hooks/scaleview-init.js +1 -1
  118. package/es/components/scale-view/src/hooks/use-component.d.ts +1 -2189
  119. package/es/components/shortcut-setter/index.d.ts +8 -1
  120. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +8 -1
  121. package/es/env.d.ts +25 -25
  122. package/es/shared/assets/img/ai__avatar.png.js +1 -1
  123. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  124. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  125. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  126. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  127. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  128. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  129. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  130. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  131. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  132. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  133. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  134. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  135. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  136. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  137. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  138. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  139. package/es/shared/assets/img/failure.png.js +1 -1
  140. package/es/shared/assets/img/logo.png.js +1 -1
  141. package/es/shared/assets/img/no-permission.png.js +1 -1
  142. package/es/shared/assets/img/nodata.png.js +1 -1
  143. package/es/shared/assets/img/notfound.png.js +1 -1
  144. package/es/shared/assets/img/qr.png.js +1 -1
  145. package/es/shared/assets/img/success.png.js +1 -1
  146. package/es/shared/assets/img/table_style_2.png.js +1 -1
  147. package/es/shared/assets/img/video.png.js +1 -1
  148. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  149. package/es/shared/assets/img/xb_big.png.js +1 -1
  150. package/es/shared/assets/img/xb_small.png.js +1 -1
  151. package/es/shared/components/ArrowIcon/ArrowIcon.vue.js +1 -0
  152. package/es/shared/components/ArrowIcon/index.d.ts +2 -0
  153. package/es/shared/components/ArrowIcon/index.js +1 -0
  154. package/es/shared/components/DateIcon/DateIcon.vue.js +1 -0
  155. package/es/shared/components/DateIcon/index.d.ts +2 -0
  156. package/es/shared/components/DateIcon/index.js +1 -0
  157. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  158. package/es/shared/package.json.js +1 -1
  159. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  160. package/es/shared/utils/tapable/index.d.ts +139 -0
  161. package/package.json +2 -2
  162. package/es/components/ai-chat/src/api/index.d.ts +0 -6
  163. package/es/components/ai-chat/src/api/index.js +0 -1
  164. package/es/components/ai-chat/src/components/ChatAudio.vue.d.ts +0 -44
  165. package/es/components/ai-chat/src/components/ChatAudio.vue.js +0 -1
  166. package/es/components/ai-chat/src/components/ChatAudio.vue2.js +0 -1
  167. package/es/components/ai-chat/src/components/ChatMainInner.d.ts +0 -2
  168. package/es/components/ai-chat/src/components/ChatMainInner.js +0 -1
  169. package/es/components/ai-chat/src/components/ChatRight.vue.d.ts +0 -55
  170. package/es/components/ai-chat/src/components/ChatRight.vue.js +0 -1
  171. package/es/components/ai-chat/src/components/ChatRight.vue2.js +0 -1
  172. package/es/components/ai-chat/src/components/card/JsonCard.d.ts +0 -25
  173. package/es/components/ai-chat/src/components/card/JsonCard.js +0 -1
  174. package/es/components/ai-chat/src/components/card/SelectIcon.d.ts +0 -14
  175. package/es/components/ai-chat/src/components/card/SelectIcon.js +0 -1
  176. package/es/components/ai-chat/src/hooks/useProgram.d.ts +0 -6
  177. package/es/components/ai-chat/src/hooks/useProgram.js +0 -1
  178. package/es/components/ai-chat/src/hooks/useWebsocket.d.ts +0 -2
  179. package/es/components/ai-chat/src/hooks/useWebsocket.js +0 -1
  180. package/es/shared/assets/img/file-emr.png.js +0 -1
  181. package/es/shared/assets/img/file.png.js +0 -1
  182. package/es/shared/assets/img/use.png.js +0 -1
@@ -0,0 +1,139 @@
1
+ type FixedSizeArray<T extends number, U> = T extends 0
2
+ ? void[]
3
+ : ReadonlyArray<U> & {
4
+ 0: U;
5
+ length: T;
6
+ };
7
+ type Measure<T extends number> = T extends 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 ? T : never;
8
+ type Append<T extends any[], U> = {
9
+ 0: [U];
10
+ 1: [T[0], U];
11
+ 2: [T[0], T[1], U];
12
+ 3: [T[0], T[1], T[2], U];
13
+ 4: [T[0], T[1], T[2], T[3], U];
14
+ 5: [T[0], T[1], T[2], T[3], T[4], U];
15
+ 6: [T[0], T[1], T[2], T[3], T[4], T[5], U];
16
+ 7: [T[0], T[1], T[2], T[3], T[4], T[5], T[6], U];
17
+ 8: [T[0], T[1], T[2], T[3], T[4], T[5], T[6], T[7], U];
18
+ }[Measure<T['length']>];
19
+ type AsArray<T> = T extends any[] ? T : [T];
20
+
21
+ declare class UnsetAdditionalOptions {
22
+ _UnsetAdditionalOptions: true;
23
+ }
24
+ type IfSet<X> = X extends UnsetAdditionalOptions ? {} : X;
25
+
26
+ type Callback<E, T> = (error: E | null, result?: T) => void;
27
+ type InnerCallback<E, T> = (error?: E | null | false, result?: T) => void;
28
+
29
+ type FullTap = Tap & {
30
+ type: 'sync' | 'async' | 'promise';
31
+ fn: Function;
32
+ };
33
+
34
+ type Tap = TapOptions & {
35
+ name: string;
36
+ };
37
+
38
+ type TapOptions = {
39
+ before?: string;
40
+ stage?: number;
41
+ };
42
+
43
+ interface HookInterceptor<T, R, AdditionalOptions = UnsetAdditionalOptions> {
44
+ name?: string;
45
+ tap?: (tap: FullTap & IfSet<AdditionalOptions>) => void;
46
+ call?: (...args: any[]) => void;
47
+ loop?: (...args: any[]) => void;
48
+ error?: (err: Error) => void;
49
+ result?: (result: R) => void;
50
+ done?: () => void;
51
+ register?: (tap: FullTap & IfSet<AdditionalOptions>) => FullTap & IfSet<AdditionalOptions>;
52
+ }
53
+
54
+ type ArgumentNames<T extends any[]> = FixedSizeArray<T['length'], string>;
55
+
56
+ declare class Hook<T, R, AdditionalOptions = UnsetAdditionalOptions> {
57
+ constructor(args?: ArgumentNames<AsArray<T>>, name?: string);
58
+ name: string | undefined;
59
+ taps: FullTap[];
60
+ intercept(interceptor: HookInterceptor<T, R, AdditionalOptions>): void;
61
+ isUsed(): boolean;
62
+ callAsync(...args: Append<AsArray<T>, Callback<Error, R>>): void;
63
+ promise(...args: AsArray<T>): Promise<R>;
64
+ tap(options: string | (Tap & IfSet<AdditionalOptions>), fn: (...args: AsArray<T>) => R): void;
65
+ withOptions(options: TapOptions & IfSet<AdditionalOptions>): Omit<this, 'call' | 'callAsync' | 'promise'>;
66
+ }
67
+
68
+ export class SyncHook<T, R = void, AdditionalOptions = UnsetAdditionalOptions> extends Hook<T, R, AdditionalOptions> {
69
+ call(...args: AsArray<T>): R;
70
+ }
71
+
72
+ export class SyncBailHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends SyncHook<T, R, AdditionalOptions> {}
73
+ export class SyncLoopHook<T, AdditionalOptions = UnsetAdditionalOptions> extends SyncHook<T, void, AdditionalOptions> {}
74
+ export class SyncWaterfallHook<T, AdditionalOptions = UnsetAdditionalOptions> extends SyncHook<
75
+ T,
76
+ AsArray<T>[0],
77
+ AdditionalOptions
78
+ > {}
79
+
80
+ declare class AsyncHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends Hook<T, R, AdditionalOptions> {
81
+ tapAsync(
82
+ options: string | (Tap & IfSet<AdditionalOptions>),
83
+ fn: (...args: Append<AsArray<T>, InnerCallback<Error, R>>) => void
84
+ ): void;
85
+ tapPromise(options: string | (Tap & IfSet<AdditionalOptions>), fn: (...args: AsArray<T>) => Promise<R>): void;
86
+ }
87
+
88
+ export class AsyncParallelHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<
89
+ T,
90
+ void,
91
+ AdditionalOptions
92
+ > {}
93
+ export class AsyncParallelBailHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<
94
+ T,
95
+ R,
96
+ AdditionalOptions
97
+ > {}
98
+ export class AsyncSeriesHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<
99
+ T,
100
+ void,
101
+ AdditionalOptions
102
+ > {}
103
+ export class AsyncSeriesBailHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<
104
+ T,
105
+ R,
106
+ AdditionalOptions
107
+ > {}
108
+ export class AsyncSeriesLoopHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<
109
+ T,
110
+ void,
111
+ AdditionalOptions
112
+ > {}
113
+ export class AsyncSeriesWaterfallHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<
114
+ T,
115
+ AsArray<T>[0],
116
+ AdditionalOptions
117
+ > {}
118
+
119
+ type HookFactory<H> = (key: any, hook?: H) => H;
120
+
121
+ interface HookMapInterceptor<H> {
122
+ factory?: HookFactory<H>;
123
+ }
124
+
125
+ export class HookMap<H> {
126
+ constructor(factory: HookFactory<H>, name?: string);
127
+ name: string | undefined;
128
+ get(key: any): H | undefined;
129
+ for(key: any): H;
130
+ intercept(interceptor: HookMapInterceptor<H>): void;
131
+ }
132
+
133
+ export class MultiHook<H> {
134
+ constructor(hooks: H[], name?: string);
135
+ name: string | undefined;
136
+ tap(options: string | Tap, fn?: Function): void;
137
+ tapAsync(options: string | Tap, fn?: Function): void;
138
+ tapPromise(options: string | Tap, fn?: Function): void;
139
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
- "version": "3.3.1-beta.11",
3
+ "version": "3.3.1-beta.13",
4
4
  "license": "ISC",
5
5
  "module": "./es/components/index.js",
6
6
  "main": "./es/components/index.js",
@@ -72,5 +72,5 @@
72
72
  "iOS 7",
73
73
  "last 3 iOS versions"
74
74
  ],
75
- "gitHead": "8608bbfc8f8273af160171d5f3b105559efd3463"
75
+ "gitHead": "e4c728300ab56bd77b67b39a065e0769a99e630e"
76
76
  }
@@ -1,6 +0,0 @@
1
- import { AnyObject } from '../../../../shared/types';
2
- export declare const instanceAxios: import("axios").AxiosInstance;
3
- export declare function uploadFileApi(params: FormData): import("axios").AxiosPromise<any>;
4
- export declare function conversationApi(params: AnyObject): import("axios").AxiosPromise<any>;
5
- export declare function saveApi(params: AnyObject): import("axios").AxiosPromise<any>;
6
- export declare function getHistoryRecordApi(params: AnyObject): import("axios").AxiosPromise<any>;
@@ -1 +0,0 @@
1
- import e from"axios";import{$message as t}from"../utils/index.js";const r=e.create({withCredentials:!0,timeout:5e3});function o(e){return r({headers:{"Content-Type":"multipart/form-data"},method:"post",url:"/storage-service/storage/uploadFile",data:e})}function a(e){return r({method:"post",url:"/flow/api/opd/conversation",data:e})}function s(e){return r({method:"put",url:"/flow/api/opd/message",data:e})}function i(e){return r({method:"get",url:`/flow/api/dialog/${e.sessionId}/messages`,params:{page:e.page||1,pageSize:e.pageSize||20}})}r.interceptors.request.use((e=>{var t;if(null==(t=e.url)?void 0:t.includes("/conversation")){const t={...e};return delete t.timeout,t}return e})),r.interceptors.response.use((e=>{var r,o,a;if(null==(r=e.data)?void 0:r.success)return null==(o=e.data)?void 0:o.data;500==(null==(a=e.data)?void 0:a.code)&&e.data.msg&&t.error(e.data.msg)}));export{a as conversationApi,i as getHistoryRecordApi,r as instanceAxios,s as saveApi,o as uploadFileApi};
@@ -1,44 +0,0 @@
1
- import { CAudioSDK } from '../../../../components/audio-sdk';
2
- declare const _default: import("vue").DefineComponent<{
3
- show: {
4
- type: BooleanConstructor;
5
- };
6
- }, {
7
- audioSdk: CAudioSDK;
8
- props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
9
- show: {
10
- type: BooleanConstructor;
11
- };
12
- }>> & {
13
- "onUpdate:show"?: ((...args: any[]) => any) | undefined;
14
- }>>;
15
- emit: (event: "update:show", ...args: any[]) => void;
16
- state: any;
17
- vaa07: any;
18
- immediatelyRecording: any;
19
- time: import("vue").Ref<number>;
20
- endType: string;
21
- pause: import("@vueuse/shared").Fn;
22
- resume: import("@vueuse/shared").Fn;
23
- isActive: import("vue").Ref<boolean>;
24
- tip: import("vue").ComputedRef<"正在录音中..." | "录音已暂停">;
25
- formattedTime: import("vue").ComputedRef<string>;
26
- checkEnvironment: () => boolean;
27
- start: () => Promise<void>;
28
- handlePause: () => void;
29
- handlePlay: () => void;
30
- handleEnd: (trigger?: string) => Promise<void>;
31
- NSpace: any;
32
- NButton: any;
33
- NIcon: any;
34
- StopCircleOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
35
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:show"[], "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
36
- show: {
37
- type: BooleanConstructor;
38
- };
39
- }>> & {
40
- "onUpdate:show"?: ((...args: any[]) => any) | undefined;
41
- }, {
42
- show: boolean;
43
- }>;
44
- export default _default;
@@ -1 +0,0 @@
1
- import e from"./ChatAudio.vue2.js";import r from"../../../../_virtual/_plugin-vue_export-helper.js";var o=r(e,[["__file","ChatAudio.vue"]]);export{o as default};
@@ -1 +0,0 @@
1
- import{defineComponent as o,inject as e,ref as t,computed as i,watch as a,onBeforeUnmount as n,withDirectives as r,openBlock as s,createElementBlock as l,unref as u,createBlock as d,createCommentVNode as c,createElementVNode as p,toDisplayString as m,normalizeStyle as f,createVNode as v,withCtx as w,createTextVNode as h,vShow as g}from"vue";import{NIcon as y,NSpace as _,NButton as F}from"naive-ui";import{StopCircleOutline as S}from"@vicons/ionicons5";import{InjectionAIChat as k}from"../types/index.js";import{useIntervalFn as x,promiseTimeout as C}from"@vueuse/core";import $ from"../../../audio-sdk/src/audioSDK.js";import{uploadFileApi as j}from"../api/index.js";import{uuidGenerator as M}from"../../../../shared/utils/index.js";import{$message as z}from"../utils/index.js";const A={class:"ai-chat-doctor__audio"};var I=o({__name:"ChatAudio",props:{show:{type:Boolean}},emits:["update:show"],setup(o,{emit:I}){const B=o,D=$.create(),{state:T,vaa07:b,immediatelyRecording:q}=e(k),K=t(0);let L="";const{pause:N,resume:O,isActive:R}=x((()=>{K.value++}),1e3,{immediate:!1}),U=i((()=>R.value?"正在录音中...":"录音已暂停")),E=i((()=>{const o=Math.floor(K.value/3600),e=Math.floor(K.value%3600/60),t=K.value%60,i=e.toString().padStart(2,"0"),a=t.toString().padStart(2,"0");if(o>0){return`${o.toString().padStart(2,"0")}:${i}:${a}`}return`${i}:${a}`}));async function G(){try{if((null==(o=null==navigator?void 0:navigator.userAgent)?void 0:o.includes("Chrome"))&&!(null==window?void 0:window.isSecureContext)&&(I("update:show",!1),z.warning("当前使用的http协议默认不支持麦克风权限,需要用户开启浏览器麦克风权限"),1))return;const e=await D.start(void 0,{timed:1800,recognizable:!1,showModal:!1});if(I("update:show",!1),"click"!==L)return;const{result:t,data:i}=e||{};if("success"!==t)return;if(i){const o=new File([i],`${M()}.mp3`,{type:i.type}),e=new FormData;e.append("file",o),e.append("channelId","MINIO");const t=await j(e),a=(null==t?void 0:t.path)||"";console.log("音频地址 ==>",a),T.params={audioUrl:a,opType:"create_inquiry"},T.sending=!0,T.loading=!0,T.loadingText="系统正在对您的对话内容进行梳理整合,转化为规范的结构化问诊记录"}}catch(o){console.log(o),I("update:show",!1),"fail"===(null==o?void 0:o.result)&&o.msg&&z.warning(o.msg)}var o}function H(){N(),D.pause()}function J(){O(),D.resume()}async function P(o){L=o||"",null==D||D.stop(),I("update:show",!1)}return a((()=>B.show),(o=>{o?(L="",K.value=0,O(),G()):N()}),{immediate:!0}),a((()=>b.value),(async o=>{const e=B.show;B.show&&P(),q.value&&(e&&await C(10),I("update:show",!0))}),{immediate:!0}),n((()=>{$.destroy()})),(e,t)=>r((s(),l("div",A,[u(R)?c("v-if",!0):(s(),d(u(y),{key:0,size:"42",color:"#FF1818",component:u(S)},null,8,["component"])),p("p",null,m(u(U)),1),p("h3",{style:f(u(R)?"":"color: #FF1818")},m(u(E)),5),v(u(_),{"wrap-item":!1,size:15},{default:w((()=>[r(v(u(F),{round:"",onClick:H},{default:w((()=>[h("暂停")])),_:1},512),[[g,u(R)]]),r(v(u(F),{round:"",onClick:J},{default:w((()=>[h("继续")])),_:1},512),[[g,!u(R)]]),v(u(F),{round:"",color:"#FF1818",onClick:t[0]||(t[0]=()=>P("click"))},{default:w((()=>{var o;return[h((null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.77"))||"结束")]})),_:1})])),_:1})],512)),[[g,o.show]])}});export{I as default};
@@ -1,2 +0,0 @@
1
- declare const _default: import("vue").DefineComponent<{}, () => JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
2
- export default _default;
@@ -1 +0,0 @@
1
- import{defineComponent as e,inject as n,ref as t,watch as o,createVNode as r,nextTick as s,resolveComponent as a}from"vue";import{NTooltip as l,NButton as i,NIcon as u}from"naive-ui";import{InjectionAIChat as c}from"../types/index.js";import{isArray as d,cloneDeep as m,isFunction as p}from"lodash-es";import{uuidGenerator as v}from"../../../../shared/utils/index.js";import{promiseTimeout as g}from"@vueuse/core";import"date-fns";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{SyncOutline as h}from"@vicons/ionicons5";import{useScrollLoading as f}from"../../../../shared/hooks/useScrollLoading.js";import y from"./card/JsonCard.js";import{getHistoryRecordApi as x,conversationApi as T}from"../api/index.js";import{useProgram as _}from"../hooks/useProgram.js";var j=e({name:"ChatMain",inheritAttrs:!1,components:{JsonCard:y},setup(e,{attrs:y,slots:j,emit:C}){const{patientInfo:b,state:w,vaa07:M}=n(c),{programMethod:q,MedicalOrderId:I}=_(),k=t(null),O=t([]),R={page:0,hasMore:!0};async function S(){if(!M.value)return;if(!R.hasMore||!M.value)return;R.page++,1==R.page&&(O.value=[]);const e=await x({sessionId:M.value,page:R.page,pageSize:20}),{rows:n,query:t={}}=e||{};d(n)&&(n.forEach((e=>{d(e.contents)&&e.contents.length>1&&e.contents.reverse()})),O.value.length<=+t.records&&(O.value=R.page>1?[...O.value,...n]:n,O.value.length>=+t.records&&(R.hasMore=!1,console.log("没有更多消息了"))))}async function J(e){var n;d(e.contents)&&(O.value.unshift(e),await s(),null==(n=k.value)||n.scrollTo({top:0,behavior:"auto"}))}function U(e,n){var t;const{contentType:o,messageType:r}=(null==(t=null==e?void 0:e.contents)?void 0:t[n])||{};return"json"===o&&"retry_inquiry"!==r}function z(e){const n=e.replace(/\\n|\n|\r\n/g,"<br>").split("<br>").filter((e=>!!e)).map(((e,n,t)=>[e,n===t.length-1?null:r("br",null,null)]));return n.length?[n]:null}function A(e,n){var t,o,s,c,d;const{contents:m=[],msgId:p=""}=e;return"json"===(null==(t=m[n])?void 0:t.contentType)?"retry_inquiry"===(null==(o=m[n])?void 0:o.messageType)?[z((null==(c=null==(s=m[n])?void 0:s.content)?void 0:c.errorMsg)||""),r(l,{trigger:"hover"},{default:()=>"重新生成",trigger:()=>r(i,{style:"position: relative;top: 3px;margin-left: 8px",type:"primary",text:!0,onClick:()=>{var e,t,o;return o=null==(t=null==(e=m[n])?void 0:e.content)?void 0:t.audioUrl,w.params={audioUrl:o,opType:"create_inquiry"},w.sending=!0,w.loading=!0,void(w.loadingText="系统正在对您的对话内容进行梳理整合,转化为规范的结构化问诊记录")}},{icon:()=>r(u,{component:h},null)})})]:function(e,n){return r(a("json-card"),{item:e,messageItem:n},null)}(e,m[n]):z((null==(d=m[n])?void 0:d.content)||"")}function E({role:e=""}){return"user"===e}return f(k,(()=>{S()}),"top"),o((()=>M.value),(e=>{w.showRight=!1,O.value=[],R.page=0,R.hasMore=!0,S()}),{immediate:!0}),o((()=>w.reportContent),(e=>{e&&(J(e),w.reportContent=null)})),o((()=>w.sending),(async e=>{var n,t,o,r,s;if(e){const{opType:e}=w.params||{};if(!e&&w.sendContent&&O.value.unshift({msgId:v(),contents:[{role:"user",content:w.sendContent}]}),null==(n=k.value)||n.scrollTo({top:0,behavior:"auto"}),e&&["recommend_treatment_plan","recommend_diagnosis","recommend_examination"].includes(e)){if(O.value.length>0){const e=O.value.find((e=>{var n;return!E(null==(n=null==e?void 0:e.contents)?void 0:n[0])}));e&&Object.assign(w.params,m(e))}Object.assign(w.params,{contents:[{role:"user",content:"",contentType:"text"}]})}try{const n=await T({contents:[{role:"user",content:w.sendContent,contentType:"text"}],platform:"web",sessionType:"text_chat",source:"global",configs:b.value.info,...w.params});d(n.contents)&&n.contents.length>1&&n.contents.reverse(),J(n),e&&["create_inquiry","create_medical"].includes(e)&&("create_inquiry"===e?"retry_inquiry"!==(null==(o=null==(t=null==n?void 0:n.contents)?void 0:t[0])?void 0:o.messageType)&&(w.consultationContent=n,w.showRight=!0):(w.consultationContent=null,await g(1e3),w.showRight=!0,await q(I,{vac01:(null==(s=null==(r=b.value)?void 0:r.info)?void 0:s.vac01)||"1878974046080958465",type:1}))),e||(w.sendContent=""),w.params={}}catch(e){console.log("error ==>",e)}finally{w.sending=!1,w.loading=!1,w.loadingText=""}}})),()=>[r("section",{class:"chat-main",ref:k,style:"column-reverse"},[[w.loading?r("div",{class:"message-item"},[r("div",{class:"content-box"},[r("div",{class:"content loading"},[r("span",{class:"ai-chat__loading-icon"},null),r("span",null,[w.loadingText||"正在整合数据..."])])])]):null,O.value.map((e=>e.contents.map(((n,t)=>A(e,t)?r("div",{class:"message-item",key:e.msgId+t},[r("div",{class:["content-box",E(n)?"mine":""]},[r("div",{class:["content",{"content-json":!p(n.render)&&U(e,t)}]},[p(n.render)?n.render():A(e,t)])])]):null))))]])]}});export{j as default};
@@ -1,55 +0,0 @@
1
- import { AnyObject } from '../../../../shared/types';
2
- declare const _default: import("vue").DefineComponent<{}, {
3
- medicalLabel: {
4
- key: string;
5
- title: string;
6
- }[];
7
- state: any;
8
- patientInfo: any;
9
- toolbarConfig: {
10
- toolbarKeys: never[];
11
- };
12
- content: import("vue").Ref<string>;
13
- handleSave: () => Promise<void>;
14
- createMedicalRecord: () => void;
15
- extractContentByTitle: () => AnyObject;
16
- NIcon: any;
17
- NSpace: any;
18
- NButton: any;
19
- Editor: import("../../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
20
- editorConfig: {
21
- type: ObjectConstructor;
22
- };
23
- toolbarConfig: {
24
- type: ObjectConstructor;
25
- };
26
- uploadImgUrl: {
27
- type: StringConstructor;
28
- };
29
- isDisabled: {
30
- type: BooleanConstructor;
31
- default: boolean;
32
- };
33
- }, {
34
- editorRef: import("vue").ShallowRef<any>;
35
- renderVN: () => JSX.Element;
36
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, never[], never, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
37
- editorConfig: {
38
- type: ObjectConstructor;
39
- };
40
- toolbarConfig: {
41
- type: ObjectConstructor;
42
- };
43
- uploadImgUrl: {
44
- type: StringConstructor;
45
- };
46
- isDisabled: {
47
- type: BooleanConstructor;
48
- default: boolean;
49
- };
50
- }>> & {}, {
51
- isDisabled: boolean;
52
- }>>;
53
- CloseOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
54
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
55
- export default _default;
@@ -1 +0,0 @@
1
- import t from"./ChatRight.vue2.js";import e from"../../../../_virtual/_plugin-vue_export-helper.js";var r=e(t,[["__file","ChatRight.vue"]]);export{r as default};
@@ -1 +0,0 @@
1
- import{defineComponent as t,inject as n,reactive as o,ref as e,watch as i,withDirectives as l,openBlock as s,createElementBlock as a,createElementVNode as c,vShow as r,unref as u,createVNode as d,withCtx as y,createTextVNode as p}from"vue";import{NButton as f,NIcon as k,NSpace as m}from"naive-ui";import{InjectionAIChat as _}from"../types/index.js";import{$message as g}from"../utils/index.js";import v from"../../../editor/index.js";import{CloseOutline as h}from"@vicons/ionicons5";import{saveApi as j}from"../api/index.js";const C={class:"ai-chat-doctor__right"},w={class:"header"},b={class:"main"},x={class:"main",id:"aiChatMedicalRecord"};var z=t({__name:"ChatRight",setup(t){const z=[{key:"zs_yy",title:"主诉"},{key:"xbs_fuk",title:"现病史"},{key:"jws_vtk",title:"既往史"},{key:"patient_allergy_sync",title:"过敏史"},{key:"tgjcms_wsssss",title:"体格检查描述"},{key:"marriage",title:"婚姻状况"},{key:"nation",title:"民族"},{key:"profession",title:"职业"},{key:"jkzk_wyuu",title:"一般健康状况"},{key:"ryljlz_tbyvrt",title:"外长期居住史"},{key:"yjbz_qisf1",title:"饮酒标志"},{key:"gydwufcjfsxwzjcs_aogt_oietyntrrqk",title:"工业毒物、粉尘及放射性物质接触史"},{key:"yqtysjcs_ua_uirqk",title:"疫区、疫水接触史"},{key:"ryct_tbsw",title:"入院查体"},{key:"fzjclg_lessxj",title:"辅助检查结果"},{key:"o_hn_iyjc_hr",title:"互认回填"},{key:"cbzd_phyo",title:"初步诊断"},{key:"zljh_yuya",title:"诊疗计划"},{key:"wdcqjzs_qftanwk",title:"外地长期居住史"}],{state:q,patientInfo:R}=n(_),$=o({toolbarKeys:[]}),I=e("");async function B(){var t;try{const n=E();q.consultationContent.contents[0].content.details.autoBackFillData=n,await j({msgId:q.consultationContent.msgId,contents:q.consultationContent.contents,configs:null==(t=R.value)?void 0:t.info}),g.success("保存成功")}catch(t){console.log("error ==>",t)}}function D(){const t=E();console.log("json ==>",t,q.consultationContent),q.consultationContent.contents[0].content.details.autoBackFillData=t,q.params={opType:"create_medical",...q.consultationContent,contents:[{role:"user",content:"",contentType:"text"}],medicalInfo:q.consultationContent},q.sending=!0,q.loading=!0,q.loadingText="系统进入深度分析模式,正在整合数据,调取主诉,获取现病史、既往病史,读取过敏史,综合多维度信息生成诊断建议"}function E(){const t={};return z.forEach((n=>{const o=new RegExp(`<p><span.*?><strong>\\d+、${n.title}<\\/strong><\\/span><\\/p><p>(.*?)<\\/p>`,"i"),e=I.value.match(o);if(e&&e[1]){const o=e[1].trim();t[n.key]="<br>"===o?"":o}})),t}return i((()=>q.consultationContent),(t=>{var n,o,e;if(t){const{autoBackFillData:i}=(null==(e=null==(o=null==(n=null==t?void 0:t.contents)?void 0:n[0])?void 0:o.content)?void 0:e.details)||{};if(I.value="",!i)return;z.forEach(((t,n)=>{I.value+=`<p><span style="font-size: 16px;"><strong>${n+1}、${t.title}</strong></span></p><p><span>${i[t.key]||""}</span></p><p>${n<z.length-1?"<br>":""}`}))}})),i((()=>q.showRight),(t=>{t||(q.consultationContent=null)})),(t,n)=>l((s(),a("div",C,[c("div",w,[l(c("h4",null,"问诊记录",512),[[r,u(q).consultationContent]]),d(u(f),{quaternary:"",onClick:n[0]||(n[0]=()=>u(q).showRight=!1)},{icon:y((()=>[d(u(k),{size:"20",component:u(h)},null,8,["component"])])),_:1})]),l(c("div",b,[d(u(v),{"toolbar-config":$,modelValue:I.value,"onUpdate:modelValue":n[1]||(n[1]=t=>I.value=t)},null,8,["toolbar-config","modelValue"]),d(u(m),{class:"footer","wrap-item":!1},{default:y((()=>[d(u(f),{round:"",class:"gradient",disabled:u(q).loading,onClick:D},{default:y((()=>[p("审核完成")])),_:1},8,["disabled"]),d(u(f),{round:"",onClick:B},{default:y((()=>[p("暂存")])),_:1})])),_:1})],512),[[r,u(q).consultationContent]]),l(c("div",x,null,512),[[r,!u(q).consultationContent]])],512)),[[r,u(q).showRight]])}});export{z as default};
@@ -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 +0,0 @@
1
- import{defineComponent as e,inject as a,ref as i,computed as s,createVNode as l,resolveComponent as t,createTextVNode as n}from"vue";import{NSpace as o,NIcon as d,NImage as c,NButton as r}from"naive-ui";import m from"../../../../../shared/assets/img/file.png.js";import u from"../../../../../shared/assets/img/file-emr.png.js";import p from"../../../../../shared/assets/img/use.png.js";import{CheckmarkCircle as v}from"@vicons/ionicons5";import g from"./SelectIcon.js";import{InjectionAIChat as f}from"../../types/index.js";import{useProgram as h}from"../../hooks/useProgram.js";import{isArray as y,isString as b}from"lodash-es";var x=e({name:"ChatJsonCard",inheritAttrs:!1,props:{item:{type:Object,default:()=>({})},messageItem:{type:Object,default:()=>({})}},components:{NSpace:o,NIcon:d,NImage:c,SelectIcon:g},emits:[],setup(e,{attrs:o,slots:d,emit:c}){const{state:g,patientInfo:x}=a(f),{programMethod:_,MedicalOrderId:C,ReportId:I}=h(),{messageType:k,content:T}=e.messageItem,w=i([]),j=i([]),N=s((()=>{var e,a;return(null==(a=null==(e=x.value)?void 0:e.info)?void 0:a.vac01)||"1878974046080958465"})),S=s((()=>null==T?void 0:T.diagnosis)),E=s((()=>{var e;return"diagnosis_added"===k&&(null==(e=S.value)?void 0:e.length)})),O=s((()=>E.value||"medical_added"===k)),q=s((()=>"diagnosis"===k||"diagnosis_added"===k||"treatment_plan"===k));var D,P;"diagnosis_added"===k&&(w.value=null==(P=null==(D=T.recommendedExaminations)?void 0:D.map)?void 0:P.call(D,(e=>e.name)));const A=(e,a="name")=>{j.value.includes(e[a])?j.value=j.value.filter((i=>i!==e[a])):j.value.push(e[a])};function J(a,i){var s,l;null==(s=null==a?void 0:a.preventDefault)||s.call(a),null==(l=null==a?void 0:a.stopPropagation)||l.call(a);let t=i?[i]:[];arguments.length||(t=T.possibleConditions.filter((e=>j.value.includes(e.code)))),t.length&&(g.params={...e.item,opType:"diagnosis",contents:[{role:"user",content:"",contentType:"text"}],possibleConditions:t},g.sending=!0,g.loading=!0,g.loadingText="依据当前诊断与病历内容分析,正在筛为您筛选和匹配最适合的检验检查项目")}async function R(a,i){var s,l;if(b(a)||(null==(s=null==a?void 0:a.preventDefault)||s.call(a),null==(l=null==a?void 0:a.stopPropagation)||l.call(a)),"edit"===a){const e=i?w.value.includes(i.name)?[i.name]:[]:[...w.value];await _(C,{bbx05List:JSON.stringify(e),vac01:N.value,type:3})}else{let a=i?[i]:[];i||(a=T.recommendedExaminations.filter((e=>w.value.includes(e.name)))),g.params={...e.item,opType:"medical_order",contents:[{role:"user",content:"",contentType:"text"}],recommendedExaminations:a},g.sending=!0,g.loading=!0}}const L=async()=>{var e;const a=(null==(e=T.reports)?void 0:e[0])||{};await _(I,{vaa07:N.value,reportType:a.reportType,reportId:a.reportId})},M=async(e,a)=>{var i,s;null==(i=null==e?void 0:e.preventDefault)||i.call(e),null==(s=null==e?void 0:e.stopPropagation)||s.call(e);const l=a?[a.name]:j.value;await _(C,{drugNameList:JSON.stringify(l),vac01:N.value,type:3})},z=e=>{if(!("diagnosis_added"===k?!w.value.length:!j.value.length))return"diagnosis"===k?J():"diagnosis_added"===k?R(e):"treatment_plan"===k?M():void 0};async function H(){"medical"===k?(async()=>{g.consultationContent=null,g.showRight=!0,await _(C,{vac01:N.value,type:1})})():(g.consultationContent=e.item,g.showRight=!0)}const W=()=>l("div",{class:"diagnosis-added-box"},[l("div",{class:"recommended-wrap"},[l("div",{class:"title"},[n("检验检查推荐")]),T.recommendedExaminations.map((e=>l("div",{class:"recommended-item"},[l("div",{class:"top"},[l("div",{class:"left-tag"},[l("span",{class:["recommended-tag",{active:w.value.includes(e.name)}],onClick:()=>(e=>{w.value.includes(e.name)?w.value=w.value.filter((a=>a!==e.name)):w.value.push(e.name)})(e)},[e.name,l(t("select-icon"),{class:"select-icon",width:16},null)])]),l("img",{class:"right-icon",src:p,onClick:a=>R(a,e)},null)]),l("div",{class:"desc"},[e.description])])))])]);const $=()=>{if(!O.value)return null;return("medical_added"===k?[{}]:S.value).map((e=>l("div",{class:"card-header"},[l("span",{class:"left-title"},[l(t("n-icon"),{component:v},null),"medical_added"===k?"已完成申请单开立":`已添加诊断:${e.name}`]),"medical_added"===k?null:l("span",{class:"right-desc"},[n("创建时间: "),e.createdTime])])))},B=()=>{if(!q.value)return null;const e="diagnosis_added"===k?!w.value.length:!j.value.length;return l("div",{class:"card-footer"},[l("span",{class:"left-desc"},[n("请注意,推荐信息由AI生成,结果仅供临床参考")]),l("div",{class:"right-btns"},[l(r,{size:"large",disabled:e,onClick:()=>z("edit")},{default:()=>[n("编辑所选")]}),l("span",{class:["right-btn",{disabled:e}],onClick:()=>z()},[n("引用所选")])])])},F=()=>"inquiry"==k||"medical"==k?(()=>{var e,a;const i="inquiry"===k;return l("div",{class:"inquiry_medical-box",onClick:()=>H()},[l("div",{class:"left-img"},[l("img",{src:i?m:u},null)]),l("div",{class:"right-text"},[l("p",{class:"top-info"},[i?null==(e=T.summary)?void 0:e.inquiryStr:T.info]),l("p",{class:"sum-time"},[n("创建时间:"),(null==(a=T.summary)?void 0:a.creationTime)||T.creationTime])])])})():"diagnosis"==k?l("div",{class:"diagnosis-box"},[l("div",{class:"title"},[n("诊断辅助")]),l("div",{class:"desc"},[T.patientHistory]),T.possibleConditions.map((e=>l("div",{class:["con-item",{active:j.value.includes(e.code)}],onClick:()=>A(e,"code")},[l("div",{class:"top-content"},[l("div",{class:"left_wrap"},[l("a",{href:e.link,target:"_blank"},[n("【"),e.condition,n("】")]),e.code,n("("),e.probability,n(")")]),l("img",{class:"right-icon",src:p,onClick:a=>J(a,e)},null)]),l("div",{class:"btm-desc"},[e.description])])))]):"diagnosis_added"==k?W():"treatment_plan"==k?l("div",{class:"treatment-plan-box"},[l("div",{class:"top-div"},[l("div",{class:"title"},[T.title])]),l("div",{class:"desc"},[T.description]),l("div",{class:"medication-wrap"},[l("div",{class:"title"},[n("药物")]),T.medications.map((e=>l("div",{class:["medication-item",{active:j.value.includes(e.name)}],onClick:()=>A(e)},[l("div",{class:"top"},[l("div",{class:"name"},[e.name]),l("img",{class:"right-icon",src:p,onClick:a=>M(a,e)},null)]),l("ul",null,[l("li",null,[n("用量: "),e.dosage,e.purpose]),l("li",null,[n("用法: "),e.usageInstructions])])])))]),l("div",{class:"precaution-wrap"},[l("div",{class:"title"},[n("注意事项")]),l("div",{class:"precaution-div"},[T.precautions.map(((e,a)=>l("div",{class:"treatment-item"},[a+1,n(". "),e])))])])]):"report_message"==k?(()=>{var e,a;const i=(null==(e=T.reports)?void 0:e[0])||{},s=(null==(a=i.reportInterpretation)?void 0:a.replace(/\\n|\n|\r/g,"<br>").split("<br>"))||[""],o=s.map(((e,a)=>[e,a===s.length-1?null:l("br",null,null)]));return l("div",{class:"report-message-box"},[l("div",{class:"top-title"},[l("div",{class:"left-title"},[l(t("n-icon"),{component:v},null),i.reportName]),l("div",{class:"right-detail"},[l(r,{text:!0,onClick:L},{default:()=>[n("报告详情")]}),l(r,{text:!0},{default:()=>[n("推荐方案")]})])]),l("div",{class:"center-img"},[i.images.map((e=>"pdf"===e.imageType?l("embed",{class:"pdf-embed",src:e.image,type:"application/pdf"},null):l(t("n-image"),{src:e.image},null)))]),l("div",{class:"bottom-interpretation"},[o,l("div",{class:"desc-tip"},[n("请注意,辅助诊断由AI推荐,结果仅供临床参考。")])])])})():"medical_added"==k?function(){if(!y(T))return null;const e=T.map((e=>{const{itemName:a,sample:i,execDeptName:s}=e||{};let t="";a&&(t+=a);const n=()=>!t||t.endsWith("/")?"":"/";return i&&(t+=n()+i),s&&(t+=n()+s),l("div",{class:"item"},[l("span",null,[t]),l("span",{class:"time"},[e.beginExecTime])])}));return l("div",{class:"medical-added-box"},[e])}():"默认json内容";return()=>l("section",{class:"json-card_section"},[$(),l("div",{class:"card-content"},[F()]),B()])}});export{x as default};
@@ -1,14 +0,0 @@
1
- declare const _default: import("vue").DefineComponent<{
2
- width: {
3
- type: NumberConstructor;
4
- default: number;
5
- };
6
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
- width: {
8
- type: NumberConstructor;
9
- default: number;
10
- };
11
- }>>, {
12
- width: number;
13
- }>;
14
- export default _default;
@@ -1 +0,0 @@
1
- import{defineComponent as t,createVNode as e}from"vue";var r=t({name:"SelectIcon",props:{width:{type:Number,default:20}},setup:t=>()=>e("svg",{width:`${t.width}px`,height:`${t.width}px`,viewBox:"0 0 20 20",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},[e("g",{id:"门诊预约",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e("g",{id:"预约记录-开发渠道",transform:"translate(-339, -270)"},[e("g",{id:"编组-8",transform:"translate(0, 184)"},[e("g",{id:"3",transform:"translate(243, 66)"},[e("g",{id:"编组-2",transform:"translate(96, 20)"},[e("path",{d:"M20,0 L20,16 C20,18.209139 18.209139,20 16,20 L0,20 L0,20 L20,0 Z",id:"Rectangle-6",fill:"#2474FF"},null),e("path",{d:"M17.1936275,10.2928932 L18.607841,11.7071068 L12.24388,18.0710678 L12.242,18.0698932 L8,13.8284271 L9.41421356,12.4142136 L12.243,15.2428932 L17.1936275,10.2928932 Z",id:"Combined-Shape",fill:"#FFFFFF"},null)])])])])])])});export{r as default};
@@ -1,6 +0,0 @@
1
- import { AnyObject } from '../../../../shared/types';
2
- export declare function useProgram(): {
3
- MedicalOrderId: string;
4
- ReportId: string;
5
- programMethod: (bpmnProcessId: string, params: AnyObject) => Promise<any>;
6
- };
@@ -1 +0,0 @@
1
- function r(){return{MedicalOrderId:"Y3ncua3BP36",ReportId:"Ys6k60gBP54",programMethod:async(r,a)=>{var n,e;try{return await(null==(e=null==(n=window._programArrange)?void 0:n.next)?void 0:e.call(n,{bpmnProcessId:r,variables:{...a}}))}catch(r){throw new Error("流程编排执行失败!")}}}}export{r as useProgram};
@@ -1,2 +0,0 @@
1
- import { AnyObject } from '../../../../shared/types';
2
- export declare function useWebsocket(props: AnyObject, state: AnyObject): void;
@@ -1 +0,0 @@
1
- import{onBeforeUnmount as o}from"vue";import{isValidJSON as e}from"../utils/index.js";function n(n,t){if(!n.orgId||!n.userId)return;let r=!1;const s=new WebSocket(`/flow/ai/opd/${n.orgId}_${n.userId}`);s.onopen=()=>{r=!0,console.log("0 websocket连接成功 ==>")},s.onerror=()=>console.log("WebSocket连接失败"),s.onmessage=o=>{const{data:n}=o||{};if(console.log("张铁柱 ==>",o),!e(n))return;const r=JSON.parse(n);t.reportContent=r||null},async function o(e=0){return e>5?console.log("websocket连接失败 ==>"):r?console.log("websocket连接成功 ==>"):void setTimeout((()=>{o(++e)}),100)}(),o((()=>{s.close()}))}export{n as useWebsocket};
@@ -1 +0,0 @@
1
- var A="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACUAAAAoCAMAAABO3sPvAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAABCUExURUdwTLrH2b7L28DO3c3Y5QBl/wBm/7TC1rrI2rzK28rW4////7LB1QBm/9ff6X25/sXQ3+ry+8Pf/zub/wB9/wOG/yYY+3cAAAALdFJOUwDjoXQoiO5//r9Z8rE0jwAAAOVJREFUOMvt1NsOgjAMBuAhICitXTt4/1e1wxhZ6SAx8c7/gnD41i4lWQihu4xg07ShTNeAl1upFMWHzWjYHeAx7RNLNgCwo6aymqrJTVGtqopqdbWtdqBytcu5yqw7VwzQbhRHiHkg/PlZY34GGDZKNwrx1eLDdmp9faretY47vvdlU6pafqj+8/pOyYI2194qRi+9UeSq616xiMycEOdpJpZ8h47Kq1kQSVXCRXxFRKoW1JJEichXKSW96HdVQnLUMVeSo466+4WRBFe1rjKnnD8JNCdmbV6hKw7dyuzNSU6z9x+fafE89x48hKcAAAAASUVORK5CYII=";export{A as default};
@@ -1 +0,0 @@
1
- var A="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAA5UExURUdwTACQ/wCa+wCQ/7jG2MjT4L3K27bD1wCR/83Y5LPC1v///wCR/9ff6WXI/7bk/zW5/t3y/gCt/8q0bEUAAAAKdFJOUwBWuuXhVal/fysieA5MAAAAu0lEQVQ4y73V2xLDEBCAYVLEqYj3f9iSTFJhw15o/0vzzYSZWIScKaHrhCJtSkPxFrK0/K6CJE/M1GVZf33V2hiMhGGWTGFgK5/gLlEwS4GCpjiQfNmq6G9yPdxigXwLKeRsbKEEoX2Arix24O2crgN9WehA9B7nw63MzTh1KIt/PUw8G8FrdRrE7JFiIQGdAyDt34QvTFQuIZT/uDcw7N7rX0NwkF7Dhw9G8zmf2XjY71WjFHg+DnY8Ih+MGDjNMAmfOQAAAABJRU5ErkJggg==";export{A as default};
@@ -1 +0,0 @@
1
- var A="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAkUExURUdwTABl/gBk/QBa+wBl/gBk/gBj/QBk/gBk/QBk/QBl/QBg/8y67VYAAAAMdFJOUwD+xQp/t0Wa0F3kLUbgIywAAABdSURBVAjXY2BgMDY2ZgABdkFBQVEDIIN1iYtLYTCI0cDAwCIKZTA4OkAZHApQBhMyg3NCGYTBwNDoAGIwp6XNEjUAMjiBBgs6QESShAwgagqry6vAjBagdAEDDAAAQXgP8Z48ljAAAAAASUVORK5CYII=";export{A as default};