|
|
@@ -8,6 +8,22 @@ import (
|
|
|
"time"
|
|
|
)
|
|
|
|
|
|
+// Goodssortbypreposition 合约昨持仓排序表 - 同一品种内按昨持仓量倒排序
|
|
|
+// 行情服务清盘前生成此表,供交易服务风控规则使用;生成前先删除此表数据;
|
|
|
+type Goodssortbypreposition struct {
|
|
|
+ Tradedate string `json:"tradedate" xorm:"'TRADEDATE'" binding:"required"` // 交易日
|
|
|
+ Goodscode string `json:"goodscode" xorm:"'GOODSCODE'" binding:"required"` // 合约代码 - 易盛接口:合约代码=品种代码+合约代码
|
|
|
+ Goodsgroupcode string `json:"goodsgroupcode" xorm:"'GOODSGROUPCODE'"` // 品种代码
|
|
|
+ Sortindex int64 `json:"sortindex" xorm:"'SORTINDEX'"` // 排序
|
|
|
+ Prepositionqty int64 `json:"prepositionqty" xorm:"'PREPOSITIONQTY'"` // 昨持仓量
|
|
|
+ Updatetime time.Time `json:"updatetime" xorm:"'UPDATETIME'"` // 更新时间
|
|
|
+}
|
|
|
+
|
|
|
+// TableName is GOODSSORTBYPREPOSITION
|
|
|
+func (Goodssortbypreposition) TableName() string {
|
|
|
+ return "GOODSSORTBYPREPOSITION"
|
|
|
+}
|
|
|
+
|
|
|
// GetErmcpGoodses 企业风管专用获取商品信息的方法
|
|
|
func GetErmcpGoodses(lastUpdateTime string) ([]Goods, error) {
|
|
|
engine := db.GetEngine()
|
|
|
@@ -46,3 +62,18 @@ func GetGoodsLastUpdateTime() (*time.Time, error) {
|
|
|
|
|
|
return &lastUpdateTimes, nil
|
|
|
}
|
|
|
+
|
|
|
+// GetGoodsSortByPrePositions 获取查询主力+次主力商品
|
|
|
+func GetGoodsSortByPrePositions(sortIndex string) ([]Goodssortbypreposition, error) {
|
|
|
+ rst := make([]Goodssortbypreposition, 0)
|
|
|
+ session := db.GetEngine().Table("GOODSSORTBYPREPOSITION T")
|
|
|
+ if len(sortIndex) > 0 {
|
|
|
+ session = session.Where(fmt.Sprintf("T.SORTINDEX in (%s)", sortIndex))
|
|
|
+ }
|
|
|
+ session = session.Asc("T.SORTINDEX")
|
|
|
+ if err := session.Find(&rst); err != nil {
|
|
|
+ return nil, err
|
|
|
+ }
|
|
|
+
|
|
|
+ return rst, nil
|
|
|
+}
|