|
|
@@ -122,6 +122,7 @@ func QueryHistoryDatas(c *gin.Context) {
|
|
|
|
|
|
// 包括日线以上的周期,如果没有带当前周期则通过盘面数据生成当前周期数据
|
|
|
if req.CycleType >= 11 {
|
|
|
+ logger.GetLogger().Debugf("[checkTiks]%v---------开始确定是否要补K线-----------", req.GoodsCode)
|
|
|
// 获取商品信息
|
|
|
goods, err := models.GetGoodsByGoodsCode(req.GoodsCode)
|
|
|
if goods == nil {
|
|
|
@@ -142,6 +143,8 @@ func QueryHistoryDatas(c *gin.Context) {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] goodscode[%v] trademode[%v]", req.GoodsCode, market.Trademode)
|
|
|
+
|
|
|
// 获取目标品种交易日
|
|
|
// FIXME: - 由于mtp2.0目前未同步外部交易所品种的当前交易日,
|
|
|
// 故通道交易的品种目前只能在交易系统的外部市场中获
|
|
|
@@ -152,11 +155,13 @@ func QueryHistoryDatas(c *gin.Context) {
|
|
|
if quoteDays, err := models.GetQuoteDays("'" + req.GoodsCode + "'"); err == nil {
|
|
|
if len(quoteDays) > 0 {
|
|
|
quoteTradeDate = time.Unix(quoteDays[0].Exchangedate, 0).Format("20060102")
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] get quoteTradeDate[%v]", quoteTradeDate)
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
if marketRun, err := models.GetMarketRun(int(market.Marketid)); err == nil {
|
|
|
quoteTradeDate = marketRun.Tradedate2
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] get quoteTradeDate[%v] = marketRun.Tradedate2", quoteTradeDate)
|
|
|
}
|
|
|
}
|
|
|
if quoteTradeDate != "" {
|
|
|
@@ -173,10 +178,13 @@ func QueryHistoryDatas(c *gin.Context) {
|
|
|
fisrtDate = tradeDate
|
|
|
}
|
|
|
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] get firstDate[%v] CycleType[%v]", fisrtDate, req.CycleType)
|
|
|
+
|
|
|
// 获取盘面数据
|
|
|
if quoteDays, err := models.GetQuoteDays(req.GoodsCode); err == nil && len(quoteDays) > 0 {
|
|
|
v := quoteDays[0]
|
|
|
if len(rst) == 0 {
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] no tiks, add a tik:%v", v)
|
|
|
// 历史数据当前没数据则直接加当前盘面数据
|
|
|
historyData := HistoryData{
|
|
|
Opened: utils.IntToFloat64(int(v.Opened), dcplace),
|
|
|
@@ -200,6 +208,12 @@ func QueryHistoryDatas(c *gin.Context) {
|
|
|
} else {
|
|
|
// 判断最后周期是否已经存在盘面周期
|
|
|
hd := rst[len(rst)-1]
|
|
|
+
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] firstTik TimeStamp[%v] lastTik TimeStamp[%v] IsAsc[%v]",
|
|
|
+ rst[0].TimeStamp, hd.TimeStamp, req.IsAsc)
|
|
|
+
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] compare hd.TimeStamp[%v] > firstDate[%v]? ",
|
|
|
+ hd.TimeStamp, fisrtDate)
|
|
|
if hd.TimeStamp.Before(fisrtDate) {
|
|
|
// #3424 当日未开市显示了K线
|
|
|
// 修改:这里增加判断盘面是否有开盘价
|
|
|
@@ -215,6 +229,7 @@ func QueryHistoryDatas(c *gin.Context) {
|
|
|
Settle: utils.IntToFloat64(int(v.Settle), dcplace),
|
|
|
TimeStamp: fisrtDate,
|
|
|
}
|
|
|
+ logger.GetLogger().Debugf("[checkTiks] 补K线:\n%v", historyData)
|
|
|
|
|
|
if req.IsAsc {
|
|
|
rst = append(rst, historyData)
|