cnhis-design-vue 3.1.46-beta.0 → 3.1.46-beta.10

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 (133) hide show
  1. package/es/components/base-search/index.d.ts +17 -8
  2. package/es/components/base-search/src/index.vue.d.ts +17 -8
  3. package/es/components/base-search/src/index.vue2.js +1 -1
  4. package/es/components/base-search/style/index.css +1 -1
  5. package/es/components/button-print/src/utils/print.js +1 -1
  6. package/es/components/classification/index.d.ts +219 -18
  7. package/es/components/classification/src/components/search-filter/index.vue.d.ts +219 -18
  8. package/es/components/classification/src/components/search-filter/index.vue2.js +1 -1
  9. package/es/components/classification/src/components/set-classification/index.vue.d.ts +219 -18
  10. package/es/components/classification/src/index.vue.d.ts +219 -18
  11. package/es/components/fabric-chart/src/FabricChart.vue2.js +1 -1
  12. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
  13. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.js +1 -1
  14. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
  15. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.js +1 -1
  16. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  17. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  18. package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +1 -1
  19. package/es/components/fabric-chart/src/utils/index.d.ts +1 -0
  20. package/es/components/fabric-chart/src/utils/index.js +1 -1
  21. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  22. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks.d.ts +1 -1
  23. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks.js +1 -1
  24. package/es/components/index.css +1 -1
  25. package/es/components/index.d.ts +2 -1
  26. package/es/components/index.js +1 -1
  27. package/es/components/quick-search/index.d.ts +21 -7
  28. package/es/components/quick-search/src/index.vue.d.ts +21 -7
  29. package/es/components/quick-search/src/index.vue2.js +1 -1
  30. package/es/components/quick-search/style/index.css +1 -1
  31. package/es/components/table-export-field/index.d.ts +967 -0
  32. package/es/components/table-export-field/index.js +1 -0
  33. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +192 -0
  34. package/es/components/table-export-field/src/components/ExportModal.vue.js +1 -0
  35. package/es/components/table-export-field/src/components/ExportModal.vue2.js +1 -0
  36. package/es/components/table-export-field/src/components/SaveProjectModal.vue.d.ts +687 -0
  37. package/es/components/table-export-field/src/components/SaveProjectModal.vue.js +1 -0
  38. package/es/components/table-export-field/src/components/SaveProjectModal.vue2.js +1 -0
  39. package/es/components/table-export-field/src/constants/index.d.ts +3 -0
  40. package/es/components/table-export-field/src/constants/index.js +1 -0
  41. package/es/components/table-export-field/src/hooks/useAsyncData.d.ts +6 -0
  42. package/es/components/table-export-field/src/hooks/useAsyncData.js +1 -0
  43. package/es/components/table-export-field/src/index.vue.d.ts +968 -0
  44. package/es/components/table-export-field/src/index.vue.js +1 -0
  45. package/es/components/table-export-field/src/index.vue2.js +1 -0
  46. package/es/components/table-export-field/src/types/index.d.ts +6 -0
  47. package/es/components/table-export-field/src/types/index.js +1 -0
  48. package/es/components/table-export-field/style/index.css +1 -0
  49. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +219 -17
  50. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue2.js +1 -1
  51. package/es/components/table-filter/src/components/classify-filter/components/Date.vue.d.ts +17 -1
  52. package/es/components/table-filter/src/components/classify-filter/components/Date.vue2.js +1 -1
  53. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue.d.ts +19 -0
  54. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue2.js +1 -1
  55. package/es/components/table-filter/src/components/classify-filter/components/SelectDynamic.vue.d.ts +178 -11
  56. package/es/components/table-filter/src/components/classify-filter/components/SelectDynamic.vue2.js +1 -1
  57. package/es/components/table-filter/src/components/classify-filter/components/SelectFilter.vue.d.ts +1 -5
  58. package/es/components/table-filter/src/components/classify-filter/components/SelectFilter.vue2.js +1 -1
  59. package/es/components/table-filter/src/components/classify-filter/components/SelectLabel.vue.d.ts +2 -1
  60. package/es/components/table-filter/src/components/classify-filter/components/SelectLabel.vue2.js +1 -1
  61. package/es/components/table-filter/src/components/classify-filter/components/index.d.ts +217 -17
  62. package/es/components/table-filter/src/components/classify-filter/hooks/useFilterConditions.js +1 -1
  63. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +219 -17
  64. package/es/components/table-filter/src/components/classify-filter/index.vue2.js +1 -1
  65. package/es/components/table-filter/src/components/render-widget/components/DateInner.vue.d.ts +231 -0
  66. package/es/components/table-filter/src/components/render-widget/components/DateInner.vue.js +1 -0
  67. package/es/components/table-filter/src/components/render-widget/components/DateInner.vue2.js +1 -0
  68. package/es/components/table-filter/src/components/render-widget/components/{Date.vue.d.ts → DateOut.vue.d.ts} +21 -2
  69. package/es/components/table-filter/src/components/render-widget/components/DateOut.vue.js +1 -0
  70. package/es/components/table-filter/src/components/render-widget/components/DateOut.vue2.js +1 -0
  71. package/es/components/table-filter/src/components/render-widget/components/DateQuickBtn/index.vue.d.ts +71 -0
  72. package/es/components/table-filter/src/components/render-widget/components/DateQuickBtn/index.vue.js +1 -0
  73. package/es/components/table-filter/src/components/render-widget/components/DateQuickBtn/index.vue2.js +1 -0
  74. package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue.d.ts +117 -8
  75. package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue2.js +1 -1
  76. package/es/components/table-filter/src/components/render-widget/components/DateRangeOut.vue.d.ts +13 -9
  77. package/es/components/table-filter/src/components/render-widget/components/DateRangeOut.vue2.js +1 -1
  78. package/es/components/table-filter/src/components/render-widget/components/LabelInner.vue.d.ts +8 -6
  79. package/es/components/table-filter/src/components/render-widget/components/LabelInner.vue2.js +1 -1
  80. package/es/components/table-filter/src/components/render-widget/components/LabelOut.vue.d.ts +7 -6
  81. package/es/components/table-filter/src/components/render-widget/components/LabelOut.vue2.js +1 -1
  82. package/es/components/table-filter/src/components/render-widget/components/Select.vue.d.ts +19 -25
  83. package/es/components/table-filter/src/components/render-widget/components/Select.vue2.js +1 -1
  84. package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue.d.ts +223 -0
  85. package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue.js +1 -0
  86. package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue2.js +1 -0
  87. package/es/components/table-filter/src/components/render-widget/components/SelectDynamicOption/index.vue.d.ts +158 -0
  88. package/es/components/table-filter/src/components/render-widget/components/SelectDynamicOption/index.vue.js +1 -0
  89. package/es/components/table-filter/src/components/render-widget/components/SelectDynamicOption/index.vue2.js +1 -0
  90. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +611 -36
  91. package/es/components/table-filter/src/components/render-widget/components/index.js +1 -1
  92. package/es/components/table-filter/src/components/render-widget/enums.d.ts +10 -3
  93. package/es/components/table-filter/src/components/render-widget/enums.js +1 -1
  94. package/es/components/table-filter/src/components/render-widget/helpers/dateDisabled.d.ts +27 -0
  95. package/es/components/table-filter/src/components/render-widget/helpers/dateDisabled.js +1 -0
  96. package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.d.ts +55 -0
  97. package/es/components/table-filter/src/components/render-widget/helpers/dateExtraMap.js +1 -0
  98. package/es/components/table-filter/src/components/render-widget/helpers/enums.d.ts +56 -0
  99. package/es/components/table-filter/src/components/render-widget/helpers/enums.js +1 -0
  100. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.d.ts +2 -6
  101. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +1 -1
  102. package/es/components/table-filter/src/components/render-widget/helpers/selectExtraMap.d.ts +4 -0
  103. package/es/components/table-filter/src/components/render-widget/helpers/selectExtraMap.js +1 -0
  104. package/es/components/table-filter/src/components/render-widget/helpers/setDefaultValue.d.ts +4 -0
  105. package/es/components/table-filter/src/components/render-widget/helpers/setDefaultValue.js +1 -0
  106. package/es/components/table-filter/src/components/render-widget/index.vue.d.ts +4 -3
  107. package/es/components/table-filter/src/components/render-widget/index.vue.js +1 -1
  108. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +639 -35
  109. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.js +1 -1
  110. package/es/components/table-filter/src/constants/index.d.ts +3 -1
  111. package/es/components/table-filter/src/constants/index.js +1 -1
  112. package/es/components/table-filter/src/hooks/useAdvanced.d.ts +9 -4
  113. package/es/components/table-filter/src/hooks/useAdvanced.js +1 -1
  114. package/es/components/table-filter/src/hooks/useAsyncData.d.ts +4 -0
  115. package/es/components/table-filter/src/hooks/useAsyncData.js +1 -0
  116. package/es/components/table-filter/src/hooks/useRenderWidget.d.ts +3 -3
  117. package/es/components/table-filter/src/hooks/useRenderWidget.js +1 -1
  118. package/es/components/table-filter/src/tool/baseOptions.d.ts +0 -8
  119. package/es/components/table-filter/src/tool/baseOptions.js +1 -1
  120. package/es/components/table-filter/src/tool/transformData.d.ts +0 -1
  121. package/es/components/table-filter/src/tool/transformData.js +1 -1
  122. package/es/components/table-filter/src/types/enums.d.ts +3 -0
  123. package/es/components/table-filter/src/types/enums.js +1 -1
  124. package/es/components/table-filter/src/types/index.d.ts +7 -0
  125. package/es/shared/package.json.js +1 -1
  126. package/es/shared/utils/fabricjs/index.js +1 -1
  127. package/package.json +2 -2
  128. package/es/components/table-filter/src/components/render-widget/basicData.d.ts +0 -4
  129. package/es/components/table-filter/src/components/render-widget/basicData.js +0 -1
  130. package/es/components/table-filter/src/components/render-widget/components/Date.vue.js +0 -1
  131. package/es/components/table-filter/src/components/render-widget/components/Date.vue2.js +0 -1
  132. package/es/components/table-filter/src/tool/generateDefOptions.d.ts +0 -7
  133. package/es/components/table-filter/src/tool/generateDefOptions.js +0 -1
@@ -28,31 +28,36 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
28
28
  field_key: string;
29
29
  con: string | undefined;
30
30
  value: any[] | null;
31
- unit: null;
31
+ unit: string;
32
32
  } | null;
33
33
  isExistDefValByRenderWidget: (cfg: import("..").ISearchType) => boolean;
34
34
  resetRenderWidgetValue: (cfg: import("..").ISearchType) => any;
35
- transformData: (advancedFilterData: import("..").IApiServerType[]) => {
35
+ transformData: (advancedFilterData: import("..").IApiServerType[], extendData: import("..").IExtendConfigurationType) => {
36
36
  fieldType: string;
37
37
  columnName: string;
38
38
  settingObj: {};
39
39
  setting: string;
40
40
  widgetCfg: {
41
41
  isRender: boolean;
42
- isInit: boolean;
43
42
  widgetType: string | null;
43
+ originType: string | null;
44
44
  valueList: {
45
45
  value: any;
46
46
  label: any;
47
47
  }[] | undefined;
48
48
  defaultValue: any;
49
49
  defValueUnit: any;
50
+ optionSetting: string | undefined;
50
51
  multiple: boolean;
51
52
  manualMapping: boolean | null | undefined;
53
+ showWholeOption: boolean | undefined;
52
54
  dynamicOptionInfo: import("..").dynamicOptionInfoType | {} | undefined;
53
55
  classifyStr: string | undefined;
56
+ linkageFieldKeys: string[];
54
57
  };
55
58
  rangeFilter: boolean | undefined;
59
+ unit: any;
60
+ _extendData: import("..").IExtendConfigurationType;
56
61
  title: string;
57
62
  alias: string | undefined;
58
63
  isShowSearch: number;
@@ -62,7 +67,7 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
62
67
  placeholder: string | undefined;
63
68
  advanceColWidth: number | null | undefined;
64
69
  }[];
65
- transformParams: (paramsList: any) => {};
70
+ transformParams: (paramsList: any[]) => {};
66
71
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
67
72
  showSettings: {
68
73
  type: import("vue").PropType<import("..").IsettingsType>;
@@ -111,6 +116,10 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
111
116
  setting?: any;
112
117
  widgetCfg?: any;
113
118
  rangeFilter?: boolean | undefined;
119
+ unit?: string | undefined;
120
+ _extendData?: {
121
+ _filterApiConfig: any;
122
+ } | undefined;
114
123
  _frontId?: any;
115
124
  isRender?: boolean | undefined;
116
125
  widgetType?: any;
@@ -126,7 +135,6 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
126
135
  isShowSetting: (v: string) => boolean;
127
136
  foldQuickSearch: () => void;
128
137
  outFilterChange: (config?: {}) => void;
129
- handleChangeInit: (_frontId: string, bool: boolean) => void;
130
138
  getConObjParams: () => any;
131
139
  getConObj: (arr: any) => any;
132
140
  onFilterSearch: (obj: import("..").ISearchParamsType[], transResult: object, isOutFilter?: boolean, config?: {}) => void;
@@ -144,6 +152,7 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
144
152
  initialProps: {};
145
153
  }, {
146
154
  valueCp(): any;
155
+ unit(): any;
147
156
  }, {
148
157
  search(): void;
149
158
  getEleWidth(cfg: any): {
@@ -154,8 +163,8 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
154
163
  [key: string]: any;
155
164
  }> | null;
156
165
  handleUpdate(val: any): void;
157
- handleChangeInitState(_frontId: any, bool: any): void;
158
- }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "outFilterChange" | "changeInit")[], "update:modelValue" | "outFilterChange" | "changeInit", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
166
+ handleUpdateUnit(val: any): void;
167
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:unit" | "outFilterChange")[], "update:modelValue" | "update:unit" | "outFilterChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
159
168
  cfg: {
160
169
  type: ObjectConstructor;
161
170
  required: true;
@@ -165,8 +174,8 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
165
174
  };
166
175
  }>> & {
167
176
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
177
+ "onUpdate:unit"?: ((...args: any[]) => any) | undefined;
168
178
  onOutFilterChange?: ((...args: any[]) => any) | undefined;
169
- onChangeInit?: ((...args: any[]) => any) | undefined;
170
179
  }, {}>;
171
180
  NIcon: any;
172
181
  NButton: any;
@@ -29,31 +29,36 @@ declare const _default: import("vue").DefineComponent<{
29
29
  field_key: string;
30
30
  con: string | undefined;
31
31
  value: any[] | null;
32
- unit: null;
32
+ unit: string;
33
33
  } | null;
34
34
  isExistDefValByRenderWidget: (cfg: ISearchType) => boolean;
35
35
  resetRenderWidgetValue: (cfg: ISearchType) => any;
36
- transformData: (advancedFilterData: IApiServerType[]) => {
36
+ transformData: (advancedFilterData: IApiServerType[], extendData: import("../../../../es/components/table-filter/src/types").IExtendConfigurationType) => {
37
37
  fieldType: string;
38
38
  columnName: string;
39
39
  settingObj: {};
40
40
  setting: string;
41
41
  widgetCfg: {
42
42
  isRender: boolean;
43
- isInit: boolean;
44
43
  widgetType: string | null;
44
+ originType: string | null;
45
45
  valueList: {
46
46
  value: any;
47
47
  label: any;
48
48
  }[] | undefined;
49
49
  defaultValue: any;
50
50
  defValueUnit: any;
51
+ optionSetting: string | undefined;
51
52
  multiple: boolean;
52
53
  manualMapping: boolean | null | undefined;
54
+ showWholeOption: boolean | undefined;
53
55
  dynamicOptionInfo: import("../../../../es/components/table-filter/src/types").dynamicOptionInfoType | {} | undefined;
54
56
  classifyStr: string | undefined;
57
+ linkageFieldKeys: string[];
55
58
  };
56
59
  rangeFilter: boolean | undefined;
60
+ unit: any;
61
+ _extendData: import("../../../../es/components/table-filter/src/types").IExtendConfigurationType;
57
62
  title: string;
58
63
  alias: string | undefined;
59
64
  isShowSearch: number;
@@ -63,7 +68,7 @@ declare const _default: import("vue").DefineComponent<{
63
68
  placeholder: string | undefined;
64
69
  advanceColWidth: number | null | undefined;
65
70
  }[];
66
- transformParams: (paramsList: any) => {};
71
+ transformParams: (paramsList: any[]) => {};
67
72
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
68
73
  showSettings: {
69
74
  type: PropType<IsettingsType>;
@@ -112,6 +117,10 @@ declare const _default: import("vue").DefineComponent<{
112
117
  setting?: any;
113
118
  widgetCfg?: any;
114
119
  rangeFilter?: boolean | undefined;
120
+ unit?: string | undefined;
121
+ _extendData?: {
122
+ _filterApiConfig: any;
123
+ } | undefined;
115
124
  _frontId?: any;
116
125
  isRender?: boolean | undefined;
117
126
  widgetType?: any;
@@ -127,7 +136,6 @@ declare const _default: import("vue").DefineComponent<{
127
136
  isShowSetting: (v: string) => boolean;
128
137
  foldQuickSearch: () => void;
129
138
  outFilterChange: (config?: {}) => void;
130
- handleChangeInit: (_frontId: string, bool: boolean) => void;
131
139
  getConObjParams: () => any;
132
140
  getConObj: (arr: any) => any;
133
141
  onFilterSearch: (obj: ISearchParamsType[], transResult: object, isOutFilter?: boolean, config?: {}) => void;
@@ -145,6 +153,7 @@ declare const _default: import("vue").DefineComponent<{
145
153
  initialProps: {};
146
154
  }, {
147
155
  valueCp(): any;
156
+ unit(): any;
148
157
  }, {
149
158
  search(): void;
150
159
  getEleWidth(cfg: any): {
@@ -155,8 +164,8 @@ declare const _default: import("vue").DefineComponent<{
155
164
  [key: string]: any;
156
165
  }> | null;
157
166
  handleUpdate(val: any): void;
158
- handleChangeInitState(_frontId: any, bool: any): void;
159
- }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "outFilterChange" | "changeInit")[], "update:modelValue" | "outFilterChange" | "changeInit", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
167
+ handleUpdateUnit(val: any): void;
168
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:unit" | "outFilterChange")[], "update:modelValue" | "update:unit" | "outFilterChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
160
169
  cfg: {
161
170
  type: ObjectConstructor;
162
171
  required: true;
@@ -166,8 +175,8 @@ declare const _default: import("vue").DefineComponent<{
166
175
  };
167
176
  }>> & {
168
177
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
178
+ "onUpdate:unit"?: ((...args: any[]) => any) | undefined;
169
179
  onOutFilterChange?: ((...args: any[]) => any) | undefined;
170
- onChangeInit?: ((...args: any[]) => any) | undefined;
171
180
  }, {}>;
172
181
  NIcon: any;
173
182
  NButton: any;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,provide as l,computed as i,watch as a,openBlock as n,createElementBlock as r,createElementVNode as s,createCommentVNode as o,renderSlot as u,unref as c,createVNode as f,withCtx as d,createTextVNode as h,toDisplayString as m,Fragment as v,renderList as p}from"vue";import b from"../../table-filter/src/components/render-widget/index.vue.js";import g from"../../table-filter/src/hooks/useMixins.js";import y from"../../table-filter/src/hooks/useAdvanced.js";import C from"../../table-filter/src/hooks/useRenderWidget.js";import{NButton as k,NIcon as S}from"naive-ui";import{Search as j}from"@vicons/ionicons5";import{cloneDeep as x}from"lodash-es";import{InjectionFilterApiConfig as q}from"../../table-filter/src/constants/index.js";const R={class:"base-search-block"},O={class:"base-container"},F={class:"bease-left"},A={class:"base-ul"},I={key:0,class:"baseli showQuickBtn"},Q=s("i",{class:"iconfont-table-filter icon-table-filter-shaixuan",style:{color:"inherit","margin-right":"6px"}},null,-1),V={key:0,class:"qqConObjCount"},_={key:1,class:"baseli"},w={key:2,class:"baseli"},B=s("i",{class:"iconfont-table-filter icon-table-filter-reset",style:{"margin-right":"6px"}},null,-1);var E=e({__name:"index",props:{showSettings:{type:Object,default:()=>({hideQuickSearch:0,hideResetBtn:0})},searchFieldList:{type:Array,default:()=>[]},qqConObjCount:{type:Number,default:0},filterApiConfig:{type:Object}},emits:["foldQuickSearch","onFilterSearch","handleReset","getFilterParam"],setup(e,{expose:E,emit:D}){const L=e,{outQuickSearchFn:N}=g(),{isRender:P,getRenderSearchConObj:W,isExistDefValByRenderWidget:U,resetRenderWidgetValue:$}=C(),{transformData:z,transformParams:M}=y(),T=t([]),G=t(!1),H=t([]);l(q,L.filterApiConfig);const J=i((()=>X("hideQuickSearch"))),K=i((()=>X("hideResetBtn")));function X(e){return 0==L.showSettings[e]}function Y(){D("foldQuickSearch",!0)}function Z(e={}){const t=te()||[];!function(e,t,l=!1,i={}){let a=[];H.value.length>0&&(a=x(H.value));D("onFilterSearch",e,t,l,a,i)}(t,M(t),!0,e)}function ee(e,t){H.value.forEach((l=>{l._frontId===e&&(l.widgetCfg.isInit=t)}))}function te(){return function(e){if(!Array.isArray(e))return[];let t=[];for(let l=0;l<e.length;l++){let i=e[l];const a=W(i);a&&t.push(a)}return t.filter((e=>e.value))}(H.value)}function le(){!function(e){if(!Array.isArray(e))return;e.forEach((e=>{$(e)})),N.handlerInitSearchItem(e)}(H.value),D("handleReset",{targetType:"outQuickSearchReset"})}return a((()=>L.searchFieldList),(e=>{e&&e.length>0&&function(){H.value=[];let e=x(z(L.searchFieldList)).filter((e=>1==e.isShowSearch&&1==e.filterExplicit));H.value=e,N.handlerInitSearchItem(H.value),H.value.some((e=>P(e)?U(e):!!e.explicitDefaultVal))}()}),{immediate:!0,deep:!0}),a((()=>L.qqConObjCount),(e=>{const t=T.value.length||0;G.value=t+Number(e)>0&&K.value}),{immediate:!0}),a((()=>H),(()=>{T.value=te()||[];const e=M(T.value);G.value=T.value.length+Number(L.qqConObjCount)>0&&K.value,D("getFilterParam",T.value,e)}),{immediate:!0,deep:!0}),E({handleReset:le}),(t,l)=>(n(),r("div",R,[s("div",O,[s("div",F,[s("ul",A,[o(" 筛选分类插槽 "),u(t.$slots,"classification"),c(J)?(n(),r("li",I,[f(c(k),{class:"search-default",type:"default",onClick:Y},{default:d((()=>[Q,h(" 筛选"),e.qqConObjCount?(n(),r("span",V,"("+m(e.qqConObjCount)+")",1)):o("v-if",!0)])),_:1})])):o("v-if",!0),o(" start--筛选外显--start "),(n(!0),r(v,null,p(H.value,(e=>(n(),r(v,null,[e.isRender?(n(),r("li",{class:"baseli outQuickSearch-li",key:e._frontId},[f(b,{cfg:e,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,onOutFilterChange:Z,onChangeInit:ee},null,8,["cfg","modelValue","onUpdate:modelValue"])])):o("v-if",!0)],64)))),256)),o(" end--筛选外显--end "),o(" 查询按钮 "),H.value&&H.value.length>0?(n(),r("li",_,[f(c(k),{type:"primary",onClick:Z},{default:d((()=>[f(c(S),{component:c(j),size:"16",style:{"margin-right":"6px"}},null,8,["component"]),h(" 查询 ")])),_:1})])):o("v-if",!0),o(" 重置按钮 "),G.value?(n(),r("li",w,[f(c(k),{onClick:le},{default:d((()=>[B,h(" 重置 ")])),_:1})])):o("v-if",!0),o(" 业务按钮插槽 "),u(t.$slots,"buttons")])])])]))}});export{E as default};
1
+ import{defineComponent as e,ref as t,provide as l,computed as i,watch as a,openBlock as n,createElementBlock as r,createElementVNode as s,createCommentVNode as o,renderSlot as u,unref as c,createVNode as f,withCtx as d,createTextVNode as h,toDisplayString as m,Fragment as p,renderList as v}from"vue";import b from"../../table-filter/src/components/render-widget/index.vue.js";import g from"../../table-filter/src/hooks/useMixins.js";import y from"../../table-filter/src/hooks/useAdvanced.js";import C from"../../table-filter/src/hooks/useRenderWidget.js";import{NButton as k,NIcon as S}from"naive-ui";import{Search as j}from"@vicons/ionicons5";import{cloneDeep as x}from"lodash-es";import{InjectionFilterApiConfig as q,InjectionFilterSearchConfig as R}from"../../table-filter/src/constants/index.js";const A={class:"base-search-block"},O={class:"base-container"},F={class:"bease-left"},Q={class:"base-ul"},V={key:0,class:"baseli showQuickBtn"},_=s("i",{class:"iconfont-table-filter icon-table-filter-shaixuan",style:{color:"inherit","margin-right":"6px"}},null,-1),w={key:0,class:"qqConObjCount"},I={key:1,class:"baseli"},B={key:2,class:"baseli"},D=s("i",{class:"iconfont-table-filter icon-table-filter-reset",style:{"margin-right":"6px"}},null,-1);var E=e({__name:"index",props:{showSettings:{type:Object,default:()=>({hideQuickSearch:0,hideResetBtn:0})},searchFieldList:{type:Array,default:()=>[]},qqConObjCount:{type:Number,default:0},filterApiConfig:{type:Object}},emits:["foldQuickSearch","onFilterSearch","handleReset","getFilterParam"],setup(e,{expose:E,emit:L}){const N=e,{outQuickSearchFn:P}=g(),{isRender:W,getRenderSearchConObj:U,isExistDefValByRenderWidget:$,resetRenderWidgetValue:z}=C(),{transformData:M,transformParams:T}=y(),G=t([]),H=t(!1),J=t([]);l(q,N.filterApiConfig),l(R,J);const K=i((()=>Y("hideQuickSearch"))),X=i((()=>Y("hideResetBtn")));function Y(e){return 0==N.showSettings[e]}function Z(){L("foldQuickSearch",!0)}function ee(e={}){const t=te()||[];!function(e,t,l=!1,i={}){let a=[];J.value.length>0&&(a=x(J.value));L("onFilterSearch",e,t,l,a,i)}(t,T(t),!0,e)}function te(){return function(e){if(!Array.isArray(e))return[];let t=[];for(let l=0;l<e.length;l++){let i=e[l];const a=U(i);a&&t.push(a)}return t.filter((e=>e.value))}(J.value)}function le(){!function(e){if(!Array.isArray(e))return;e.forEach((e=>{z(e)})),P.handlerInitSearchItem(e)}(J.value),L("handleReset",{targetType:"outQuickSearchReset"})}return a((()=>N.searchFieldList),(e=>{e&&e.length>0&&function(){J.value=[];let e=x(M(N.searchFieldList,{_filterApiConfig:N.filterApiConfig})).filter((e=>1==e.isShowSearch&&1==e.filterExplicit));J.value=e,P.handlerInitSearchItem(J.value),J.value.some((e=>W(e)?$(e):!!e.explicitDefaultVal))}()}),{immediate:!0,deep:!0}),a((()=>N.qqConObjCount),(e=>{const t=G.value.length||0;H.value=t+Number(e)>0&&X.value}),{immediate:!0}),a((()=>J),(()=>{G.value=te()||[];const e=T(G.value);H.value=G.value.length+Number(N.qqConObjCount)>0&&X.value,L("getFilterParam",G.value,e)}),{immediate:!0,deep:!0}),E({handleReset:le}),(t,l)=>(n(),r("div",A,[s("div",O,[s("div",F,[s("ul",Q,[o(" 筛选分类插槽 "),u(t.$slots,"classification"),c(K)?(n(),r("li",V,[f(c(k),{class:"search-default",type:"default",onClick:Z},{default:d((()=>[_,h(" 筛选"),e.qqConObjCount?(n(),r("span",w,"("+m(e.qqConObjCount)+")",1)):o("v-if",!0)])),_:1})])):o("v-if",!0),o(" start--筛选外显--start "),(n(!0),r(p,null,v(J.value,(e=>(n(),r(p,null,[e.isRender?(n(),r("li",{class:"baseli outQuickSearch-li",key:e._frontId},[f(b,{cfg:e,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,onOutFilterChange:ee},null,8,["cfg","modelValue","onUpdate:modelValue"])])):o("v-if",!0)],64)))),256)),o(" end--筛选外显--end "),o(" 查询按钮 "),J.value&&J.value.length>0?(n(),r("li",I,[f(c(k),{type:"primary",onClick:ee},{default:d((()=>[f(c(S),{component:c(j),size:"16",style:{"margin-right":"6px"}},null,8,["component"]),h(" 查询 ")])),_:1})])):o("v-if",!0),o(" 重置按钮 "),H.value?(n(),r("li",B,[f(c(k),{onClick:le},{default:d((()=>[D,h(" 重置 ")])),_:1})])):o("v-if",!0),o(" 业务按钮插槽 "),u(t.$slots,"buttons")])])])]))}});export{E as default};
@@ -1 +1 @@
1
- @font-face{font-family:base-search-iconfont;src:url(base-search-iconfont.ttf) format("truetype")}.iconfont-table-filter{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:base-search-iconfont!important;font-size:14px;font-style:normal}.icon-table-filter-menzhenyishengzhananniuqingchu:before{content:"\e74e"}.icon-table-filter-menzhenyishengzhananniushanchu2:before{content:"\e757"}.icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi:before{content:"\e76e"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2:before{content:"\e778"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua:before{content:"\e779"}.icon-table-filter-reset:before{content:"\e611"}.icon-table-filter-shaixuan:before{content:"\e64b"}.render-widget-input-number-group{align-items:center;display:flex}.render-widget-input-number-group .divider{text-align:center;width:24px}.n-base-select-option__content{width:100%}.n-base-select-option__content .select-widget-dynamic-option{display:flex;flex-wrap:nowrap;width:100%}.n-base-select-option__content .select-widget-dynamic-option .select-widget-dynamic-item{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.render-widget-date-range{align-items:center;display:flex;flex-wrap:nowrap;width:100%}.render-widget-date-range .radio-date-group{border:1px solid #d9d9d9;display:flex;min-width:720px}.render-widget-date-range .radio-date-group .radio-date-item{border-left:1px solid #d9d9d9;cursor:pointer;height:30px;line-height:30px;padding:0 8px}.render-widget-date-range .radio-date-group .radio-date-item:first-child{border:none}.render-widget-date-range .radio-date-group .radio-date-item.radio-date-item-active{background:#3e65cf;border-color:#3e65cf;color:#fff}.render-widget-date-range .select-date-left{margin-left:16px}.render-widget-date-range .select-date-right{margin-right:16px}.render-widget-date-range .date-detail-range{display:flex;flex-wrap:nowrap}.render-widget-date-range .date-detail-range .divider{text-align:center;width:10px}.label-attr-filter-container .edit-f-label{font-size:14px;line-height:32px;padding-left:0}.label-attr-filter-container .edit-f-content.label-select-height{flex:none;height:74px;overflow:hidden}.label-attr-filter-container .edit-f-content .label-f-content{display:flex;flex-wrap:wrap}.label-attr-filter-container .edit-f-content .label-f-content .n-tag{border:1px solid #e0e0e6;height:32px;margin:0 8px 8px 0;max-width:108px;text-align:center}.label-attr-filter-container .edit-f-content .label-f-content .n-tag .n-tag__content{align-items:center;display:inline-flex}.label-attr-filter-container .edit-f-content .label-f-content .n-tag .n-tag__content span{display:inline-block;height:100%;line-height:30px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:80px}.label-attr-filter-container .label-f-unfold-btn{margin:8px 0}.label-attr-filter-container .label-f-unfold-btn .operate-btn{align-items:center;cursor:pointer;display:flex}.label-attr-filter-container .label-f-unfold-btn .operate-btn .n-icon{margin-left:6px}.base-search-block .base-container{display:flex;justify-content:space-between;text-align:left}.base-search-block .base-container .bease-left{align-items:flex-start;display:flex;flex:1;justify-content:flex-start}.base-search-block .base-container .bease-left .base-ul{align-items:center;display:flex;flex-wrap:wrap;margin-top:0}.base-search-block .base-container .bease-left .base-ul .baseli{display:flex;margin-bottom:8px;margin-right:8px}.base-search-block .base-container .bease-left .base-ul .baseli .search-default{height:32px;line-height:32px}
1
+ @font-face{font-family:base-search-iconfont;src:url(base-search-iconfont.ttf) format("truetype")}.iconfont-table-filter{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:base-search-iconfont!important;font-size:14px;font-style:normal}.icon-table-filter-menzhenyishengzhananniuqingchu:before{content:"\e74e"}.icon-table-filter-menzhenyishengzhananniushanchu2:before{content:"\e757"}.icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi:before{content:"\e76e"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2:before{content:"\e778"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua:before{content:"\e779"}.icon-table-filter-reset:before{content:"\e611"}.icon-table-filter-shaixuan:before{content:"\e64b"}.render-widget-input-number-group{align-items:center;display:flex}.render-widget-input-number-group .divider{text-align:center;width:24px}.render-widget-date-range{align-items:center;display:flex;flex-wrap:nowrap;width:100%}.render-widget-date-range .radio-date-group{border:1px solid #d9d9d9;display:flex}.render-widget-date-range .radio-date-group .radio-date-item{border-left:1px solid #d9d9d9;cursor:pointer;height:30px;line-height:30px;padding:0 8px}.render-widget-date-range .radio-date-group .radio-date-item:first-child{border:none}.render-widget-date-range .radio-date-group .radio-date-item.radio-date-item-active{background:#3e65cf;border-color:#3e65cf;color:#fff}.render-widget-date-range .select-date-left{margin-left:16px}.render-widget-date-range .select-date-right{margin-right:16px}.render-widget-date-range .date-detail-range{display:flex;flex-wrap:nowrap}.render-widget-date-range .date-detail-range .divider{text-align:center;width:10px}.label-attr-filter-container .edit-f-label{font-size:14px;line-height:32px;padding-left:0}.label-attr-filter-container .edit-f-content.label-select-height{flex:none;height:74px;overflow:hidden}.label-attr-filter-container .edit-f-content .label-f-content{display:flex;flex-wrap:wrap}.label-attr-filter-container .edit-f-content .label-f-content .n-tag{border:1px solid #e0e0e6;height:32px;margin:0 8px 8px 0;max-width:108px;text-align:center}.label-attr-filter-container .edit-f-content .label-f-content .n-tag .n-tag__content{align-items:center;display:inline-flex}.label-attr-filter-container .edit-f-content .label-f-content .n-tag .n-tag__content span{display:inline-block;height:100%;line-height:30px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:80px}.label-attr-filter-container .label-f-unfold-btn{margin:8px 0}.label-attr-filter-container .label-f-unfold-btn .operate-btn{align-items:center;cursor:pointer;display:flex}.label-attr-filter-container .label-f-unfold-btn .operate-btn .n-icon{margin-left:6px}.select-dynamic-popover .n-base-select-menu__empty{justify-content:left;padding:0}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options{background:#fff;box-shadow:0 0 6px rgba(0,0,0,.2);display:flex;flex-direction:column;justify-content:left}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .n-empty{padding:12px 32px}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .mixins-options-active{background:#f1f1f1}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-header{display:flex}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-header .name{align-items:center;display:flex;flex:1;font-weight:700;height:34px;padding:0 12px}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-content{list-style:none;margin:0;max-height:250px;outline:none;overflow:auto;padding-left:0}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-content li{color:rgba(0,0,0,.65);cursor:pointer;display:flex;font-size:14px;line-height:22px;text-overflow:ellipsis;transition:background .3s ease;white-space:nowrap}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-content li.actived{color:#5585f5}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-content li:hover{background:#f1f1f1}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-content li .content{flex:1;overflow:hidden;padding:5px 12px;text-overflow:ellipsis;white-space:nowrap}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-pagination{width:100%}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-pagination .n-button-group{display:flex}.select-dynamic-popover .n-base-select-menu__empty .select-dynamic-options .dynamic-pagination .n-button-group .n-button{flex:1}.base-search-block .base-container{display:flex;justify-content:space-between;text-align:left}.base-search-block .base-container .bease-left{align-items:flex-start;display:flex;flex:1;justify-content:flex-start}.base-search-block .base-container .bease-left .base-ul{align-items:center;display:flex;flex-wrap:wrap;margin-top:0}.base-search-block .base-container .bease-left .base-ul .baseli{display:flex;margin-bottom:8px;margin-right:8px}.base-search-block .base-container .bease-left .base-ul .baseli .search-default{height:32px;line-height:32px}
@@ -1 +1 @@
1
- import t from"axios";import{isArray as e}from"lodash-es";import{IdentityVerificationDialog as i,PreviewDialog as n}from"./dialog.js";import{getFileUrl as s,useBrowserPrint as r,isIReport as a}from"./browserPrint.js";import{getCurrentInstance as o}from"vue";import{format as l}from"date-fns";const d=t.create({timeout:1e3,withCredentials:!1}),h=`${window.location.protocol}//${window.location.host}`,c=`${h}/fdp-api/print/assembly/printIReport`,p=`${h}/bi-api/reprot/print/open/client/getRemote`,u=`${h}/printService/file`;let m=null;class w{constructor(){var t;if(this.webview=null,this.dialog=new i,this.dialogPreview=new n,this.instance=null,this.downloadPath="",this.printOrigin="http://127.0.0.1:11111",this.isRemote=!1,this.CMonitor=null,this.messageHandlerQueue=[],m)return m;m=this;const e=window;if(this.CMonitor=e.$CMonitor,this.webview=null==(t=e.chrome)?void 0:t.webview,this.webview){this.currentMessageHandler=this.messageHandler.bind(this),this.webview.addEventListener("message",this.currentMessageHandler);try{this.webview.postMessage({exec:"config",data:""})}catch(t){this._handleMonitorNotify("当前浏览器版本不支持获取配置接口"),console.log("非封装浏览器或者当前版本不支持获取配置接口")}}}messageHandler(t){var e;if(!t)return console.log("当前回执",t,"接收到空的浏览器事件");let i;try{i=JSON.parse(t.data||"{}")}catch(t){console.log("解析e.data失败,"+t)}if(["print","pdf"].includes(null==i?void 0:i.cmd)){const e=this.messageHandlerQueue.shift();if(!e)return console.log("当前回执",t,"没有可用的handler");const{resolve:n,reject:s}=e;try{n(i.res||"")}catch(t){s(t)}}else"config"===(null==i?void 0:i.exec)&&(this.downloadPath=(null==(e=i.res)?void 0:e.downloadpath)||"")}async postMessage(t){return this.webview?new Promise(((e,i)=>{this.messageHandlerQueue.push({resolve:e,reject:i}),this.webview.postMessage(t)})):Promise.reject()}destroy(){this.webview&&this.currentMessageHandler&&(this.webview.removeEventListener("message",this.currentMessageHandler),this.currentMessageHandler=void 0)}show(...t){return this.dialog.show(...t)}showPreview(...t){return this.dialogPreview.show(...t)}_testConnection(){return this.webview?Promise.resolve(!0):new Promise((t=>{d({url:`${this.printOrigin}/test`,method:"get",withCredentials:!1,params:{inputdata:{result:"success"}}}).then((({data:e})=>{"success"===e.result?t(!0):t(!1)})).catch((e=>{t(!1)}))}))}_queryServicesPrint(e){return this.webview?this.postMessage({exec:"print",data:{inputData:e}}):t({url:this.printOrigin+"/services/print",method:"get",params:{inputData:JSON.stringify(e)}}).then((({data:t})=>t))}_callPrintWithFile(t){const e={cmdid:"7",flag:"1"},i={inputData:JSON.stringify(Object.assign({},e,t))};return this.webview?this.postMessage({exec:"print",data:n(i)}):d({url:this.printOrigin+"/PrintLocal",method:"post",data:i,transformRequest:[n]}).then((({data:t})=>t));function n(t){let e="";for(const i in t)e+=encodeURIComponent(i)+"="+encodeURIComponent(t[i])+"&";return e=e.slice(0,-1),e}}_handleMonitorNotify(t){var e,i;null==(i=null==(e=this.CMonitor)?void 0:e.notify)||i.call(e,{name:"custom_info",message:t,businessName:"打印sdk"})}_handleResult(t,e){if(!t)return this._handleMonitorNotify("打印命令未返回信息"),null==e||e({type:"printError",message:"打印命令未返回信息",result:!1,errinfo:"打印命令未返回信息"}),!1;if("success"!==t.result){const i=t.message||t.Message;this._handleMonitorNotify(i);const n={type:"printError",message:i,result:t.result,errinfo:t.errinfo};return null==e||e(n),!1}return t}_handleResultTest(t,e){return!!t||(console.log("notInstalledApp"),null==e||e({type:"notInstalledApp",message:"请打开打印服务器插件"}),!1)}async _handleEventQueryPrintData(t,e,i,n){const s={templateId:t,formatId:e,params:i,cmdid:"7"},r=await this._queryServicesPrint(s);return this._handleQueryPrintDataResult(r,e,n)}_handleQueryPrintDataResult(t,e,i){if(!(null==t?void 0:t.file)){try{const e=t.message||t.Message;console.log(e),null==i||i({type:"queryPrintDataFailure",message:e})}catch(t){console.log(t)}return!1}return{file:t.file,printerName:t.defprinter,pageCount:t.pagecount,formatId:e}}async _handleEventDirect({templateId:t,formatId:e,params:i,cmdid:n,print:s,printdlgshow:r="1",nobillnode:a="1",btnprint:o="1"}){const d={templateId:t,formatId:e,params:i,cmdid:n,nobillnode:a,printdlgshow:r,btnprint:o};if(s){try{s=JSON.parse(s)}catch(t){}d.print=s}else if(this.isRemote){const t=l(new Date,"yyyyMMddHHmmss");d.print={print:"1",type:"1",zip:"0",filename:`F:\\WorkSpace\\crmweb\\web\\${t}\\${t}`}}return await this._queryServicesPrint(d)}async _handleEventEditFormat({templateId:t,formatId:e="",params:i="",token:n}){const s={};let r={};try{r=Object.assign({},s,JSON.parse(i))}catch(t){r=s}const a={templateId:t,formatId:e,cmdid:"9",token:n,params:JSON.stringify(r)};return await this._queryServicesPrint(a)}async _queryProxyOrigin(){if(this.isRemote)return;const{data:t}=await d({method:"get",url:p})||{},{map:e={}}=t;e.isRemote&&(this.printOrigin=h+"/printService",this.isRemote=!0)}async _queryPrintFile(t,e=""){const{data:i}=await d({method:"post",url:c,responseType:"blob",params:{formatId:t.split("_")[1],params:e}})||{};return i}async _browserPrint(t,e){if(this.isRemote){const{filedir:i}=t,n=JSON.parse(i)[0].replace(/\\/g,"/").split("/"),a=n[n.length-2],o=n[n.length-1],l=await s(`${u}/${a}/${o}`),d=r(null,e,l);if("preview"===e)return d}}async preview({templateId:t,formatId:e,params:i="",btnprint:n},s,l){if(a(e)){const t=await this._queryPrintFile(e,i);if(!t)return null==l?void 0:l("获取文件失败!");const n=r(t,"preview");return this.instance||(this.instance=o()),this.showPreview(this.instance,n),void(null==s||s({file:t}))}await this._queryProxyOrigin();const d=await this._testConnection();if(!this._handleResultTest(d,l))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,cmdid:this.isRemote?"7":"8",btnprint:n}),a=this._handleResult(r,l);if(!a)return!1;if(this.isRemote){const t=await this._browserPrint(a,"preview");this.instance||(this.instance=o()),this.showPreview(this.instance,t)}null==s||s(a)}catch(t){const e="预览失败";null==l||l(e),this._handleMonitorNotify(e)}}async printDirect({templateId:t,formatId:e,params:i="",print:n,printdlgshow:s,nobillnode:o,isDownloadFile:l=!0},d,h,c="printDirect"){if(a(e)){const t=await this._queryPrintFile(e,i);return t?(r(t,c),void(null==d||d({file:t}))):null==h?void 0:h("获取文件失败!")}await this._queryProxyOrigin();const p=await this._testConnection();if(!this._handleResultTest(p,h))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,cmdid:"7",print:n,printdlgshow:s,nobillnode:o}),a=this._handleResult(r,h);if(!a)return!1;l&&["downloadPDF"].includes(c)&&await this._browserPrint(a,c),null==d||d(a)}catch(t){const e="printDirect"===c?"打印失败":"下载失败";null==h||h(e),this._handleMonitorNotify(e)}}_downloadPDF(t){return this.webview?this.postMessage({exec:"pdf",data:{file:t}}):d.get(this.printOrigin+"/download",{params:{inputData:t}}).then((({data:t})=>t))}downloadPDF(t,i,n){this.webview&&this.downloadPath&&(Reflect.has(t,"print")||Reflect.set(t,"print",{print:"1",type:"1"}),t.print.filename=this.downloadPath.replace(/\\/g,"/")),this.printDirect(t,(async s=>{if(s||n(null),a(t.formatId))return i(s);const r=this,o=await async function(t){const i=[],n=JSON.parse(t);if(!e(n))return await r._downloadPDF("");if(1===n.length)return await r._downloadPDF(n[0]||"");for(let t=0,e=n.length;t<e;t++)i.push(await r._downloadPDF(n[t]||""));return i}(s.filedir);i(o,s)}),(t=>n(t)),"downloadPDF")}async print({templateId:t,formatId:e,params:i=""},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this.queryPrintData({templateId:t,formatId:e,params:i},void 0,s);if(!a)return!1;const o=this.printFileData({formatId:e,file:a.file,printerName:a.printerName},void 0,s);if(!o)return!1;n&&n(o)}async queryPrintData({templateId:t,formatId:e,params:i=""},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this._handleEventQueryPrintData(t,e,i,s);return!!a&&(n&&n(a),a)}async printFileData({formatId:t,file:e,printerName:i="Default"},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this._callPrintWithFile({formatId:t,printname:i,file:e}),o=this._handleResult(a,s);return!!o&&(n&&n(o),o)}async editPrintFormat({templateId:t,formatId:e,params:i,token:n},s,r){const a=await this._testConnection();if(!this._handleResultTest(a,r))return!1;const o=await this._handleEventEditFormat({templateId:t,formatId:e,params:i,token:n}),l=this._handleResult(o,r);if(!l)return!1;s&&s(l)}async addPrintFormat({templateId:t,params:e,token:i},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this._handleEventEditFormat({templateId:t,params:e,token:i}),o=this._handleResult(a,s);if(!o)return!1;n&&n(o)}}export{w as Print};
1
+ import t from"axios";import{isArray as e}from"lodash-es";import{IdentityVerificationDialog as i,PreviewDialog as n}from"./dialog.js";import{getFileUrl as s,useBrowserPrint as r,isIReport as a}from"./browserPrint.js";import{getCurrentInstance as o}from"vue";import{format as l}from"date-fns";const d=t.create({timeout:1e3,withCredentials:!1}),h=`${window.location.protocol}//${window.location.host}`,c=`${h}/fdp-api/print/assembly/printIReport`,u=`${h}/bi-api/reprot/print/open/client/getRemote`,p=`${h}/printService/file`;let m=null;class w{constructor(){var t;if(this.webview=null,this.dialog=new i,this.dialogPreview=new n,this.instance=null,this.downloadPath="",this.printOrigin="http://127.0.0.1:11111",this.isRemote=!1,this.CMonitor=null,this.messageHandlerQueue=[],m)return m;m=this;const e=window;if(this.CMonitor=e.$CMonitor,this.webview=null==(t=e.chrome)?void 0:t.webview,this.webview){this.currentMessageHandler=this.messageHandler.bind(this),this.webview.addEventListener("message",this.currentMessageHandler);try{this.webview.postMessage({exec:"config",data:""})}catch(t){const e="当前浏览器版本不支持获取配置接口";this._handleMonitorNotify(e),console.log("非封装浏览器或者"+e)}}}messageHandler(t){var e;if(!t)return this._handleMonitorNotify("接收到空的浏览器事件,"+t),console.log("当前回执",t,"接收到空的浏览器事件");let i;try{i=JSON.parse(t.data||"{}")}catch(e){console.log("解析e.data失败,"+e),this._handleMonitorNotify("解析e.data失败,"+t)}if(["print","pdf"].includes(null==i?void 0:i.cmd)){console.log("打印命令执行了",i);const e=this.messageHandlerQueue.shift();if(!e)return console.log("当前回执",t,"没有可用的handler");const{resolve:n,reject:s}=e;try{n(i.res||"")}catch(t){s(t)}}else"config"===(null==i?void 0:i.exec)&&(this.downloadPath=(null==(e=i.res)?void 0:e.downloadpath)||"")}async postMessage(t){if(!this.webview)return Promise.reject();const e=Date.now().toString();return Promise.race([new Promise(((i,n)=>{this.messageHandlerQueue.push({resolve:i,reject:n,id:e}),this.webview.postMessage(t)})),new Promise(((t,i)=>{setTimeout((()=>{const t=this.messageHandlerQueue.findIndex((t=>t.id===e));t>-1&&this.messageHandlerQueue.splice(t,1),i()}),5e3)}))])}destroy(){this.webview&&this.currentMessageHandler&&(this.webview.removeEventListener("message",this.currentMessageHandler),this.currentMessageHandler=void 0)}show(...t){return this.dialog.show(...t)}showPreview(...t){return this.dialogPreview.show(...t)}_testConnection(){return this.webview?Promise.resolve(!0):new Promise((t=>{d({url:`${this.printOrigin}/test`,method:"get",withCredentials:!1,params:{inputdata:{result:"success"}}}).then((({data:e})=>{"success"===e.result?t(!0):t(!1)})).catch((e=>{t(!1)}))}))}_queryServicesPrint(e){return this.webview?this.postMessage({exec:"print",data:{inputData:e}}):t({url:this.printOrigin+"/services/print",method:"get",params:{inputData:JSON.stringify(e)}}).then((({data:t})=>t))}_callPrintWithFile(t){const e={cmdid:"7",flag:"1"},i={inputData:JSON.stringify(Object.assign({},e,t))};return this.webview?this.postMessage({exec:"print",data:n(i)}):d({url:this.printOrigin+"/PrintLocal",method:"post",data:i,transformRequest:[n]}).then((({data:t})=>t));function n(t){let e="";for(const i in t)e+=encodeURIComponent(i)+"="+encodeURIComponent(t[i])+"&";return e=e.slice(0,-1),e}}_handleMonitorNotify(t){var e,i;null==(i=null==(e=this.CMonitor)?void 0:e.notify)||i.call(e,{name:"custom_info",message:t,businessName:"打印sdk"})}_handleResult(t,e){if(!t){const t="超时或者打印命令返回空数据";return this._handleMonitorNotify(""),null==e||e({type:"printError",message:t,result:!1,errinfo:t}),!1}if("success"!==t.result){const i=t.message||t.Message;this._handleMonitorNotify(i);const n={type:"printError",message:i,result:t.result,errinfo:t.errinfo};return null==e||e(n),!1}return t}_handleResultTest(t,e){return!!t||(console.log("notInstalledApp"),null==e||e({type:"notInstalledApp",message:"请打开打印服务器插件"}),!1)}async _handleEventQueryPrintData(t,e,i,n){const s={templateId:t,formatId:e,params:i,cmdid:"7"},r=await this._queryServicesPrint(s);return this._handleQueryPrintDataResult(r,e,n)}_handleQueryPrintDataResult(t,e,i){if(!(null==t?void 0:t.file)){try{const e=t.message||t.Message;console.log(e),null==i||i({type:"queryPrintDataFailure",message:e})}catch(t){console.log(t)}return!1}return{file:t.file,printerName:t.defprinter,pageCount:t.pagecount,formatId:e}}async _handleEventDirect({templateId:t,formatId:e,params:i,cmdid:n,print:s,printdlgshow:r="1",nobillnode:a="1",btnprint:o="1"}){const d={templateId:t,formatId:e,params:i,cmdid:n,nobillnode:a,printdlgshow:r,btnprint:o};if(s){try{s=JSON.parse(s)}catch(t){}d.print=s}else if(this.isRemote){const t=l(new Date,"yyyyMMddHHmmss");d.print={print:"1",type:"1",zip:"0",filename:`F:\\WorkSpace\\crmweb\\web\\${t}\\${t}`}}return await this._queryServicesPrint(d)}async _handleEventEditFormat({templateId:t,formatId:e="",params:i="",token:n}){const s={};let r={};try{r=Object.assign({},s,JSON.parse(i))}catch(t){r=s}const a={templateId:t,formatId:e,cmdid:"9",token:n,params:JSON.stringify(r)};return await this._queryServicesPrint(a)}async _queryProxyOrigin(){if(this.isRemote)return;const{data:t}=await d({method:"get",url:u})||{},{map:e={}}=t;e.isRemote&&(this.printOrigin=h+"/printService",this.isRemote=!0)}async _queryPrintFile(t,e=""){const{data:i}=await d({method:"post",url:c,responseType:"blob",params:{formatId:t.split("_")[1],params:e}})||{};return i}async _browserPrint(t,e){if(this.isRemote){const{filedir:i}=t,n=JSON.parse(i)[0].replace(/\\/g,"/").split("/"),a=n[n.length-2],o=n[n.length-1],l=await s(`${p}/${a}/${o}`),d=r(null,e,l);if("preview"===e)return d}}async preview({templateId:t,formatId:e,params:i="",btnprint:n},s,l){if(a(e)){const t=await this._queryPrintFile(e,i);if(!t)return null==l?void 0:l("获取文件失败!");const n=r(t,"preview");return this.instance||(this.instance=o()),this.showPreview(this.instance,n),void(null==s||s({file:t}))}await this._queryProxyOrigin();const d=await this._testConnection();if(!this._handleResultTest(d,l))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,cmdid:this.isRemote?"7":"8",btnprint:n}),a=this._handleResult(r,l);if(!a)return!1;if(this.isRemote){const t=await this._browserPrint(a,"preview");this.instance||(this.instance=o()),this.showPreview(this.instance,t)}null==s||s(a)}catch(t){const e="预览失败";null==l||l(e),this._handleMonitorNotify(e)}}async printDirect({templateId:t,formatId:e,params:i="",print:n,printdlgshow:s,nobillnode:o,isDownloadFile:l=!0},d,h,c="printDirect"){if(a(e)){const t=await this._queryPrintFile(e,i);return t?(r(t,c),void(null==d||d({file:t}))):null==h?void 0:h("获取文件失败!")}await this._queryProxyOrigin();const u=await this._testConnection();if(!this._handleResultTest(u,h))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,cmdid:"7",print:n,printdlgshow:s,nobillnode:o}),a=this._handleResult(r,h);if(!a)return!1;l&&["downloadPDF"].includes(c)&&await this._browserPrint(a,c),null==d||d(a)}catch(t){const e="printDirect"===c?"打印失败":"下载失败";null==h||h(e),this._handleMonitorNotify(e)}}_downloadPDF(t){return this.webview?this.postMessage({exec:"pdf",data:{file:t}}):d.get(this.printOrigin+"/download",{params:{inputData:t}}).then((({data:t})=>t))}downloadPDF(t,i,n){this.webview&&this.downloadPath&&(Reflect.has(t,"print")||Reflect.set(t,"print",{print:"1",type:"1"}),t.print.filename=this.downloadPath.replace(/\\/g,"/")),this.printDirect(t,(async s=>{if(s||n(null),a(t.formatId))return i(s);const r=this,o=await async function(t){const i=[],n=JSON.parse(t);if(!e(n))return await r._downloadPDF("");if(1===n.length)return await r._downloadPDF(n[0]||"");for(let t=0,e=n.length;t<e;t++)i.push(await r._downloadPDF(n[t]||""));return i}(s.filedir);i(o,s)}),(t=>n(t)),"downloadPDF")}async print({templateId:t,formatId:e,params:i=""},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this.queryPrintData({templateId:t,formatId:e,params:i},void 0,s);if(!a)return!1;const o=this.printFileData({formatId:e,file:a.file,printerName:a.printerName},void 0,s);if(!o)return!1;n&&n(o)}async queryPrintData({templateId:t,formatId:e,params:i=""},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this._handleEventQueryPrintData(t,e,i,s);return!!a&&(n&&n(a),a)}async printFileData({formatId:t,file:e,printerName:i="Default"},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this._callPrintWithFile({formatId:t,printname:i,file:e}),o=this._handleResult(a,s);return!!o&&(n&&n(o),o)}async editPrintFormat({templateId:t,formatId:e,params:i,token:n},s,r){const a=await this._testConnection();if(!this._handleResultTest(a,r))return!1;const o=await this._handleEventEditFormat({templateId:t,formatId:e,params:i,token:n}),l=this._handleResult(o,r);if(!l)return!1;s&&s(l)}async addPrintFormat({templateId:t,params:e,token:i},n,s){const r=await this._testConnection();if(!this._handleResultTest(r,s))return!1;const a=await this._handleEventEditFormat({templateId:t,params:e,token:i}),o=this._handleResult(a,s);if(!o)return!1;n&&n(o)}}export{w as Print};