@quickbi/bi-types 3.1.5 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cjs/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  // Generated by dts-bundle v0.7.3
2
2
  // Dependencies for this module:
3
- // ../../../../../react
3
+ // ../../../../../../../../../../react
4
4
 
5
5
  declare module '@quickbi/bi-types' {
6
6
  export { CommonCompInputAreaTypeEnum, DataConfig, DataConfigAreaItemColumn, DataPanelDataSchema, DataSchemaAreaItem, OperationMenuItem, DropdownMenuItem, OperationTypes, Aggregators, FieldConfigTypes, ContrastTypes, AdvanceCalTypes, AdvanceCalcDateTypes, NumberFormats, AlignTypes, VerticalAlignTypes, AlignmentCategory, SortTypes, FieldChartTypes, ImageSizes, CUSTOM_FIELD_TYPES, FieldType, QueryAxisType, DropDownMenuType, SecondFieldType, ChartStatus, StackedSortType, ResultMode, RetainAreaId, ConfigCellType, ConfigColumnType, CheckBoxState, FieldGroupType, DataSchemaRule, TableType, TableDirection, ProportionType, AccumulateCalcType, FieldCollectionType, LnglatGroupChildFlags, FieldGroupSelectorType, VirtualFieldOperation, NumberValueType, ContrastType, } from '@quickbi/bi-types/data-panel';
@@ -13,7 +13,7 @@ declare module '@quickbi/bi-types' {
13
13
  export { ResourcePageHeaderGroupEnum } from '@quickbi/bi-types/ui/page-header';
14
14
  export { PersonalThemeMode, OrgThemeMode } from '@quickbi/bi-types/ui/theme';
15
15
  export { CustomEventType } from '@quickbi/bi-types/open/events/event-props';
16
- export type { CustomEventModalPayload, CustomEventPageConfig, CustomEventPropsDispatch, CustomEventProps, } from '@quickbi/bi-types/open/events/event-props';
16
+ export type { CustomEventModalPayload, CustomEventPageConfig, CustomEventPropsDispatch, CustomEventProps, CustomEventDownloadFiles, } from '@quickbi/bi-types/open/events/event-props';
17
17
  export type { CustomEventMeta } from '@quickbi/bi-types/open/events/event-schema';
18
18
  export type { ComponentError, ComponentConfigError, ComponentNoPermissionError, ComponentDataMaskError, ComponentNoDataError, ComponentRenderError, ComponentProps, ComponentPropsColorSeries, ComponentPropsCubeConfig, ComponentPropsDispatch, ComponentPropsGlobalConfig, ComponentPropsSkin, ComponentPropsViewConfig, DimGranularity, } from '@quickbi/bi-types/open/components/component-props';
19
19
  export type { ComponentMeta, ComponentMetaPropsSchema } from '@quickbi/bi-types/open/components/component-meta';
@@ -26,6 +26,8 @@ declare module '@quickbi/bi-types' {
26
26
  export * from '@quickbi/bi-types/open/components/style-schema';
27
27
  export type { MenuMeta, MenuProps, MenuSchema, MenuSchemaBase, MenuSchemaItem } from '@quickbi/bi-types/open/menus/menu-schema';
28
28
  export * from '@quickbi/bi-types/open/menus/menu-props';
29
+ export type { PageComponentProps } from '@quickbi/bi-types/open/custom-page/pages-props';
30
+ export type { PageMeta } from '@quickbi/bi-types/open/custom-page/pages-schema';
29
31
  export type { EmbedBaseSrc, EmbedBaseFeature, EmbedBaseEventMessageDTO, EmbedBaseEventMessageContent, EmbedBaseEventListener, EmbedBaseEventListenerReturn, } from '@quickbi/bi-types/open/embed/core';
30
32
  export { OpenPageTypeEnum } from '@quickbi/bi-types/open/common/page-types';
31
33
  export { OpenEventTypeEnum } from '@quickbi/bi-types/open/common/event-types';
@@ -200,9 +202,9 @@ declare module '@quickbi/bi-types/component-type' {
200
202
  WORDCLOUD = 12,
201
203
  /** 旋风漏斗(已下线) */
202
204
  TORNADO = 13,
203
- /** 老树图(已关闭入口,线上有图) */
205
+ /** 老树图(已下线) */
204
206
  TREE = 14,
205
- /** 老的来源去向图(已关闭入口,线上有图) */
207
+ /** 老的来源去向图(已下线) */
206
208
  PATH = 15,
207
209
  /** 矩阵树图 */
208
210
  TREEMAP = 16,
@@ -431,7 +433,9 @@ declare module '@quickbi/bi-types/component-type' {
431
433
  /** 非结构化图表-词频(词云图,已下线) */
432
434
  UNSTRUCTURED_FREQUENCY = 129,
433
435
  /** 智能解读 */
434
- SMART_INTERPRETATION = 130
436
+ SMART_INTERPRETATION = 130,
437
+ /** 探索分析-智能推荐 */
438
+ EXPLORATION_SMART_CHART = 131
435
439
  }
436
440
  export const ScreenComponentCode: Record<ScreenComponentType, number>;
437
441
  export enum ChartType {
@@ -528,6 +532,8 @@ declare module '@quickbi/bi-types/component-type' {
528
532
  CONCAT_CONTAINER = "concat-container",
529
533
  INDICATOR_RELATION = "indicator-relation",
530
534
  SMART_INTERPRETATION = "smart-interpretation",
535
+ /** 探索分析-智能推荐 */
536
+ EXPLORATION_SMART_CHART = "exploration-smart-chart",
531
537
  /** ------------非结构化图表 ------------ */
532
538
  UNSTRUCTURED_PARALLEL = "parallel",
533
539
  UNSTRUCTURED_CONTRAST = "contrast",
@@ -855,13 +861,28 @@ declare module '@quickbi/bi-types/open/events/event-props' {
855
861
  */
856
862
  export type CustomEventPropsDispatch = (param: CommonOpenModalAction | CommonCloseModalAction | CommonShowMessageAction) => void;
857
863
  export enum CustomEventType {
858
- /** 自定义事件-下载前 */
859
- beforeDownloadEvent = "before-download-event",
860
864
  /** 自定义事件-页面加载前 */
861
865
  beforePageLoadEvent = "before-page-loaded-event",
862
866
  /** 自定义事件-发布前 */
863
- beforePublishEvent = "before-publish-event"
867
+ beforePublishEvent = "before-publish-event",
868
+ /** 自定义事件-下载前 */
869
+ beforeDownloadEvent = "before-download-event",
870
+ /** 自定义事件-下载后 */
871
+ afterDownloadEvent = "after-download-event"
864
872
  }
873
+ export type CustomEventDownloadFiles = Array<{
874
+ /** 文件数据 */
875
+ blob: Blob;
876
+ /** 文件名称 */
877
+ name: string;
878
+ /** 文件的 MIME 类型 */
879
+ type: string;
880
+ } | {
881
+ /** 文件地址 */
882
+ url: string;
883
+ /** 文件名称 */
884
+ name: string;
885
+ }>;
865
886
  /**
866
887
  * 自定义事件 props 接口
867
888
  */
@@ -870,6 +891,8 @@ declare module '@quickbi/bi-types/open/events/event-props' {
870
891
  type: CustomEventType;
871
892
  /** 页面信息 */
872
893
  pageConfig: CustomEventPageConfig;
894
+ /** 导出后事件文件信息 */
895
+ files?: CustomEventDownloadFiles;
873
896
  /** 操作 */
874
897
  dispatch?: CustomEventPropsDispatch;
875
898
  /** 自定义菜单展示模式 */
@@ -1118,19 +1141,19 @@ declare module '@quickbi/bi-types/open/components/component-lifecycle' {
1118
1141
  /**
1119
1142
  * 开机阶段钩子
1120
1143
  */
1121
- export type LifecycleBootstrap<T = object, P = any> = (props?: LifecycleProps<T>) => void | Promise<P>;
1144
+ export type LifecycleBootstrap<T = object, P = any> = (props: LifecycleProps<T>) => void | Promise<P>;
1122
1145
  /**
1123
1146
  * 渲染阶段钩子
1124
1147
  */
1125
- export type LifecycleMount<T = object, P = any> = (props?: LifecycleProps<T>) => void | Promise<P>;
1148
+ export type LifecycleMount<T = object, P = any> = (props: LifecycleProps<T>) => void | Promise<P>;
1126
1149
  /**
1127
1150
  * 卸载阶段钩子
1128
1151
  */
1129
- export type LifecycleUnmount<T = object, P = any> = (props?: LifecycleProps<T>) => void | Promise<P>;
1152
+ export type LifecycleUnmount<T = object, P = any> = (props: LifecycleProps<T>) => void | Promise<P>;
1130
1153
  /**
1131
1154
  * 更新阶段钩子
1132
1155
  */
1133
- export type LifecycleUpdate<T = object, P = any> = (props?: LifecycleProps<T>) => void | Promise<P>;
1156
+ export type LifecycleUpdate<T = object, P = any> = (props: LifecycleProps<T>) => void | Promise<P>;
1134
1157
  /**
1135
1158
  * 开放组件生命周期
1136
1159
  */
@@ -1772,7 +1795,8 @@ declare module '@quickbi/bi-types/standard-model' {
1772
1795
  * | areas区域模型
1773
1796
  * -------------------------------------------------------------------------------------------
1774
1797
  */
1775
- import type { EmptyValueDisplayConfig, SecondDataType } from '@quickbi/bi-types/cube/cube-model';
1798
+ import type { EmptyValueDisplayConfig } from '@quickbi/bi-types/cube/cube-model';
1799
+ import type { SecondDataType } from '@quickbi/bi-types/cube/cube-schema';
1776
1800
  import type { CountParams, FieldCollectionType, PercentileParams, TopNParams, CompareParams, DateAccumulateParams, ProportionParams } from '@quickbi/bi-types/data-panel';
1777
1801
  import type { DifferenceParams, MovingCalculationParams, MultiFieldCombinationConfig, RankParams } from '@quickbi/bi-types/data-panel/data-config';
1778
1802
  /** 字段信息 */
@@ -2275,12 +2299,14 @@ declare module '@quickbi/bi-types/cube' {
2275
2299
  * @author 无愚
2276
2300
  * @description 数据集类型定义
2277
2301
  */
2302
+ export * from '@quickbi/bi-types/cube/cube-blend';
2303
+ export * from '@quickbi/bi-types/cube/cube-field-expression';
2304
+ export * from '@quickbi/bi-types/cube/cube-links';
2278
2305
  export * from '@quickbi/bi-types/cube/cube-model';
2306
+ export * from '@quickbi/bi-types/cube/cube-schema';
2279
2307
  export * from '@quickbi/bi-types/cube/data-source';
2280
- export * from '@quickbi/bi-types/cube/cube-links';
2281
- export * from '@quickbi/bi-types/cube/table-schema';
2282
- export * from '@quickbi/bi-types/cube/cube-field-expression';
2283
- export type { BlendSchema, CubeBlend, CubeLink } from '@quickbi/bi-types/cube/cube-blend';
2308
+ export * from '@quickbi/bi-types/cube/logical-schema';
2309
+ export * from '@quickbi/bi-types/cube/physical-schema';
2284
2310
  }
2285
2311
 
2286
2312
  declare module '@quickbi/bi-types/open/menus/menu-schema' {
@@ -2331,6 +2357,7 @@ declare module '@quickbi/bi-types/open/menus/menu-props' {
2331
2357
  import type { EnumAsUnion } from '@quickbi/bi-types/open/common/tools';
2332
2358
  import type { OpenPageTypeEnum } from '@quickbi/bi-types/open/common/page-types';
2333
2359
  import type { OpenDeviceTypeEnum } from '@quickbi/bi-types/open/common/misc';
2360
+ import type { RouteKey } from '@quickbi/bi-types/router/route-key';
2334
2361
  /**
2335
2362
  * 事件/菜单通用的页面信息
2336
2363
  */
@@ -2355,8 +2382,10 @@ declare module '@quickbi/bi-types/open/menus/menu-props' {
2355
2382
  ownerUserName: string;
2356
2383
  /** 页面标题 */
2357
2384
  title: string;
2358
- /** 页面类型 */
2359
- pageType: EnumAsUnion<typeof OpenPageTypeEnum>;
2385
+ /** @deprecated 页面类型, 已废弃, 后续请用routeKey判断页面类型 */
2386
+ pageType?: EnumAsUnion<typeof OpenPageTypeEnum>;
2387
+ /** 页面路由 key */
2388
+ routeKey?: RouteKey;
2360
2389
  }
2361
2390
  /**
2362
2391
  * 事件/菜单通用的工具方法
@@ -2504,6 +2533,23 @@ declare module '@quickbi/bi-types/open/menus/menu-props' {
2504
2533
  }
2505
2534
  }
2506
2535
 
2536
+ declare module '@quickbi/bi-types/open/custom-page/pages-props' {
2537
+ import type { CommonPageConfig } from '@quickbi/bi-types/open/menus/menu-props';
2538
+ /**
2539
+ * 自定义页面 props 接口
2540
+ */
2541
+ export interface PageComponentProps {
2542
+ /** 页面信息 */
2543
+ pageConfig: Pick<CommonPageConfig, 'userId' | 'userName' | 'routeKey'>;
2544
+ }
2545
+ }
2546
+
2547
+ declare module '@quickbi/bi-types/open/custom-page/pages-schema' {
2548
+ /** 自定义页面元信息 */
2549
+ export interface PageMeta {
2550
+ }
2551
+ }
2552
+
2507
2553
  declare module '@quickbi/bi-types/open/embed/core' {
2508
2554
  /**
2509
2555
  * @author 海狸
@@ -2574,7 +2620,7 @@ declare module '@quickbi/bi-types/open/embed/core' {
2574
2620
 
2575
2621
  declare module '@quickbi/bi-types/open/common/page-types' {
2576
2622
  /**
2577
- * @deprecated 开放相关页面类型枚举, 注意要和 routerKkey 做区分, 这个 key 后续要废弃
2623
+ * @deprecated 开放相关页面类型枚举, 注意要和 routerKey 做区分, 这个 key 后续要废弃
2578
2624
  * */
2579
2625
  export enum OpenPageTypeEnum {
2580
2626
  /** 仪表板 */
@@ -2602,12 +2648,14 @@ declare module '@quickbi/bi-types/open/common/event-types' {
2602
2648
  'before-page-change-event' = "before-page-change-event",
2603
2649
  /** 图表加载后事件 */
2604
2650
  'after-component-rendered-event' = "after-component-rendered-event",
2605
- /** 导出前事件 */
2606
- 'before-download-event' = "before-download-event",
2607
2651
  /** 页面加载前事件 */
2608
2652
  'before-page-loaded-event' = "before-page-loaded-event",
2609
2653
  /** 发布前事件 */
2610
- 'before-publish-event' = "before-publish-event"
2654
+ 'before-publish-event' = "before-publish-event",
2655
+ /** 导出前事件 */
2656
+ 'before-download-event' = "before-download-event",
2657
+ /** 导出后事件 */
2658
+ 'after-download-event' = "after-download-event"
2611
2659
  }
2612
2660
  /** 开放相关事件取值固定为 before-xxx-event, after-xxx-event */
2613
2661
  export type OpenEventTypeValue = `before-${string}-event` | `after-${string}-event`;
@@ -2771,8 +2819,12 @@ declare module '@quickbi/bi-types/router/route-key' {
2771
2819
  orgAdminSmartQGlobalConfig = "orgAdminSmartQGlobalConfig",
2772
2820
  /** 组织管理-智能小 Q - 通用配置 - 大模型配置 */
2773
2821
  orgAdminSmartQGlobalConfigLlmConfig = "orgAdminSmartQGlobalConfigLlmConfig",
2822
+ /** 组织管理-智能小 Q - 通用配置 - AI功能管理 */
2823
+ orgAdminSmartQGlobalConfigAIConfig = "orgAdminSmartQGlobalConfigAIConfig",
2774
2824
  /** 组织管理-智能小 Q - 通用配置 - 智能体管理 */
2775
2825
  orgAdminSmartQGlobalConfigAgentManage = "orgAdminSmartQGlobalConfigAgentManage",
2826
+ /** 组织管理-智能小 Q - 通用配置 - 知识库 */
2827
+ orgAdminSmartQGlobalConfigKnowledgeManage = "orgAdminSmartQGlobalConfigKnowledgeManage",
2776
2828
  /** 组织管理-小Q问数 */
2777
2829
  orgAdminCopilot = "orgAdminCopilot",
2778
2830
  /** 组织管理-小Q问数 - 探索版 */
@@ -2783,6 +2835,8 @@ declare module '@quickbi/bi-types/router/route-key' {
2783
2835
  orgQueryAgentAnalysisThemeAuth = "orgQueryAgentAnalysisThemeAuth",
2784
2836
  /** 组织管理-小Q问数-知识库管理 */
2785
2837
  orgQueryAgentKnowledgeBaseManage = "orgQueryAgentKnowledgeBaseManage",
2838
+ /** 组织管理-小Q问数-全局配置 */
2839
+ orgQueryAgentGlobalConfig = "orgQueryAgentGlobalConfig",
2786
2840
  /** 组织管理-小Q问数-问数资源管理 */
2787
2841
  orgResourceManage = "orgResourceManage",
2788
2842
  /** 组织管理-小Q问数-分析主题管理 */
@@ -2906,16 +2960,22 @@ declare module '@quickbi/bi-types/router/route-key' {
2906
2960
  dataServiceCount = "dataServiceCount",
2907
2961
  /** 发布渠道 */
2908
2962
  embedChannel = "embedChannel",
2963
+ /** 自定义可视化 */
2964
+ customManage = "componentManage",
2909
2965
  /** 自定义组件 */
2910
2966
  customComponent = "customComponent",
2911
2967
  /** 自定义菜单 */
2912
2968
  customMenu = "customMenu",
2969
+ /** 自定义页面 */
2970
+ customPage = "customPage",
2913
2971
  /** 自定义模板 */
2914
2972
  customTemplate = "customTemplate",
2915
2973
  /** 自定义驱动 */
2916
2974
  customConnect = "customConnect",
2917
2975
  /** 自定义插件 */
2918
2976
  customPlugin = "customPlugin",
2977
+ /** 自定义脚本 */
2978
+ customScript = "customScript",
2919
2979
  /** 监听事件 */
2920
2980
  monitorEvent = "monitorEvent",
2921
2981
  /** 行为事件 */
@@ -2942,6 +3002,8 @@ declare module '@quickbi/bi-types/router/route-key' {
2942
3002
  viewHome = "viewHome",
2943
3003
  /** 卡片卡板 */
2944
3004
  viewBoard = "viewBoard",
3005
+ /** 探索分析 */
3006
+ viewExploration = "viewExploration",
2945
3007
  /** 我的收藏 */
2946
3008
  viewFavorite = "viewFavorite",
2947
3009
  /** 最近访问 */
@@ -3119,6 +3181,12 @@ declare module '@quickbi/bi-types/router/route-key' {
3119
3181
  downloadView = "downloadView",
3120
3182
  /** 自助取数公开预览 */
3121
3183
  downloadPublicView = "downloadPublicView",
3184
+ /** ---------------------------------------------------- 探索分析 -------------------------------------------------- */
3185
+ explorationRoot = "explorationRoot",
3186
+ /** 探索分析编辑 */
3187
+ explorationEdit = "explorationEdit",
3188
+ /** 探索分析预览 */
3189
+ explorationView = "explorationView",
3122
3190
  /** --------------------------------------------------- 即席分析 -------------------------------------------------- */
3123
3191
  analysisRoot = "analysisRoot",
3124
3192
  /** 即席分析编辑 */
@@ -3491,6 +3559,14 @@ declare module '@quickbi/bi-types/router/route-tree' {
3491
3559
  /** 智能小 Q - 通用配置 - 大模型配置 */
3492
3560
  readonly key: RouteKey.orgAdminSmartQGlobalConfigLlmConfig;
3493
3561
  readonly path: "/org/admin/smartQ/globalConfig/llmConfig";
3562
+ }, {
3563
+ /** 智能小 Q - 通用配置 - AI功能管理 */
3564
+ readonly key: RouteKey.orgAdminSmartQGlobalConfigAIConfig;
3565
+ readonly path: "/org/admin/smartQ/globalConfig/aiConfig";
3566
+ }, {
3567
+ /** 智能小 Q - 通用配置 - 大模型配置 */
3568
+ readonly key: RouteKey.orgAdminSmartQGlobalConfigKnowledgeManage;
3569
+ readonly path: "/org/admin/smartQ/globalConfig/knowledgeManage";
3494
3570
  }];
3495
3571
  }, {
3496
3572
  readonly key: RouteKey.orgAdminCopilot;
@@ -3532,6 +3608,9 @@ declare module '@quickbi/bi-types/router/route-tree' {
3532
3608
  }, {
3533
3609
  readonly key: RouteKey.orgQueryAgentKnowledgeBaseManage;
3534
3610
  readonly path: "/org/admin/copilot/queryAgent/orgKnowledgeBaseManage";
3611
+ }, {
3612
+ readonly key: RouteKey.orgQueryAgentGlobalConfig;
3613
+ readonly path: "/org/admin/copilot/queryAgent/globalConfig";
3535
3614
  }];
3536
3615
  }, {
3537
3616
  readonly key: RouteKey.orgAdminQMessage;
@@ -3706,11 +3785,18 @@ declare module '@quickbi/bi-types/router/route-tree' {
3706
3785
  readonly key: RouteKey.embedChannel;
3707
3786
  readonly path: "/openservice/embedChannel";
3708
3787
  }, {
3709
- readonly key: RouteKey.customComponent;
3788
+ readonly key: RouteKey.customManage;
3710
3789
  readonly path: "/openservice/componentManage";
3711
- }, {
3712
- readonly key: RouteKey.customMenu;
3713
- readonly path: "/openservice/componentMenu";
3790
+ readonly children: [{
3791
+ readonly key: RouteKey.customComponent;
3792
+ readonly path: "/openservice/componentManage/customComponent";
3793
+ }, {
3794
+ readonly key: RouteKey.customMenu;
3795
+ readonly path: "/openservice/componentManage/customMenu";
3796
+ }, {
3797
+ readonly key: RouteKey.customPage;
3798
+ readonly path: "/openservice/componentManage/customPage";
3799
+ }];
3714
3800
  }, {
3715
3801
  readonly key: RouteKey.customTemplate;
3716
3802
  readonly path: "/openservice/defineTemplate";
@@ -3720,6 +3806,9 @@ declare module '@quickbi/bi-types/router/route-tree' {
3720
3806
  }, {
3721
3807
  readonly key: RouteKey.customPlugin;
3722
3808
  readonly path: "/openservice/customPlugin";
3809
+ }, {
3810
+ readonly key: RouteKey.customScript;
3811
+ readonly path: "/openservice/customScript";
3723
3812
  }, {
3724
3813
  readonly key: RouteKey.monitorEvent;
3725
3814
  readonly path: "/openservice/event";
@@ -3762,6 +3851,9 @@ declare module '@quickbi/bi-types/router/route-tree' {
3762
3851
  }, {
3763
3852
  readonly key: RouteKey.viewBoard;
3764
3853
  readonly path: "/view/card";
3854
+ }, {
3855
+ readonly key: RouteKey.viewExploration;
3856
+ readonly path: "/view/exploration";
3765
3857
  }, {
3766
3858
  readonly key: RouteKey.viewFavorite;
3767
3859
  readonly path: "/view/favorite";
@@ -4036,6 +4128,16 @@ declare module '@quickbi/bi-types/router/route-tree' {
4036
4128
  readonly key: RouteKey.downloadPublicView;
4037
4129
  readonly path: "/token3rd/offline/view/pc.htm";
4038
4130
  }];
4131
+ }, {
4132
+ readonly key: RouteKey.explorationRoot;
4133
+ readonly path: "/exploration";
4134
+ readonly children: [{
4135
+ readonly key: RouteKey.explorationEdit;
4136
+ readonly path: "/exploration/pc.htm";
4137
+ }, {
4138
+ readonly key: RouteKey.explorationView;
4139
+ readonly path: "/exploration/view/pc.htm";
4140
+ }];
4039
4141
  }, {
4040
4142
  readonly key: RouteKey.analysisRoot;
4041
4143
  readonly path: "/analysis";
@@ -4377,7 +4479,9 @@ declare module '@quickbi/bi-types/permission-type' {
4377
4479
  /** 资源包管理 */
4378
4480
  resourceConfig = "resourceConfig",
4379
4481
  /** 小Q报告 */
4380
- qReport = "qreport"
4482
+ qReport = "qreport",
4483
+ /** 探索分析 */
4484
+ exploration = "exploration"
4381
4485
  }
4382
4486
  }
4383
4487
 
@@ -4453,7 +4557,8 @@ declare module '@quickbi/bi-types/data-panel/base' {
4453
4557
  AGGREGATE_CALC_FIELD = "AGGREGATE_CALC_FIELD",
4454
4558
  FIELD_GROUP = "FIELD_GROUP",
4455
4559
  AGGREGATE_FIELD = "AGGREGATE_FIELD",
4456
- STRING_FIELD = "STRING_FIELD"
4560
+ STRING_FIELD = "STRING_FIELD",
4561
+ GROUP_CONTRAST = "GROUP_CONTRAST"
4457
4562
  }
4458
4563
  export enum ResultMode {
4459
4564
  SELECT_ALL = "selectAll",
@@ -4986,6 +5091,17 @@ declare module '@quickbi/bi-types/data-panel/data-config' {
4986
5091
  isMultiField?: boolean;
4987
5092
  /** 父字段的guid */
4988
5093
  parentFieldGuid?: string;
5094
+ /** 是否虚拟字段,如散点图中的聚类字段、线柱图中的度量名字段 */
5095
+ isVirtual?: boolean;
5096
+ /** 分组对比组配置, 如果有 groupContrast, 说明是分组对比字段 */
5097
+ groupContrast?: {
5098
+ /** 分组 id */
5099
+ groupId: string;
5100
+ /** 分组名称 */
5101
+ groupName: string;
5102
+ /** 分组字段 */
5103
+ columnList: Partial<DataConfigAreaItemColumn>[];
5104
+ }[];
4989
5105
  }
4990
5106
  export enum ContrastType {
4991
5107
  DAY_DAY_RING_RATIO = "day_day",
@@ -5042,7 +5158,8 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5042
5158
  */
5043
5159
  import type * as React from 'react';
5044
5160
  import type { BlendSchema } from '@quickbi/bi-types/cube/cube-blend';
5045
- import type { Aggregator, CubeModel, DateGranularity, EmptyValueDisplayConfig, Field, FieldAttribute, FolderAndHierarchyNode, RegionGranularity } from '@quickbi/bi-types/cube/cube-model';
5161
+ import type { CubeModel, EmptyValueDisplayConfig } from '@quickbi/bi-types/cube/cube-model';
5162
+ import type { Aggregator, DateGranularity, Field, FieldAttribute, FolderAndHierarchyNode, RegionGranularity } from '@quickbi/bi-types/cube/cube-schema';
5046
5163
  import type { FieldType, QueryAxisType, FieldGroupType, SecondFieldType, ChartStatus, StackedSortType, RetainAreaId, FieldCollectionType } from '@quickbi/bi-types/data-panel/base';
5047
5164
  import type { DataConfigAreaItemColumn } from '@quickbi/bi-types/data-panel/data-config';
5048
5165
  export interface ValidateResult {
@@ -5145,6 +5262,7 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5145
5262
  avg = "avg",
5146
5263
  count = "count",
5147
5264
  countd = "countd",
5265
+ approx_distinct = "approx_distinct",
5148
5266
  null = "null",
5149
5267
  more = "more",
5150
5268
  max = "max",
@@ -5262,6 +5380,7 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5262
5380
  /** 字段别名 */
5263
5381
  export interface LabelConfig extends FieldCommonConfig {
5264
5382
  type: FieldConfigTypes.rename;
5383
+ title?: string;
5265
5384
  useDescription?: boolean;
5266
5385
  }
5267
5386
  /** 对齐类别 */
@@ -5442,6 +5561,8 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5442
5561
  defaultValues?: string[];
5443
5562
  };
5444
5563
  };
5564
+ /** 分组对比字段新增时自动打开配置且只打开一次,设置为运行时状态 */
5565
+ groupContrastAutoOpen?: boolean;
5445
5566
  }
5446
5567
  /** 字段组内具体字段的字段信息,包含是否隐藏等+columnList信息 */
5447
5568
  export interface ChildFieldInfo {
@@ -5501,10 +5622,20 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5501
5622
  description?: React.ReactNode;
5502
5623
  customRenderer?: React.ReactNode;
5503
5624
  isVirtualField?: boolean;
5625
+ colorType?: Field['type'];
5504
5626
  /** 虚拟字段icon */
5505
5627
  operations?: VirtualFieldOperation[];
5506
5628
  /** 触发事件 */
5507
5629
  onClick?: Function;
5630
+ /** 分组对比组配置, 如果有 groupContrast, 说明是分组对比字段 */
5631
+ groupContrast?: {
5632
+ /** 分组 id */
5633
+ groupId: string;
5634
+ /** 分组名称 */
5635
+ groupName: string;
5636
+ /** 分组字段 */
5637
+ columnList: Partial<DataConfigAreaItemColumn>[];
5638
+ }[];
5508
5639
  }
5509
5640
  /** [字段集]FieldCollectionInfo信息 */
5510
5641
  export interface FieldCollectionInfo {
@@ -5579,7 +5710,7 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5579
5710
  }
5580
5711
  export class DataSchemaRule {
5581
5712
  /** 默认展示值 */
5582
- placeholder?: string;
5713
+ placeholder?: string | (() => React.ReactNode);
5583
5714
  /** 字段配置个数限制 */
5584
5715
  maxColNum?: number | ((areaMap: AreaMap, options: {
5585
5716
  isConvertQueryInput?: boolean;
@@ -5746,6 +5877,8 @@ declare module '@quickbi/bi-types/data-panel/data-schema-item' {
5746
5877
  isExtendAssociateFields?: boolean;
5747
5878
  /** 是否切换数据集 */
5748
5879
  isSwitchCube?: boolean;
5880
+ /** 是否需要进行重新取数(探索分析场景由查询控件触发) */
5881
+ needRefetch?: boolean;
5749
5882
  }
5750
5883
  export type OnChangeCubeOptions = Omit<OnFreshComponentOptions, 'isClickButton' | 'refreshMobileChart' | 'ReloadCube' | 'noPollingCache'>;
5751
5884
  export type OnFreshComponentType = (comp: any, changeAttributeList?: string[], isFresh?: boolean, options?: OnFreshComponentOptions) => any;
@@ -5908,328 +6041,132 @@ declare module '@quickbi/bi-types/data-panel/data-schema' {
5908
6041
 
5909
6042
  declare module '@quickbi/bi-types/cube/cube-model' {
5910
6043
  /**
5911
- * @author 嘉念
5912
- * @description 数据集接口模型
5913
- */
5914
- import type { FieldExpressionModel } from '@quickbi/bi-types/cube/cube-field-expression';
5915
- import type { DsCreateOriginEnum, DsType, DataLoadMode } from '@quickbi/bi-types/cube/data-source';
5916
- export enum CustomAreaType {
5917
- /** 自定义地理信息 */
5918
- CUSTOM_AREA = "CUSTOM_AREA",
5919
- /** 自定义瓦片底图 */
5920
- CUSTOM_GIS = "CUSTOM_GIS",
5921
- /** 自定义geojson */
5922
- CUSTOM_GEOJSON = "CUSTOM_GEOJSON",
5923
- /** 自定义层级 */
5924
- CUSTOM_TREE = "CUSTOM_TREE",
5925
- /** 自定义图片 */
5926
- CUSTOM_PICTURE = "CUSTOM_PICTURE"
5927
- }
5928
- /** 自定义图片底图信息 */
5929
- export enum PictureCoordinateType {
5930
- /** 纵坐标 */
5931
- HORIZONTAL = "CUSTOM_PICTURE_HORIZONTAL",
5932
- /** 横坐标 */
5933
- VERTICAL = "CUSTOM_PICTURE_VERTICAL"
5934
- }
5935
- /** 自定义地理信息 */
5936
- export interface ExtraInfo {
5937
- /** 自定义层级Id */
5938
- customGeoLevel?: number;
5939
- /** 自定义图片类型 */
5940
- pictureCoordinateType?: PictureCoordinateType;
5941
- }
5942
- /**
5943
- * 关联字段
5944
- * 数据混合blend和数据集物理表关联physical均使用该字段
5945
- */
5946
- export type JoinKey = {
5947
- /** 源表字段(blend模式为数据集字段id,physical模式为物理字段名) */
5948
- sourceKey: string;
5949
- /**
5950
- * @deprecated
5951
- * 源表关联物理字段类型(QBI目前没在用,保留)
5952
- */
5953
- sourceType?: string;
5954
- /** 目标表字段(blend模式为数据集字段id,physical模式为物理字段名) */
5955
- targetKey: string;
5956
- /**
5957
- * @deprecated
5958
- * 标表关联物理字段类型(QBI目前没在用,保留)
5959
- */
5960
- targetType?: string;
5961
- /**
5962
- * 条件
5963
- */
5964
- condition: JoinCondition;
5965
- /**
5966
- * 目前仅physical模式使用
5967
- */
5968
- targetCalculateMember?: boolean;
5969
- /**
5970
- * 目前仅physical模式使用
5971
- */
5972
- sourceCalculateMember?: boolean;
5973
- };
5974
- /** 物理表类型 */
5975
- export enum PhysicalTableType {
5976
- /** 物理表 */
5977
- Table = "table",
5978
- /** 自定义SQL */
5979
- Sql = "sql",
5980
- /** 上传文件(探索空间 & 数据库)、API数据源、文档数据源 */
5981
- File = "file"
5982
- }
5983
- /** 表模型 */
5984
- export interface PhysicalTable {
5985
- /** 唯一标识 */
5986
- uniqueId: string;
5987
- /** 表展示名称 */
5988
- caption?: string;
5989
- /** 表id */
5990
- tableName: string;
5991
- /** 物理表所属数据源ID */
5992
- datasourceId: string;
5993
- /** 是否为事实表(中心表标识) */
5994
- factTable: boolean;
5995
- /** 数据源类型 */
5996
- dsType: DsType;
5997
- /** 表类型(不落库,每次获取cubeSchema模型时后端实时查询返回) */
5998
- tableType?: PhysicalTableType;
5999
- }
6000
- /** 表模型 */
6001
- export interface VirtualTable {
6002
- /** 唯一标识 */
6003
- uniqueId: string;
6004
- /** 表展示名称 */
6005
- caption: string;
6006
- /** 表名 */
6007
- tableName: string;
6008
- /** 物理表所属数据源ID */
6009
- datasourceId: string;
6010
- /** 是否为事实表(中心表标识) */
6011
- factTable: boolean;
6012
- dsType: DsType;
6013
- sqlId: string;
6014
- sql: string;
6015
- /** 表类型(不落库,每次获取cubeSchema模型时后端实时查询返回) */
6016
- tableType?: PhysicalTableType;
6017
- }
6018
- /** 合并字段来源表信息 */
6019
- export interface UnionTableColumnModel {
6020
- /** 来源表id */
6021
- table: string;
6022
- /** 来源字段物理字段名(表名称列不传) */
6023
- column?: string;
6024
- /** 来源表的名称(表名称列需要传) */
6025
- value?: string;
6026
- }
6027
- /** 合并字段 */
6028
- export interface UnionColumn {
6029
- /** 合并后的字段名 */
6030
- column: string;
6031
- /** 备注 */
6032
- caption: string;
6033
- /** 合并字段的来源表字段信息 */
6034
- tableColumns: UnionTableColumnModel[];
6035
- /** 非源表字段,自动生成的表名称列 */
6036
- isAuto?: boolean;
6037
- }
6038
- /** 合并表模型 */
6039
- export interface UnionTable extends PhysicalTable {
6040
- /** 物理表 */
6041
- tables: PhysicalTable[];
6042
- /** 自定义sql、view */
6043
- virtualTables: VirtualTable[];
6044
- /** 合并字段信息 */
6045
- unionColumns: UnionColumn[];
6046
- }
6047
- export interface Link {
6048
- /** 源表id(blend模式为数据集id,physical模式为物理表id) */
6049
- source: string;
6050
- /** 关联表id(blend模式为数据集id,physical模式为物理表id) */
6051
- target: string;
6052
- /** 关联类型 */
6053
- joinType: TableJoinType;
6054
- /**
6055
- * @deprecated
6056
- * 目前只有many-to-one
6057
- */
6058
- relation?: TableRelation;
6059
- joinKeys: JoinKey[];
6060
- }
6061
- /** 物理表关联模型 */
6062
- export type PhysicalLink = Link;
6063
- export class PhysicalSchema {
6064
- /** 物理表 */
6065
- tables: PhysicalTable[];
6066
- /** 自定义sql、view */
6067
- virtualTables: VirtualTable[];
6068
- /** union合并表 */
6069
- unionTables: UnionTable[];
6070
- /** 表关联关系 */
6071
- links: PhysicalLink[];
6072
- /** odps表是否开启全表扫描 */
6073
- sqlHintTypes?: string[];
6074
- sqlHints?: HintModal[];
6075
- }
6076
- /** 数据集层级结构/文件夹/属性的嵌套关系 */
6077
- export type FieldTree = AttributeNode | FolderAndHierarchyNode;
6078
- export type AttributeMapValue = {
6079
- attribute: FieldAttribute;
6080
- type: 'Dimension' | 'Measure';
6081
- };
6082
- /** 数据集逻辑模型 */
6083
- export class CubeSchema {
6084
- /** 唯一标识,无业务逻辑,不要使用 */
6085
- uniqueId: string;
6086
- /** 数据集ID */
6087
- cubeId: string;
6088
- /** 数据源ID */
6089
- datasourceId: string;
6090
- /** 数据集名称 */
6091
- caption: string;
6092
- /** 字段列表 */
6093
- fields: Field[];
6094
- /** 普通字段、层系、文件夹树形结构 */
6095
- fieldTree: FieldTree[];
6096
- /** 过滤条件 */
6097
- filter?: FilterAttr[];
6098
- /** 全局参数 */
6099
- params: ParamType[];
6100
- /** 占位符 */
6101
- sqlPlaceholders: ParamType[];
6102
- }
6044
+ * @author 嘉念
6045
+ * @description 数据集接口模型
6046
+ */
6047
+ import type { FieldAttribute } from '@quickbi/bi-types/cube/cube-schema';
6048
+ import { CubeSchema, EmptyValueDisplayType } from '@quickbi/bi-types/cube/cube-schema';
6049
+ import type { DsCreateOriginEnum, DataLoadMode } from '@quickbi/bi-types/cube/data-source';
6050
+ import { LogicalSchema } from '@quickbi/bi-types/cube/logical-schema';
6103
6051
  /** 编辑权限属性 */
6104
6052
  export enum EditPermitType {
6105
- /** 脏数据代表空间成员 */
6106
- oldWorkSpaceMember = 1,
6107
- /** 指定成员 */
6108
- appointPerson = 12,
6109
- /** 全部空间成员 */
6110
- allWorkSpacePerson = 11
6053
+ /** 脏数据代表空间成员 */
6054
+ oldWorkSpaceMember = 1,
6055
+ /** 指定成员 */
6056
+ appointPerson = 12,
6057
+ /** 全部空间成员 */
6058
+ allWorkSpacePerson = 11
6111
6059
  }
6112
6060
  /** 使用权限属性 */
6113
6061
  export enum UsePermitType {
6114
- /** 指定成员 */
6115
- appointPerson = 2,
6116
- /** 全部空间成员 */
6117
- allWorkSpacePerson = 1
6062
+ /** 指定成员 */
6063
+ appointPerson = 2,
6064
+ /** 全部空间成员 */
6065
+ allWorkSpacePerson = 1
6118
6066
  }
6119
6067
  /** 数据集额外信息 */
6120
6068
  export class SchemaExtraInfo {
6121
- /** 数据集所在工作空间的文件夹位置 */
6122
- aimDirId: string;
6123
- hasAuthorizedUse?: boolean;
6124
- /** 权限列表 */
6125
- permissionList?: string[];
6126
- /** 行级权限,列级权限字段id */
6127
- dataLevelAttributeIds: string[];
6128
- /** 无列级权限的字段 */
6129
- withoutColumnLevelPermissionFields: string[];
6130
- /** 聚合方式 */
6131
- aggFunctions?: string[];
6132
- /** 是否开启数据脱敏 */
6133
- isDataMaskOpen?: number;
6134
- /** 是否开启列级权限 1=开启 0=未开启 */
6135
- isOpenColumnLevelPermission?: number;
6136
- /** 是否开启了行级权限 1=开启 0=未开启 */
6137
- isOpenRowLevelPermission?: number;
6138
- /** 当前数据集来自的类型 */
6139
- dsCreateOrigin?: DsCreateOriginEnum;
6140
- /** 跨源模式 */
6141
- dataLoadMode?: DataLoadMode;
6142
- /** 是否为etl 生成的数据集 */
6143
- etlGenerateCube?: boolean;
6144
- /** 数据集类型 */
6145
- cubeType?: 'upload' | 'upload_static';
6146
- /** 数据集owner */
6147
- creatorId?: string;
6148
- /** 数据集owner name */
6149
- creatorName?: string;
6150
- /** 编辑权限属性 0-私密 11-空间成员 12-指定成员 1-脏数据代表空间成员 */
6151
- authLevel?: EditPermitType;
6152
- /** 数据集描述 */
6153
- comments?: string;
6154
- /** 使用权限属性 1-空间成员 2-指定人 */
6155
- authorizedUseType?: UsePermitType;
6156
- /** */
6157
- functionConfig: {
6158
- enableCache: boolean;
6159
- enableCalculateMember: boolean;
6160
- enableCustomizedSql: boolean;
6161
- enableJoin: boolean;
6162
- };
6163
- /** 数据集修改时间 */
6164
- gmtModified?: string;
6069
+ /** 数据集所在工作空间的文件夹位置 */
6070
+ aimDirId: string;
6071
+ hasAuthorizedUse?: boolean;
6072
+ /** 权限列表 */
6073
+ permissionList?: string[];
6074
+ /** 行级权限,列级权限字段id */
6075
+ dataLevelAttributeIds: string[];
6076
+ /** 无列级权限的字段 */
6077
+ withoutColumnLevelPermissionFields: string[];
6078
+ /** 聚合方式 */
6079
+ aggFunctions?: string[];
6080
+ /** 是否开启数据脱敏 */
6081
+ isDataMaskOpen?: number;
6082
+ /** 是否开启列级权限 1=开启 0=未开启 */
6083
+ isOpenColumnLevelPermission?: number;
6084
+ /** 是否开启了行级权限 1=开启 0=未开启 */
6085
+ isOpenRowLevelPermission?: number;
6086
+ /** 当前数据集来自的类型 */
6087
+ dsCreateOrigin?: DsCreateOriginEnum;
6088
+ /** 跨源模式 */
6089
+ dataLoadMode?: DataLoadMode;
6090
+ /** 是否为etl 生成的数据集 */
6091
+ etlGenerateCube?: boolean;
6092
+ /** 数据集类型 */
6093
+ cubeType?: 'upload' | 'upload_static';
6094
+ /** 数据集owner */
6095
+ creatorId?: string;
6096
+ /** 数据集owner name */
6097
+ creatorName?: string;
6098
+ /** 编辑权限属性 0-私密 11-空间成员 12-指定成员 1-脏数据代表空间成员 */
6099
+ authLevel?: EditPermitType;
6100
+ /** 数据集描述 */
6101
+ comments?: string;
6102
+ /** 使用权限属性 1-空间成员 2-指定人 */
6103
+ authorizedUseType?: UsePermitType;
6104
+ /** */
6105
+ functionConfig: {
6106
+ enableCache: boolean;
6107
+ enableCalculateMember: boolean;
6108
+ enableCustomizedSql: boolean;
6109
+ enableJoin: boolean;
6110
+ };
6111
+ /** 数据集修改时间 */
6112
+ gmtModified?: string;
6165
6113
  }
6166
- /** 数据集模型 */
6167
- export class CubeModel {
6168
- /** 物理表 */
6169
- physicalSchema: PhysicalSchema;
6170
- /** 数据集逻辑模型 */
6171
- cubeSchema: CubeSchema;
6172
- /** 数据集结构版本 */
6173
- metaModelVersion: string;
6174
- /** 数据集订正版本(前端使用) */
6175
- userDefineVersion: string;
6176
- /** 数据集额外信息 */
6177
- schemaExtraInfo: SchemaExtraInfo;
6114
+ /** 空值展示配置类型 */
6115
+ export enum EmptyValueType {
6116
+ /** 空值 */
6117
+ EmptyValue = "EmptyValue",
6118
+ /** 空字符串 */
6119
+ EmptyString = "EmptyString"
6178
6120
  }
6179
- /** 数据集影子模型 */
6180
- export type CubeShadow = CubeSchema;
6181
- /** 表关联类型 */
6182
- export enum TableJoinType {
6183
- /** 左连接 */
6184
- LEFT_OUTER_JOIN = "LEFT_OUTER_JOIN",
6185
- /** 内连接 */
6186
- INNER_JOIN = "INNER_JOIN",
6187
- /** 右连接 */
6188
- RIGHT_OUTER_JOIN = "RIGHT_OUTER_JOIN",
6189
- /** 全连接 */
6190
- FULL_OUTER_JOIN = "FULL_OUTER_JOIN",
6191
- JOIN_ERROR = "JOIN_ERROR"
6121
+ export class EmptyStringOrNullDisplayConfig {
6122
+ /** 展示类型 */
6123
+ formatType: EmptyValueDisplayType;
6124
+ /** 自定义展示内容 */
6125
+ customFormat: string;
6126
+ /** 是否是自动(继承数据集) */
6127
+ isAuto?: boolean;
6192
6128
  }
6193
- export enum TableRelation {
6194
- MANY_TO_ONE = "many-to-one"
6129
+ /** 空值展示配置 */
6130
+ export class EmptyValueDisplayConfig {
6131
+ /** 空值展示配置 */
6132
+ emptyValueConfig: EmptyStringOrNullDisplayConfig;
6133
+ /** 空字符串展示配置 */
6134
+ emptyStringConfig: EmptyStringOrNullDisplayConfig;
6135
+ static getDefaultConfigForQuickReport(): EmptyValueDisplayConfig;
6136
+ static convertAttrEmptyValueDisplayConfig(attr: FieldAttribute, isAuto?: boolean): EmptyValueDisplayConfig;
6137
+ /** 根据fieldSettingMap中存储的配置转换成空值展示配置模型 */
6138
+ static getConfigByFieldSettingMap(fieldSetting: any, defaultValue?: any): EmptyValueDisplayConfig;
6195
6139
  }
6196
- export enum JoinCondition {
6197
- /** 等于 */
6198
- EQUAL_TO = "equal-to",
6199
- /** 不等于 */
6200
- UNEQUAL_TO = "unequal-to",
6201
- /** 大于 */
6202
- GREATER_THAN = "greater-than",
6203
- /** 大于等于 */
6204
- GREATER_THAN_OR_EQUAL_TO = "greater-than-or-equal-to",
6205
- /** 小于 */
6206
- LESS_THAN = "less-than",
6207
- /** 小于等于 */
6208
- LESS_THAN_OR_EQUAL_TO = "less-than-or-equal-to"
6140
+ /** 返回值cellset中的dimType */
6141
+ export enum CellsetDimTypes {
6142
+ StandardDimension = "StandardDimension",
6143
+ StrDateTypeDimension = "StrDateTypeDimension",
6144
+ StarDimension = "StarDimension",
6145
+ GeographicDimension = "GeographicDimension",
6146
+ /** 上面为维度字段,measureCol代表度量 */
6147
+ measureCol = "measureCol"
6209
6148
  }
6210
- /** 字段列表定义,包含维度、度量 */
6211
- export interface Field {
6212
- /** 唯一标识 */
6213
- uniqueId: string;
6214
- /** 字段名称 */
6215
- caption: string;
6216
- type: 'Dimension' | 'Measure';
6217
- /** 标记数据面板上的字段、文件夹,和数据集原有的字段、文件夹区别开来 */
6218
- fromPanel?: boolean;
6219
- /** 老接口保留字段(计算字段expression中作为唯一标识使用),新数据跟uniqueId值相同 */
6220
- name?: string;
6221
- /** 引用表id */
6222
- table: string;
6223
- /** 物理字段 */
6224
- column: string;
6225
- /** 是否为衍生字段,分组字段和计算字段都为true */
6226
- calculateMember: boolean;
6227
- /** 字段描述,仅日期类型会使用 */
6228
- comments?: string;
6229
- /** 是否支持修改字段类型 */
6230
- supportCastDataType?: boolean;
6231
- attributes: FieldAttribute[];
6149
+ /** 数据集模型 */
6150
+ export class CubeModel {
6151
+ /** 数据集逻辑模型 */
6152
+ logicalSchema: LogicalSchema;
6153
+ /** 数据集字段相关模型 */
6154
+ cubeSchema: CubeSchema;
6155
+ /** 数据集结构版本 */
6156
+ metaModelVersion: string;
6157
+ /** 数据集订正版本(前端使用) */
6158
+ userDefineVersion: string;
6159
+ /** 数据集额外信息 */
6160
+ schemaExtraInfo: SchemaExtraInfo;
6232
6161
  }
6162
+ }
6163
+
6164
+ declare module '@quickbi/bi-types/cube/cube-schema' {
6165
+ /**
6166
+ * @author 嘉念
6167
+ * @description 数据集字段相关模型
6168
+ */
6169
+ import type { FieldExpressionModel } from '@quickbi/bi-types/cube/cube-field-expression';
6233
6170
  /** 当前数据类型,如果没有进行过类型切换,则和OriginDataType一致 影响sql生成 (原colType) */
6234
6171
  export enum DataType {
6235
6172
  number = "number",
@@ -6252,6 +6189,15 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6252
6189
  }
6253
6190
  /** 物理数据类型:第一次初始化时填写,后续不会修改 */
6254
6191
  export type OriginDataType = DataType;
6192
+ /** 度量类型聚合方式 */
6193
+ export enum Aggregator {
6194
+ 'sum' = "sum",
6195
+ 'count' = "count",
6196
+ 'distinct-count' = "distinct-count",
6197
+ 'max' = "max",
6198
+ 'min' = "min",
6199
+ 'avg' = "avg"
6200
+ }
6255
6201
  /** 年粒度日期类型 */
6256
6202
  export enum CalendarTypeEnum {
6257
6203
  /** 公历年 */
@@ -6304,47 +6250,6 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6304
6250
  semicolon = ";",
6305
6251
  space = " "
6306
6252
  }
6307
- /**
6308
- * 维度树结构类型
6309
- * Normal: 正常层级结构
6310
- * Date: 日期类型层级结构
6311
- * Linked: 关联类型文件夹
6312
- */
6313
- export type DimensionTreeFlags = 'DimensionNormal' | 'DimensionDate' | 'DimensionLinked' | null;
6314
- /**
6315
- * 度量树结构类型
6316
- * Normal: 正常层级结构
6317
- * Linked: 关联类型文件夹
6318
- */
6319
- export type MeasureTreeFlags = 'MeasureNormal' | 'MeasureLinked' | null;
6320
- /**
6321
- * 树节点类型
6322
- * folder: 文件夹
6323
- * hierarchy: 层级结构
6324
- * attribute: 普通节点
6325
- * dimensionGroup: 维度组
6326
- * measureGroup: 度量组
6327
- * lnglatGroup: 经纬度组
6328
- * */
6329
- export type TreeNodeTypes = 'folder' | 'hierarchy' | 'attribute' | 'dimensionGroup' | 'measureGroup' | 'lnglatGroup';
6330
- /** 占位符类型 */
6331
- export enum ParamStyleType {
6332
- /** 条件占位符 */
6333
- condition = "condition",
6334
- /** 值占位符 */
6335
- placeholder = "placeholder",
6336
- /** 表达式占位符 */
6337
- param = "param",
6338
- /** 加速占位符 */
6339
- accelerate = "accelerate"
6340
- }
6341
- /** 空值展示配置类型 */
6342
- export enum EmptyValueType {
6343
- /** 空值 */
6344
- EmptyValue = "EmptyValue",
6345
- /** 空字符串 */
6346
- EmptyString = "EmptyString"
6347
- }
6348
6253
  /** 空值展示配置枚举 */
6349
6254
  export enum EmptyValueDisplayType {
6350
6255
  /** 展示为'-' */
@@ -6358,24 +6263,31 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6358
6263
  /** 自定义 */
6359
6264
  Custom = "custom"
6360
6265
  }
6361
- export class EmptyStringOrNullDisplayConfig {
6362
- /** 展示类型 */
6363
- formatType: EmptyValueDisplayType;
6364
- /** 自定义展示内容 */
6365
- customFormat: string;
6366
- /** 是否是自动(继承数据集) */
6367
- isAuto?: boolean;
6266
+ export enum CustomAreaType {
6267
+ /** 自定义地理信息 */
6268
+ CUSTOM_AREA = "CUSTOM_AREA",
6269
+ /** 自定义瓦片底图 */
6270
+ CUSTOM_GIS = "CUSTOM_GIS",
6271
+ /** 自定义geojson */
6272
+ CUSTOM_GEOJSON = "CUSTOM_GEOJSON",
6273
+ /** 自定义层级 */
6274
+ CUSTOM_TREE = "CUSTOM_TREE",
6275
+ /** 自定义图片 */
6276
+ CUSTOM_PICTURE = "CUSTOM_PICTURE"
6368
6277
  }
6369
- /** 空值展示配置 */
6370
- export class EmptyValueDisplayConfig {
6371
- /** 空值展示配置 */
6372
- emptyValueConfig: EmptyStringOrNullDisplayConfig;
6373
- /** 空字符串展示配置 */
6374
- emptyStringConfig: EmptyStringOrNullDisplayConfig;
6375
- static getDefaultConfigForQuickReport(): EmptyValueDisplayConfig;
6376
- static convertAttrEmptyValueDisplayConfig(attr: FieldAttribute, isAuto?: boolean): EmptyValueDisplayConfig;
6377
- /** 根据fieldSettingMap中存储的配置转换成空值展示配置模型 */
6378
- static getConfigByFieldSettingMap(fieldSetting: any, defaultValue?: any): EmptyValueDisplayConfig;
6278
+ /** 自定义图片底图信息 */
6279
+ export enum PictureCoordinateType {
6280
+ /** 纵坐标 */
6281
+ HORIZONTAL = "CUSTOM_PICTURE_HORIZONTAL",
6282
+ /** 横坐标 */
6283
+ VERTICAL = "CUSTOM_PICTURE_VERTICAL"
6284
+ }
6285
+ /** 自定义地理信息 */
6286
+ export interface ExtraInfo {
6287
+ /** 自定义层级Id */
6288
+ customGeoLevel?: number;
6289
+ /** 自定义图片类型 */
6290
+ pictureCoordinateType?: PictureCoordinateType;
6379
6291
  }
6380
6292
  /** 字段属性 */
6381
6293
  export interface FieldAttribute {
@@ -6441,37 +6353,63 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6441
6353
  customAreaType?: CustomAreaType;
6442
6354
  /** 数据集属性额外信息 */
6443
6355
  extraInfo?: ExtraInfo;
6356
+ /** 逻辑表id */
6357
+ node?: string;
6358
+ /** 物理字段 */
6359
+ column?: string;
6444
6360
  }
6445
- /** 度量类型聚合方式 */
6446
- export enum Aggregator {
6447
- 'sum' = "sum",
6448
- 'count' = "count",
6449
- 'distinct-count' = "distinct-count",
6450
- 'max' = "max",
6451
- 'min' = "min",
6452
- 'avg' = "avg"
6453
- }
6454
- export class FilterAttr {
6455
- logicalOperator: 'and' | 'or';
6456
- /** 过滤值 */
6457
- filterElements: FilterElement[];
6458
- /** 嵌套过滤条件 */
6459
- filters: FilterAttr[];
6460
- beforeJoin?: boolean;
6461
- tableId?: string;
6462
- }
6463
- export interface FilterElement {
6464
- /** 过滤条件引用的字段uid */
6465
- resourceId: string;
6466
- /** 过滤条件比较运算符:> < =, 和查询控件所用保持一致 */
6467
- functionalOperator: string;
6468
- values: {
6469
- type?: 'absolute' | 'relative' | null;
6470
- value: string;
6471
- }[];
6472
- /** 前端是否隐藏掉 */
6473
- hidden?: boolean;
6361
+ /** 字段列表定义,包含维度、度量 */
6362
+ export interface Field {
6363
+ /** 唯一标识 */
6364
+ uniqueId: string;
6365
+ /** 字段名称 */
6366
+ caption: string;
6367
+ type: 'Dimension' | 'Measure';
6368
+ /** 标记数据面板上的字段、文件夹,和数据集原有的字段、文件夹区别开来 */
6369
+ fromPanel?: boolean;
6370
+ /** 老接口保留字段(计算字段expression中作为唯一标识使用),新数据跟uniqueId值相同 */
6371
+ name?: string;
6372
+ /** 引用表id */
6373
+ table: string;
6374
+ /** 逻辑表id */
6375
+ node: string;
6376
+ /** 物理字段 */
6377
+ column: string;
6378
+ /** 是否为衍生字段,分组字段和计算字段都为true */
6379
+ calculateMember: boolean;
6380
+ /** 字段描述,仅日期类型会使用 */
6381
+ comments?: string;
6382
+ /** 是否支持修改字段类型 */
6383
+ supportCastDataType?: boolean;
6384
+ attributes: FieldAttribute[];
6474
6385
  }
6386
+ export type AttributeMapValue = {
6387
+ attribute: FieldAttribute;
6388
+ type: 'Dimension' | 'Measure';
6389
+ };
6390
+ /**
6391
+ * 树节点类型
6392
+ * folder: 文件夹
6393
+ * hierarchy: 层级结构
6394
+ * attribute: 普通节点
6395
+ * dimensionGroup: 维度组
6396
+ * measureGroup: 度量组
6397
+ * lnglatGroup: 经纬度组
6398
+ * */
6399
+ export type TreeNodeTypes = 'folder' | 'hierarchy' | 'attribute' | 'dimensionGroup' | 'measureGroup' | 'lnglatGroup';
6400
+ /**
6401
+ * 维度树结构类型
6402
+ * Normal: 正常层级结构
6403
+ * Date: 日期类型层级结构
6404
+ * Linked: 关联类型文件夹
6405
+ */
6406
+ export type DimensionTreeFlags = 'DimensionNormal' | 'DimensionDate' | 'DimensionLinked' | null;
6407
+ /**
6408
+ * 度量树结构类型
6409
+ * Normal: 正常层级结构
6410
+ * Linked: 关联类型文件夹
6411
+ */
6412
+ export type MeasureTreeFlags = 'MeasureNormal' | 'MeasureLinked' | null;
6475
6413
  /** 普通字段 */
6476
6414
  export interface AttributeNode {
6477
6415
  /** 字段ID */
@@ -6482,6 +6420,8 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6482
6420
  fromPanel?: boolean;
6483
6421
  /** 节点名称,attribute类型为null */
6484
6422
  name?: null;
6423
+ /** 逻辑表id */
6424
+ node?: string;
6485
6425
  caption?: string;
6486
6426
  children?: (AttributeNode | FolderAndHierarchyNode)[];
6487
6427
  flag: null;
@@ -6498,6 +6438,8 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6498
6438
  fromPanel?: boolean;
6499
6439
  /** 节点名称 */
6500
6440
  name?: string;
6441
+ /** 逻辑表id */
6442
+ node?: string;
6501
6443
  /** 节点名称,attribute类型为null */
6502
6444
  caption?: string;
6503
6445
  /** 所引用的关联表的id,仅flag为DimensionLinked和MeasureLinked时存在 */
@@ -6506,14 +6448,61 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6506
6448
  /** 文件夹和层级结构类型 */
6507
6449
  flag: DimensionTreeFlags | MeasureTreeFlags;
6508
6450
  }
6509
- /**
6510
- * 日期占位符的类型(单个/范围)
6511
- */
6512
- export enum OriginDateType {
6513
- /** 单个日期 */
6514
- SingleDate = "singleDate",
6515
- /** 日期区间 */
6516
- DateRange = "dateRange"
6451
+ /** 数据集层级结构/文件夹/属性的嵌套关系 */
6452
+ export type FieldTree = AttributeNode | FolderAndHierarchyNode;
6453
+ export interface FilterElement {
6454
+ /** 过滤条件引用的字段uid */
6455
+ resourceId: string;
6456
+ /** 过滤条件比较运算符:> < =, 和查询控件所用保持一致 */
6457
+ functionalOperator: string;
6458
+ values: {
6459
+ type?: 'absolute' | 'relative' | null;
6460
+ value: string;
6461
+ }[];
6462
+ /** 前端是否隐藏掉 */
6463
+ hidden?: boolean;
6464
+ }
6465
+ /** 过滤条件 */
6466
+ export class FilterAttr {
6467
+ logicalOperator: 'and' | 'or';
6468
+ /** 过滤值 */
6469
+ filterElements: FilterElement[];
6470
+ /** 嵌套过滤条件 */
6471
+ filters: FilterAttr[];
6472
+ beforeJoin?: boolean;
6473
+ tableId?: string;
6474
+ }
6475
+ /** 占位符类型 */
6476
+ export enum ParamStyleType {
6477
+ /** 条件占位符 */
6478
+ condition = "condition",
6479
+ /** 值占位符 */
6480
+ placeholder = "placeholder",
6481
+ /** 表达式占位符 */
6482
+ param = "param",
6483
+ /** 加速占位符 */
6484
+ accelerate = "accelerate"
6485
+ }
6486
+ /** 占位符参数 */
6487
+ export enum ParamDataType {
6488
+ /** 文本 */
6489
+ string = "string",
6490
+ /** 数值 */
6491
+ number = "number",
6492
+ /** 日期 */
6493
+ dateTime = "datetime",
6494
+ /** 日期-年月日 */
6495
+ dateRegion = "dateRegion",
6496
+ /** 日期-年季 */
6497
+ quarterRegion = "quarterRegion",
6498
+ /** 日期-年月 */
6499
+ monthRegion = "monthRegion",
6500
+ /** 日期-年周 */
6501
+ weekRegion = "weekRegion",
6502
+ /** 日期-年 */
6503
+ yearRegion = "yearRegion",
6504
+ /** 日期-年月日时分秒 */
6505
+ ymdHmsRegion = "ymdHmsRegion"
6517
6506
  }
6518
6507
  export interface ParamType {
6519
6508
  /** sql参数id */
@@ -6543,34 +6532,333 @@ declare module '@quickbi/bi-types/cube/cube-model' {
6543
6532
  /** 默认值是否全局生效,true: 生效范围与过滤器一致。false: 默认值仅在数据集生效 */
6544
6533
  useInGlobal?: boolean;
6545
6534
  }
6546
- /** 占位符参数 */
6547
- export enum ParamDataType {
6548
- string = "string",
6549
- number = "number",
6550
- dateTime = "datetime",
6551
- dateRegion = "dateRegion",
6552
- quarterRegion = "quarterRegion",
6553
- monthRegion = "monthRegion",
6554
- weekRegion = "weekRegion",
6555
- yearRegion = "yearRegion",
6556
- ymdHmsRegion = "ymdHmsRegion"
6535
+ /** 数据集逻辑字段模型 */
6536
+ export class CubeSchema {
6537
+ /** 唯一标识,无业务逻辑,不要使用 */
6538
+ uniqueId: string;
6539
+ /** 数据集ID */
6540
+ cubeId: string;
6541
+ /** 数据源ID */
6542
+ datasourceId: string;
6543
+ /** 数据集名称 */
6544
+ caption: string;
6545
+ /** 字段列表 */
6546
+ fields: Field[];
6547
+ /** 普通字段、层系、文件夹树形结构 */
6548
+ fieldTree: FieldTree[];
6549
+ /** 过滤条件 */
6550
+ filter?: FilterAttr[];
6551
+ /** 全局参数 */
6552
+ params: ParamType[];
6553
+ /** 占位符 */
6554
+ sqlPlaceholders: ParamType[];
6557
6555
  }
6558
- /** 返回值cellset中的dimType */
6559
- export enum CellsetDimTypes {
6560
- StandardDimension = "StandardDimension",
6561
- StrDateTypeDimension = "StrDateTypeDimension",
6562
- StarDimension = "StarDimension",
6563
- GeographicDimension = "GeographicDimension",
6564
- /** 上面为维度字段,measureCol代表度量 */
6565
- measureCol = "measureCol"
6556
+ /** 数据集影子模型 */
6557
+ export type CubeShadow = CubeSchema;
6558
+ }
6559
+
6560
+ declare module '@quickbi/bi-types/cube/cube-blend' {
6561
+ /**
6562
+ * @author 雅影
6563
+ * @description 数据混合类型定义
6564
+ */
6565
+ import type { CubeLinkModel, CubeLinkJoinKeyModel } from '@quickbi/bi-types/cube/cube-links';
6566
+ /** 数据集之间关联的模型定义 */
6567
+ export interface CubeLink extends Omit<CubeLinkModel, 'joinKeys'> {
6568
+ joinKeys: Omit<CubeLinkJoinKeyModel, 'condition'>[];
6566
6569
  }
6567
- export class HintModal {
6568
- dsType: DsType;
6569
- head: `set`;
6570
- key: string;
6571
- connector: `=`;
6570
+ /** 数据集混合schema */
6571
+ export interface BlendSchema {
6572
+ /** 数据混合唯一id */
6573
+ uniqueId: string;
6574
+ /** 数据混合名称 */
6575
+ caption: string;
6576
+ /** 数据混合关联关系 */
6577
+ cubeLinks: CubeLink[];
6578
+ /** 标识是否存在字段id重复 */
6579
+ hasRepeatFid?: boolean;
6580
+ }
6581
+ /** 数据混合消费端模型定义 */
6582
+ export type CubeBlend = BlendSchema;
6583
+ }
6584
+
6585
+ declare module '@quickbi/bi-types/cube/cube-field-expression' {
6586
+ /**
6587
+ * @author 嘉念
6588
+ * @description 数据集字段表达式模型
6589
+ */
6590
+ export enum FieldExpressionType {
6591
+ /** 分组字段 */
6592
+ dataGroup = "dataGroup",
6593
+ /** 计算字段 */
6594
+ udf = "udf",
6595
+ /** lod字段 */
6596
+ system = "system",
6597
+ /** 工具栏字段(时间差字段、缺失值替换字段、新增别名字段、拆分列字段、合并字段) */
6598
+ tool = "tool"
6599
+ }
6600
+ /** 工具栏字段类型 */
6601
+ export enum ToolFieldType {
6602
+ /** 时间差字段 */
6603
+ DateDifference = "dateDifference",
6604
+ /** 缺失值替换字段 */
6605
+ MissingValueReplacement = "missingValueReplacement",
6606
+ /** 维度别名字段 */
6607
+ ValueReplacement = "valueReplacement",
6608
+ /** 拆分列字段 */
6609
+ SplitField = "SplitField",
6610
+ /** 合并字段 */
6611
+ MergeField = "mergeField"
6612
+ }
6613
+ /** 时间差字段配置 */
6614
+ export interface DateDiffFieldConfig {
6615
+ /** 开始字段 */
6616
+ firstField: string;
6617
+ /** 结束字段 */
6618
+ endField: string;
6619
+ /** 时间单位 */
6620
+ timeUnit: string;
6621
+ }
6622
+ /** 维值替换字段配置 */
6623
+ export interface ReplaceDimValueFieldConfig {
6624
+ /** 引用字段Id */
6625
+ refUniqueId: string;
6626
+ /** 替换维值列表 */
6627
+ replaceElementList: {
6628
+ /** 原始值 */
6629
+ originalValue: string;
6630
+ /** 替换值 */
6631
+ value: string;
6632
+ }[];
6633
+ }
6634
+ /** 缺失值替换字段配置 */
6635
+ export interface MissingValueReplaceFieldConfig {
6636
+ /** 引用字段Id */
6637
+ refUniqueId: string;
6638
+ /** 替换空值 */
6639
+ replaceNullValue: boolean;
6640
+ /** 替换空白值 */
6641
+ replaceBlankValue: boolean;
6642
+ /** 替换值 */
6572
6643
  value: string;
6573
- support: boolean;
6644
+ }
6645
+ /** 拆分列字段配置 */
6646
+ export interface SplitColumnFieldConfig {
6647
+ /** 引用字段Id */
6648
+ refUniqueId: string;
6649
+ /** 分隔符 */
6650
+ delimiter: string;
6651
+ /** 是否是第N列拆分字段 */
6652
+ firstN: boolean;
6653
+ /** 拆分字符数 */
6654
+ splitNumber: number;
6655
+ /** 拆分索引 */
6656
+ splitIndex: number;
6657
+ }
6658
+ /** 合并字段配置 */
6659
+ export interface MergeFieldsFieldConfig {
6660
+ /** 连接符 */
6661
+ delimiter: string;
6662
+ /** 合并字段id列表 */
6663
+ mergeElementList: string[];
6664
+ }
6665
+ export interface ToolFieldConfig {
6666
+ /** 唯一标识 */
6667
+ uniqueId: string;
6668
+ /** 字段名称 */
6669
+ caption: string;
6670
+ /** 工具栏类型 */
6671
+ toolType: ToolFieldType;
6672
+ /** 时间差字段配置 */
6673
+ dateDiffItem: DateDiffFieldConfig;
6674
+ /** 新增别名字段配置 */
6675
+ replaceItem: ReplaceDimValueFieldConfig;
6676
+ /** 缺失值替换字段配置 */
6677
+ missingReplaceItem: MissingValueReplaceFieldConfig;
6678
+ /** 拆分列字段配置 */
6679
+ splitItem: SplitColumnFieldConfig;
6680
+ /** 合并字段配置 */
6681
+ mergeItem: MergeFieldsFieldConfig;
6682
+ }
6683
+ /** 分组字段类型 */
6684
+ export enum GroupType {
6685
+ /** 日期类型-自定义区间分组 */
6686
+ NormalGroup = "NormalGroup",
6687
+ /** 枚举-列表分组类型 */
6688
+ ListGroup = "ListGroup",
6689
+ /** 数值-自定义分组类型 */
6690
+ CustomizedGroup = "CustomizedGroup"
6691
+ }
6692
+ /** 分组字段操作符 */
6693
+ export enum GroupOperator {
6694
+ /** 小于 */
6695
+ LessThan = "lessThan",
6696
+ /** 小于等于 */
6697
+ LessThanOrEqualTo = "lessThanOrEqualTo",
6698
+ /** 大于 */
6699
+ GreaterThan = "greaterThan",
6700
+ /** 大于等于 */
6701
+ GreaterThanOrEqualTo = "greaterThanOrEqualTo",
6702
+ /** 为空 */
6703
+ IsNull = "isNull",
6704
+ /** 介于 */
6705
+ Between = "between"
6706
+ }
6707
+ /** 数值-自定义分组类型 */
6708
+ export type CustomizedGroup = {
6709
+ /** 是否是默认分组字段 */
6710
+ groupName: string;
6711
+ defaultGroup: boolean;
6712
+ lower: string;
6713
+ upper: string;
6714
+ lowerOperator: GroupOperator.IsNull | GroupOperator.GreaterThan | GroupOperator.GreaterThanOrEqualTo;
6715
+ upperOperator: GroupOperator.LessThan | GroupOperator.LessThanOrEqualTo;
6716
+ groupNameType: any;
6717
+ };
6718
+ /** 枚举-列表分组类型 */
6719
+ export type ListGrouping = {
6720
+ groupName: string;
6721
+ groupElementList: string[];
6722
+ defaultGroup: boolean;
6723
+ };
6724
+ /** 日期类型-自定义区间分组 */
6725
+ export type NormalGroup = {
6726
+ groupName: string;
6727
+ defaultGroup: boolean;
6728
+ lower: string;
6729
+ upper: string;
6730
+ lowerOperator: GroupOperator.GreaterThanOrEqualTo;
6731
+ upperOperator: GroupOperator.LessThanOrEqualTo;
6732
+ };
6733
+ /** 分组字段 */
6734
+ export type Groups = CustomizedGroup[] | ListGrouping[] | NormalGroup[];
6735
+ export interface GroupFieldConfig {
6736
+ /** 唯一标识 */
6737
+ uniqueId: string;
6738
+ /** 分组名称 */
6739
+ caption: string;
6740
+ /** 分组类型 */
6741
+ groupType: GroupType;
6742
+ refUniqueId: string;
6743
+ /** qa中使用。qbi目前用不到 */
6744
+ refSql?: string;
6745
+ /** qa中使用。qbi目前用不到 */
6746
+ refFunction?: string;
6747
+ /** 数值类型分组字段 */
6748
+ customizedGroups?: CustomizedGroup[];
6749
+ /** 字符串类型分组字段 */
6750
+ listGroupings?: ListGrouping[];
6751
+ /** 日期类型分组字段 */
6752
+ normalGroups?: NormalGroup[];
6753
+ }
6754
+ /**
6755
+ * 原先计算字段、分组字段存储配置的模型,v6.0.2新增:时间差字段、缺失值替换字段、新增别名字段、拆分列字段、合并字段
6756
+ */
6757
+ export interface FieldExpressionModel {
6758
+ type: FieldExpressionType;
6759
+ value?: string;
6760
+ /** 分组字段配置 */
6761
+ dataGroup: GroupFieldConfig;
6762
+ /** 工具栏字段配置 */
6763
+ tool?: ToolFieldConfig;
6764
+ }
6765
+ }
6766
+
6767
+ declare module '@quickbi/bi-types/cube/cube-links' {
6768
+ /**
6769
+ * @author 雅影
6770
+ * @description 数据集关联模型类型定义
6771
+ */
6772
+ import type { TableJoinType } from '@quickbi/bi-types/cube/physical-schema';
6773
+ export enum JoinCondition {
6774
+ /** 等于 */
6775
+ EQUAL_TO = "equal-to",
6776
+ /** 不等于 */
6777
+ UNEQUAL_TO = "unequal-to",
6778
+ /** 大于 */
6779
+ GREATER_THAN = "greater-than",
6780
+ /** 大于等于 */
6781
+ GREATER_THAN_OR_EQUAL_TO = "greater-than-or-equal-to",
6782
+ /** 小于 */
6783
+ LESS_THAN = "less-than",
6784
+ /** 小于等于 */
6785
+ LESS_THAN_OR_EQUAL_TO = "less-than-or-equal-to"
6786
+ }
6787
+ /** 基数 */
6788
+ export enum TableRelation {
6789
+ /** 一对一 */
6790
+ ONE_TO_ONE = "one-to-one",
6791
+ /** 多对多 */
6792
+ MANY_TO_MANY = "many-to-many",
6793
+ /** 一对多 */
6794
+ ONE_TO_MANY = "one-to-many",
6795
+ /** 多对一 */
6796
+ MANY_TO_ONE = "many-to-one"
6797
+ }
6798
+ /** 引用完整性 */
6799
+ export enum ReferentialIntegrity {
6800
+ /** 全部对全部 */
6801
+ ALL_TO_ALL = "all-to-all",
6802
+ /** 全部对部分 */
6803
+ ALL_TO_SOME = "all-to-some",
6804
+ /** 部分对全部 */
6805
+ SOME_TO_ALL = "some-to-all",
6806
+ /** 部分对部分 */
6807
+ SOME_TO_SOME = "some-to-some"
6808
+ }
6809
+ /**
6810
+ * 关联字段
6811
+ * 数据混合blend和数据集物理表关联physical均使用该字段
6812
+ */
6813
+ export type CubeLinkJoinKeyModel = {
6814
+ /** 源表字段(blend模式为数据集字段id,physical模式为物理字段名) */
6815
+ sourceKey: string;
6816
+ /**
6817
+ * @deprecated
6818
+ * 源表关联物理字段类型(QBI目前没在用,保留)
6819
+ */
6820
+ sourceType?: string;
6821
+ /** 目标表字段(blend模式为数据集字段id,physical模式为物理字段名) */
6822
+ targetKey: string;
6823
+ /**
6824
+ * @deprecated
6825
+ * 标表关联物理字段类型(QBI目前没在用,保留)
6826
+ */
6827
+ targetType?: string;
6828
+ /**
6829
+ * 条件
6830
+ */
6831
+ condition: JoinCondition;
6832
+ /**
6833
+ * 目前仅physical模式使用
6834
+ */
6835
+ targetCalculateMember?: boolean;
6836
+ /**
6837
+ * 目前仅physical模式使用
6838
+ */
6839
+ sourceCalculateMember?: boolean;
6840
+ };
6841
+ export interface CubeLinkModel {
6842
+ /** 源表id(blend模式为数据集id,physical模式为物理表id) */
6843
+ source: string;
6844
+ /** 关联表id(blend模式为数据集id,physical模式为物理表id) */
6845
+ target: string;
6846
+ /** 关联类型 */
6847
+ joinType: TableJoinType;
6848
+ /** 关联字段 */
6849
+ joinKeys: CubeLinkJoinKeyModel[];
6850
+ /** 基数 物理表关联目前只有many-to-one */
6851
+ relation?: TableRelation;
6852
+ /** 引用完整性 */
6853
+ match?: ReferentialIntegrity;
6854
+ /**
6855
+ * 是否为自动生成的关联键(未经用户确认)
6856
+ * 前端临时字段,用于标记自动匹配的关联键
6857
+ * - true: 系统自动匹配生成,需要弹窗让用户确认
6858
+ * - false/undefined: 用户已确认,或手动创建的
6859
+ * 注意:此字段不应该发送到后端,仅在前端逻辑中使用
6860
+ */
6861
+ isAutoGenerated?: boolean;
6574
6862
  }
6575
6863
  }
6576
6864
 
@@ -6865,7 +7153,9 @@ declare module '@quickbi/bi-types/cube/data-source' {
6865
7153
  /** 端口号为8242 此后所有注释 皆为表明 变量代表的端口号码 */
6866
7154
  eight_two_four_two = "8242",
6867
7155
  three_three_zero_six_zero = "33060",
6868
- three_zero_zero_six_zero = "30060"
7156
+ three_zero_zero_six_zero = "30060",
7157
+ three_three_zero_six = "33306",
7158
+ one_zero_zero_zero_zero = "10000"
6869
7159
  }
6870
7160
  /** 数据源 - 根据类型 - 排序 */
6871
7161
  export enum DataSourceSort {
@@ -6905,50 +7195,43 @@ declare module '@quickbi/bi-types/cube/data-source' {
6905
7195
  export const SHEET_TABLE: DsType[];
6906
7196
  }
6907
7197
 
6908
- declare module '@quickbi/bi-types/cube/cube-links' {
7198
+ declare module '@quickbi/bi-types/cube/logical-schema' {
6909
7199
  /**
6910
- * @author 雅影
6911
- * @description 数据集关联模型类型定义
7200
+ * @author 嘉念
7201
+ * @description 数据集逻辑模型
6912
7202
  */
6913
- import type { TableJoinType, JoinCondition, TableRelation } from '@quickbi/bi-types/cube/cube-model';
6914
- /** 数据集字段关联模型 */
6915
- export interface CubeLinkJoinKeyModel {
6916
- /** 关联条件 */
6917
- condition: JoinCondition;
6918
- /** 关联字段名称 */
6919
- sourceKey: string;
6920
- /** 目标字段名称 */
6921
- targetKey: string;
6922
- }
6923
- /** 数据集关联模型 */
6924
- export interface CubeLinkModel {
6925
- /** 来源id */
6926
- sourceId: string;
6927
- /** 目标id */
6928
- targetId: string;
6929
- /** 来源类型 */
6930
- sourceType: 'TABLE' | 'FILE';
6931
- /** 目标类型 */
6932
- targetType: 'TABLE' | 'FILE';
6933
- /** 来源表名称 */
6934
- sourceTableName: string;
6935
- /** 目标表名称 */
6936
- targetTableName: string;
6937
- /** 关联类型 */
6938
- joinType: TableJoinType;
6939
- /** 关联key */
6940
- joinKeys: CubeLinkJoinKeyModel[];
6941
- /** 关联关系 */
6942
- relation: TableRelation;
7203
+ import type { CubeLinkModel } from '@quickbi/bi-types/cube/cube-links';
7204
+ import type { PhysicalSchema } from '@quickbi/bi-types/cube/physical-schema';
7205
+ /** 逻辑表模型 */
7206
+ export class LogicalTable {
7207
+ /** 节点唯一id */
7208
+ uniqueId: string;
7209
+ /** 节点名称 */
7210
+ caption: string;
7211
+ /** 物理表模型 */
7212
+ physicalSchema: PhysicalSchema;
7213
+ }
7214
+ export class LogicalTree {
7215
+ uniqueId: string;
7216
+ /** 描述了逻辑节点的边关系 只维护引用的节点id */
7217
+ links: CubeLinkModel[];
7218
+ }
7219
+ export class LogicalSchema {
7220
+ /** 数据集逻辑节点列表 */
7221
+ logicalNodes: LogicalTable[];
7222
+ /** 数据集逻辑树列表 */
7223
+ logicalTrees: LogicalTree[];
6943
7224
  }
6944
7225
  }
6945
7226
 
6946
- declare module '@quickbi/bi-types/cube/table-schema' {
7227
+ declare module '@quickbi/bi-types/cube/physical-schema' {
6947
7228
  /**
6948
- * @author 雅影
6949
- * @description 物理表模型
7229
+ * @author 嘉念
7230
+ * @description 数据集表模型
6950
7231
  */
6951
- import type { DataType, DateGranularity, RegionGranularity, SecondDataType } from '@quickbi/bi-types/cube/cube-model';
7232
+ import type { CubeLinkModel } from '@quickbi/bi-types/cube/cube-links';
7233
+ import type { DataType, DateGranularity, RegionGranularity, SecondDataType } from '@quickbi/bi-types/cube/cube-schema';
7234
+ import type { DsType } from '@quickbi/bi-types/cube/data-source';
6952
7235
  /** 物理表字段模型 */
6953
7236
  export interface TableField {
6954
7237
  /** 物理字段备注 */
@@ -6972,7 +7255,7 @@ declare module '@quickbi/bi-types/cube/table-schema' {
6972
7255
  /** 支持修改字段类型 */
6973
7256
  supportCastDataType?: boolean | null;
6974
7257
  }
6975
- /** 物理表模型 */
7258
+ /** 物理表详情接口模型 */
6976
7259
  export interface TableSchema {
6977
7260
  /** 数据源id */
6978
7261
  datasourceId?: string;
@@ -6993,210 +7276,112 @@ declare module '@quickbi/bi-types/cube/table-schema' {
6993
7276
  /** 表类型 上传文件为file */
6994
7277
  tableType?: string;
6995
7278
  }
6996
- }
6997
-
6998
- declare module '@quickbi/bi-types/cube/cube-field-expression' {
6999
- /**
7000
- * @author 嘉念
7001
- * @description 数据集字段表达式模型
7002
- */
7003
- export enum FieldExpressionType {
7004
- /** 分组字段 */
7005
- dataGroup = "dataGroup",
7006
- /** 计算字段 */
7007
- udf = "udf",
7008
- /** lod字段 */
7009
- system = "system",
7010
- /** 工具栏字段(时间差字段、缺失值替换字段、新增别名字段、拆分列字段、合并字段) */
7011
- tool = "tool"
7012
- }
7013
- /** 工具栏字段类型 */
7014
- export enum ToolFieldType {
7015
- /** 时间差字段 */
7016
- DateDifference = "dateDifference",
7017
- /** 缺失值替换字段 */
7018
- MissingValueReplacement = "missingValueReplacement",
7019
- /** 维度别名字段 */
7020
- ValueReplacement = "valueReplacement",
7021
- /** 拆分列字段 */
7022
- SplitField = "SplitField",
7023
- /** 合并字段 */
7024
- MergeField = "mergeField"
7025
- }
7026
- /** 时间差字段配置 */
7027
- export interface DateDiffFieldConfig {
7028
- /** 开始字段 */
7029
- firstField: string;
7030
- /** 结束字段 */
7031
- endField: string;
7032
- /** 时间单位 */
7033
- timeUnit: string;
7034
- }
7035
- /** 维值替换字段配置 */
7036
- export interface ReplaceDimValueFieldConfig {
7037
- /** 引用字段Id */
7038
- refUniqueId: string;
7039
- /** 替换维值列表 */
7040
- replaceElementList: {
7041
- /** 原始值 */
7042
- originalValue: string;
7043
- /** 替换值 */
7044
- value: string;
7045
- }[];
7046
- }
7047
- /** 缺失值替换字段配置 */
7048
- export interface MissingValueReplaceFieldConfig {
7049
- /** 引用字段Id */
7050
- refUniqueId: string;
7051
- /** 替换空值 */
7052
- replaceNullValue: boolean;
7053
- /** 替换空白值 */
7054
- replaceBlankValue: boolean;
7055
- /** 替换值 */
7056
- value: string;
7057
- }
7058
- /** 拆分列字段配置 */
7059
- export interface SplitColumnFieldConfig {
7060
- /** 引用字段Id */
7061
- refUniqueId: string;
7062
- /** 分隔符 */
7063
- delimiter: string;
7064
- /** 是否是第N列拆分字段 */
7065
- firstN: boolean;
7066
- /** 拆分字符数 */
7067
- splitNumber: number;
7068
- /** 拆分索引 */
7069
- splitIndex: number;
7070
- }
7071
- /** 合并字段配置 */
7072
- export interface MergeFieldsFieldConfig {
7073
- /** 连接符 */
7074
- delimiter: string;
7075
- /** 合并字段id列表 */
7076
- mergeElementList: string[];
7279
+ /** 表关联类型 */
7280
+ export enum TableJoinType {
7281
+ /** 左关联 */
7282
+ LEFT_OUTER_JOIN = "LEFT_OUTER_JOIN",
7283
+ /** 内关联 */
7284
+ INNER_JOIN = "INNER_JOIN",
7285
+ /** 右关联 */
7286
+ RIGHT_OUTER_JOIN = "RIGHT_OUTER_JOIN",
7287
+ /** 全关联 */
7288
+ FULL_OUTER_JOIN = "FULL_OUTER_JOIN",
7289
+ JOIN_ERROR = "JOIN_ERROR"
7077
7290
  }
7078
- export interface ToolFieldConfig {
7079
- /** 唯一标识 */
7080
- uniqueId: string;
7081
- /** 字段名称 */
7082
- caption: string;
7083
- /** 工具栏类型 */
7084
- toolType: ToolFieldType;
7085
- /** 时间差字段配置 */
7086
- dateDiffItem: DateDiffFieldConfig;
7087
- /** 新增别名字段配置 */
7088
- replaceItem: ReplaceDimValueFieldConfig;
7089
- /** 缺失值替换字段配置 */
7090
- missingReplaceItem: MissingValueReplaceFieldConfig;
7091
- /** 拆分列字段配置 */
7092
- splitItem: SplitColumnFieldConfig;
7093
- /** 合并字段配置 */
7094
- mergeItem: MergeFieldsFieldConfig;
7291
+ /** 物理表类型 */
7292
+ export enum PhysicalTableType {
7293
+ /** 物理表 */
7294
+ Table = "table",
7295
+ /** 自定义SQL */
7296
+ Sql = "sql",
7297
+ /** 上传文件(探索空间 & 数据库)、API数据源、文档数据源 */
7298
+ File = "file"
7095
7299
  }
7096
- /** 分组字段类型 */
7097
- export enum GroupType {
7098
- /** 日期类型-自定义区间分组 */
7099
- NormalGroup = "NormalGroup",
7100
- /** 枚举-列表分组类型 */
7101
- ListGroup = "ListGroup",
7102
- /** 数值-自定义分组类型 */
7103
- CustomizedGroup = "CustomizedGroup"
7300
+ /** 物理表模型 */
7301
+ export interface PhysicalTable {
7302
+ /** 唯一标识 */
7303
+ uniqueId: string;
7304
+ /** 表展示名称 */
7305
+ caption?: string;
7306
+ /** 表id */
7307
+ tableName: string;
7308
+ /** 物理表所属数据源ID */
7309
+ datasourceId: string;
7310
+ /** 是否为事实表(中心表标识) */
7311
+ factTable: boolean;
7312
+ /** 数据源类型 */
7313
+ dsType: DsType;
7314
+ /** 表类型(不落库,每次获取cubeSchema模型时后端实时查询返回) */
7315
+ tableType?: PhysicalTableType;
7316
+ }
7317
+ /** 自定义SQL虚拟表模型 */
7318
+ export interface VirtualTable {
7319
+ /** 唯一标识 */
7320
+ uniqueId: string;
7321
+ /** 表展示名称 */
7322
+ caption: string;
7323
+ /** 表名 */
7324
+ tableName: string;
7325
+ /** 物理表所属数据源ID */
7326
+ datasourceId: string;
7327
+ /** 是否为事实表(中心表标识) */
7328
+ factTable: boolean;
7329
+ dsType: DsType;
7330
+ sqlId: string;
7331
+ sql: string;
7332
+ /** 表类型(不落库,每次获取cubeSchema模型时后端实时查询返回) */
7333
+ tableType?: PhysicalTableType;
7104
7334
  }
7105
- /** 分组字段操作符 */
7106
- export enum GroupOperator {
7107
- /** 小于 */
7108
- LessThan = "lessThan",
7109
- /** 小于等于 */
7110
- LessThanOrEqualTo = "lessThanOrEqualTo",
7111
- /** 大于 */
7112
- GreaterThan = "greaterThan",
7113
- /** 大于等于 */
7114
- GreaterThanOrEqualTo = "greaterThanOrEqualTo",
7115
- /** 为空 */
7116
- IsNull = "isNull"
7335
+ /** 合并字段来源表信息 */
7336
+ export interface UnionTableColumnModel {
7337
+ /** 来源表id */
7338
+ table: string;
7339
+ /** 来源字段物理字段名(表名称列不传) */
7340
+ column?: string;
7341
+ /** 来源表的名称(表名称列需要传) */
7342
+ value?: string;
7117
7343
  }
7118
- /** 数值-自定义分组类型 */
7119
- export type CustomizedGroup = {
7120
- /** 是否是默认分组字段 */
7121
- groupName: string;
7122
- defaultGroup: boolean;
7123
- lower: string;
7124
- upper: string;
7125
- lowerOperator: GroupOperator.IsNull | GroupOperator.GreaterThan | GroupOperator.GreaterThanOrEqualTo;
7126
- upperOperator: GroupOperator.LessThan | GroupOperator.LessThanOrEqualTo;
7127
- groupNameType: any;
7128
- };
7129
- /** 枚举-列表分组类型 */
7130
- export type ListGrouping = {
7131
- groupName: string;
7132
- groupElementList: string[];
7133
- defaultGroup: boolean;
7134
- };
7135
- /** 日期类型-自定义区间分组 */
7136
- export type NormalGroup = {
7137
- groupName: string;
7138
- defaultGroup: boolean;
7139
- lower: string;
7140
- upper: string;
7141
- lowerOperator: GroupOperator.GreaterThanOrEqualTo;
7142
- upperOperator: GroupOperator.LessThanOrEqualTo;
7143
- };
7144
- /** 分组字段 */
7145
- export type Groups = CustomizedGroup[] | ListGrouping[] | NormalGroup[];
7146
- export interface GroupFieldConfig {
7147
- /** 唯一标识 */
7148
- uniqueId: string;
7149
- /** 分组名称 */
7150
- caption: string;
7151
- /** 分组类型 */
7152
- groupType: GroupType;
7153
- refUniqueId: string;
7154
- /** qa中使用。qbi目前用不到 */
7155
- refSql?: string;
7156
- /** qa中使用。qbi目前用不到 */
7157
- refFunction?: string;
7158
- /** 数值类型分组字段 */
7159
- customizedGroups?: CustomizedGroup[];
7160
- /** 字符串类型分组字段 */
7161
- listGroupings?: ListGrouping[];
7162
- /** 日期类型分组字段 */
7163
- normalGroups?: NormalGroup[];
7344
+ /** 合并字段 */
7345
+ export interface UnionColumn {
7346
+ /** 合并后的字段名 */
7347
+ column: string;
7348
+ /** 备注 */
7349
+ caption: string;
7350
+ /** 合并字段的来源表字段信息 */
7351
+ tableColumns: UnionTableColumnModel[];
7352
+ /** 非源表字段,自动生成的表名称列 */
7353
+ isAuto?: boolean;
7164
7354
  }
7165
- /**
7166
- * 原先计算字段、分组字段存储配置的模型,v6.0.2新增:时间差字段、缺失值替换字段、新增别名字段、拆分列字段、合并字段
7167
- */
7168
- export interface FieldExpressionModel {
7169
- type: FieldExpressionType;
7170
- value?: string;
7171
- /** 分组字段配置 */
7172
- dataGroup: GroupFieldConfig;
7173
- /** 工具栏字段配置 */
7174
- tool?: ToolFieldConfig;
7355
+ /** 合并表模型 */
7356
+ export interface UnionTable extends PhysicalTable {
7357
+ /** 物理表 */
7358
+ tables: PhysicalTable[];
7359
+ /** 自定义sql、view */
7360
+ virtualTables: VirtualTable[];
7361
+ /** 合并字段信息 */
7362
+ unionColumns: UnionColumn[];
7175
7363
  }
7176
- }
7177
-
7178
- declare module '@quickbi/bi-types/cube/cube-blend' {
7179
- /**
7180
- * @author 雅影
7181
- * @description 数据混合类型定义
7182
- */
7183
- import type { Link, JoinKey } from '@quickbi/bi-types/cube/cube-model';
7184
- /** 数据集之间关联的模型定义 */
7185
- export interface CubeLink extends Omit<Link, 'joinKeys'> {
7186
- joinKeys: Omit<JoinKey, 'condition'>[];
7364
+ export class HintModal {
7365
+ dsType: DsType;
7366
+ head: `set`;
7367
+ key: string;
7368
+ connector: `=`;
7369
+ value: string;
7370
+ support: boolean;
7187
7371
  }
7188
- /** 数据集混合schema */
7189
- export interface BlendSchema {
7190
- /** 数据混合唯一id */
7191
- uniqueId: string;
7192
- /** 数据混合名称 */
7193
- caption: string;
7194
- /** 数据混合关联关系 */
7195
- cubeLinks: CubeLink[];
7196
- /** 标识是否存在字段id重复 */
7197
- hasRepeatFid?: boolean;
7372
+ export class PhysicalSchema {
7373
+ /** 物理表 */
7374
+ tables: PhysicalTable[];
7375
+ /** 自定义sql、view */
7376
+ virtualTables: VirtualTable[];
7377
+ /** union合并表 */
7378
+ unionTables: UnionTable[];
7379
+ /** 表关联关系 */
7380
+ links: CubeLinkModel[];
7381
+ /** odps表是否开启全表扫描 */
7382
+ sqlHintTypes?: string[];
7383
+ /** 主逻辑表下才有 */
7384
+ sqlHints?: HintModal[];
7198
7385
  }
7199
- /** 数据混合消费端模型定义 */
7200
- export type CubeBlend = BlendSchema;
7201
7386
  }
7202
7387