增加百分比搜索
This commit is contained in:
@ -27,6 +27,8 @@ type LinePreOrderGetPageReq struct {
|
|||||||
OrderType string `form:"orderType" search:"type:exact;column:order_type;table:line_pre_order" comment:"订单类型:1=现货;2=合约;3=合约止盈;4=合约止损;5=现货止盈;6=现货止损;7=止损补仓;8=现货加仓;9=现货平仓;10 = 合约止损补仓,11=合约加仓;12=合约平仓"`
|
OrderType string `form:"orderType" search:"type:exact;column:order_type;table:line_pre_order" comment:"订单类型:1=现货;2=合约;3=合约止盈;4=合约止损;5=现货止盈;6=现货止损;7=止损补仓;8=现货加仓;9=现货平仓;10 = 合约止损补仓,11=合约加仓;12=合约平仓"`
|
||||||
AddPositionStatus int `form:"addPositionStatus" search:"-"`
|
AddPositionStatus int `form:"addPositionStatus" search:"-"`
|
||||||
HedgeStatus int `form:"hedgeStatus" search:"-"`
|
HedgeStatus int `form:"hedgeStatus" search:"-"`
|
||||||
|
PercentStart *float64 `form:"percentStart" search:"-"`
|
||||||
|
PercentEnd *float64 `form:"percentEnd" search:"-"`
|
||||||
LinePreOrderOrder
|
LinePreOrderOrder
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -39,12 +39,21 @@ type LinePreOrder struct {
|
|||||||
func (e *LinePreOrder) GetPage(c *dto.LinePreOrderGetPageReq, p *actions.DataPermission, list *[]models.LinePreOrder, count *int64) error {
|
func (e *LinePreOrder) GetPage(c *dto.LinePreOrderGetPageReq, p *actions.DataPermission, list *[]models.LinePreOrder, count *int64) error {
|
||||||
var err error
|
var err error
|
||||||
var data models.LinePreOrder
|
var data models.LinePreOrder
|
||||||
tx := e.Orm.Model(&data).
|
query := e.Orm.Model(&data).
|
||||||
Scopes(
|
Scopes(
|
||||||
cDto.MakeCondition(c.GetNeedSearch()),
|
cDto.MakeCondition(c.GetNeedSearch()),
|
||||||
cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
|
cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
|
||||||
actions.Permission(data.TableName(), p),
|
actions.Permission(data.TableName(), p),
|
||||||
).Where("pid = 0").Joins("JOIN line_api_user on line_api_user.id = line_pre_order.api_id").
|
).Where("pid = 0").Joins("JOIN line_api_user on line_api_user.id = line_pre_order.api_id")
|
||||||
|
|
||||||
|
if c.PercentStart != nil && *c.PercentStart > 0 {
|
||||||
|
query.Where("rate >= ?", *c.PercentStart)
|
||||||
|
}
|
||||||
|
if c.PercentEnd != nil && *c.PercentEnd > 0 {
|
||||||
|
query.Where("rate <= ?", *c.PercentEnd)
|
||||||
|
}
|
||||||
|
|
||||||
|
tx := query.
|
||||||
Joins("JOIN line_pre_order_status on line_pre_order_status.order_sn = line_pre_order.order_sn").
|
Joins("JOIN line_pre_order_status on line_pre_order_status.order_sn = line_pre_order.order_sn").
|
||||||
Select("line_pre_order.*,line_api_user.api_name,line_pre_order_status.add_position_status,line_pre_order_status.reduce_status")
|
Select("line_pre_order.*,line_api_user.api_name,line_pre_order_status.add_position_status,line_pre_order_status.reduce_status")
|
||||||
if c.AddPositionStatus >= 0 {
|
if c.AddPositionStatus >= 0 {
|
||||||
@ -74,12 +83,21 @@ func (e *LinePreOrder) GetPage(c *dto.LinePreOrderGetPageReq, p *actions.DataPer
|
|||||||
func (e *LinePreOrder) GetOrderPage(c *dto.LinePreOrderGetPageReq, p *actions.DataPermission, list *[]models.LinePreOrder, count *int64) error {
|
func (e *LinePreOrder) GetOrderPage(c *dto.LinePreOrderGetPageReq, p *actions.DataPermission, list *[]models.LinePreOrder, count *int64) error {
|
||||||
var err error
|
var err error
|
||||||
var data models.LinePreOrder
|
var data models.LinePreOrder
|
||||||
tx := e.Orm.Model(&data).
|
|
||||||
|
query := e.Orm.Model(&data).
|
||||||
Scopes(
|
Scopes(
|
||||||
cDto.MakeCondition(c.GetNeedSearch()),
|
cDto.MakeCondition(c.GetNeedSearch()),
|
||||||
cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
|
cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
|
||||||
actions.Permission(data.TableName(), p),
|
actions.Permission(data.TableName(), p),
|
||||||
).Where("pid = 0 AND status != '0'").Joins("JOIN line_api_user on line_api_user.id = line_pre_order.api_id").
|
).Where("pid = 0 AND status != '0'").Joins("JOIN line_api_user on line_api_user.id = line_pre_order.api_id")
|
||||||
|
|
||||||
|
if c.PercentStart != nil && *c.PercentStart >= 0 {
|
||||||
|
query.Where("rate >= ?", *c.PercentStart)
|
||||||
|
}
|
||||||
|
if c.PercentEnd != nil && *c.PercentEnd >= 0 {
|
||||||
|
query.Where("rate <= ?", *c.PercentEnd)
|
||||||
|
}
|
||||||
|
tx := query.
|
||||||
Joins("JOIN line_pre_order_status on line_pre_order_status.order_id = line_pre_order.id").
|
Joins("JOIN line_pre_order_status on line_pre_order_status.order_id = line_pre_order.id").
|
||||||
Select("line_pre_order.*,line_api_user.api_name,line_pre_order_status.add_position_status,line_pre_order_status.reduce_status")
|
Select("line_pre_order.*,line_api_user.api_name,line_pre_order_status.add_position_status,line_pre_order_status.reduce_status")
|
||||||
if c.AddPositionStatus >= 0 {
|
if c.AddPositionStatus >= 0 {
|
||||||
|
|||||||
Reference in New Issue
Block a user