|
|
@@ -3768,18 +3768,18 @@ func (r *WrDeliveryGoodsSectionConfig) GetDataEx() (interface{}, error) {
|
|
|
|
|
|
// WrSpotGroupTradeSum 指数
|
|
|
type WrSpotGroupTradeSum struct {
|
|
|
- RECKONDATE string `json:"reckondate" xorm:"'RECKONDATE'"` // 上个交易日(前1天交易日)
|
|
|
- LASTRECKONDATE string `json:"lastreckondate" xorm:"'LASTRECKONDATE'"` // 上上个交易日(前2天交易日)
|
|
|
- MARKETID int64 `json:"-" xorm:"'MARKETID'" form:"marketid"` // 市场id
|
|
|
- TRADEQTY float64 `json:"-" xorm:"'TRADEQTY'"` // 成交量
|
|
|
- TRADEAMOUNT float64 `json:"-" xorm:"'TRADEAMOUNT'"` // 成交额
|
|
|
- LASTAVGPRICE float64 `json:"-" xorm:"'LASTAVGPRICE'"` // 上上个交易日价格(前2天价格)
|
|
|
- TODAYAVGPRICE float64 `json:"-" xorm:"'TODAYAVGPRICE'"` // 上个交易日价格(前1天价格)
|
|
|
- DELIVERYGOODSID int64 `json:"deliverygoodsid" xorm:"'DELIVERYGOODSID'"` // 现货品种ID(SEQ_DELIVERYGOODS)
|
|
|
- DELIVERYGOODSCODE string `json:"deliverygoodscode" xorm:"'DELIVERYGOODSCODE'"` // 现货品种代码
|
|
|
- DELIVERYGOODSNAME string `json:"deliverygoodsname" xorm:"'DELIVERYGOODSNAME'"` // 现货品种名称
|
|
|
- SECTIONID int64 `json:"-" xorm:"'SECTIONID'"` // 版块ID (SEQ_DELIVERYGOODSSECTION)
|
|
|
- PRETRADEDATE string `json:"-" xorm:"'PRETRADEDATE'"` // 上个交易日(从marketid=0表中取的, 系统)
|
|
|
+ RECKONDATE string `json:"reckondate" xorm:"'RECKONDATE'"` // 上个交易日(前1天交易日)
|
|
|
+ LASTRECKONDATE string `json:"lastreckondate" xorm:"'LASTRECKONDATE'"` // 上上个交易日(前2天交易日)
|
|
|
+ MARKETID int64 `json:"-" xorm:"'MARKETID'" form:"marketid"` // 市场id
|
|
|
+ TRADEQTY float64 `json:"-" xorm:"'TRADEQTY'"` // 成交量
|
|
|
+ TRADEAMOUNT float64 `json:"-" xorm:"'TRADEAMOUNT'"` // 成交额
|
|
|
+ LASTAVGPRICE SFLOAT64 `json:"-" xorm:"'LASTAVGPRICE'"` // 上上个交易日价格(前2天价格)
|
|
|
+ TODAYAVGPRICE SFLOAT64 `json:"-" xorm:"'TODAYAVGPRICE'"` // 上个交易日价格(前1天价格)
|
|
|
+ DELIVERYGOODSID int64 `json:"deliverygoodsid" xorm:"'DELIVERYGOODSID'"` // 现货品种ID(SEQ_DELIVERYGOODS)
|
|
|
+ DELIVERYGOODSCODE string `json:"deliverygoodscode" xorm:"'DELIVERYGOODSCODE'"` // 现货品种代码
|
|
|
+ DELIVERYGOODSNAME string `json:"deliverygoodsname" xorm:"'DELIVERYGOODSNAME'"` // 现货品种名称
|
|
|
+ SECTIONID int64 `json:"-" xorm:"'SECTIONID'"` // 版块ID (SEQ_DELIVERYGOODSSECTION)
|
|
|
+ PRETRADEDATE string `json:"-" xorm:"'PRETRADEDATE'"` // 上个交易日(从marketid=0表中取的, 系统)
|
|
|
|
|
|
LASTAVGPRICE2 string `json:"lastavgprice"` // 上上个交易日价格(前2天价格)
|
|
|
TODAYAVGPRICE2 string `json:"todayavgprice"` // 上个交易日价格(前1天价格)
|
|
|
@@ -3788,6 +3788,11 @@ type WrSpotGroupTradeSum struct {
|
|
|
}
|
|
|
|
|
|
func (r *WrSpotGroupTradeSum) calc() {
|
|
|
+ if r.TODAYAVGPRICE < 1e-8 {
|
|
|
+ // 如果今日为0, 则取上日的作为今日价
|
|
|
+ r.TODAYAVGPRICE = r.LASTAVGPRICE
|
|
|
+ }
|
|
|
+
|
|
|
if r.LASTAVGPRICE < 1e-8 {
|
|
|
r.LASTAVGPRICE2 = "-"
|
|
|
}
|
|
|
@@ -3795,19 +3800,21 @@ func (r *WrSpotGroupTradeSum) calc() {
|
|
|
r.TODAYAVGPRICE2 = "-"
|
|
|
}
|
|
|
if r.TODAYAVGPRICE > 1e-8 && r.LASTAVGPRICE > 1e-8 {
|
|
|
+ r.LASTAVGPRICE2 = r.LASTAVGPRICE.string()
|
|
|
+ r.TODAYAVGPRICE2 = r.TODAYAVGPRICE.string()
|
|
|
// 涨跌
|
|
|
var diff SFLOAT64
|
|
|
- diff.Set(r.TODAYAVGPRICE - r.LASTAVGPRICE)
|
|
|
+ diff = r.TODAYAVGPRICE - r.LASTAVGPRICE
|
|
|
r.UPDOWN = diff.Round(2).string()
|
|
|
|
|
|
// 涨幅
|
|
|
var k SFLOAT64
|
|
|
- k.Set(diff.Float64() * 100 / r.TODAYAVGPRICE)
|
|
|
+ k = diff * 100 / r.TODAYAVGPRICE
|
|
|
k.Round(2)
|
|
|
if k.Float64() > 1e-8 {
|
|
|
r.UPDOWNRATIO = "+" + k.string() + `%`
|
|
|
} else {
|
|
|
- r.UPDOWNRATIO = "-" + k.string() + `%`
|
|
|
+ r.UPDOWNRATIO = k.string() + `%`
|
|
|
}
|
|
|
} else {
|
|
|
r.UPDOWN = "-"
|
|
|
@@ -3915,7 +3922,7 @@ func (r *WrSpotGroupTradeSumDetail) buildSql() string {
|
|
|
select a.*
|
|
|
from (select t.reckondate, t.deliverygoodsid, t.todayavgprice price, rownum cnt
|
|
|
from reckon_spotgrouptradesum t
|
|
|
- where 1 = 1
|
|
|
+ where 1 = 1 and t.todayavgprice > 0
|
|
|
and t.deliverygoodsid = %v
|
|
|
order by t.reckondate desc) a
|
|
|
where a.cnt <= %v
|