|
@@ -1707,19 +1707,28 @@ func GetUserScoreDetail(userID int) (datas []QueryUserScoreDetailRsp, err error)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func GetHotGoodses() (rsp []ErmcpGoods, err error) {
|
|
func GetHotGoodses() (rsp []ErmcpGoods, err error) {
|
|
|
|
|
+ // 合约交易根据”RECKON_DAYGOODSCOUNT“表
|
|
|
|
|
+ // 现货数字交易根据表”DIGITALTRADE_TRADEDETAIL“(7*24小时,无结算)
|
|
|
rspdatas := make([]ErmcpGoods, 0)
|
|
rspdatas := make([]ErmcpGoods, 0)
|
|
|
sql := `
|
|
sql := `
|
|
|
- SELECT
|
|
|
|
|
- G.GOODSID, G.GOODSCODE, G.GOODSNAME, G.MARKETID, G.GOODUNITID, G.AGREEUNIT,
|
|
|
|
|
- G.CURRENCYID, G.GOODSCURRENCYID, G.DECIMALPLACE, G.QUOTEMINUNIT, G.OUTGOODSCODE,
|
|
|
|
|
- G.PICTUREURL, G.THUMURLS, G.BANNERURLS, M.TRADEMODE, GE.GOODSNAMEEN,
|
|
|
|
|
- GE.GOODSNAMETW, GE.GOODSNAMETH, GE.GOODSNAMEVI
|
|
|
|
|
- FROM RECKON_DAYGOODSCOUNT T
|
|
|
|
|
- INNER JOIN GOODS G ON G.GOODSID = T.GOODSID
|
|
|
|
|
- INNER JOIN GOODSEX GE ON GE.GOODSID = T.GOODSID
|
|
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ G.GOODSID, G.GOODSCODE, G.GOODSNAME, G.MARKETID, G.GOODUNITID, G.AGREEUNIT,
|
|
|
|
|
+ G.CURRENCYID, G.GOODSCURRENCYID, G.DECIMALPLACE, G.QUOTEMINUNIT, G.OUTGOODSCODE,
|
|
|
|
|
+ G.PICTUREURL, G.THUMURLS, G.BANNERURLS, M.TRADEMODE, GE.GOODSNAMEEN,
|
|
|
|
|
+ GE.GOODSNAMETW, GE.GOODSNAMETH, GE.GOODSNAMEVI
|
|
|
|
|
+ FROM
|
|
|
|
|
+ (SELECT T.GOODSID, NVL(T.TRADEAMOUNT, 0) TRADEAMOUNT, NVL(T.TRADEQTY, 0) TRADEQTY
|
|
|
|
|
+ FROM RECKON_DAYGOODSCOUNT T
|
|
|
|
|
+ WHERE T.RECKONDATE IN (SELECT T.PRETRADEDATE FROM MARKETRUN T WHERE T.MARKETID = 0)
|
|
|
|
|
+ UNION
|
|
|
|
|
+ SELECT T.GOODSID, SUM(NVL(T.TRADEVALUE, 0)) TRADEAMOUNT, SUM(NVL(T.TRADEVOLUME, 0)) TRADEQTY
|
|
|
|
|
+ FROM DIGITALTRADE_TRADEDETAIL T
|
|
|
|
|
+ WHERE T.TRADEDATE IN (SELECT TO_CHAR(TRUNC(TO_DATE(MAX(T.TRADEDATE), 'yyyyMMdd')) - 1, 'YYYYMMDD') AS PREVIOUS_DAY FROM DIGITALTRADE_TRADEDETAIL T)
|
|
|
|
|
+ GROUP BY T.GOODSID) TT
|
|
|
|
|
+ INNER JOIN GOODS G ON G.GOODSID = TT.GOODSID
|
|
|
|
|
+ INNER JOIN GOODSEX GE ON GE.GOODSID = G.GOODSID
|
|
|
INNER JOIN MARKET M ON M.MARKETID = G.MARKETID
|
|
INNER JOIN MARKET M ON M.MARKETID = G.MARKETID
|
|
|
- WHERE T.RECKONDATE IN (SELECT T.PRETRADEDATE FROM MARKETRUN T WHERE T.MARKETID = 0)
|
|
|
|
|
- ORDER BY T.TRADEAMOUNT DESC, (T.CURBUYHOLDAMOUNT + T.CURSELLHODAMOUNT) DESC
|
|
|
|
|
|
|
+ ORDER BY TT.TRADEAMOUNT DESC, G.GOODSCODE
|
|
|
`
|
|
`
|
|
|
|
|
|
|
|
if err := db.GetEngine().SQL(sql).Find(&rspdatas); err != nil {
|
|
if err := db.GetEngine().SQL(sql).Find(&rspdatas); err != nil {
|