|
|
@@ -82,6 +82,7 @@ type QueryTradePositionRsp struct {
|
|
|
Tradeproperty int32 `json:"tradeproperty"` // 交易属性
|
|
|
REFGOODSID int32 `json:"refgoodsid" xorm:"'REFGOODSID'"` // 参考商品ID
|
|
|
REFGOODSCODE string `json:"refgoodscode" xorm:"'REFGOODSCODE'"` // 参考商品代码
|
|
|
+ MatchName string `json:"matchname" xorm:"'MATCHNAME'"` // ProviderUserID 企业名称
|
|
|
}
|
|
|
|
|
|
// QueryTradePosition 持仓汇总查询(合约市场)
|
|
|
@@ -131,6 +132,7 @@ func GetTradePosition(accIds string, tradeModes string) (rst []QueryTradePositio
|
|
|
QTYDECIMALPLACE int32 `json:"qtydecimalplace" xorm:"'QTYDECIMALPLACE'"` // 成交量小数位
|
|
|
REFGOODSID int32 `json:"refgoodsid" xorm:"'REFGOODSID'"` // 参考商品ID
|
|
|
REFGOODSCODE string `json:"refgoodscode" xorm:"'REFGOODSCODE'"` // 参考商品代码
|
|
|
+ MatchName string `json:"matchname" xorm:"'MATCHNAME'"` // ProviderUserID 企业名称
|
|
|
}
|
|
|
datas := make([]tradePosition, 0)
|
|
|
engine := db.GetEngine()
|
|
|
@@ -140,8 +142,9 @@ func GetTradePosition(accIds string, tradeModes string) (rst []QueryTradePositio
|
|
|
Join("LEFT", "GOODS G2", "GOODS.REFGOODSID = G2.GOODSID").
|
|
|
Join("LEFT", "MARKET", "GOODS.MARKETID = MARKET.MARKETID").
|
|
|
Join("LEFT", "ENUMDICITEM", "GOODS.GOODUNITID = ENUMDICITEM.ENUMITEMNAME and ENUMDICITEM.ENUMDICCODE = 'goodsunit'").
|
|
|
+ Join("LEFT", "USERINFO UI", "UI.USERID = GOODS.PROVIDERUSERID").
|
|
|
Select("TRADEPOSITION.*, GOODS.GOODSCODE, GOODS.GOODSNAME, GOODS.CURRENCYID, GOODS.GOODUNITID,GOODS.QTYDECIMALPLACE, G2.REFGOODSID, G2.REFGOODSCODE, " +
|
|
|
- "ENUMDICITEM.ENUMDICNAME as GOODUNIT, GOODS.AGREEUNIT, GOODS.DECIMALPLACE, MARKET.MARKETID, MARKET.TRADEMODE").
|
|
|
+ "ENUMDICITEM.ENUMDICNAME as GOODUNIT, GOODS.AGREEUNIT, GOODS.DECIMALPLACE, MARKET.MARKETID, MARKET.TRADEMODE, UI.CUSTOMERNAME as MATCHNAME").
|
|
|
Where(fmt.Sprintf(`TRADEPOSITION.ACCOUNTID in (%s)`, accIds))
|
|
|
if len(tradeModes) > 0 {
|
|
|
s = s.And(fmt.Sprintf(`MARKET.TRADEMODE in (%s)`, tradeModes))
|
|
|
@@ -198,6 +201,7 @@ func GetTradePosition(accIds string, tradeModes string) (rst []QueryTradePositio
|
|
|
c := QtyCovert{QTYDECIMALPLACE: v.QTYDECIMALPLACE}
|
|
|
// json -> struct
|
|
|
_ = json.Unmarshal(jsonBytes, &tradePosition)
|
|
|
+ tradePosition.MatchName = v.MatchName
|
|
|
tradePosition.Tradeproperty = v.Tradeproperty
|
|
|
tradePosition.REFGOODSID = v.REFGOODSID
|
|
|
tradePosition.REFGOODSCODE = v.REFGOODSCODE
|
|
|
@@ -229,6 +233,7 @@ func GetTradePosition(accIds string, tradeModes string) (rst []QueryTradePositio
|
|
|
tradePosition.PositionPLRate = tradePosition.PositionPL / tradePosition.CurHolderAmount
|
|
|
tradePosition.PositionPLRate, _ = strconv.ParseFloat(utils.FormatFloat(tradePosition.PositionPLRate, 4), 64)
|
|
|
}
|
|
|
+
|
|
|
rst = append(rst, tradePosition)
|
|
|
}
|
|
|
}
|
|
|
@@ -242,6 +247,7 @@ func GetTradePosition(accIds string, tradeModes string) (rst []QueryTradePositio
|
|
|
c := QtyCovert{QTYDECIMALPLACE: v.QTYDECIMALPLACE}
|
|
|
// json -> struct
|
|
|
_ = json.Unmarshal(jsonBytes, &tradePosition)
|
|
|
+ tradePosition.MatchName = v.MatchName
|
|
|
tradePosition.Tradeproperty = v.Tradeproperty
|
|
|
tradePosition.REFGOODSID = v.REFGOODSID
|
|
|
tradePosition.REFGOODSCODE = v.REFGOODSCODE
|