|
|
@@ -4461,3 +4461,104 @@ func (r *WrSpotGroupTradeSumDetail) GetDataEx() (interface{}, error) {
|
|
|
}
|
|
|
return sData, err
|
|
|
}
|
|
|
+
|
|
|
+// WrPreSaleInfo 新品发布
|
|
|
+type WrPreSaleInfo struct {
|
|
|
+ PRESALEAPPLYID int64 `json:"presaleapplyid" xorm:"PRESALEAPPLYID" form:"presaleapplyid"` // 预售申请ID(184+Unix秒时间戳(10位)+xxxxxx)
|
|
|
+ SELLUSERID int64 `json:"selluserid" xorm:"SELLUSERID" form:"selluserid"` // 发行方用户ID
|
|
|
+ SELLACCOUNTID int64 `json:"sellaccountid" xorm:"SELLACCOUNTID" form:"sellaccountid"` // 发行方资金账户ID
|
|
|
+ DELIVERYGOODSID int32 `json:"deliverygoodsid" xorm:"DELIVERYGOODSID" form:"deliverygoodsid"` // 现货品种ID
|
|
|
+ WAREHOUSEID int64 `json:"warehouseid" xorm:"WAREHOUSEID" form:"warehouseid"` // 仓库ID
|
|
|
+ WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID" form:"wrstandardid"` // 现货商品ID
|
|
|
+ WRFACTORTYPEID int64 `json:"wrfactortypeid" xorm:"WRFACTORTYPEID" form:"wrfactortypeid"` // 仓单要素类型ID - 根据现货商品\仓库生成
|
|
|
+ WRSTANDARDNAME string `json:"wrstandardname" xorm:"WRSTANDARDNAME"` // 现货商品名称
|
|
|
+ UNITID int32 `json:"unitid" xorm:"UNITID" form:"unitid"` // 单位ID
|
|
|
+ UNITPRICE float64 `json:"unitprice" xorm:"UNITPRICE"` // 商品单价
|
|
|
+ PRESALEQTY float64 `json:"presaleqty" xorm:"PRESALEQTY"` // 预售总量
|
|
|
+ BASEQTY float64 `json:"baseqty" xorm:"BASEQTY"` // 中签基数
|
|
|
+ MAXBUYQTY float64 `json:"maxbuyqty" xorm:"MAXBUYQTY"` // 单人最大申购量
|
|
|
+ MAXLUCKYQTY float64 `json:"maxluckyqty" xorm:"MAXLUCKYQTY"` // 单人最大中签量
|
|
|
+ STARTDATE string `json:"startdate" xorm:"STARTDATE" form:"startdate"` // 预售开始日期
|
|
|
+ ENDDATE string `json:"enddate" xorm:"ENDDATE" form:"enddate"` // 预售结束日期
|
|
|
+ TAKESTARTDATE string `json:"takestartdate" xorm:"TAKESTARTDATE" form:"takestartdate"` // 提货开始日期
|
|
|
+ THUMURLS string `json:"thumurls" xorm:"THUMURLS"` // 缩略图片(1:1)(逗号分隔)
|
|
|
+ PICTUREURLS string `json:"pictureurls" xorm:"PICTUREURLS"` // 详情图片(逗号分隔)
|
|
|
+ BANNERPICURL string `json:"bannerpicurl" xorm:"BANNERPICURL"` // Banner图
|
|
|
+ PRESALESTATUS int32 `json:"presalestatus" xorm:"PRESALESTATUS"` // 预售状态 - 1:未开始 2:进行中 3:已结束 4:已关闭
|
|
|
+ LOTTERYFLAG int32 `json:"lotteryflag" xorm:"LOTTERYFLAG" form:"lotteryflag"` // 摇号标识 - 0:未摇号 1:已摇号
|
|
|
+ LOTTERYQTY float64 `json:"lotteryqty" xorm:"LOTTERYQTY"` // 摇号总量
|
|
|
+ LUCKYQTY float64 `json:"luckyqty" xorm:"LUCKYQTY"` // 已中签量
|
|
|
+ PLACEQTY float64 `json:"placeqty" xorm:"PLACEQTY"` // 已配售量
|
|
|
+ MARKETID int32 `json:"marketid" xorm:"MARKETID" form:"marketid"` // 市场ID
|
|
|
+ SELLWRTRADEORDERID string `json:"sellwrtradeorderid" xorm:"SELLWRTRADEORDERID"` // 发行方卖委托单ID
|
|
|
+ CREATETIME string `json:"createtime" xorm:"CREATETIME"` // 创建时间
|
|
|
+ TRADEDATE string `json:"tradedate" xorm:"TRADEDATE" form:"tradedate"` // 交易日
|
|
|
+ WAREHOUSECODE string `json:"warehousecode" xorm:"'WAREHOUSECODE'"` // 仓库代码(仓库简称)
|
|
|
+ WAREHOUSENAME string `json:"warehousename" xorm:"'WAREHOUSENAME'"` // 仓库名称
|
|
|
+ USERNAME string `json:"username" xorm:"'USERNAME'"` // 发行方用户名称
|
|
|
+ ENUMDICNAME string `json:"enumdicname" xorm:"'ENUMDICNAME'"` // 单位名称
|
|
|
+
|
|
|
+ FilterStatus string `json:"-" form:"presalestatus"` // 预售状态(逗号隔开,如1,2,3) 1:未开始 2:进行中 3:已结束 4:已关闭
|
|
|
+}
|
|
|
+
|
|
|
+func (r *WrPreSaleInfo) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *WrPreSaleInfo) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = `
|
|
|
+SELECT t.PRESALEAPPLYID,
|
|
|
+ t.SELLUSERID,
|
|
|
+ t.SELLACCOUNTID,
|
|
|
+ t.DELIVERYGOODSID,
|
|
|
+ t.WAREHOUSEID,
|
|
|
+ t.WRSTANDARDID,
|
|
|
+ t.WRFACTORTYPEID,
|
|
|
+ t.WRSTANDARDNAME,
|
|
|
+ t.UNITID,
|
|
|
+ t.UNITPRICE,
|
|
|
+ t.PRESALEQTY,
|
|
|
+ t.BASEQTY,
|
|
|
+ t.MAXBUYQTY,
|
|
|
+ t.MAXLUCKYQTY,
|
|
|
+ to_char(t.STARTDATE, 'yyyy-mm-dd hh24:mi:ss') STARTDATE,
|
|
|
+ to_char(t.ENDDATE, 'yyyy-mm-dd hh24:mi:ss') ENDDATE,
|
|
|
+ to_char(t.TAKESTARTDATE, 'yyyy-mm-dd hh24:mi:ss') TAKESTARTDATE,
|
|
|
+ t.THUMURLS,
|
|
|
+ t.PICTUREURLS,
|
|
|
+ t.BANNERPICURL,
|
|
|
+ t.PRESALESTATUS,
|
|
|
+ t.LOTTERYFLAG,
|
|
|
+ t.LOTTERYQTY,
|
|
|
+ t.LUCKYQTY,
|
|
|
+ t.PLACEQTY,
|
|
|
+ t.MARKETID,
|
|
|
+ to_char(t.SELLWRTRADEORDERID) SELLWRTRADEORDERID,
|
|
|
+ to_char(t.CREATETIME, 'yyyy-mm-dd hh24:mi:ss') CREATETIME,
|
|
|
+ t.TRADEDATE,
|
|
|
+ h.warehousecode,
|
|
|
+ h.warehousename,
|
|
|
+ u.accountname username,
|
|
|
+ e.enumdicname
|
|
|
+ FROM WR_PRESALEINFO t
|
|
|
+ LEFT JOIN WAREHOUSEINFO h on t.warehouseid=h.autoid
|
|
|
+ LEFT JOIN USERACCOUNT u on t.selluserid=u.userid
|
|
|
+ LEFT JOIN ENUMDICITEM e on t.unitid=e.enumitemname and e.enumdiccode='goodsunit'
|
|
|
+ WHERE 1 = 1
|
|
|
+`
|
|
|
+ sqlId.AndEx("t.MARKETID", r.MARKETID, r.MARKETID > 0)
|
|
|
+ sqlId.AndEx("t.LOTTERYFLAG", r.LOTTERYFLAG, r.LOTTERYFLAG >= 0)
|
|
|
+ sqlId.JoinEx(r.FilterStatus != "", fmt.Sprintf(" and t.PRESALESTATUS in(%s)", r.FilterStatus))
|
|
|
+ sqlId.Join(" order by t.createtime desc")
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取新品发布
|
|
|
+func (r *WrPreSaleInfo) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]WrPreSaleInfo, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|