You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.3 KiB

2 months ago
package shareData
import (
"matchmaking-system/internal/data/socket/publicData"
"matchmaking-system/internal/data/tradedeal/share"
"matchmaking-system/internal/pkg/logging/applogger"
"matchmaking-system/internal/pkg/logging/common"
"matchmaking-system/internal/pkg/setting"
"matchmaking-system/internal/pkg/utils"
)
// ShareBlkOrderProcessing
//
// @Description: 股票-大宗交易股订阅处理
// @param topIc
// @param msg
// @return *public.OrderSub
func ShareBlkOrderProcessing(topIc string, check int, msg share.ShareBlkTallyCache) *publicData.OrderSub {
var top string
switch check {
case 0:
top = setting.SubscribeShareBlk
case 1:
top = setting.SubscribeAdminShareBlk
}
price, err := publicData.CheckSymbolBlock(topIc, msg.Symbol, msg.Order.Type)
if err != nil {
applogger.Warn("%v ShareBlkOrderProcessing.CheckSymbol.err:%v--%v", common.ErrShareBlk, msg.Symbol, err)
}
orderM := &publicData.OrderSub{
OrderId: msg.OrderId,
Price: utils.DecimalsPrice(price),
Status: msg.Status,
Symbol: top,
Count: 0,
OpenPrice: msg.OpenPrice,
Market: msg.Symbol,
OrderNumber: msg.Order.OrderNumber,
TradeType: msg.Order.TradeType,
Type: msg.Order.Type,
UserId: msg.UserId,
}
return orderM
}