|
|
@@ -1768,15 +1768,16 @@ type Ermcp2hedgeditemsDetail struct {
|
|
|
RELATEDAMOUNT float64 `json:"relatedamount" xorm:"RELATEDAMOUNT"` // 市价总额 = 关联数量 * 期初市场价
|
|
|
SPOTPRICEDAMOUNT float64 `json:"spotpricedamount" xorm:"SPOTPRICEDAMOUNT"` // 定价总额
|
|
|
SPOTPRICEDAVGPRICE float64 `json:"spotpricedavgprice" xorm:"SPOTPRICEDAVGPRICE"` // 现货均价 = 定价总额 / 关联数量
|
|
|
- CREATETIME string `json:"createtime" xorm:"CREATETIME"` // 创建时间
|
|
|
+ CREATETIME string `json:"createtime" xorm:"CREATETIME"` // [日期时间]创建时间
|
|
|
TRADEUSERID int64 `json:"tradeuserid" xorm:"TRADEUSERID"` // 交易用户ID
|
|
|
AREAUSERID int64 `json:"areauserid" xorm:"AREAUSERID"` // 企业ID
|
|
|
|
|
|
- Wrstandardname string `json:"wrstandardname" xorm:"WRSTANDARDNAME"` // 现货商品
|
|
|
- EnumdicName string `json:"enumdicname" xorm:"ENUMDICNAME"` // 单位
|
|
|
- Hedgeplanno string `json:"hedgeplanno" xorm:"HEDGEPLANNO"` // 计划编号
|
|
|
- UNEXEQTY float64 `json:"unexeqty" xorm:"UNEXEQTY"` // 未执行现货量 = 套期现货量 - 执行现货量
|
|
|
- AccountName string `json:"accountname" xorm:"ACCOUNTNAME"` // 套期主体
|
|
|
+ Wrstandardname string `json:"wrstandardname" xorm:"WRSTANDARDNAME"` // 现货商品
|
|
|
+ EnumdicName string `json:"enumdicname" xorm:"ENUMDICNAME"` // 单位
|
|
|
+ Hedgeplanno string `json:"hedgeplanno" xorm:"HEDGEPLANNO"` // 计划编号
|
|
|
+ UNEXEQTY float64 `json:"unexeqty" xorm:"UNEXEQTY"` // 未执行现货量 = 套期现货量 - 执行现货量
|
|
|
+ AccountName string `json:"accountname" xorm:"ACCOUNTNAME"` // 套期主体
|
|
|
+ MiddleGoodsChange float64 `json:"middlegoodschange" xorm:"MIDDLEGOODSCHANGE"` // 套期商品变化量 = RELATEDQTY * 折算系数 * (1/(1+增值税))
|
|
|
|
|
|
USERID int64 `json:"-" form:"userid"` // 用户ID
|
|
|
MIDDLEGOODSID int64 `json:"-" form:"middlegoodsid"` // 套保品种ID
|
|
|
@@ -1788,7 +1789,7 @@ func (r *Ermcp2hedgeditemsDetail) calc() {
|
|
|
|
|
|
func (r *Ermcp2hedgeditemsDetail) buildSql() string {
|
|
|
var sqlId utils.SQLVal = `
|
|
|
- SELECT
|
|
|
+ SELECT DISTINCT
|
|
|
to_char(t.CREATETIME, 'yyyy-mm-dd hh24:mi:ss') CREATETIME,
|
|
|
t.SPOTTYPE,
|
|
|
wr.WRSTANDARDNAME,
|
|
|
@@ -1796,8 +1797,11 @@ func (r *Ermcp2hedgeditemsDetail) buildSql() string {
|
|
|
h.UNEXEQTY,
|
|
|
t.RELATEDQTY,
|
|
|
s.HEDGEPLANNO,
|
|
|
- u.ACCOUNTNAME
|
|
|
+ u.ACCOUNTNAME,
|
|
|
+ (t.RELATEDQTY * c.CONVERTRATIO * (1/(1 + wr.VATRATE))) MIDDLEGOODSCHANGE
|
|
|
FROM ERMCP2_HEDGEDITEMSPOT t
|
|
|
+ LEFT JOIN ERMS2_WRSConvertDetail c ON c.WRStandardID = t.WRStandardID
|
|
|
+ LEFT JOIN ERMS_MiddleGoods mg ON mg.MiddleGoodsID = c.MiddleGoodsID
|
|
|
LEFT JOIN WRStandard wr ON wr.wrstandardid = t.wrstandardid
|
|
|
LEFT JOIN enumdicitem e on wr.unitid=e.enumitemname and e.enumdiccode='goodsunit'
|
|
|
LEFT JOIN ermcp_hedgeplan s ON s.HedgePlanID = t.RELATEDHEDGEPLANID
|
|
|
@@ -1805,11 +1809,7 @@ func (r *Ermcp2hedgeditemsDetail) buildSql() string {
|
|
|
LEFT JOIN useraccount u ON u.userid = t.TRADEUSERID
|
|
|
WHERE t.SpotType IN (1,2)
|
|
|
AND t.areauserid = %v
|
|
|
- AND t.wrstandardid
|
|
|
- IN (SELECT
|
|
|
- wrc.wrstandardid
|
|
|
- FROM ERMS2_WRSConvertDetail wrc
|
|
|
- WHERE wrc.middlegoodsid = %v)
|
|
|
+ AND mg.MiddleGoodsID = %v
|
|
|
`
|
|
|
sqlId.FormatParam(r.USERID, r.MIDDLEGOODSID)
|
|
|
|