hqchart 1.1.14104 → 1.1.14115

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.
@@ -13947,7 +13947,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
13947
13947
  if (srcParam)
13948
13948
  {
13949
13949
  this.DestroyPopMinuteChart();
13950
- this.InitalPopMinuteChart( {KLine:{KLineDoubleClick:true}} );
13950
+ this.InitalPopMinuteChart( { PopMinuteChart:{ Enable:true }} );
13951
13951
  }
13952
13952
  else
13953
13953
  {
@@ -72674,6 +72674,9 @@ function JSChartResource()
72674
72674
  {
72675
72675
  BGColor:"rgba(250,250,250,0.95)",
72676
72676
  BorderColor:"rgb(0,0,0)",
72677
+
72678
+ TitleColor:'rgb(250,250,250)', //标题颜色
72679
+ TitleBGColor:"rgb(200, 66, 69)", //标题背景颜色
72677
72680
  }
72678
72681
 
72679
72682
  this.SelectRectBGColor="rgba(1,130,212,0.06)"; //背景色
@@ -74175,6 +74178,8 @@ function JSChartResource()
74175
74178
  var item=style.PopMinuteChart;
74176
74179
  if (item.BGColor) this.PopMinuteChart.BGColor=item.BGColor;
74177
74180
  if (item.BorderColor) this.PopMinuteChart.BorderColor=item.BorderColor;
74181
+ if (item.TitleColor) this.DialogSearchIndex.TitleColor=item.TitleColor;
74182
+ if (item.TitleBGColor) this.DialogSearchIndex.TitleBGColor=item.TitleBGColor;
74178
74183
  }
74179
74184
 
74180
74185
  if (style.DefaultTextColor) this.DefaultTextColor = style.DefaultTextColor;
@@ -77346,9 +77351,16 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
77346
77351
 
77347
77352
  this.InitalPopMinuteChart=function(option)
77348
77353
  {
77349
- if (!option || !option.KLine) return false;
77350
- var item=option.KLine;
77351
- if (item.KLineDoubleClick===true)
77354
+ if (!option) return false;
77355
+
77356
+ if (option.PopMinuteChart && option.PopMinuteChart.Enable) //新的配置格式
77357
+ {
77358
+ var item=option.PopMinuteChart;
77359
+ this.PopMinuteChart=new JSPopMinuteChart();
77360
+ this.PopMinuteChart.Inital(this, item);
77361
+ return true;
77362
+ }
77363
+ else if (option.KLine && option.KLine.KLineDoubleClick===true) //旧的格式 不要使用了
77352
77364
  {
77353
77365
  this.PopMinuteChart=new JSPopMinuteChart();
77354
77366
  this.PopMinuteChart.Inital(this);
@@ -124684,7 +124696,7 @@ function GetBlackStyle()
124684
124696
 
124685
124697
  PopMinuteChart:
124686
124698
  {
124687
- BGColor:"rgba(0,0,0,0.95)",
124699
+ BGColor:"rgba(0,0,0,0.85)",
124688
124700
  BorderColor:"rgb(230,230,230)",
124689
124701
  },
124690
124702
 
@@ -127099,6 +127111,11 @@ function JSReportChart(divElement)
127099
127111
  this.CreateExtraCanvasElement(JSReportChart.TooltipCursorCanvasKey, { ZIndex:99 });
127100
127112
  }
127101
127113
 
127114
+ if (option.MinuteChartTooltip && option.MinuteChartTooltip.Enable)
127115
+ {
127116
+ chart.InitalMinuteChartTooltip(option.MinuteChartTooltip);
127117
+ }
127118
+
127102
127119
  if (option.Symbol) chart.Symbol=option.Symbol;
127103
127120
  if (option.Name) chart.Name=option.Name;
127104
127121
 
@@ -127421,6 +127438,9 @@ function JSReportChartContainer(uielement)
127421
127438
  this.JSPopMenu; //内置菜单
127422
127439
  this.IsShowRightMenu=true;
127423
127440
 
127441
+ //
127442
+ this.TooltipMinuteChart; //分时图
127443
+
127424
127444
  //MouseOnStatus:{ RowIndex:行, ColumnIndex:列}
127425
127445
  this.LastMouseStatus={ MoveStatus:null, TooltipStatus:null, MouseOnStatus:null };
127426
127446
 
@@ -127428,6 +127448,8 @@ function JSReportChartContainer(uielement)
127428
127448
  {
127429
127449
  this.IsDestroy=true;
127430
127450
  this.StopAutoUpdate();
127451
+
127452
+ this.DestroyMinuteChartTooltip();
127431
127453
  }
127432
127454
 
127433
127455
  this.StopAutoDragScrollTimer=function()
@@ -127449,6 +127471,48 @@ function JSReportChartContainer(uielement)
127449
127471
  this.JSPopMenu.Inital();
127450
127472
  }
127451
127473
 
127474
+ this.InitalMinuteChartTooltip=function(option)
127475
+ {
127476
+ if (this.TooltipMinuteChart) return;
127477
+
127478
+ this.TooltipMinuteChart=new JSTooltipMinuteChart();
127479
+ this.TooltipMinuteChart.Inital(this, option);
127480
+ this.TooltipMinuteChart.Create();
127481
+ }
127482
+
127483
+ this.DestroyMinuteChartTooltip=function()
127484
+ {
127485
+ if (!this.TooltipMinuteChart) return;
127486
+
127487
+ this.TooltipMinuteChart.Destroy();
127488
+ this.TooltipMinuteChart=null;
127489
+ }
127490
+
127491
+ //data={ Symbol }
127492
+ this.ShowMinuteChartTooltip=function(x,y, data)
127493
+ {
127494
+ if (!this.TooltipMinuteChart) return;
127495
+
127496
+ var rtClient=this.UIElement.getBoundingClientRect();
127497
+ var rtScroll=GetScrollPosition();
127498
+
127499
+ var offsetLeft=rtClient.left+rtScroll.Left;
127500
+ var offsetTop=rtClient.top+rtScroll.Top;
127501
+
127502
+ data.Offset={ Left:offsetLeft, Top:offsetTop };
127503
+
127504
+ this.TooltipMinuteChart.Show(data, x,y);
127505
+ }
127506
+
127507
+ this.HideMinuteChartTooltip=function()
127508
+ {
127509
+ if (!this.TooltipMinuteChart) return;
127510
+
127511
+ this.TooltipMinuteChart.Hide();
127512
+ }
127513
+
127514
+
127515
+
127452
127516
  this.AutoScrollPage=function(step)
127453
127517
  {
127454
127518
  this.AutoDragScrollTimer=setTimeout(() =>
@@ -128476,6 +128540,19 @@ function JSReportChartContainer(uielement)
128476
128540
  if (IFrameSplitOperator.IsNumber(item[308]) || IFrameSplitOperator.IsObject(item[308])) stock.ReserveProgressBar8=item[308];
128477
128541
  if (IFrameSplitOperator.IsNumber(item[309]) || IFrameSplitOperator.IsObject(item[309])) stock.ReserveProgressBar9=item[309];
128478
128542
  if (IFrameSplitOperator.IsNumber(item[310]) || IFrameSplitOperator.IsObject(item[310])) stock.ReserveProgressBar10=item[310];
128543
+
128544
+ //10个按钮 351-400 { Title, Enable:, BGColor, TextColor: }
128545
+ if (IFrameSplitOperator.IsObject(item[351])) stock.ReserveButton1=item[351];
128546
+ if (IFrameSplitOperator.IsObject(item[352])) stock.ReserveButton2=item[352];
128547
+ if (IFrameSplitOperator.IsObject(item[353])) stock.ReserveButton3=item[353];
128548
+ if (IFrameSplitOperator.IsObject(item[354])) stock.ReserveButton4=item[354];
128549
+ if (IFrameSplitOperator.IsObject(item[355])) stock.ReserveButton5=item[355];
128550
+ if (IFrameSplitOperator.IsObject(item[356])) stock.ReserveButton6=item[356];
128551
+ if (IFrameSplitOperator.IsObject(item[357])) stock.ReserveButton7=item[357];
128552
+ if (IFrameSplitOperator.IsObject(item[358])) stock.ReserveButton8=item[358];
128553
+ if (IFrameSplitOperator.IsObject(item[359])) stock.ReserveButton9=item[359];
128554
+ if (IFrameSplitOperator.IsObject(item[360])) stock.ReserveButton10=item[360];
128555
+
128479
128556
  }
128480
128557
 
128481
128558
 
@@ -128871,6 +128948,9 @@ function JSReportChartContainer(uielement)
128871
128948
  var bDrawTooltip=false;
128872
128949
  if (this.LastMouseStatus.TooltipStatus) bDrawTooltip=true;
128873
128950
  this.LastMouseStatus.TooltipStatus=null;
128951
+
128952
+ var bShowChartTooltip=false;
128953
+ var chartTooltipData=null;
128874
128954
 
128875
128955
  if (this.DragRow) return;
128876
128956
  if (this.DrawHeader) return;
@@ -128941,8 +129021,19 @@ function JSReportChartContainer(uielement)
128941
129021
  var tooltipData=report.GetTooltipData(x,y); //单元格提示信息
128942
129022
  if (tooltipData)
128943
129023
  {
128944
- this.LastMouseStatus.TooltipStatus={ X:e.clientX, Y:e.clientY, Data:tooltipData };
128945
- bDrawTooltip=true;
129024
+ if (tooltipData.Type==20)
129025
+ {
129026
+ if (tooltipData.Stock && tooltipData.Stock.Symbol)
129027
+ {
129028
+ bShowChartTooltip=true;
129029
+ chartTooltipData={ Symbol:tooltipData.Stock.OriginalSymbol, Rect:tooltipData.Rect };
129030
+ }
129031
+ }
129032
+ else
129033
+ {
129034
+ this.LastMouseStatus.TooltipStatus={ X:x, Y:y, Data:tooltipData, ClientX:e.clientX, ClientY:e.clientY };
129035
+ bDrawTooltip=true;
129036
+ }
128946
129037
  }
128947
129038
  }
128948
129039
 
@@ -128973,6 +129064,15 @@ function JSReportChartContainer(uielement)
128973
129064
 
128974
129065
  if (bDraw || bDrawTab) this.Draw();
128975
129066
  else if (bDrawTooltip) this.DrawTooltip(this.LastMouseStatus.TooltipStatus);
129067
+
129068
+ if (bShowChartTooltip)
129069
+ {
129070
+ this.ShowMinuteChartTooltip(null, null, chartTooltipData);
129071
+ }
129072
+ else
129073
+ {
129074
+ this.HideMinuteChartTooltip();
129075
+ }
128976
129076
  }
128977
129077
 
128978
129078
  this.UIOnMounseOut=function(e)
@@ -131133,6 +131233,18 @@ var REPORT_COLUMN_ID=
131133
131233
  RESERVE_PROGRESS_BAR9_ID:409,
131134
131234
  RESERVE_PROGRESS_BAR10_ID:410,
131135
131235
 
131236
+ //留按钮类型 10个 451-500
131237
+ RESERVE_BUTTON1_ID:451, //ReserveButton1:
131238
+ RESERVE_BUTTON2_ID:452, //ReserveButton2:
131239
+ RESERVE_BUTTON3_ID:453, //ReserveButton3:
131240
+ RESERVE_BUTTON4_ID:454, //ReserveButton4:
131241
+ RESERVE_BUTTON5_ID:455, //ReserveButton5:
131242
+ RESERVE_BUTTON6_ID:456, //ReserveButton6:
131243
+ RESERVE_BUTTON7_ID:457, //ReserveButton7:
131244
+ RESERVE_BUTTON8_ID:458, //ReserveButton8:
131245
+ RESERVE_BUTTON9_ID:459, //ReserveButton9:
131246
+ RESERVE_BUTTON10_ID:460, //ReserveButton10:
131247
+
131136
131248
  }
131137
131249
 
131138
131250
 
@@ -131217,6 +131329,18 @@ var MAP_COLUMN_FIELD=new Map([
131217
131329
  [REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR8_ID,"ReserveProgressBar8"],
131218
131330
  [REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR9_ID,"ReserveProgressBar9"],
131219
131331
  [REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR10_ID,"ReserveProgressBar10"],
131332
+
131333
+
131334
+ [REPORT_COLUMN_ID.RESERVE_BUTTON1_ID,"ReserveButton1"],
131335
+ [REPORT_COLUMN_ID.RESERVE_BUTTON2_ID,"ReserveButton2"],
131336
+ [REPORT_COLUMN_ID.RESERVE_BUTTON3_ID,"ReserveButton3"],
131337
+ [REPORT_COLUMN_ID.RESERVE_BUTTON4_ID,"ReserveButton4"],
131338
+ [REPORT_COLUMN_ID.RESERVE_BUTTON5_ID,"ReserveButton5"],
131339
+ [REPORT_COLUMN_ID.RESERVE_BUTTON6_ID,"ReserveButton6"],
131340
+ [REPORT_COLUMN_ID.RESERVE_BUTTON7_ID,"ReserveButton7"],
131341
+ [REPORT_COLUMN_ID.RESERVE_BUTTON8_ID,"ReserveButton8"],
131342
+ [REPORT_COLUMN_ID.RESERVE_BUTTON9_ID,"ReserveButton9"],
131343
+ [REPORT_COLUMN_ID.RESERVE_BUTTON10_ID,"ReserveButton10"],
131220
131344
  ]);
131221
131345
 
131222
131346
  function ChartReport()
@@ -131399,7 +131523,7 @@ function ChartReport()
131399
131523
  this.RectClient={};
131400
131524
 
131401
131525
  //{ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:drawInfo.Tooltip.Type, Data:{ AryText:[ {Text:xx} ]} };
131402
- //Type:1=数据截断
131526
+ //Type:1=数据截断 2=表头提示信息 20=分时图
131403
131527
  // { Text, Color, Title:, TitleColor, Space, Margin:{ Left, Top, Right, Bottom }}
131404
131528
  this.TooltipRect=[];
131405
131529
 
@@ -131533,6 +131657,7 @@ function ChartReport()
131533
131657
  if (IFrameSplitOperator.IsNumber(item.ColorType)) colItem.ColorType=item.ColorType; //0=默认 1=(>0, =0, <0) 2=(>=0, <0)
131534
131658
  else colItem.IsDrawCallback=false;
131535
131659
  if (item.Icon) colItem.Icon=item.Icon;
131660
+ if (IFrameSplitOperator.IsBool(item.EnableChartTooltip)) colItem.EnableChartTooltip=item.EnableChartTooltip;
131536
131661
 
131537
131662
  //点击表头弹出菜单
131538
131663
  if (IFrameSplitOperator.IsBool(item.EnablePopupHeaderMenu)) colItem.EnablePopupHeaderMenu=item.EnablePopupHeaderMenu;
@@ -131590,6 +131715,11 @@ function ChartReport()
131590
131715
  if (item.Button) colItem.Button=CloneData(item.Button);
131591
131716
  else colItem.Button=this.ButtonConfig;
131592
131717
  }
131718
+ else if (this.IsReserveButtonColumn(item.Type))
131719
+ {
131720
+ if (item.Button) colItem.Button=CloneData(item.Button);
131721
+ else colItem.Button=this.ButtonConfig;
131722
+ }
131593
131723
  else if (item.Type==REPORT_COLUMN_ID.CUSTOM_PROGRESS_ID)
131594
131724
  {
131595
131725
  if (!IFrameSplitOperator.IsNumber(item.DataIndex) && !IFrameSplitOperator.IsNumber(item.BlockIndex)) continue;
@@ -131788,6 +131918,17 @@ function ChartReport()
131788
131918
  { Type:REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR8_ID, Title:"进度条8", TextAlign:"center", FixedWidth:100*GetDevicePixelRatio() },
131789
131919
  { Type:REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR9_ID, Title:"进度条9", TextAlign:"center", FixedWidth:100*GetDevicePixelRatio() },
131790
131920
  { Type:REPORT_COLUMN_ID.RESERVE_PROGRESS_BAR10_ID, Title:"进度条10", TextAlign:"center", FixedWidth:100*GetDevicePixelRatio() },
131921
+
131922
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON1_ID, Title:"按钮1", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131923
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON2_ID, Title:"按钮2", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131924
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON3_ID, Title:"按钮3", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131925
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON4_ID, Title:"按钮4", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131926
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON5_ID, Title:"按钮5", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131927
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON6_ID, Title:"按钮6", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131928
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON7_ID, Title:"按钮7", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131929
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON8_ID, Title:"按钮8", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131930
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON9_ID, Title:"按钮9", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131931
+ { Type:REPORT_COLUMN_ID.RESERVE_BUTTON10_ID, Title:"按钮10", TextAlign:"center", FixedWidth:50*GetDevicePixelRatio() },
131791
131932
 
131792
131933
  ];
131793
131934
 
@@ -132892,6 +133033,10 @@ function ChartReport()
132892
133033
  {
132893
133034
  this.FormatReserveProgressBar(column, stock, drawInfo);
132894
133035
  }
133036
+ else if (this.IsReserveButtonColumn(column.Type))
133037
+ {
133038
+ this.FormatReserveButton(column, stock, drawInfo);
133039
+ }
132895
133040
 
132896
133041
 
132897
133042
  //拖拽行颜色
@@ -132910,7 +133055,7 @@ function ChartReport()
132910
133055
  {
132911
133056
  this.DrawCheckbox(drawInfo, left, top, itemWidth);
132912
133057
  }
132913
- else if (column.Type==REPORT_COLUMN_ID.CUSTOM_BUTTON_ID)
133058
+ else if (column.Type==REPORT_COLUMN_ID.CUSTOM_BUTTON_ID || this.IsReserveButtonColumn(column.Type))
132914
133059
  {
132915
133060
  this.DrawButton(drawInfo, left, top, itemWidth);
132916
133061
  }
@@ -132952,12 +133097,19 @@ function ChartReport()
132952
133097
  var tooltipData={ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:drawInfo.Tooltip.Type, Data:drawInfo.Tooltip.Data };
132953
133098
  this.TooltipRect.push(tooltipData);
132954
133099
  }
133100
+ else if (column.EnableChartTooltip)
133101
+ {
133102
+ var tooltipData={ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:20 };
133103
+ this.TooltipRect.push(tooltipData);
133104
+ }
132955
133105
 
132956
133106
  if (drawInfo.Botton)
132957
133107
  {
132958
133108
  var buttonData={ Stock:stock, Index:index, ColumnIndex:columnIndex, Column:column, Rect:drawInfo.Botton.Rect, Type:drawInfo.Botton.Type, Data:drawInfo.Data };
132959
133109
  this.ButtonRect.push(buttonData);
132960
133110
  }
133111
+
133112
+
132961
133113
  }
132962
133114
 
132963
133115
  this.IsReserveProgressBarColumn=function(value)
@@ -132972,6 +133124,18 @@ function ChartReport()
132972
133124
  return ARARY_TYPE.includes(value);
132973
133125
  }
132974
133126
 
133127
+ this.IsReserveButtonColumn=function(value)
133128
+ {
133129
+ var ARARY_TYPE=
133130
+ [
133131
+ REPORT_COLUMN_ID.RESERVE_BUTTON1_ID, REPORT_COLUMN_ID.RESERVE_BUTTON2_ID,REPORT_COLUMN_ID.RESERVE_BUTTON3_ID,
133132
+ REPORT_COLUMN_ID.RESERVE_BUTTON4_ID,REPORT_COLUMN_ID.RESERVE_BUTTON5_ID,REPORT_COLUMN_ID.RESERVE_BUTTON6_ID,REPORT_COLUMN_ID.RESERVE_BUTTON7_ID,
133133
+ REPORT_COLUMN_ID.RESERVE_BUTTON8_ID,REPORT_COLUMN_ID.RESERVE_BUTTON9_ID,REPORT_COLUMN_ID.RESERVE_BUTTON10_ID
133134
+ ];
133135
+
133136
+ return ARARY_TYPE.includes(value);
133137
+ }
133138
+
132975
133139
  this.DrawCustomText=function(drawInfo, column, left, top, cellWidth)
132976
133140
  {
132977
133141
  if (!drawInfo.Text) return;
@@ -133419,6 +133583,22 @@ function ChartReport()
133419
133583
  }
133420
133584
  }
133421
133585
 
133586
+ this.FormatReserveButton=function(column, data, drawInfo)
133587
+ {
133588
+ var fieldName=MAP_COLUMN_FIELD.get(column.Type);
133589
+ if (!data || !fieldName) return;
133590
+ var item=data[fieldName];
133591
+ if (!item) return;
133592
+
133593
+ drawInfo.Text=item.Title;
133594
+ drawInfo.Button=column.Button;
133595
+ drawInfo.Font=column.Button.Font;
133596
+ drawInfo.Enable=true;
133597
+ drawInfo.Data=item;
133598
+
133599
+ if (IFrameSplitOperator.IsBool(item.Enable)) drawInfo.Enable=item.Enable;
133600
+ }
133601
+
133422
133602
  this.FormaTimeDrawInfo=function(column, stock, drawInfo, data)
133423
133603
  {
133424
133604
  if (!IFrameSplitOperator.IsNumber(stock.Time)) return;
@@ -139186,7 +139366,7 @@ function ScrollBarBGChart()
139186
139366
 
139187
139367
 
139188
139368
 
139189
- var HQCHART_VERSION="1.1.14103";
139369
+ var HQCHART_VERSION="1.1.14114";
139190
139370
 
139191
139371
  function PrintHQChartVersion()
139192
139372
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14103";
8
+ var HQCHART_VERSION="1.1.14114";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -55719,7 +55719,7 @@ HQData.Minute_RequestMinuteData=function(data, callback)
55719
55719
  setTimeout(()=>{
55720
55720
  var fullData=HQData.GetDayMinuteDataBySymbol(symbol);
55721
55721
  var srcStock=fullData[0];
55722
- var stockItem={ date:srcStock.date, minute:srcStock.minute, yclose:srcStock.yclose, symbol:srcStock.symbol, name:srcStock.name };
55722
+ var stockItem={ date:srcStock.date, minute:srcStock.minute, yclose:srcStock.yclose, symbol:symbol, name:symbol };
55723
55723
  if (callcation.Before)
55724
55724
  {
55725
55725
  var before=
@@ -55744,7 +55744,10 @@ HQData.Minute_RequestMinuteData=function(data, callback)
55744
55744
  stockItem.beforeinfo=beforeinfo;
55745
55745
  }
55746
55746
 
55747
- /* 测试用 这里可以修改数据
55747
+ //测试用 这里可以修改数据
55748
+ //var lastItem=srcStock.minute[srcStock.minute.length-1];
55749
+ //lastItem.price+=Math.ceil(Math.random()*10)/1000*lastItem.price;
55750
+ /*
55748
55751
  for(var i=0;i<srcStock.minute.length;++i)
55749
55752
  {
55750
55753
  var item=srcStock.minute[i];
@@ -56634,125 +56637,132 @@ HQData.Report_RequestStockData=function(data, callback)
56634
56637
  var stocks=data.Request.Data.stocks; //股票列表
56635
56638
  data.PreventDefault=true;
56636
56639
 
56637
- var mapStock=new Map();
56638
- for(var i=0;i<stocks.length;++i)
56640
+ setTimeout(()=>
56639
56641
  {
56640
- var item=stocks[i];
56641
- mapStock.set(item.Symbol,{ Symbol:item.Symbol, Data:null });
56642
- }
56643
-
56644
- if (IFrameSplitOperator.IsNonEmptyArray(SHSZ_STOCK_LIST_TEST_DATA.symbol))
56645
- {
56646
- for(var i=0;i<SHSZ_STOCK_LIST_TEST_DATA.symbol.length;++i)
56642
+ var mapStock=new Map();
56643
+ for(var i=0;i<stocks.length;++i)
56647
56644
  {
56648
- var symbol=SHSZ_STOCK_LIST_TEST_DATA.symbol[i];
56649
- if (!mapStock.has(symbol)) continue;
56650
- var item=mapStock.get(symbol);
56651
- var name=SHSZ_STOCK_LIST_TEST_DATA.name[i];
56652
- var price=SHSZ_STOCK_LIST_TEST_DATA.close[i];
56653
- var vol=SHSZ_STOCK_LIST_TEST_DATA.vol[i];
56654
- var newItem=
56655
- [
56656
- symbol,
56657
- name,
56658
- SHSZ_STOCK_LIST_TEST_DATA.yclose[i],
56659
- SHSZ_STOCK_LIST_TEST_DATA.open[i],
56660
- SHSZ_STOCK_LIST_TEST_DATA.high[i],
56661
- SHSZ_STOCK_LIST_TEST_DATA.low[i],
56662
- price,
56663
- vol,
56664
- SHSZ_STOCK_LIST_TEST_DATA.amount[i],
56665
- ];
56666
-
56667
- //买价 量
56668
- newItem[9]=price+0.05;
56669
- newItem[10]=10;
56645
+ var item=stocks[i];
56646
+ mapStock.set(item.Symbol,{ Symbol:item.Symbol, Data:null });
56647
+ }
56670
56648
 
56671
- //卖价
56672
- newItem[11]=price-0.06;
56673
- newItem[12]=5;
56649
+ if (IFrameSplitOperator.IsNonEmptyArray(SHSZ_STOCK_LIST_TEST_DATA.symbol))
56650
+ {
56651
+ for(var i=0;i<SHSZ_STOCK_LIST_TEST_DATA.symbol.length;++i)
56652
+ {
56653
+ var symbol=SHSZ_STOCK_LIST_TEST_DATA.symbol[i];
56654
+ if (!mapStock.has(symbol)) continue;
56655
+ var item=mapStock.get(symbol);
56656
+ var name=SHSZ_STOCK_LIST_TEST_DATA.name[i];
56657
+ var price=SHSZ_STOCK_LIST_TEST_DATA.close[i];
56658
+ var vol=SHSZ_STOCK_LIST_TEST_DATA.vol[i];
56659
+ var newItem=
56660
+ [
56661
+ symbol,
56662
+ name,
56663
+ SHSZ_STOCK_LIST_TEST_DATA.yclose[i],
56664
+ SHSZ_STOCK_LIST_TEST_DATA.open[i],
56665
+ SHSZ_STOCK_LIST_TEST_DATA.high[i],
56666
+ SHSZ_STOCK_LIST_TEST_DATA.low[i],
56667
+ price,
56668
+ vol,
56669
+ SHSZ_STOCK_LIST_TEST_DATA.amount[i],
56670
+ ];
56671
+
56672
+ //买价 量
56673
+ newItem[9]=price+0.05;
56674
+ newItem[10]=10;
56675
+
56676
+ //卖价 量
56677
+ newItem[11]=price-0.06;
56678
+ newItem[12]=5;
56679
+
56680
+ //均价
56681
+ newItem[13]=price-0.03;
56682
+
56683
+ //内盘
56684
+ newItem[18]=vol/4;
56685
+ //外盘
56686
+ newItem[19]=vol/5;
56687
+
56688
+ newItem[14]=vol*1.5; //流通股本
56689
+ newItem[15]=vol*1.8; //总股本
56690
+
56691
+ //换手率
56692
+ newItem[23]=(Math.round(Math.random()*60))/100;
56693
+
56694
+ //名字字段
56695
+ var symbolEx={ Text:name };
56696
+ if (i%20==5)
56697
+ symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue629', Color:'rgb(255,165,0)'}, { Text:'\ue627', Color:'#1c65db'} ] };
56698
+ else if (i%20==9)
56699
+ symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue629', Color:'rgb(255,165,0)'}] } ;
56700
+ else if (i%20==18)
56701
+ symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue627', Color:'#1c65db'}] } ;
56702
+
56703
+ newItem[27]=symbolEx;
56704
+
56705
+
56706
+ newItem[38]=HQData.GetRandomTestData(10,20000); //持仓量
56707
+ newItem[39]=HQData.GetRandomTestData(10,100); //结算价
56708
+ newItem[40]=HQData.GetRandomTestData(10,100); //昨结算价
56709
+ newItem[41]=HQData.GetRandomTestData(10,20000); //开仓量
56710
+ newItem[42]=HQData.GetRandomTestData(10,20000); //平仓量
56711
+
56712
+ //1,3,5,10,15 涨速%
56713
+ newItem[43]=HQData.GetRandomTestData(-90,90);
56714
+ newItem[44]=HQData.GetRandomTestData(-90,90);
56715
+ newItem[45]=HQData.GetRandomTestData(-90,90);
56716
+ newItem[46]=HQData.GetRandomTestData(-90,90);
56717
+ newItem[47]=HQData.GetRandomTestData(-90,90);
56718
+
56719
+
56720
+ //扩展数据 (定制数据)
56721
+ var extendData=[];
56722
+ newItem[30]=extendData;
56723
+
56724
+ //行业
56725
+ extendData[0]="行业X";
56726
+ //地区
56727
+ extendData[1]="地区X";
56728
+
56729
+ //PE|PB
56730
+ extendData[2]=(Math.round(Math.random()*60))/100;
56731
+ extendData[3]=(Math.round(Math.random()*60))/100;
56732
+ extendData[4]=(Math.round(Math.random()*60))/100;
56733
+ extendData[5]=(Math.round(Math.random()*60))/100;
56674
56734
 
56675
- //均价
56676
- newItem[13]=price-0.03;
56677
56735
 
56678
- //内盘
56679
- newItem[18]=vol/4;
56680
- //外盘
56681
- newItem[19]=vol/5;
56736
+ //周涨幅
56737
+ extendData[6]=(Math.round(Math.random()*60))/100;
56738
+ extendData[7]=(Math.round(Math.random()*60))/100;
56739
+ extendData[8]=(Math.round(Math.random()*60))/100;
56682
56740
 
56683
- newItem[14]=vol*1.5; //流通股本
56684
- newItem[15]=vol*1.8; //总股本
56685
56741
 
56686
- //换手率
56687
- newItem[23]=(Math.round(Math.random()*60))/100;
56688
-
56689
- //名字字段
56690
- var symbolEx={ Text:name };
56691
- if (i%20==5)
56692
- symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue629', Color:'rgb(255,165,0)'}, { Text:'\ue627', Color:'#1c65db'} ] };
56693
- else if (i%20==9)
56694
- symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue629', Color:'rgb(255,165,0)'}] } ;
56695
- else if (i%20==18)
56696
- symbolEx.Symbol={ Family:'iconfont', Size:16, Data:[ { Text:'\ue627', Color:'#1c65db'}] } ;
56697
-
56698
- newItem[27]=symbolEx;
56699
-
56700
-
56701
- newItem[38]=HQData.GetRandomTestData(10,20000); //持仓量
56702
- newItem[39]=HQData.GetRandomTestData(10,100); //结算价
56703
- newItem[40]=HQData.GetRandomTestData(10,100); //昨结算价
56704
- newItem[41]=HQData.GetRandomTestData(10,20000); //开仓量
56705
- newItem[42]=HQData.GetRandomTestData(10,20000); //平仓量
56706
-
56707
- //1,3,5,10,15 涨速%
56708
- newItem[43]=HQData.GetRandomTestData(-90,90);
56709
- newItem[44]=HQData.GetRandomTestData(-90,90);
56710
- newItem[45]=HQData.GetRandomTestData(-90,90);
56711
- newItem[46]=HQData.GetRandomTestData(-90,90);
56712
- newItem[47]=HQData.GetRandomTestData(-90,90);
56713
-
56714
-
56715
- //扩展数据 (定制数据)
56716
- var extendData=[];
56717
- newItem[30]=extendData;
56718
-
56719
- //行业
56720
- extendData[0]="行业X";
56721
- //地区
56722
- extendData[1]="地区X";
56723
-
56724
- //PE|PB
56725
- extendData[2]=(Math.round(Math.random()*60))/100;
56726
- extendData[3]=(Math.round(Math.random()*60))/100;
56727
- extendData[4]=(Math.round(Math.random()*60))/100;
56728
- extendData[5]=(Math.round(Math.random()*60))/100;
56729
-
56730
-
56731
- //周涨幅
56732
- extendData[6]=(Math.round(Math.random()*60))/100;
56733
- extendData[7]=(Math.round(Math.random()*60))/100;
56734
- extendData[8]=(Math.round(Math.random()*60))/100;
56742
+ newItem[101]=105.0;
56743
+ newItem[201]=`A-[${HQData.GetRandomTestData(-90,90)}]-B`;
56735
56744
 
56736
56745
 
56737
- newItem[101]=105.0;
56738
- newItem[201]=`A-[${HQData.GetRandomTestData(-90,90)}]-B`
56739
-
56746
+ newItem[301]=HQData.GetRandomTestData(0,100)/100;
56747
+ newItem[302]=HQData.GetRandomTestData(0,100)/100;
56748
+
56740
56749
 
56741
- item.Data=newItem;
56750
+ item.Data=newItem;
56751
+ }
56742
56752
  }
56743
- }
56744
56753
 
56745
- var hqchartData={ data:[], code:0 };
56754
+ var hqchartData={ data:[], code:0 };
56746
56755
 
56747
- for(var mapItem of mapStock)
56748
- {
56749
- var item=mapItem[1];
56750
- if (!item.Data) continue;
56756
+ for(var mapItem of mapStock)
56757
+ {
56758
+ var item=mapItem[1];
56759
+ if (!item.Data) continue;
56751
56760
 
56752
- hqchartData.data.push(item.Data);
56753
- }
56761
+ hqchartData.data.push(item.Data);
56762
+ }
56754
56763
 
56755
- callback(hqchartData);
56764
+ callback(hqchartData);
56765
+ }, 500);
56756
56766
  }
56757
56767
 
56758
56768
  HQData.Report_RequestStockSortData=function(data, callback)
@@ -56979,6 +56989,10 @@ HQData.Report_RequestVirtualStockData=function(data, callback)
56979
56989
  extendData[8]=(Math.round(Math.random()*60))/100;
56980
56990
 
56981
56991
 
56992
+ newItem[351]={Title:"启动"};
56993
+ newItem[352]={Title:"加入"};
56994
+
56995
+
56982
56996
  aryData.push(newItem);
56983
56997
  aryIndex.push(start+i);
56984
56998
  }