瀏覽代碼

fix(report): 修改报表模块ts,去除驼峰验证

lishihao 5 年之前
父節點
當前提交
903c1864f0

+ 4 - 4
report/src/core/jpc_ex.ts

@@ -17,10 +17,10 @@ import { IDefProperties, IFormula, IParams, ICurrent_RPT, ICurrent_DATA, ICustom
 import { IFlowTabClass, IBillTabClass, ICostTabClass } from '../interface/classType';
 
 class JpcExClass {
-    flowTab: IFlowTabClass = new IFlowTabClass;
-    flowTabEx: IFlowTabClass = new IFlowTabClass;
-    billTab: IBillTabClass = new IBillTabClass;
-    crossTab: ICostTabClass = new ICostTabClass;
+    flowTab!: IFlowTabClass;
+    flowTabEx!: IFlowTabClass;
+    billTab!: IBillTabClass;
+    crossTab!: ICostTabClass;
     isFollowMode: boolean = false;
     totalPages: number = 0;
     exTotalPages: number = 0;

+ 1 - 1
report/src/core/jpc_rte.ts

@@ -1,7 +1,7 @@
 /**
  * Created by Tony on 2016/12/28.
  */
-'use strict';
+
 
 import strUtil from '../public/stringUtil';
 import scMathUtil from '../public/scMathUtil';

+ 72 - 29
report/src/core/jpc_value_define.ts

@@ -1,5 +1,3 @@
-'use strict';
-
 const VAL_DEF = {
     NODE_CROSS_INFO: '交叉表_信息',
     NODE_CROSS_ROW: '交叉行',
@@ -23,14 +21,14 @@ const VAL_DEF = {
     NODE_EVENTS: '事件_集合',
     NODE_DISCRETE_INFO: '离散信息',
     NODE_BILL_INFO: '账单式表_信息',
-    NODE_BILL_CONTENT : '账单式表_数据',
+    NODE_BILL_CONTENT: '账单式表_数据',
     NODE_FLOW_INFO: '流水式表_信息',
     NODE_FLOW_INFO_EX: '流水式表_拓展信息',
     NODE_FLOW_GROUP: '流水式表_分组信息',
     NODE_FLOW_SEG_SUM: '流水式表_段统计信息',
     NODE_FLOW_PAGE_SUM: '流水式表_页统计信息',
-    NODE_FLOW_COLUMN : '流水式表_列',
-    NODE_FLOW_CONTENT : '流水式表_数据',
+    NODE_FLOW_COLUMN: '流水式表_列',
+    NODE_FLOW_CONTENT: '流水式表_数据',
     PROP_MULTI_COLUMN: '多列显示数量',
     PROP_FLOW_EX_DISPLAY_MODE: '流水拓展显示模式',
     DISPLAY_MODE_INDEPENDENT: '单独模式',
@@ -136,8 +134,8 @@ const VAL_DEF = {
     PROP_BILL_FIELDS: 'bill_field_s',
     PROP_CROSS_FIELDS: 'cross_field_s',
     PROP_CROSS_DISPLAY_ORDER: 'cross_display_order',
-    PROP_GROUP_FIELDS: 'group_field_s', //用来分组的指标(如按清单、定额etc...)
-    PROP_GROUP_LINES: 'group_lines',    //显示分组行,因分组的特殊性,分组的数据当成流水数据一样(行高相同),group_lines里的每一条数据占用流水的一整行,里面再细分(指标/text)
+    PROP_GROUP_FIELDS: 'group_field_s', // 用来分组的指标(如按清单、定额etc...)
+    PROP_GROUP_LINES: 'group_lines', // 显示分组行,因分组的特殊性,分组的数据当成流水数据一样(行高相同),group_lines里的每一条数据占用流水的一整行,里面再细分(指标/text)
     PROP_GROUP_SUM_KEYS: 'SumKey_S',
     PROP_SUM_KEY: 'SumKey',
     PROP_SUM_FIELDS: 'sum_field_s',
@@ -175,9 +173,9 @@ const VAL_DEF = {
     BAND_PROP_SUB_BANDS: 'band_s',
 
     MEASUREMENT: {
-        PIXEL:['像素点', '象素点', 'PIXEL'],
+        PIXEL: ['像素点', '象素点', 'PIXEL'],
         CM: ['厘米', 'CM'],
-        INCH: ['英寸','INCH']
+        INCH: ['英寸', 'INCH'],
     },
 
     PROP_IS_ID: 'isID',
@@ -211,9 +209,27 @@ const VAL_DEF = {
 
     RUN_TYPE_BEFORE_GROUP_TEXT_OUT: 'before_group_text_output',
 
-    PAGE_STATUS: ['EveryPage','FirstPage', 'LastPage', 'SegmentStart', 'SegmentEnd', 'Group', 'CrossRowEnd', 'CrossColEnd'],
-
-    CONTROL_PROPS: ['Shrink', 'ShowZero', 'Horizon', 'Vertical', 'Wrap', 'VerticalForExcel', 'ShrinkFirst', 'CloseOutput'],
+    PAGE_STATUS: [
+        'EveryPage',
+        'FirstPage',
+        'LastPage',
+        'SegmentStart',
+        'SegmentEnd',
+        'Group',
+        'CrossRowEnd',
+        'CrossColEnd',
+    ],
+
+    CONTROL_PROPS: [
+        'Shrink',
+        'ShowZero',
+        'Horizon',
+        'Vertical',
+        'Wrap',
+        'VerticalForExcel',
+        'ShrinkFirst',
+        'CloseOutput',
+    ],
     CONTROL_PROP_IDX_SHRINK: 0,
     CONTROL_PROP_IDX_SHOW_ZERO: 1,
     CONTROL_PROP_IDX_HORIZON: 2,
@@ -226,7 +242,16 @@ const VAL_DEF = {
     PROP_LINE_WEIGHT: 'LineWeight',
     PROP_DASH_STYLE: 'DashStyle',
     PROP_COLOR: 'Color',
-    FONT_PROPS: ['Name', 'FontHeight', 'FontColor', 'FontBold', 'FontItalic', 'FontUnderline', 'FontStrikeOut', 'FontAngle'],
+    FONT_PROPS: [
+        'Name',
+        'FontHeight',
+        'FontColor',
+        'FontBold',
+        'FontItalic',
+        'FontUnderline',
+        'FontStrikeOut',
+        'FontAngle',
+    ],
     FONT_PROP_IDX_NAME: 0,
     FONT_PROP_IDX_HEIGHT: 1,
     FONT_PROP_IDX_COLOR: 2,
@@ -245,7 +270,7 @@ const VAL_DEF = {
     STATUS_CROSS_ROW_END: 6,
     STATUS_CROSS_COL_END: 7,
 
-    LAYOUT: ['Top','Bottom', 'Left', 'Right', 'Fulfill'],
+    LAYOUT: ['Top', 'Bottom', 'Left', 'Right', 'Fulfill'],
     LAYOUT_TOP: 0,
     LAYOUT_BOTTOM: 1,
     LAYOUT_LEFT: 2,
@@ -254,16 +279,16 @@ const VAL_DEF = {
 
     OUTPUT_ALIGN: {
         H: ['left', 'center', 'right'],
-        V: ['top', 'center', 'bottom']
+        V: ['top', 'center', 'bottom'],
     },
-    H_ALIGN_IDX_LEFT : 0,
-    H_ALIGN_IDX_CENTER : 1,
-    H_ALIGN_IDX_RIGHT : 2,
-    V_ALIGN_IDX_TOP : 0,
-    V_ALIGN_IDX_CENTER : 1,
-    V_ALIGN_IDX_BOTTOM : 2,
-
-    CAL_TYPE:['percentage','abstract'],
+    H_ALIGN_IDX_LEFT: 0,
+    H_ALIGN_IDX_CENTER: 1,
+    H_ALIGN_IDX_RIGHT: 2,
+    V_ALIGN_IDX_TOP: 0,
+    V_ALIGN_IDX_CENTER: 1,
+    V_ALIGN_IDX_BOTTOM: 2,
+
+    CAL_TYPE: ['percentage', 'abstract'],
     CAL_TYPE_PERCENTAGE: 0,
     CAL_TYPE_ABSTRACT: 1,
 
@@ -287,7 +312,7 @@ const VAL_DEF = {
     SIZE_16K: [7.75, 10.75],
     SIZE_EXECUTIVE: [7.25, 10.5],
 
-    OUTPUT_OFFSET: [2,2,1,3],
+    OUTPUT_OFFSET: [2, 2, 1, 3],
     OFFSET_IDX_LEFT: 0,
     OFFSET_IDX_RIGHT: 1,
     OFFSET_IDX_TOP: 2,
@@ -314,18 +339,36 @@ const VAL_DEF = {
     PAGE_SELF_DEFINE: '自定义',
     PAGE_SPECIAL_MERGE_POS: 'page_merge_pos',
 
-    PAGES_SIZE_STR: ['A3', 'A4', 'A5', 'B5', 'LETTER', 'LEGAL', 'EXECUTIVE', '16K'],
+    PAGES_SIZE_STR: [
+        'A3',
+        'A4',
+        'A5',
+        'B5',
+        'LETTER',
+        'LEGAL',
+        'EXECUTIVE',
+        '16K',
+    ],
     PAGES_SIZE_IDX: [8, 9, 11, 13, 1, 5, 7, 93],
-    PAGES_SIZE: [[11.69, 16.54], [8.27, 11.69], [5.83, 8.27], [6.93, 9.84], [8.5, 11.0], [8.5, 14.0], [7.25, 10.5], [7.25, 10.5]],
-
-    HUNDRED_PERCENT : 100.0,
+    PAGES_SIZE: [
+        [11.69, 16.54],
+        [8.27, 11.69],
+        [5.83, 8.27],
+        [6.93, 9.84],
+        [8.5, 11.0],
+        [8.5, 14.0],
+        [7.25, 10.5],
+        [7.25, 10.5],
+    ],
+
+    HUNDRED_PERCENT: 100.0,
 
     VERTICAL_ANGLE: '90',
     ANTI_VERTICAL_ANGLE: '-90',
     VERTICAL_ANGLE_INT: 90,
     ANTI_VERTICAL_ANGLE_INT: -90,
 
-    LAST_DEF: ''
+    LAST_DEF: '',
 };
 
 export default VAL_DEF;

文件差異過大導致無法顯示
+ 766 - 396
report/src/excel_util/rpt_excel_util.ts


+ 151 - 103
report/src/interface/basic.ts

@@ -1,5 +1,7 @@
-import { IFlowTabClass, IBillTabClass, ICostTabClass } from './classType';
-import { IDataObj_props, IEvent_type } from './enum'
+// import { IFlowTabClass, IBillTabClass, ICostTabClass } from './classType';
+// eslint-disable-next-line camelcase
+import { IDataObj_props, IEvent_type } from './enum';
+
 export interface IArea {
     Left: number;
     Right: number;
@@ -18,6 +20,17 @@ export interface IArea {
         Bottom: string;
     };
 }
+export interface IControlSubCollection {
+    ID: string;
+    CloseOutput: string;
+    Horizon: string;
+    ShowZero: string;
+    Shrink: string;
+    ShrinkFirst: string;
+    Vertical: string;
+    VerticalForExcel: string;
+    Wrap: string;
+}
 export interface Fields {
     area: IArea;
     control: string | IControlSubCollection;
@@ -25,11 +38,11 @@ export interface Fields {
     font: string;
     isAutoHeight: boolean;
     style: string;
-    Hidden?: boolean;//暂定
-    isSerial: boolean;//暂定
+    Hidden?: boolean; // 暂定
+    isSerial: boolean; // 暂定
     Format: string;
     SumKey: string;
-    combineType?: string
+    combineType?: string;
     isMerge?: boolean;
     Default_Value?: string;
     Label: string;
@@ -42,7 +55,6 @@ export interface IFormula {
     format: string;
     Name: string;
     run_type: string;
-
 }
 
 export interface BorderStyle {
@@ -52,33 +64,19 @@ export interface BorderStyle {
     Color: string;
 }
 
-
 export interface IStyles {
     ID: string;
     CfgDispName: string;
-    border_style: BorderStyle[]
+    border_style: BorderStyle[];
     // [key: string]: any; // 剩下的之后补充
 }
 
-
 export interface IDefProperties {
     ctrls: IControlSubCollection[];
     fonts: IFontSubCollection[];
     styles: IStyles[];
 }
 
-
-export interface IControlSubCollection {
-    ID: string;
-    CloseOutput: string;
-    Horizon: string;
-    ShowZero: string;
-    Shrink: string;
-    ShrinkFirst: string;
-    Vertical: string;
-    VerticalForExcel: string;
-    Wrap: string;
-}
 export interface IControlCollection {
     [key: string]: IControlSubCollection;
 }
@@ -97,7 +95,6 @@ interface IFontCollection {
     [key: string]: IFontSubCollection;
 }
 
-
 export interface IPosition {
     Bottom: number;
     Left: number;
@@ -142,7 +139,7 @@ export interface IPageCellObj {
     [key: string]: {
         cellIdx: number;
         cell: INode;
-    }[]
+    }[];
 }
 export interface ICell {
     font: string;
@@ -154,28 +151,30 @@ export interface ICell {
     Format?: any;
     Prefix?: string;
     Suffix?: any;
-};
+}
 
 export interface IPreviewPage {
     打印页面_信息: {
         报表名称: string;
         纸张宽高: IPosition;
-        页边距: [number, number]
+        页边距: [number, number];
     };
     control_collection: IControlCollection;
     font_collection: IFontCollection;
-    items: [{
-        page_seq: number;
-        cells: ICell[];
-        page_merge_border: IPosition;
-    }];
+    items: [
+        {
+            page_seq: number;
+            cells: ICell[];
+            page_merge_border: IPosition;
+        }
+    ];
     MergeBand: {
         Bottom: number;
         Left: number;
         Right: number;
         Top: number;
         style: any;
-    }
+    };
     style_collection: {
         BORDER_ALL_AROUND: IPositionExtent;
         Default: IPositionExtent;
@@ -183,7 +182,7 @@ export interface IPreviewPage {
         Default_Normal: IPositionExtent;
         Label_Topline: IPositionExtent;
         Label_Underline: IPositionExtent;
-    }
+    };
 }
 
 interface ISimpleJSONPage {
@@ -192,7 +191,6 @@ interface ISimpleJSONPage {
     page_seq: number;
 }
 
-
 export interface IGroupField {
     Name: string;
     fixedPrecisionNum: number;
@@ -200,18 +198,17 @@ export interface IGroupField {
     DataType: string;
     DataSeq: number;
     DataNodeName: IDataObj_props;
-    data_field: number | any;//暂定
+    data_field: number | any; // 暂定
     Precision?: {
         type?: string;
-        flexibleRefFieldID?: number
-    }
+        flexibleRefFieldID?: number;
+    };
     flexiblePrecisionRefObj?: { [key: string]: number }[];
     [key: string]: any;
 }
 
 export interface ITargetDataSet {
-    [key: string]: IGroupField
-
+    [key: string]: IGroupField;
 }
 
 export interface ITargetFields {
@@ -221,29 +218,40 @@ export interface ITargetFields {
     从数据指标_拓展集合: ITargetDataSet;
     离散指标_集合: ITargetDataSet;
     无映射离散指标_集合: ITargetDataSet;
-
 }
 
 interface IOutputAsPreviewPage {
     (rptTpl: IRptTpl, defProperties: IDefProperties): IPreviewPage;
 }
 interface IOutputAsSimpleJSONPageArray {
-    (rptTpl: IRptTpl, dataObj: IDataObj, startPage: number, endPage: number, defProperties: IDefProperties, customizeCfg: ICustomizeCfg): IPreviewPage;
+    (
+        rptTpl: IRptTpl,
+        dataObj: IDataObj,
+        startPage: number,
+        endPage: number,
+        defProperties: IDefProperties,
+        customizeCfg: ICustomizeCfg
+    ): IPreviewPage;
 }
 interface IOutputAsSimpleJSONPage {
-    (rptTpl: IRptTpl, dataObj: IDataObj, bands: IBands, page: number, controls: IControlCollection, customizeCfg: ICustomizeCfg): ISimpleJSONPage;
+    (
+        rptTpl: IRptTpl,
+        dataObj: IDataObj,
+        bands: IBands,
+        page: number,
+        controls: IControlCollection,
+        customizeCfg: ICustomizeCfg
+    ): ISimpleJSONPage;
 }
 
-
-
 export interface IFlowTab {
     dispValueIdxLst: number[][];
-    group_lines_amt: number
-    group_node_info: number[][] | null
+    group_lines_amt: number;
+    group_node_info: number[][] | null;
     group_sum_fields: Fields[] | null;
     group_sum_values: { [key: string]: number }[] | null;
     isEx: boolean;
-    multiCols: number
+    multiCols: number;
     groupSumValLst: any[];
     group_check_fields: any[];
     auto_height_fields_idx: any[];
@@ -253,11 +261,34 @@ export interface IFlowTab {
     outputAsPreviewPage: IOutputAsPreviewPage;
     outputAsSimpleJSONPage: IOutputAsSimpleJSONPage;
     outputAsSimpleJSONPageArray: IOutputAsSimpleJSONPageArray;
-    checkCombineEvent: ($RUN_TYPE: string, $VER_COMB_ARRAY: any[], $HOR_COMB_ARRAY: any[], $CURRENT_CELL_ITEMS: Fields, $CURRENT_RPT: ICurrent_RPT) => void
-    checkGrpTxtOutEvent: ($RUN_TYPE: string, $TEXT: Fields, $TIMES: number, $CURRENT_RPT: ICurrent_RPT) => void
-    combinePageCells: (rstPageCells: ICell[], verticalCombinePos: any[], horizonCombinePos: any[]) => void;
-    commonTabRestOutput: (dataObj: IDataObj, page: number, segIdx: number, bands: IBands, band: IBandDetail, unitFactor: number, tab: { BandName: string, text_s?: Fields[], text?: string }, multiColIdx: number) => Fields[]
-
+    checkCombineEvent: (
+        $RUN_TYPE: string,
+        $VER_COMB_ARRAY: any[],
+        $HOR_COMB_ARRAY: any[],
+        $CURRENT_CELL_ITEMS: Fields,
+        $CURRENT_RPT: ICurrent_RPT
+    ) => void;
+    checkGrpTxtOutEvent: (
+        $RUN_TYPE: string,
+        $TEXT: Fields,
+        $TIMES: number,
+        $CURRENT_RPT: ICurrent_RPT
+    ) => void;
+    combinePageCells: (
+        rstPageCells: ICell[],
+        verticalCombinePos: any[],
+        horizonCombinePos: any[]
+    ) => void;
+    commonTabRestOutput: (
+        dataObj: IDataObj,
+        page: number,
+        segIdx: number,
+        bands: IBands,
+        band: IBandDetail,
+        unitFactor: number,
+        tab: { BandName: string; text_s?: Fields[]; text?: string },
+        multiColIdx: number
+    ) => Fields[];
 }
 interface IParam {
     DataSeq: number;
@@ -275,30 +306,52 @@ export interface ICurrent_RPT {
     isFollowMode: boolean;
     totalPages: number;
     params: IParams;
-    analyzeData: (rptTpl: IRptTpl, dataObj: IDataObj, defProperties: IDefProperties, option: string, outputType: string) => void;
-    executeFormulas: (runType: string, $CURRENT_TEMPLATE: any, $CURRENT_DATA: any, $CURRENT_RPT: ICurrent_RPT) => void;
+    analyzeData: (
+        rptTpl: IRptTpl,
+        dataObj: IDataObj,
+        defProperties: IDefProperties,
+        option: string,
+        outputType: string
+    ) => void;
+    executeFormulas: (
+        runType: string,
+        $CURRENT_TEMPLATE: any,
+        $CURRENT_DATA: any,
+        $CURRENT_RPT: ICurrent_RPT
+    ) => void;
     initialize?: (rptTpl: IRptTpl) => void;
     outputAsPreviewPage: IOutputAsPreviewPage;
     outputAsSimpleJSONPage: IOutputAsSimpleJSONPage;
     outputAsSimpleJSONPageArray: IOutputAsSimpleJSONPageArray;
-    paging: (rptTpl: IRptTpl, dataObj: IDataObj, defProperties: IDefProperties, option: string, outputType: string) => void;
+    paging: (
+        rptTpl: IRptTpl,
+        dataObj: IDataObj,
+        defProperties: IDefProperties,
+        option: string,
+        outputType: string
+    ) => void;
     fields: ITargetFields;
-    flowTab: IFlowTabClass;
-    flowTabEx: IFlowTabClass;
-    billTab: IBillTabClass;
-    crossTab: ICostTabClass;
+    // flowTab: IFlowTabClass;
+    // flowTabEx: IFlowTabClass;
+    // billTab: IBillTabClass;
+    // crossTab: ICostTabClass;
+    flowTab: any;
+    flowTabEx: any;
+    billTab: any;
+    crossTab: any;
     runTimePageData: { currentPage?: number };
 }
 
 export interface ICurrent_DATA {
-    discrete_data: any[]
+    discrete_data: any[];
     detail_data_ex: any[];
-    detail_data: any[]
+    detail_data: any[];
     DecimalObj: {
-        prjDecimal: any, unitDecimal: {
-            default_decimal: number
-        }
-    }
+        prjDecimal: any;
+        unitDecimal: {
+            default_decimal: number;
+        };
+    };
     master_data: any[];
     master_data_ex: any[];
 }
@@ -358,37 +411,35 @@ export interface IGrpPageInfo {
     preAddPageGrpInfo: number[];
     insertedGrpRecAmt: number;
     group_lines_amt: number;
-
 }
 
-
 export interface IRptTpl {
     事件_集合: {
-        type: IEvent_type
+        type: IEvent_type;
     }[];
     布局框_集合: IBandDetail[];
     计算式_集合: IFormula[];
     离散参数_集合: IOrgGroupField[];
     账单式表_信息: {
-        离散信息: IDiscrete[]
+        离散信息: IDiscrete[];
         账单式表_数据: {
             BandName: string;
-            bill_field_s: Fields[];//暂定
+            bill_field_s: Fields[]; // 暂定
             text: string;
-            text_s: string[];//暂定
-            离散信息: IDiscrete[]
-        }
+            text_s: string[]; // 暂定
+            离散信息: IDiscrete[];
+        };
     };
     交叉表_信息: {
         交叉列合计: ICrossTab;
         交叉行拓展: ICrossTab;
         交叉行拓展合计: ICrossTab;
-        交叉数据: ICrossTab;//暂定
+        交叉数据: ICrossTab; // 暂定
         交叉行: ICrossTab;
         交叉列: ICrossTab;
-        交叉行AD_HOC: ICrossTab;//暂定
+        交叉行AD_HOC: ICrossTab; // 暂定
         离散信息: IDiscrete[];
-        [key: string]: any;//暂定tabNodeName     jpc_cross_tab   line270
+        [key: string]: any; // 暂定tabNodeName     jpc_cross_tab   line270
     };
     流水式表_信息: {
         多列显示数量: number;
@@ -408,12 +459,11 @@ export interface IRptTpl {
         流水式表_列: IDiscrete;
         流水式表_数据: IFlowData;
         流水式表_页统计信息: IDiscrete;
-
     };
     无映射离散指标_集合: IOrgGroupField[];
     映射数据预处理: {
         排序方式: string;
-        排序键值集: any[]
+        排序键值集: any[];
         映射数据对象: string;
         预处理类型: string;
     }[];
@@ -425,29 +475,29 @@ export interface IRptTpl {
         主数据指标_拓展集合: IOrgGroupField[];
         从数据指标_拓展集合: IOrgGroupField[];
         [key: string]: IOrgGroupField[];
-    }
+    };
     主信息: {
         版本: {
             功能版本: string;
             主版本: string;
-        }
+        };
         报表名称: string;
         打印页面_信息: {
             方向: string;
             页规格: string;
-            cross_display_order: number
-        }
+            cross_display_order: number;
+        };
         单位: string;
         页边距: IPosition;
-    }
+    };
 
     GROUP_KEY: string;
     ID: number;
     ID_KEY: string;
-    style_collection?: any[]
-    control_collection: IControlCollection
+    style_collection?: any[];
+    control_collection: IControlCollection;
 }
-//以后会跟 IGroupField合并
+// 以后会跟 IGroupField合并
 export interface IOrgGroupField {
     DataType: string;
     descr?: string;
@@ -456,32 +506,32 @@ export interface IOrgGroupField {
     Name: string;
     Title?: string;
     Precision?: {
-        type: string
-        flexibleRefFieldID?: number
-    }
-    fixedPrecisionNum?: number
+        type: string;
+        flexibleRefFieldID?: number;
+    };
+    fixedPrecisionNum?: number;
     flexiblePrecisionRefObj?: { [key: string]: number }[];
     Default_Value?: string;
     isID?: string;
-    IDSeq: number
+    IDSeq: number;
 }
 
 export interface IDataObj {
     DecimalObj: {
-        prjDecimal: undefined,
+        prjDecimal: undefined;
         unitDecimal: {
-            default_decimal: 2
-        }
+            default_decimal: 2;
+        };
     };
     detail_data: (number | string)[][];
-    detail_data_ex: any[]
-    discrete_data: string[][]
-    master_data: any[]
+    detail_data_ex: any[];
+    discrete_data: string[][];
+    master_data: any[];
     master_data_ex: any[];
     [key: string]: any;
 }
 
-//离散信息
+// 离散信息
 export interface IDiscrete {
     BandName: string;
     discrete_field_s: Fields[];
@@ -500,21 +550,19 @@ export interface ICrossTab {
     text: string;
     CommonWidth: number;
 }
-//流水式表_数据
+// 流水式表_数据
 interface IFlowData {
     BandName: string;
     CommonHeight: number;
     flow_field_s: Fields[];
     CalculationType: string;
 }
-//流水式表_分组信息: 
+// 流水式表_分组信息:
 interface IFlowGroup {
     group_field_s: { FieldID: number }[];
     group_lines: IGrpLine[];
     sum_field_s: Fields[];
-};
-
-
+}
 
 export interface IRstPage {
     page_seq?: number;
@@ -528,4 +576,4 @@ export interface IMergeBand {
     Right?: number;
     Top?: number;
     style?: any;
-}
+}

+ 3 - 3
report/src/interface/classType.ts

@@ -1,6 +1,6 @@
 import { Fields, IBandDetail, IBands, ICell, IControlCollection, ICrossTab, ICurrent_DATA, ICurrent_RPT, ICustomizeCfg, IDataObj, IDefProperties, IGrpLine, IMergePos, INode, IPreviewPage, IRptTpl, ITab } from "./basic";
 
-export declare class IFlowTabClass {
+export interface IFlowTabClass {
     auto_height_fields_idx: [number, Fields][];
     auto_height_info: number[][];
     checkCombineEvent: ($RUN_TYPE: String, $VER_COMB_ARRAY: number[][], $HOR_COMB_ARRAY: any[], $CURRENT_CELL_ITEMS: ICell[], $CURRENT_RPT: ICurrent_RPT) => void;
@@ -45,7 +45,7 @@ export declare class IFlowTabClass {
     sumUpGrp: (rptTpl: IRptTpl, $CURRENT_RPT: ICurrent_RPT, dataObj: IDataObj, segIdx: number, preGrpIdx: number, nexGrpIdx: number) => void
 }
 
-export declare class IBillTabClass {
+export interface IBillTabClass {
     disp_fields_idx: any[];
     outputAsPreviewPage: (rptTpl: IRptTpl, bands: IBands, controls: IControlCollection, $CURRENT_RPT: ICurrent_RPT) => any
     outputAsSimpleJSONPage: (rptTpl: IRptTpl, dataObj: IDataObj, page: number, bands: IBands, controls: IControlCollection, $CURRENT_RPT: ICurrent_RPT, customizeCfg: ICustomizeCfg) => any;
@@ -55,7 +55,7 @@ export declare class IBillTabClass {
     sorting: (rptTpl: IRptTpl) => void
 }
 
-export declare class ICostTabClass {
+export interface ICostTabClass {
     dispValueIdxLst_Row: number[][];
     dispValueIdxLst_Col: any[];
     dispValueIdxLst_Content: number[][][];

+ 4 - 4
report/src/interface/enum.ts

@@ -1,4 +1,4 @@
-export declare enum IDataObj_props {
+export enum IDataObj_props {
     detail_data = 'detail_data',
     detail_data_ex = 'detail_data_ex',
     discrete_data = 'discrete_data',
@@ -6,8 +6,8 @@ export declare enum IDataObj_props {
     master_data_ex = 'master_data_ex',
 }
 
-export declare enum IEvent_type {
+export enum IEvent_type {
     GRP_ON_CREATE = 'GRP_ON_CREATE',
-    FLOW_CONTENT_ON_CREATE = 'FLOW_CONTENT_ON_CREATE'
+    FLOW_CONTENT_ON_CREATE = 'FLOW_CONTENT_ON_CREATE',
 }
-export default {}
+export default {};