hqchart 1.1.13963 → 1.1.13969
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 +24 -3
- package/lib/umychart.vue.js +25 -17
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +141 -0
- package/src/jscommon/umychart.TReport.js +2 -0
- package/src/jscommon/umychart.js +28 -0
- package/src/jscommon/umychart.report.js +119 -9
- package/src/jscommon/umychart.testdata.js +141 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +148 -10
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +141 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +150 -10
|
@@ -203,6 +203,12 @@ function JSReportChart(divElement)
|
|
|
203
203
|
if (IFrameSplitOperator.IsNumber(item.Sort)) chart.SortInfo.Sort=item.Sort;
|
|
204
204
|
}
|
|
205
205
|
|
|
206
|
+
if (option.VirtualTable)
|
|
207
|
+
{
|
|
208
|
+
var item=option.VirtualTable;
|
|
209
|
+
if (IFrameSplitOperator.IsBool(item.Enable)) chart.Data.Virtual.Enable=item.Enable;
|
|
210
|
+
}
|
|
211
|
+
|
|
206
212
|
var reportChart=chart.GetReportChart();
|
|
207
213
|
if (reportChart)
|
|
208
214
|
{
|
|
@@ -417,7 +423,7 @@ function JSReportChartContainer(uielement)
|
|
|
417
423
|
this.Symbol; //板块代码
|
|
418
424
|
this.Name; //板块名称
|
|
419
425
|
this.NetworkFilter; //数据回调接口
|
|
420
|
-
this.Data={ XOffset:0, YOffset:0, Data:[] }; //股票列表
|
|
426
|
+
this.Data={ XOffset:0, YOffset:0, Data:[], Virtual:{ Enable:false, Count:0 } }; //股票列表 (Virtual 虚拟表)
|
|
421
427
|
this.SourceData={ Data:[] } ; //原始股票顺序(排序还原用)
|
|
422
428
|
this.BlockData=new Map(); //当前板块数据
|
|
423
429
|
this.MapStockData=new Map(); //原始股票数据
|
|
@@ -786,6 +792,7 @@ function JSReportChartContainer(uielement)
|
|
|
786
792
|
{
|
|
787
793
|
this.SourceData.Data=[];
|
|
788
794
|
this.Data.Data=[];
|
|
795
|
+
this.Data.Virtual.Count=0;
|
|
789
796
|
this.BlockData=new Map();
|
|
790
797
|
}
|
|
791
798
|
|
|
@@ -1042,6 +1049,12 @@ function JSReportChartContainer(uielement)
|
|
|
1042
1049
|
}
|
|
1043
1050
|
}
|
|
1044
1051
|
|
|
1052
|
+
if (recvData.Virtual) //虚拟表设置
|
|
1053
|
+
{
|
|
1054
|
+
var item=recvData.Virtual;
|
|
1055
|
+
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1045
1058
|
this.Draw();
|
|
1046
1059
|
this.UpdateStockData();
|
|
1047
1060
|
}
|
|
@@ -1267,6 +1280,12 @@ function JSReportChartContainer(uielement)
|
|
|
1267
1280
|
var chart=this.ChartPaint[0];
|
|
1268
1281
|
if (!chart) return;
|
|
1269
1282
|
|
|
1283
|
+
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
1284
|
+
{
|
|
1285
|
+
this.RequestVirtualStockData(); //虚拟表格 全部取后台
|
|
1286
|
+
return;
|
|
1287
|
+
}
|
|
1288
|
+
|
|
1270
1289
|
if (this.SortInfo && this.SortInfo.Field>=0 && this.SortInfo.Sort>0)
|
|
1271
1290
|
{
|
|
1272
1291
|
var column=chart.Column[this.SortInfo.Field];
|
|
@@ -2622,8 +2641,9 @@ function JSReportChartContainer(uielement)
|
|
|
2622
2641
|
if (!chart) return false;
|
|
2623
2642
|
|
|
2624
2643
|
var pageSize=chart.GetPageSize();
|
|
2625
|
-
|
|
2626
|
-
if (
|
|
2644
|
+
var dataCount=chart.GetAllRowCount();
|
|
2645
|
+
if (pageSize>dataCount) return false;
|
|
2646
|
+
if (this.Data.YOffset+pageSize>=dataCount)
|
|
2627
2647
|
{
|
|
2628
2648
|
if (bCycle===true)
|
|
2629
2649
|
{
|
|
@@ -2637,7 +2657,7 @@ function JSReportChartContainer(uielement)
|
|
|
2637
2657
|
}
|
|
2638
2658
|
|
|
2639
2659
|
this.Data.YOffset+=pageSize;
|
|
2640
|
-
var showDataCount=
|
|
2660
|
+
var showDataCount=dataCount-this.Data.YOffset;
|
|
2641
2661
|
|
|
2642
2662
|
if (chart.SelectedModel==0)
|
|
2643
2663
|
{
|
|
@@ -2653,13 +2673,14 @@ function JSReportChartContainer(uielement)
|
|
|
2653
2673
|
var chart=this.ChartPaint[0];
|
|
2654
2674
|
if (!chart) return false;
|
|
2655
2675
|
var pageSize=chart.GetPageSize();
|
|
2656
|
-
|
|
2676
|
+
var dataCount=chart.GetAllRowCount();
|
|
2677
|
+
if (pageSize>dataCount) return false;
|
|
2657
2678
|
|
|
2658
2679
|
if (this.Data.YOffset<=0)
|
|
2659
2680
|
{
|
|
2660
2681
|
if (bCycle===true)
|
|
2661
2682
|
{
|
|
2662
|
-
this.Data.YOffset=
|
|
2683
|
+
this.Data.YOffset=dataCount-pageSize; //循环到最后一页
|
|
2663
2684
|
return true;
|
|
2664
2685
|
}
|
|
2665
2686
|
else
|
|
@@ -3097,7 +3118,16 @@ function JSReportChartContainer(uielement)
|
|
|
3097
3118
|
if (column.Sort!=1 && column.Sort!=2) return false;
|
|
3098
3119
|
|
|
3099
3120
|
var sortInfo={ Field:index, Sort:sortType };
|
|
3100
|
-
if (
|
|
3121
|
+
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
3122
|
+
{
|
|
3123
|
+
this.SortInfo.Field=sortInfo.Field;
|
|
3124
|
+
this.SortInfo.Sort=sortInfo.Sort;
|
|
3125
|
+
this.Data.YOffset=0;
|
|
3126
|
+
this.ResetReportSelectStatus();
|
|
3127
|
+
this.RequestVirtualStockData(); //虚拟表格
|
|
3128
|
+
return true;
|
|
3129
|
+
}
|
|
3130
|
+
else if (sortInfo.Sort==0) //不排序还原
|
|
3101
3131
|
{
|
|
3102
3132
|
this.Data.Data=[];
|
|
3103
3133
|
if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))
|
|
@@ -3815,6 +3845,12 @@ function JSReportChartContainer(uielement)
|
|
|
3815
3845
|
}
|
|
3816
3846
|
}
|
|
3817
3847
|
|
|
3848
|
+
if (data.Virtual)
|
|
3849
|
+
{
|
|
3850
|
+
var item=data.Virtual;
|
|
3851
|
+
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
3852
|
+
}
|
|
3853
|
+
|
|
3818
3854
|
var chart=this.ChartPaint[0];
|
|
3819
3855
|
if (!chart) return;
|
|
3820
3856
|
|
|
@@ -3823,6 +3859,70 @@ function JSReportChartContainer(uielement)
|
|
|
3823
3859
|
if (bUpdate) this.Draw();
|
|
3824
3860
|
}
|
|
3825
3861
|
|
|
3862
|
+
//虚拟表格 请求序号 所有数据后台返回
|
|
3863
|
+
this.RequestVirtualStockData=function()
|
|
3864
|
+
{
|
|
3865
|
+
var chart=this.ChartPaint[0];
|
|
3866
|
+
if (!chart) return;
|
|
3867
|
+
|
|
3868
|
+
var self=this;
|
|
3869
|
+
var startIndex=this.Data.YOffset;
|
|
3870
|
+
var pageSize=chart.GetPageSize();
|
|
3871
|
+
var endIndex=startIndex+pageSize;
|
|
3872
|
+
var dataCount=chart.GetAllRowCount();
|
|
3873
|
+
if (endIndex>=dataCount) endIndex=dataCount-1;
|
|
3874
|
+
|
|
3875
|
+
if (!this.NetworkFilter) return;
|
|
3876
|
+
|
|
3877
|
+
var requestData=
|
|
3878
|
+
{
|
|
3879
|
+
range:{ start:startIndex, end:endIndex, count:chart.GetAllRowCount() },
|
|
3880
|
+
column:null,
|
|
3881
|
+
sort:0, symbol:this.Symbol, name:this.Name,
|
|
3882
|
+
pageSize:pageSize
|
|
3883
|
+
}
|
|
3884
|
+
|
|
3885
|
+
if (this.SortInfo && this.SortInfo.Field>=0 && this.SortInfo.Sort>0) //排序
|
|
3886
|
+
{
|
|
3887
|
+
var column=chart.Column[this.SortInfo.Field];
|
|
3888
|
+
requestData.column={ name: column.Title, type: column.Type, index:this.SortInfo.Field, ID:column.ID };
|
|
3889
|
+
requestData.sort=this.SortInfo.Sort;
|
|
3890
|
+
}
|
|
3891
|
+
|
|
3892
|
+
var obj=
|
|
3893
|
+
{
|
|
3894
|
+
Name:'JSDealChartContainer::RequestVirtualStockData', //类名::函数名
|
|
3895
|
+
Explain:'报价列表股票数据(虚拟表格)',
|
|
3896
|
+
Request:
|
|
3897
|
+
{
|
|
3898
|
+
Data: requestData
|
|
3899
|
+
},
|
|
3900
|
+
Self:this,
|
|
3901
|
+
PreventDefault:false
|
|
3902
|
+
};
|
|
3903
|
+
|
|
3904
|
+
if (chart.FixedRowCount>0 && chart.FixedRowData.Type==1)
|
|
3905
|
+
{
|
|
3906
|
+
var arySymbol=[];
|
|
3907
|
+
for(var i=0;i<chart.FixedRowData.Symbol.length;++i)
|
|
3908
|
+
{
|
|
3909
|
+
var item=chart.FixedRowData.Symbol[i];
|
|
3910
|
+
if (item) arySymbol.push(item);
|
|
3911
|
+
}
|
|
3912
|
+
|
|
3913
|
+
obj.Request.FixedSymbol=arySymbol;
|
|
3914
|
+
}
|
|
3915
|
+
|
|
3916
|
+
this.NetworkFilter(obj, function(data)
|
|
3917
|
+
{
|
|
3918
|
+
self.RecvStockSortData(data);
|
|
3919
|
+
self.AutoUpdate();
|
|
3920
|
+
});
|
|
3921
|
+
|
|
3922
|
+
if (obj.PreventDefault==true) return;
|
|
3923
|
+
|
|
3924
|
+
}
|
|
3925
|
+
|
|
3826
3926
|
//底部标签
|
|
3827
3927
|
this.ShowPageInfo=function(bShow)
|
|
3828
3928
|
{
|
|
@@ -4502,8 +4602,9 @@ function ChartReport()
|
|
|
4502
4602
|
this.GetYScrollRange=function()
|
|
4503
4603
|
{
|
|
4504
4604
|
if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return 0;
|
|
4605
|
+
var dataCount=this.GetAllRowCount();
|
|
4505
4606
|
|
|
4506
|
-
var maxOffset=
|
|
4607
|
+
var maxOffset=dataCount-this.RowCount;
|
|
4507
4608
|
|
|
4508
4609
|
return maxOffset;
|
|
4509
4610
|
}
|
|
@@ -5079,6 +5180,14 @@ function ChartReport()
|
|
|
5079
5180
|
this.Canvas.stroke();
|
|
5080
5181
|
}
|
|
5081
5182
|
|
|
5183
|
+
//获取一共多少行
|
|
5184
|
+
this.GetAllRowCount=function()
|
|
5185
|
+
{
|
|
5186
|
+
var count=this.Data.Data.length;
|
|
5187
|
+
if (this.Data.Virtual && this.Data.Virtual.Enable) count=this.Data.Virtual.Count;
|
|
5188
|
+
return count;
|
|
5189
|
+
}
|
|
5190
|
+
|
|
5082
5191
|
this.DrawBody=function()
|
|
5083
5192
|
{
|
|
5084
5193
|
if (!this.Data) return;
|
|
@@ -5118,7 +5227,8 @@ function ChartReport()
|
|
|
5118
5227
|
var setSelected;
|
|
5119
5228
|
if (this.MultiSelectModel==1) setSelected=new Set(this.MultiSelectedRow);
|
|
5120
5229
|
|
|
5121
|
-
|
|
5230
|
+
var dataCount=this.GetAllRowCount();
|
|
5231
|
+
for(var i=this.Data.YOffset, j=0; i<dataCount && j<this.RowCount ;++i, ++j)
|
|
5122
5232
|
{
|
|
5123
5233
|
var symbol=this.Data.Data[i];
|
|
5124
5234
|
|
|
@@ -170,6 +170,10 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
170
170
|
//HQChart使用教程95-报价列表对接第3方数据4-股票排序数据
|
|
171
171
|
HQData.Report_RequestStockSortData(data, callback);
|
|
172
172
|
break;
|
|
173
|
+
case "JSDealChartContainer::RequestVirtualStockData":
|
|
174
|
+
HQData.Report_RequestVirtualStockData(data, callback); //股票数据 虚拟表格
|
|
175
|
+
break;
|
|
176
|
+
|
|
173
177
|
}
|
|
174
178
|
}
|
|
175
179
|
|
|
@@ -1040,6 +1044,30 @@ HQData.Report_RequestStockListData=function(data, callback)
|
|
|
1040
1044
|
|
|
1041
1045
|
}
|
|
1042
1046
|
|
|
1047
|
+
//空码表
|
|
1048
|
+
HQData.Report_RequestStockListData_Empty=function(data, callback)
|
|
1049
|
+
{
|
|
1050
|
+
data.PreventDefault=true;
|
|
1051
|
+
var hqchartData={ data:[] };
|
|
1052
|
+
console.log("[HQData.Report_RequestStockListData_EMPTY] hqchartData",hqchartData);
|
|
1053
|
+
callback(hqchartData);
|
|
1054
|
+
}
|
|
1055
|
+
|
|
1056
|
+
HQData.Report_RequestMemberVirtualListData=function(data, callback, option)
|
|
1057
|
+
{
|
|
1058
|
+
var symbol=data.Request.Data.symbol; //板块代码
|
|
1059
|
+
data.PreventDefault=true;
|
|
1060
|
+
|
|
1061
|
+
var hqchartData= { symbol:symbol , name:symbol, data:[] , code:0, Virtual:{ Count:option.Virtual.Count } };
|
|
1062
|
+
|
|
1063
|
+
for(var i=0; i<SHSZ_STOCK_LIST_TEST_DATA.symbol.length && i<50; ++i )
|
|
1064
|
+
{
|
|
1065
|
+
hqchartData.data.push(SHSZ_STOCK_LIST_TEST_DATA.symbol[i]);
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
callback(hqchartData);
|
|
1069
|
+
}
|
|
1070
|
+
|
|
1043
1071
|
//板块|行业等成分列表
|
|
1044
1072
|
HQData.Report_RequestMemberListDat=function(data, callback)
|
|
1045
1073
|
{
|
|
@@ -1305,6 +1333,119 @@ HQData.Report_RequestStockSortData=function(data, callback)
|
|
|
1305
1333
|
}
|
|
1306
1334
|
|
|
1307
1335
|
|
|
1336
|
+
HQData.Report_RequestVirtualStockData=function(data, callback)
|
|
1337
|
+
{
|
|
1338
|
+
var blockID=data.Request.Data.symbol; //板块代码
|
|
1339
|
+
var range=data.Request.Data.range; //排序范围
|
|
1340
|
+
var column=data.Request.Data.column; //排序列信息
|
|
1341
|
+
var sortType=data.Request.Data.sort; //排序方向
|
|
1342
|
+
var pageSize=data.Request.Data.pageSize;
|
|
1343
|
+
data.PreventDefault=true;
|
|
1344
|
+
|
|
1345
|
+
var start=range.start;
|
|
1346
|
+
var end=range.end;
|
|
1347
|
+
if (start>0) start-=pageSize;
|
|
1348
|
+
if (start<0) start=0;
|
|
1349
|
+
end+=pageSize;
|
|
1350
|
+
|
|
1351
|
+
var count=end-start+1;
|
|
1352
|
+
|
|
1353
|
+
var aryData=[];
|
|
1354
|
+
var aryIndex=[];
|
|
1355
|
+
|
|
1356
|
+
if (IFrameSplitOperator.IsNonEmptyArray(SHSZ_STOCK_LIST_TEST_DATA.symbol))
|
|
1357
|
+
{
|
|
1358
|
+
var randomStart = Math.floor(Math.random()*(SHSZ_STOCK_LIST_TEST_DATA.symbol.length-1));
|
|
1359
|
+
var symbolCount=SHSZ_STOCK_LIST_TEST_DATA.symbol.length;
|
|
1360
|
+
for(var i=0;i<count;++i)
|
|
1361
|
+
{
|
|
1362
|
+
var dataIndex=(randomStart+i)%symbolCount;
|
|
1363
|
+
var symbol=SHSZ_STOCK_LIST_TEST_DATA.symbol[dataIndex];
|
|
1364
|
+
var name=SHSZ_STOCK_LIST_TEST_DATA.name[dataIndex];
|
|
1365
|
+
var price=SHSZ_STOCK_LIST_TEST_DATA.close[dataIndex];
|
|
1366
|
+
var vol=SHSZ_STOCK_LIST_TEST_DATA.vol[dataIndex];
|
|
1367
|
+
var newItem=
|
|
1368
|
+
[
|
|
1369
|
+
symbol,
|
|
1370
|
+
name,
|
|
1371
|
+
SHSZ_STOCK_LIST_TEST_DATA.yclose[dataIndex],
|
|
1372
|
+
SHSZ_STOCK_LIST_TEST_DATA.open[dataIndex],
|
|
1373
|
+
SHSZ_STOCK_LIST_TEST_DATA.high[dataIndex],
|
|
1374
|
+
SHSZ_STOCK_LIST_TEST_DATA.low[dataIndex],
|
|
1375
|
+
price,
|
|
1376
|
+
vol,
|
|
1377
|
+
SHSZ_STOCK_LIST_TEST_DATA.amount[dataIndex],
|
|
1378
|
+
];
|
|
1379
|
+
|
|
1380
|
+
//买价 量
|
|
1381
|
+
newItem[9]=price+0.05;
|
|
1382
|
+
newItem[10]=10;
|
|
1383
|
+
|
|
1384
|
+
//卖价 量
|
|
1385
|
+
newItem[11]=price-0.06;
|
|
1386
|
+
newItem[12]=5;
|
|
1387
|
+
|
|
1388
|
+
//均价
|
|
1389
|
+
newItem[13]=price-0.03;
|
|
1390
|
+
|
|
1391
|
+
//内盘
|
|
1392
|
+
newItem[18]=vol/4;
|
|
1393
|
+
//外盘
|
|
1394
|
+
newItem[19]=vol/5;
|
|
1395
|
+
|
|
1396
|
+
newItem[14]=vol*1.5; //流通股本
|
|
1397
|
+
newItem[15]=vol*1.8; //总股本
|
|
1398
|
+
|
|
1399
|
+
//换手率
|
|
1400
|
+
newItem[23]=(Math.round(Math.random()*60))/100;
|
|
1401
|
+
|
|
1402
|
+
//名字字段
|
|
1403
|
+
var symbolEx={ Text:name };
|
|
1404
|
+
if (i%20==5)
|
|
1405
|
+
symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue629', Color:'rgb(255,165,0)'}, { Text:'\ue627', Color:'#1c65db'} ] };
|
|
1406
|
+
else if (i%20==9)
|
|
1407
|
+
symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue629', Color:'rgb(255,165,0)'}] } ;
|
|
1408
|
+
else if (i%20==18)
|
|
1409
|
+
symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue627', Color:'#1c65db'}] } ;
|
|
1410
|
+
|
|
1411
|
+
newItem[27]=symbolEx;
|
|
1412
|
+
|
|
1413
|
+
|
|
1414
|
+
//扩展数据 (定制数据)
|
|
1415
|
+
var extendData=[];
|
|
1416
|
+
newItem[30]=extendData;
|
|
1417
|
+
|
|
1418
|
+
//行业
|
|
1419
|
+
extendData[0]="行业X";
|
|
1420
|
+
//地区
|
|
1421
|
+
extendData[1]="地区X";
|
|
1422
|
+
|
|
1423
|
+
//PE|PB
|
|
1424
|
+
extendData[2]=(Math.round(Math.random()*60))/100;
|
|
1425
|
+
extendData[3]=(Math.round(Math.random()*60))/100;
|
|
1426
|
+
extendData[4]=(Math.round(Math.random()*60))/100;
|
|
1427
|
+
extendData[5]=(Math.round(Math.random()*60))/100;
|
|
1428
|
+
|
|
1429
|
+
|
|
1430
|
+
//周涨幅
|
|
1431
|
+
extendData[6]=(Math.round(Math.random()*60))/100;
|
|
1432
|
+
extendData[7]=(Math.round(Math.random()*60))/100;
|
|
1433
|
+
extendData[8]=(Math.round(Math.random()*60))/100;
|
|
1434
|
+
|
|
1435
|
+
|
|
1436
|
+
aryData.push(newItem);
|
|
1437
|
+
aryIndex.push(start+i);
|
|
1438
|
+
}
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1441
|
+
var hqchartData={ data:aryData, index:aryIndex, filedindex:-1, sort:sortType, symbol:blockID };
|
|
1442
|
+
|
|
1443
|
+
if (column) hqchartData.filedindex=column.index;
|
|
1444
|
+
|
|
1445
|
+
callback(hqchartData);
|
|
1446
|
+
}
|
|
1447
|
+
|
|
1448
|
+
|
|
1308
1449
|
|
|
1309
1450
|
HQData.Keyboard_RequestSymbolList=function(data, callback)
|
|
1310
1451
|
{
|
|
@@ -48553,8 +48553,36 @@ function RectSelectPaint()
|
|
|
48553
48553
|
return null;
|
|
48554
48554
|
}
|
|
48555
48555
|
|
|
48556
|
+
this.GetSelectRectDataByOnePoint=function()
|
|
48557
|
+
{
|
|
48558
|
+
if (!this.FirstPoint) return null;
|
|
48559
|
+
|
|
48560
|
+
var data=this.GetKData();
|
|
48561
|
+
if (!data) return null;
|
|
48562
|
+
var isMinuteChart=this.IsMinuteChart();
|
|
48563
|
+
var firstDate=this.DateToNumber(this.FirstPoint,isMinuteChart);
|
|
48564
|
+
var selectData={ Start:null, End:null, Data:data };
|
|
48565
|
+
for(var i=0;i<data.Data.length;++i)
|
|
48566
|
+
{
|
|
48567
|
+
var item=data.Data[i];
|
|
48568
|
+
if (!item) continue;
|
|
48569
|
+
var value=this.DateToNumber(item,isMinuteChart);
|
|
48570
|
+
|
|
48571
|
+
if (firstDate==value)
|
|
48572
|
+
{
|
|
48573
|
+
selectData.Start=i;
|
|
48574
|
+
selectData.End=i;
|
|
48575
|
+
return selectData;
|
|
48576
|
+
}
|
|
48577
|
+
}
|
|
48578
|
+
|
|
48579
|
+
return null;
|
|
48580
|
+
}
|
|
48581
|
+
|
|
48556
48582
|
this.GetSelectRectData=function()
|
|
48557
48583
|
{
|
|
48584
|
+
if (this.IsOnlyOnePoint) return this.GetSelectRectDataByOnePoint();
|
|
48585
|
+
|
|
48558
48586
|
if (!this.FirstPoint || !this.SecondPoint) return null;
|
|
48559
48587
|
|
|
48560
48588
|
var data=this.GetKData();
|
|
@@ -127661,6 +127689,12 @@ function JSReportChart(divElement)
|
|
|
127661
127689
|
if (IFrameSplitOperator.IsNumber(item.Sort)) chart.SortInfo.Sort=item.Sort;
|
|
127662
127690
|
}
|
|
127663
127691
|
|
|
127692
|
+
if (option.VirtualTable)
|
|
127693
|
+
{
|
|
127694
|
+
var item=option.VirtualTable;
|
|
127695
|
+
if (IFrameSplitOperator.IsBool(item.Enable)) chart.Data.Virtual.Enable=item.Enable;
|
|
127696
|
+
}
|
|
127697
|
+
|
|
127664
127698
|
var reportChart=chart.GetReportChart();
|
|
127665
127699
|
if (reportChart)
|
|
127666
127700
|
{
|
|
@@ -127875,7 +127909,7 @@ function JSReportChartContainer(uielement)
|
|
|
127875
127909
|
this.Symbol; //板块代码
|
|
127876
127910
|
this.Name; //板块名称
|
|
127877
127911
|
this.NetworkFilter; //数据回调接口
|
|
127878
|
-
this.Data={ XOffset:0, YOffset:0, Data:[] }; //股票列表
|
|
127912
|
+
this.Data={ XOffset:0, YOffset:0, Data:[], Virtual:{ Enable:false, Count:0 } }; //股票列表 (Virtual 虚拟表)
|
|
127879
127913
|
this.SourceData={ Data:[] } ; //原始股票顺序(排序还原用)
|
|
127880
127914
|
this.BlockData=new Map(); //当前板块数据
|
|
127881
127915
|
this.MapStockData=new Map(); //原始股票数据
|
|
@@ -128244,6 +128278,7 @@ function JSReportChartContainer(uielement)
|
|
|
128244
128278
|
{
|
|
128245
128279
|
this.SourceData.Data=[];
|
|
128246
128280
|
this.Data.Data=[];
|
|
128281
|
+
this.Data.Virtual.Count=0;
|
|
128247
128282
|
this.BlockData=new Map();
|
|
128248
128283
|
}
|
|
128249
128284
|
|
|
@@ -128500,6 +128535,12 @@ function JSReportChartContainer(uielement)
|
|
|
128500
128535
|
}
|
|
128501
128536
|
}
|
|
128502
128537
|
|
|
128538
|
+
if (recvData.Virtual) //虚拟表设置
|
|
128539
|
+
{
|
|
128540
|
+
var item=recvData.Virtual;
|
|
128541
|
+
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
128542
|
+
}
|
|
128543
|
+
|
|
128503
128544
|
this.Draw();
|
|
128504
128545
|
this.UpdateStockData();
|
|
128505
128546
|
}
|
|
@@ -128725,6 +128766,12 @@ function JSReportChartContainer(uielement)
|
|
|
128725
128766
|
var chart=this.ChartPaint[0];
|
|
128726
128767
|
if (!chart) return;
|
|
128727
128768
|
|
|
128769
|
+
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
128770
|
+
{
|
|
128771
|
+
this.RequestVirtualStockData(); //虚拟表格 全部取后台
|
|
128772
|
+
return;
|
|
128773
|
+
}
|
|
128774
|
+
|
|
128728
128775
|
if (this.SortInfo && this.SortInfo.Field>=0 && this.SortInfo.Sort>0)
|
|
128729
128776
|
{
|
|
128730
128777
|
var column=chart.Column[this.SortInfo.Field];
|
|
@@ -130080,8 +130127,9 @@ function JSReportChartContainer(uielement)
|
|
|
130080
130127
|
if (!chart) return false;
|
|
130081
130128
|
|
|
130082
130129
|
var pageSize=chart.GetPageSize();
|
|
130083
|
-
|
|
130084
|
-
if (
|
|
130130
|
+
var dataCount=chart.GetAllRowCount();
|
|
130131
|
+
if (pageSize>dataCount) return false;
|
|
130132
|
+
if (this.Data.YOffset+pageSize>=dataCount)
|
|
130085
130133
|
{
|
|
130086
130134
|
if (bCycle===true)
|
|
130087
130135
|
{
|
|
@@ -130095,7 +130143,7 @@ function JSReportChartContainer(uielement)
|
|
|
130095
130143
|
}
|
|
130096
130144
|
|
|
130097
130145
|
this.Data.YOffset+=pageSize;
|
|
130098
|
-
var showDataCount=
|
|
130146
|
+
var showDataCount=dataCount-this.Data.YOffset;
|
|
130099
130147
|
|
|
130100
130148
|
if (chart.SelectedModel==0)
|
|
130101
130149
|
{
|
|
@@ -130111,13 +130159,14 @@ function JSReportChartContainer(uielement)
|
|
|
130111
130159
|
var chart=this.ChartPaint[0];
|
|
130112
130160
|
if (!chart) return false;
|
|
130113
130161
|
var pageSize=chart.GetPageSize();
|
|
130114
|
-
|
|
130162
|
+
var dataCount=chart.GetAllRowCount();
|
|
130163
|
+
if (pageSize>dataCount) return false;
|
|
130115
130164
|
|
|
130116
130165
|
if (this.Data.YOffset<=0)
|
|
130117
130166
|
{
|
|
130118
130167
|
if (bCycle===true)
|
|
130119
130168
|
{
|
|
130120
|
-
this.Data.YOffset=
|
|
130169
|
+
this.Data.YOffset=dataCount-pageSize; //循环到最后一页
|
|
130121
130170
|
return true;
|
|
130122
130171
|
}
|
|
130123
130172
|
else
|
|
@@ -130555,7 +130604,16 @@ function JSReportChartContainer(uielement)
|
|
|
130555
130604
|
if (column.Sort!=1 && column.Sort!=2) return false;
|
|
130556
130605
|
|
|
130557
130606
|
var sortInfo={ Field:index, Sort:sortType };
|
|
130558
|
-
if (
|
|
130607
|
+
if (this.Data.Virtual && this.Data.Virtual.Enable)
|
|
130608
|
+
{
|
|
130609
|
+
this.SortInfo.Field=sortInfo.Field;
|
|
130610
|
+
this.SortInfo.Sort=sortInfo.Sort;
|
|
130611
|
+
this.Data.YOffset=0;
|
|
130612
|
+
this.ResetReportSelectStatus();
|
|
130613
|
+
this.RequestVirtualStockData(); //虚拟表格
|
|
130614
|
+
return true;
|
|
130615
|
+
}
|
|
130616
|
+
else if (sortInfo.Sort==0) //不排序还原
|
|
130559
130617
|
{
|
|
130560
130618
|
this.Data.Data=[];
|
|
130561
130619
|
if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))
|
|
@@ -131273,6 +131331,12 @@ function JSReportChartContainer(uielement)
|
|
|
131273
131331
|
}
|
|
131274
131332
|
}
|
|
131275
131333
|
|
|
131334
|
+
if (data.Virtual)
|
|
131335
|
+
{
|
|
131336
|
+
var item=data.Virtual;
|
|
131337
|
+
if (IFrameSplitOperator.IsNumber(item.Count)) this.Data.Virtual.Count=item.Count;
|
|
131338
|
+
}
|
|
131339
|
+
|
|
131276
131340
|
var chart=this.ChartPaint[0];
|
|
131277
131341
|
if (!chart) return;
|
|
131278
131342
|
|
|
@@ -131281,6 +131345,70 @@ function JSReportChartContainer(uielement)
|
|
|
131281
131345
|
if (bUpdate) this.Draw();
|
|
131282
131346
|
}
|
|
131283
131347
|
|
|
131348
|
+
//虚拟表格 请求序号 所有数据后台返回
|
|
131349
|
+
this.RequestVirtualStockData=function()
|
|
131350
|
+
{
|
|
131351
|
+
var chart=this.ChartPaint[0];
|
|
131352
|
+
if (!chart) return;
|
|
131353
|
+
|
|
131354
|
+
var self=this;
|
|
131355
|
+
var startIndex=this.Data.YOffset;
|
|
131356
|
+
var pageSize=chart.GetPageSize();
|
|
131357
|
+
var endIndex=startIndex+pageSize;
|
|
131358
|
+
var dataCount=chart.GetAllRowCount();
|
|
131359
|
+
if (endIndex>=dataCount) endIndex=dataCount-1;
|
|
131360
|
+
|
|
131361
|
+
if (!this.NetworkFilter) return;
|
|
131362
|
+
|
|
131363
|
+
var requestData=
|
|
131364
|
+
{
|
|
131365
|
+
range:{ start:startIndex, end:endIndex, count:chart.GetAllRowCount() },
|
|
131366
|
+
column:null,
|
|
131367
|
+
sort:0, symbol:this.Symbol, name:this.Name,
|
|
131368
|
+
pageSize:pageSize
|
|
131369
|
+
}
|
|
131370
|
+
|
|
131371
|
+
if (this.SortInfo && this.SortInfo.Field>=0 && this.SortInfo.Sort>0) //排序
|
|
131372
|
+
{
|
|
131373
|
+
var column=chart.Column[this.SortInfo.Field];
|
|
131374
|
+
requestData.column={ name: column.Title, type: column.Type, index:this.SortInfo.Field, ID:column.ID };
|
|
131375
|
+
requestData.sort=this.SortInfo.Sort;
|
|
131376
|
+
}
|
|
131377
|
+
|
|
131378
|
+
var obj=
|
|
131379
|
+
{
|
|
131380
|
+
Name:'JSDealChartContainer::RequestVirtualStockData', //类名::函数名
|
|
131381
|
+
Explain:'报价列表股票数据(虚拟表格)',
|
|
131382
|
+
Request:
|
|
131383
|
+
{
|
|
131384
|
+
Data: requestData
|
|
131385
|
+
},
|
|
131386
|
+
Self:this,
|
|
131387
|
+
PreventDefault:false
|
|
131388
|
+
};
|
|
131389
|
+
|
|
131390
|
+
if (chart.FixedRowCount>0 && chart.FixedRowData.Type==1)
|
|
131391
|
+
{
|
|
131392
|
+
var arySymbol=[];
|
|
131393
|
+
for(var i=0;i<chart.FixedRowData.Symbol.length;++i)
|
|
131394
|
+
{
|
|
131395
|
+
var item=chart.FixedRowData.Symbol[i];
|
|
131396
|
+
if (item) arySymbol.push(item);
|
|
131397
|
+
}
|
|
131398
|
+
|
|
131399
|
+
obj.Request.FixedSymbol=arySymbol;
|
|
131400
|
+
}
|
|
131401
|
+
|
|
131402
|
+
this.NetworkFilter(obj, function(data)
|
|
131403
|
+
{
|
|
131404
|
+
self.RecvStockSortData(data);
|
|
131405
|
+
self.AutoUpdate();
|
|
131406
|
+
});
|
|
131407
|
+
|
|
131408
|
+
if (obj.PreventDefault==true) return;
|
|
131409
|
+
|
|
131410
|
+
}
|
|
131411
|
+
|
|
131284
131412
|
//底部标签
|
|
131285
131413
|
this.ShowPageInfo=function(bShow)
|
|
131286
131414
|
{
|
|
@@ -131960,8 +132088,9 @@ function ChartReport()
|
|
|
131960
132088
|
this.GetYScrollRange=function()
|
|
131961
132089
|
{
|
|
131962
132090
|
if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return 0;
|
|
132091
|
+
var dataCount=this.GetAllRowCount();
|
|
131963
132092
|
|
|
131964
|
-
var maxOffset=
|
|
132093
|
+
var maxOffset=dataCount-this.RowCount;
|
|
131965
132094
|
|
|
131966
132095
|
return maxOffset;
|
|
131967
132096
|
}
|
|
@@ -132537,6 +132666,14 @@ function ChartReport()
|
|
|
132537
132666
|
this.Canvas.stroke();
|
|
132538
132667
|
}
|
|
132539
132668
|
|
|
132669
|
+
//获取一共多少行
|
|
132670
|
+
this.GetAllRowCount=function()
|
|
132671
|
+
{
|
|
132672
|
+
var count=this.Data.Data.length;
|
|
132673
|
+
if (this.Data.Virtual && this.Data.Virtual.Enable) count=this.Data.Virtual.Count;
|
|
132674
|
+
return count;
|
|
132675
|
+
}
|
|
132676
|
+
|
|
132540
132677
|
this.DrawBody=function()
|
|
132541
132678
|
{
|
|
132542
132679
|
if (!this.Data) return;
|
|
@@ -132576,7 +132713,8 @@ function ChartReport()
|
|
|
132576
132713
|
var setSelected;
|
|
132577
132714
|
if (this.MultiSelectModel==1) setSelected=new Set(this.MultiSelectedRow);
|
|
132578
132715
|
|
|
132579
|
-
|
|
132716
|
+
var dataCount=this.GetAllRowCount();
|
|
132717
|
+
for(var i=this.Data.YOffset, j=0; i<dataCount && j<this.RowCount ;++i, ++j)
|
|
132580
132718
|
{
|
|
132581
132719
|
var symbol=this.Data.Data[i];
|
|
132582
132720
|
|
|
@@ -139177,7 +139315,7 @@ function ScrollBarBGChart()
|
|
|
139177
139315
|
|
|
139178
139316
|
|
|
139179
139317
|
|
|
139180
|
-
var HQCHART_VERSION="1.1.
|
|
139318
|
+
var HQCHART_VERSION="1.1.13968";
|
|
139181
139319
|
|
|
139182
139320
|
function PrintHQChartVersion()
|
|
139183
139321
|
{
|