hqchart 1.1.14216 → 1.1.14223
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/lib/umychart.NetworkFilterTest.vue.js +5 -3
- package/lib/umychart.vue.js +132 -123
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +65 -0
- package/src/jscommon/umychart.js +36 -30
- package/src/jscommon/umychart.report.js +247 -124
- package/src/jscommon/umychart.testdata.js +65 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +284 -155
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +65 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +284 -155
|
@@ -1989,7 +1989,80 @@ function JSReportChartContainer(uielement)
|
|
|
1989
1989
|
|
|
1990
1990
|
this.OnRightMenu=function(x,y,e)
|
|
1991
1991
|
{
|
|
1992
|
-
|
|
1992
|
+
this.PopupRightMenu(x,y,e);
|
|
1993
|
+
}
|
|
1994
|
+
|
|
1995
|
+
|
|
1996
|
+
this.PtInReportChart=function(x,y) //Type: 2=行 3=表头 4=固定行
|
|
1997
|
+
{
|
|
1998
|
+
var chart=this.GetReportChart();
|
|
1999
|
+
if (!chart) return null;
|
|
2000
|
+
|
|
2001
|
+
var row=chart.PtInHeader(x,y);
|
|
2002
|
+
if (row) return { Type:3, Row:row, X:x, Y:y };
|
|
2003
|
+
|
|
2004
|
+
row=chart.PtInFixedBody(x,y);
|
|
2005
|
+
if (row) return { Type:4, Row:row , X:x, Y:y };
|
|
2006
|
+
|
|
2007
|
+
row=chart.PtInBody(x,y);
|
|
2008
|
+
if (row) return { Type:2, Row:row , X:x, Y:y };
|
|
2009
|
+
|
|
2010
|
+
return { Type:-1, Row:null, X:x, Y:y };
|
|
2011
|
+
}
|
|
2012
|
+
|
|
2013
|
+
this.PopupRightMenu=function(x,y, e)
|
|
2014
|
+
{
|
|
2015
|
+
var data=this.PtInReportChart(x,y);
|
|
2016
|
+
if (!data) return;
|
|
2017
|
+
if (!this.JSPopMenu) return;
|
|
2018
|
+
|
|
2019
|
+
data.e=e;
|
|
2020
|
+
var menuData={ Menu:null, Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID };
|
|
2021
|
+
menuData.ClickCallback=(data)=>{ this.OnClickRightMenu(data); }
|
|
2022
|
+
|
|
2023
|
+
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_RIGHT_MENU);
|
|
2024
|
+
if (event && event.Callback)
|
|
2025
|
+
{
|
|
2026
|
+
var sendData={ MenuData:menuData, Data:data };
|
|
2027
|
+
event.Callback(event, sendData, this);
|
|
2028
|
+
}
|
|
2029
|
+
|
|
2030
|
+
if (menuData.Menu) this.PopupMenuByRClick(menuData, x, y);
|
|
2031
|
+
}
|
|
2032
|
+
|
|
2033
|
+
//右键菜单
|
|
2034
|
+
this.PopupMenuByRClick=function(menuData, x, y)
|
|
2035
|
+
{
|
|
2036
|
+
if (!this.JSPopMenu) return;
|
|
2037
|
+
|
|
2038
|
+
var rtClient=this.UIElement.getBoundingClientRect();
|
|
2039
|
+
var rtScroll=GetScrollPosition();
|
|
2040
|
+
|
|
2041
|
+
x+=rtClient.left+rtScroll.Left;
|
|
2042
|
+
y+=rtClient.top+rtScroll.Top;
|
|
2043
|
+
|
|
2044
|
+
this.JSPopMenu.CreatePopMenu(menuData);
|
|
2045
|
+
this.JSPopMenu.PopupMenuByRight(x,y);
|
|
2046
|
+
}
|
|
2047
|
+
|
|
2048
|
+
//点击右键菜单
|
|
2049
|
+
this.OnClickRightMenu=function(data)
|
|
2050
|
+
{
|
|
2051
|
+
JSConsole.Chart.Log('[JSReportChartContainer::OnClickRightMenu] ',data);
|
|
2052
|
+
if (!data || !data.Data) return;
|
|
2053
|
+
|
|
2054
|
+
var cmdID=data.Data.ID; //命令ID
|
|
2055
|
+
var aryArgs=data.Data.Args; //参数
|
|
2056
|
+
|
|
2057
|
+
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MENU_COMMAND); //回调通知外部
|
|
2058
|
+
if (event && event.Callback)
|
|
2059
|
+
{
|
|
2060
|
+
var data={ PreventDefault:false, CommandID:cmdID, Args:aryArgs, SrcData:data };
|
|
2061
|
+
event.Callback(event,data,this);
|
|
2062
|
+
if (data.PreventDefault) return;
|
|
2063
|
+
}
|
|
2064
|
+
|
|
2065
|
+
this.ExecuteMenuCommand(cmdID, aryArgs);
|
|
1993
2066
|
}
|
|
1994
2067
|
|
|
1995
2068
|
this.UIOnMouseMove=function(e)
|
|
@@ -3608,6 +3681,36 @@ function JSReportChartContainer(uielement)
|
|
|
3608
3681
|
if (IFrameSplitOperator.IsNumber(param))
|
|
3609
3682
|
this.DeleteColumn(param, {Redraw:true});
|
|
3610
3683
|
break;
|
|
3684
|
+
case JSCHART_MENU_ID.CMD_REPORT_CHANGE_COLUMN_ID:
|
|
3685
|
+
if (param!=null && aryArgs[1]) this.ChangeColumn(param, aryArgs[1], { Redraw:true})
|
|
3686
|
+
break;
|
|
3687
|
+
}
|
|
3688
|
+
}
|
|
3689
|
+
|
|
3690
|
+
|
|
3691
|
+
this.ChangeColumn=function(index, newColumn, option)
|
|
3692
|
+
{
|
|
3693
|
+
if (index<0) return;
|
|
3694
|
+
if (!newColumn) return;
|
|
3695
|
+
|
|
3696
|
+
var reportChart=this.GetReportChart();
|
|
3697
|
+
if (!reportChart) return;
|
|
3698
|
+
|
|
3699
|
+
if (!reportChart.ChangeColumn(index, newColumn)) return;
|
|
3700
|
+
|
|
3701
|
+
if (this.SortInfo && this.SortInfo.Field==index && this.SortInfo.Sort>0) //去掉排序
|
|
3702
|
+
{
|
|
3703
|
+
this.SortInfo.Field=-1;
|
|
3704
|
+
this.SortInfo.Sort=0;
|
|
3705
|
+
this.Data.Data=[];
|
|
3706
|
+
if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))
|
|
3707
|
+
this.Data.Data=this.SourceData.Data.slice();
|
|
3708
|
+
}
|
|
3709
|
+
|
|
3710
|
+
if (option && option.Redraw)
|
|
3711
|
+
{
|
|
3712
|
+
this.SetSizeChange(true);
|
|
3713
|
+
this.Draw();
|
|
3611
3714
|
}
|
|
3612
3715
|
}
|
|
3613
3716
|
|
|
@@ -4690,6 +4793,134 @@ function ChartReport()
|
|
|
4690
4793
|
this.ProgressBarConfig=CloneData(g_JSChartResource.Report.ProgressBar);
|
|
4691
4794
|
}
|
|
4692
4795
|
|
|
4796
|
+
this.CreateColumnItem=function(item)
|
|
4797
|
+
{
|
|
4798
|
+
var colItem=this.GetDefaultColunm(item.Type);
|
|
4799
|
+
if (!colItem) return null;
|
|
4800
|
+
|
|
4801
|
+
if (item.Title) colItem.Title=item.Title;
|
|
4802
|
+
if (item.TextAlign) colItem.TextAlign=item.TextAlign;
|
|
4803
|
+
if (item.TextColor) colItem.TextColor=item.TextColor;
|
|
4804
|
+
if (item.HeaderColor) colItem.HeaderColor=item.HeaderColor;
|
|
4805
|
+
if (item.MaxText) colItem.MaxText=item.MaxText;
|
|
4806
|
+
if (item.MaxText2) colItem.MaxText=item.MaxText2;
|
|
4807
|
+
if (IFrameSplitOperator.IsNumber(item.Space)) colItem.Space=item.Space;
|
|
4808
|
+
if (item.ID) colItem.ID=item.ID;
|
|
4809
|
+
if (item.FullColBGColor) colItem.FullColBGColor=item.FullColBGColor; //整列背景色
|
|
4810
|
+
if (item.HeaderBGColor) colItem.HeaderBGColor=item.HeaderBGColor; //表头背景色
|
|
4811
|
+
if (IFrameSplitOperator.IsNumber(item.Sort)) colItem.Sort=item.Sort;
|
|
4812
|
+
if (IFrameSplitOperator.IsNumber(item.FixedWidth)) colItem.FixedWidth=item.FixedWidth;
|
|
4813
|
+
if (IFrameSplitOperator.IsBool(item.EnableDragWidth)) colItem.EnableDragWidth=item.EnableDragWidth;
|
|
4814
|
+
if (IFrameSplitOperator.IsBool(item.IsDrawCallback)) colItem.IsDrawCallback=item.IsDrawCallback;
|
|
4815
|
+
else colItem.IsDrawCallback=false;
|
|
4816
|
+
|
|
4817
|
+
if (IFrameSplitOperator.IsNumber(item.FloatPrecision)) colItem.FloatPrecision=item.FloatPrecision; //小数位数
|
|
4818
|
+
if (IFrameSplitOperator.IsNumber(item.ColorType)) colItem.ColorType=item.ColorType; //0=默认 1=(>0, =0, <0) 2=(>=0, <0)
|
|
4819
|
+
if (item.Icon) colItem.Icon=item.Icon;
|
|
4820
|
+
if (IFrameSplitOperator.IsBool(item.EnableChartTooltip)) colItem.EnableChartTooltip=item.EnableChartTooltip;
|
|
4821
|
+
|
|
4822
|
+
//点击表头弹出菜单
|
|
4823
|
+
if (IFrameSplitOperator.IsBool(item.EnablePopupHeaderMenu)) colItem.EnablePopupHeaderMenu=item.EnablePopupHeaderMenu;
|
|
4824
|
+
|
|
4825
|
+
if (item.Sort==1 || item.Sort==2) //1本地排序 2=远程排序
|
|
4826
|
+
{
|
|
4827
|
+
colItem.SortType=[1,2]; //默认 降序 ,升序
|
|
4828
|
+
if (IFrameSplitOperator.IsNonEmptyArray(item.SortType)) colItem.SortType=item.SortType.slice();
|
|
4829
|
+
}
|
|
4830
|
+
|
|
4831
|
+
if (item.Type==REPORT_COLUMN_ID.CUSTOM_STRING_TEXT_ID)
|
|
4832
|
+
{
|
|
4833
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4834
|
+
colItem.FormatType=0; //0=默认格式 1=长度不够使用...
|
|
4835
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4836
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4837
|
+
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType; //输出样式
|
|
4838
|
+
}
|
|
4839
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_NUMBER_TEXT_ID)
|
|
4840
|
+
{
|
|
4841
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4842
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4843
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4844
|
+
colItem.Decimal=2;
|
|
4845
|
+
colItem.FormatType=0; //0=默认格式化 1=原始输出 2=科学计数 3=成交量格式化
|
|
4846
|
+
colItem.ColorType=0; //0=默认使用TextColor, 1=(>0涨,<0跌)2=(>昨收涨,<昨收跌)
|
|
4847
|
+
if (IFrameSplitOperator.IsNumber(item.Decimal)) colItem.Decimal=item.Decimal; //小数位数
|
|
4848
|
+
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType; //输出样式
|
|
4849
|
+
if (IFrameSplitOperator.IsNumber(item.ColorType)) colItem.ColorType=item.ColorType; //颜色属性
|
|
4850
|
+
}
|
|
4851
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_DATETIME_TEXT_ID)
|
|
4852
|
+
{
|
|
4853
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4854
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4855
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4856
|
+
colItem.FormatType=0; //0=yyyy-mm-dd 1=YYYY/MM/DD
|
|
4857
|
+
colItem.ValueType=0; //0=yyyymmdd 1=hhmmss
|
|
4858
|
+
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType; //输出样式
|
|
4859
|
+
if (IFrameSplitOperator.IsNumber(item.ValueType)) colItem.FormatType=item.ValueType; //输出样式
|
|
4860
|
+
|
|
4861
|
+
}
|
|
4862
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_CHECKBOX_ID)
|
|
4863
|
+
{
|
|
4864
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4865
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4866
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4867
|
+
if (item.CheckBox) colItem.CheckBox=CloneData(item.CheckBox);
|
|
4868
|
+
else colItem.CheckBox=this.CheckBoxConfig;
|
|
4869
|
+
}
|
|
4870
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_BUTTON_ID)
|
|
4871
|
+
{
|
|
4872
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4873
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4874
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4875
|
+
if (item.Button) colItem.Button=CloneData(item.Button);
|
|
4876
|
+
else colItem.Button=this.ButtonConfig;
|
|
4877
|
+
}
|
|
4878
|
+
else if (this.IsReserveButtonColumn(item.Type))
|
|
4879
|
+
{
|
|
4880
|
+
if (item.Button) colItem.Button=CloneData(item.Button);
|
|
4881
|
+
else colItem.Button=this.ButtonConfig;
|
|
4882
|
+
}
|
|
4883
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_PROGRESS_ID)
|
|
4884
|
+
{
|
|
4885
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4886
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4887
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4888
|
+
if (item.ProgressBar) colItem.ProgressBar=CloneData(item.ProgressBar);
|
|
4889
|
+
else colItem.ProgressBar=this.ProgressBarConfig;
|
|
4890
|
+
}
|
|
4891
|
+
else if (this.IsReserveProgressBarColumn(item.Type))
|
|
4892
|
+
{
|
|
4893
|
+
if (item.ProgressBar) colItem.ProgressBar=CloneData(item.ProgressBar);
|
|
4894
|
+
else colItem.ProgressBar=this.ProgressBarConfig;
|
|
4895
|
+
}
|
|
4896
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_LINK_ID)
|
|
4897
|
+
{
|
|
4898
|
+
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) return null;
|
|
4899
|
+
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4900
|
+
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4901
|
+
if (item.Link) colItem.Link=CloneData(item.Link);
|
|
4902
|
+
else colItem.Link=this.LinkConfig;
|
|
4903
|
+
}
|
|
4904
|
+
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_ICON_ID)
|
|
4905
|
+
{
|
|
4906
|
+
|
|
4907
|
+
}
|
|
4908
|
+
else if (item.Type==REPORT_COLUMN_ID.CLOSE_LINE_ID)
|
|
4909
|
+
{
|
|
4910
|
+
if (IFrameSplitOperator.IsBool(item.IsDrawArea)) colItem.IsDrawArea=item.IsDrawArea;
|
|
4911
|
+
}
|
|
4912
|
+
else if(item.Type==REPORT_COLUMN_ID.TIME_ID)
|
|
4913
|
+
{
|
|
4914
|
+
if (IFrameSplitOperator.IsNumber(item.ValueType)) colItem.ValueType=item.ValueType;
|
|
4915
|
+
}
|
|
4916
|
+
else if (item.Type==REPORT_COLUMN_ID.DATE_ID)
|
|
4917
|
+
{
|
|
4918
|
+
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType;
|
|
4919
|
+
}
|
|
4920
|
+
|
|
4921
|
+
return colItem;
|
|
4922
|
+
}
|
|
4923
|
+
|
|
4693
4924
|
this.SetColumn=function(aryColumn)
|
|
4694
4925
|
{
|
|
4695
4926
|
if (!IFrameSplitOperator.IsNonEmptyArray(aryColumn)) return;
|
|
@@ -4698,130 +4929,9 @@ function ChartReport()
|
|
|
4698
4929
|
for(var i=0;i<aryColumn.length;++i)
|
|
4699
4930
|
{
|
|
4700
4931
|
var item=aryColumn[i];
|
|
4701
|
-
var colItem=this.
|
|
4932
|
+
var colItem=this.CreateColumnItem(item);
|
|
4702
4933
|
if (!colItem) continue;
|
|
4703
4934
|
|
|
4704
|
-
if (item.Title) colItem.Title=item.Title;
|
|
4705
|
-
if (item.TextAlign) colItem.TextAlign=item.TextAlign;
|
|
4706
|
-
if (item.TextColor) colItem.TextColor=item.TextColor;
|
|
4707
|
-
if (item.HeaderColor) colItem.HeaderColor=item.HeaderColor;
|
|
4708
|
-
if (item.MaxText) colItem.MaxText=item.MaxText;
|
|
4709
|
-
if (item.MaxText2) colItem.MaxText=item.MaxText2;
|
|
4710
|
-
if (IFrameSplitOperator.IsNumber(item.Space)) colItem.Space=item.Space;
|
|
4711
|
-
if (item.ID) colItem.ID=item.ID;
|
|
4712
|
-
if (item.FullColBGColor) colItem.FullColBGColor=item.FullColBGColor; //整列背景色
|
|
4713
|
-
if (item.HeaderBGColor) colItem.HeaderBGColor=item.HeaderBGColor; //表头背景色
|
|
4714
|
-
if (IFrameSplitOperator.IsNumber(item.Sort)) colItem.Sort=item.Sort;
|
|
4715
|
-
if (IFrameSplitOperator.IsNumber(item.FixedWidth)) colItem.FixedWidth=item.FixedWidth;
|
|
4716
|
-
if (IFrameSplitOperator.IsBool(item.EnableDragWidth)) colItem.EnableDragWidth=item.EnableDragWidth;
|
|
4717
|
-
if (IFrameSplitOperator.IsBool(item.IsDrawCallback)) colItem.IsDrawCallback=item.IsDrawCallback;
|
|
4718
|
-
else colItem.IsDrawCallback=false;
|
|
4719
|
-
|
|
4720
|
-
if (IFrameSplitOperator.IsNumber(item.FloatPrecision)) colItem.FloatPrecision=item.FloatPrecision; //小数位数
|
|
4721
|
-
if (IFrameSplitOperator.IsNumber(item.ColorType)) colItem.ColorType=item.ColorType; //0=默认 1=(>0, =0, <0) 2=(>=0, <0)
|
|
4722
|
-
if (item.Icon) colItem.Icon=item.Icon;
|
|
4723
|
-
if (IFrameSplitOperator.IsBool(item.EnableChartTooltip)) colItem.EnableChartTooltip=item.EnableChartTooltip;
|
|
4724
|
-
|
|
4725
|
-
//点击表头弹出菜单
|
|
4726
|
-
if (IFrameSplitOperator.IsBool(item.EnablePopupHeaderMenu)) colItem.EnablePopupHeaderMenu=item.EnablePopupHeaderMenu;
|
|
4727
|
-
|
|
4728
|
-
if (item.Sort==1 || item.Sort==2) //1本地排序 2=远程排序
|
|
4729
|
-
{
|
|
4730
|
-
colItem.SortType=[1,2]; //默认 降序 ,升序
|
|
4731
|
-
if (IFrameSplitOperator.IsNonEmptyArray(item.SortType)) colItem.SortType=item.SortType.slice();
|
|
4732
|
-
}
|
|
4733
|
-
|
|
4734
|
-
if (item.Type==REPORT_COLUMN_ID.CUSTOM_STRING_TEXT_ID)
|
|
4735
|
-
{
|
|
4736
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4737
|
-
colItem.FormatType=0; //0=默认格式 1=长度不够使用...
|
|
4738
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4739
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4740
|
-
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType; //输出样式
|
|
4741
|
-
}
|
|
4742
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_NUMBER_TEXT_ID)
|
|
4743
|
-
{
|
|
4744
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4745
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4746
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4747
|
-
colItem.Decimal=2;
|
|
4748
|
-
colItem.FormatType=0; //0=默认格式化 1=原始输出 2=科学计数 3=成交量格式化
|
|
4749
|
-
colItem.ColorType=0; //0=默认使用TextColor, 1=(>0涨,<0跌)2=(>昨收涨,<昨收跌)
|
|
4750
|
-
if (IFrameSplitOperator.IsNumber(item.Decimal)) colItem.Decimal=item.Decimal; //小数位数
|
|
4751
|
-
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType; //输出样式
|
|
4752
|
-
if (IFrameSplitOperator.IsNumber(item.ColorType)) colItem.ColorType=item.ColorType; //颜色属性
|
|
4753
|
-
}
|
|
4754
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_DATETIME_TEXT_ID)
|
|
4755
|
-
{
|
|
4756
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4757
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4758
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4759
|
-
colItem.FormatType=0; //0=yyyy-mm-dd 1=YYYY/MM/DD
|
|
4760
|
-
colItem.ValueType=0; //0=yyyymmdd 1=hhmmss
|
|
4761
|
-
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType; //输出样式
|
|
4762
|
-
if (IFrameSplitOperator.IsNumber(item.ValueType)) colItem.FormatType=item.ValueType; //输出样式
|
|
4763
|
-
|
|
4764
|
-
}
|
|
4765
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_CHECKBOX_ID)
|
|
4766
|
-
{
|
|
4767
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4768
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4769
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4770
|
-
if (item.CheckBox) colItem.CheckBox=CloneData(item.CheckBox);
|
|
4771
|
-
else colItem.CheckBox=this.CheckBoxConfig;
|
|
4772
|
-
}
|
|
4773
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_BUTTON_ID)
|
|
4774
|
-
{
|
|
4775
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4776
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4777
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4778
|
-
if (item.Button) colItem.Button=CloneData(item.Button);
|
|
4779
|
-
else colItem.Button=this.ButtonConfig;
|
|
4780
|
-
}
|
|
4781
|
-
else if (this.IsReserveButtonColumn(item.Type))
|
|
4782
|
-
{
|
|
4783
|
-
if (item.Button) colItem.Button=CloneData(item.Button);
|
|
4784
|
-
else colItem.Button=this.ButtonConfig;
|
|
4785
|
-
}
|
|
4786
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_PROGRESS_ID)
|
|
4787
|
-
{
|
|
4788
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4789
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4790
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4791
|
-
if (item.ProgressBar) colItem.ProgressBar=CloneData(item.ProgressBar);
|
|
4792
|
-
else colItem.ProgressBar=this.ProgressBarConfig;
|
|
4793
|
-
}
|
|
4794
|
-
else if (this.IsReserveProgressBarColumn(item.Type))
|
|
4795
|
-
{
|
|
4796
|
-
if (item.ProgressBar) colItem.ProgressBar=CloneData(item.ProgressBar);
|
|
4797
|
-
else colItem.ProgressBar=this.ProgressBarConfig;
|
|
4798
|
-
}
|
|
4799
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_LINK_ID)
|
|
4800
|
-
{
|
|
4801
|
-
if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
|
|
4802
|
-
if (IFrameSplitOperator.IsNumber(item.DataIndex)) colItem.DataIndex=item.DataIndex; //数据在扩展数据索引列
|
|
4803
|
-
if (IFrameSplitOperator.IsNumber(item.BlockIndex)) colItem.BlockIndex=item.BlockIndex;
|
|
4804
|
-
if (item.Link) colItem.Link=CloneData(item.Link);
|
|
4805
|
-
else colItem.Link=this.LinkConfig;
|
|
4806
|
-
}
|
|
4807
|
-
else if (item.Type==REPORT_COLUMN_ID.CUSTOM_ICON_ID)
|
|
4808
|
-
{
|
|
4809
|
-
|
|
4810
|
-
}
|
|
4811
|
-
else if (item.Type==REPORT_COLUMN_ID.CLOSE_LINE_ID)
|
|
4812
|
-
{
|
|
4813
|
-
if (IFrameSplitOperator.IsBool(item.IsDrawArea)) colItem.IsDrawArea=item.IsDrawArea;
|
|
4814
|
-
}
|
|
4815
|
-
else if(item.Type==REPORT_COLUMN_ID.TIME_ID)
|
|
4816
|
-
{
|
|
4817
|
-
if (IFrameSplitOperator.IsNumber(item.ValueType)) colItem.ValueType=item.ValueType;
|
|
4818
|
-
}
|
|
4819
|
-
else if (item.Type==REPORT_COLUMN_ID.DATE_ID)
|
|
4820
|
-
{
|
|
4821
|
-
if (IFrameSplitOperator.IsNumber(item.FormatType)) colItem.FormatType=item.FormatType;
|
|
4822
|
-
}
|
|
4823
|
-
|
|
4824
|
-
|
|
4825
4935
|
this.Column.push(colItem);
|
|
4826
4936
|
}
|
|
4827
4937
|
}
|
|
@@ -4851,6 +4961,17 @@ function ChartReport()
|
|
|
4851
4961
|
return true;
|
|
4852
4962
|
}
|
|
4853
4963
|
|
|
4964
|
+
this.ChangeColumn=function(index, newColumn)
|
|
4965
|
+
{
|
|
4966
|
+
if (index<0 || index>=this.Column.length) return false;
|
|
4967
|
+
|
|
4968
|
+
var colItem=this.CreateColumnItem(newColumn);
|
|
4969
|
+
if (!colItem) return false;
|
|
4970
|
+
this.Column[index]=colItem;
|
|
4971
|
+
|
|
4972
|
+
return true;
|
|
4973
|
+
}
|
|
4974
|
+
|
|
4854
4975
|
this.GetXScrollPos=function()
|
|
4855
4976
|
{
|
|
4856
4977
|
return this.Data.XOffset;
|
|
@@ -7435,7 +7556,9 @@ function ChartReport()
|
|
|
7435
7556
|
this.Canvas.lineTo(x,yCenter);
|
|
7436
7557
|
this.Canvas.lineTo(ptFirst.X,yCenter);
|
|
7437
7558
|
this.Canvas.closePath();
|
|
7438
|
-
this.
|
|
7559
|
+
var areaColor=this.CloseLineConfig.AreaColor;
|
|
7560
|
+
if (lineData.AreaColor) areaColor=lineData.AreaColor;
|
|
7561
|
+
this.SetFillStyle(areaColor,left,top, left,bottom);
|
|
7439
7562
|
this.Canvas.fill();
|
|
7440
7563
|
}
|
|
7441
7564
|
}
|
|
@@ -151,6 +151,10 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
151
151
|
HQData.FinOne_RequestData(data,callback);
|
|
152
152
|
break;
|
|
153
153
|
|
|
154
|
+
case "JSSymbolData::GetIndexData":
|
|
155
|
+
HQData.INDEX_RequestData(data,callback);
|
|
156
|
+
break;
|
|
157
|
+
|
|
154
158
|
//////////////////////////////////////////////////////
|
|
155
159
|
//报价列表数据
|
|
156
160
|
case "JSReportChartContainer::RequestStockListData":
|
|
@@ -1026,6 +1030,30 @@ HQData.FinOne_RequestData=function(data,callback)
|
|
|
1026
1030
|
}
|
|
1027
1031
|
|
|
1028
1032
|
|
|
1033
|
+
HQData.INDEX_RequestData=function(data,callback)
|
|
1034
|
+
{
|
|
1035
|
+
data.PreventDefault=true;
|
|
1036
|
+
var period=data.Period;
|
|
1037
|
+
var symbol=data.Request.Data.symbol;
|
|
1038
|
+
var indexSymbol="000001.sh";
|
|
1039
|
+
var dateRange=data.Request.Data.dateRange;
|
|
1040
|
+
var aryData=[];
|
|
1041
|
+
if (ChartData.IsMinutePeriod(period, true))
|
|
1042
|
+
{
|
|
1043
|
+
var fullData=HQData.GetM1KLineDataBySymbol(symbol);
|
|
1044
|
+
if (fullData) aryData=HQData.GetKLineDataByDateTime(fullData, dateRange.Start.Date, dateRange.Start.Time, dateRange.End.Date, dateRange.End.Time);
|
|
1045
|
+
}
|
|
1046
|
+
else if (ChartData.IsDayPeriod(period,true))
|
|
1047
|
+
{
|
|
1048
|
+
var fullData=HQData.GetDayKLineDataBySymbol(indexSymbol);
|
|
1049
|
+
if (fullData) aryData=HQData.GetKLineDataByDate(fullData, dateRange.Start.Date, dateRange.End.Date);
|
|
1050
|
+
}
|
|
1051
|
+
|
|
1052
|
+
var hqchartData={ name:indexSymbol, symbol:indexSymbol, data:aryData, ver:2.0 };
|
|
1053
|
+
|
|
1054
|
+
callback(hqchartData);
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1029
1057
|
//////////////////////////////////////////////////////////////////////////////////////
|
|
1030
1058
|
// 报价列表
|
|
1031
1059
|
//
|
|
@@ -1207,6 +1235,13 @@ HQData.Report_RequestStockData=function(data, callback)
|
|
|
1207
1235
|
extendData[8]=(Math.round(Math.random()*60))/100;
|
|
1208
1236
|
|
|
1209
1237
|
|
|
1238
|
+
newItem[32]=HQData.Report_CreateMinuteData(newItem[2]);
|
|
1239
|
+
|
|
1240
|
+
//K线
|
|
1241
|
+
var kData={ Data:[newItem[3], newItem[4], newItem[5], newItem[6]] };
|
|
1242
|
+
newItem[33]=kData;
|
|
1243
|
+
|
|
1244
|
+
|
|
1210
1245
|
newItem[101]=105.0;
|
|
1211
1246
|
newItem[201]=`A-[${HQData.GetRandomTestData(-90,90)}]-B`;
|
|
1212
1247
|
|
|
@@ -1233,6 +1268,36 @@ HQData.Report_RequestStockData=function(data, callback)
|
|
|
1233
1268
|
}, 500);
|
|
1234
1269
|
}
|
|
1235
1270
|
|
|
1271
|
+
HQData.Report_CreateMinuteData=function(yClose)
|
|
1272
|
+
{
|
|
1273
|
+
var minuteData={ Data:[], Max:null, Min:null, Count:242, YClose:yClose };
|
|
1274
|
+
var TEST_DATA=[0.01, -0.02, 0.03, -0.05, -0.01, 0.02, 0.05, 0.01, 0.04, -0.04];
|
|
1275
|
+
var value=yClose;
|
|
1276
|
+
for(var i=0;i<minuteData.Count;++i)
|
|
1277
|
+
{
|
|
1278
|
+
var index=Math.ceil(Math.random()*10);
|
|
1279
|
+
|
|
1280
|
+
value+=(yClose*TEST_DATA[index%TEST_DATA.length]); //生成模拟的数据
|
|
1281
|
+
minuteData.Data[i]=value;
|
|
1282
|
+
|
|
1283
|
+
if (minuteData.Max==null || minuteData.Max<value) minuteData.Max=value;
|
|
1284
|
+
if (minuteData.Min==null || minuteData.Min>value) minuteData.Min=value;
|
|
1285
|
+
}
|
|
1286
|
+
|
|
1287
|
+
if (value>yClose)
|
|
1288
|
+
{
|
|
1289
|
+
minuteData.Color="rgb(255,0,0)";
|
|
1290
|
+
minuteData.AreaColor="rgba(255,0,0,0.2)";
|
|
1291
|
+
}
|
|
1292
|
+
else if (value<yClose)
|
|
1293
|
+
{
|
|
1294
|
+
minuteData.Color="rgb(4,139,34)";
|
|
1295
|
+
minuteData.AreaColor="rgba(4,139,34,0.2)";
|
|
1296
|
+
}
|
|
1297
|
+
|
|
1298
|
+
return minuteData;
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1236
1301
|
HQData.Report_RequestStockSortData=function(data, callback)
|
|
1237
1302
|
{
|
|
1238
1303
|
var blockID=data.Request.Data.symbol; //板块代码
|