|
|
@@ -13,6 +13,7 @@ import (
|
|
|
"mtp2_if/utils"
|
|
|
"net/http"
|
|
|
"strconv"
|
|
|
+ "strings"
|
|
|
"time"
|
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
@@ -778,6 +779,8 @@ func QueryHisTradeDetail(c *gin.Context) {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+ accountIds := strings.Split(req.AccountID, ",")
|
|
|
+
|
|
|
datas := make([]QueryHisTradeDetailRsp, 0)
|
|
|
engine := db.GetEngine()
|
|
|
s := engine.Table("HIS_TRADE_TRADEDETAIL").
|
|
|
@@ -789,7 +792,9 @@ func QueryHisTradeDetail(c *gin.Context) {
|
|
|
HIS_TRADE_TRADEDETAIL.*, CASE HIS_TRADE_TRADEDETAIL.BUILDTYPE WHEN 1 THEN HIS_TRADE_TRADEDETAIL.OPENCHARGE ELSE HIS_TRADE_TRADEDETAIL.CLOSECHARGE END as CHARGE,
|
|
|
GOODS.GOODSCODE, GOODS.GOODSNAME,GOODS.DECIMALPLACE, GOODS.QTYDECIMALPLACE, GOODS.GOODUNITID, MARKET.MARKETNAME, MARKET.TRADEMODE,
|
|
|
HIS_TRADE_ORDERDETAIL.LISTINGSELECTTYPE, TRADE_PAYORDER.ADVANCERATIO, TRADE_PAYORDER.PAYAMOUNT, TRADE_PAYORDER.TRADECHARGE`).
|
|
|
- Where(fmt.Sprintf("HIS_TRADE_TRADEDETAIL.ISVALIDDATA = 1 and HIS_TRADE_TRADEDETAIL.ACCOUNTID in (%s)", req.AccountID)).
|
|
|
+ // Where(fmt.Sprintf("HIS_TRADE_TRADEDETAIL.ISVALIDDATA = 1 and HIS_TRADE_TRADEDETAIL.ACCOUNTID in (%s)", req.AccountID)).
|
|
|
+ Where("HIS_TRADE_TRADEDETAIL.ISVALIDDATA = 1").
|
|
|
+ In("HIS_TRADE_TRADEDETAIL.ACCOUNTID", accountIds).
|
|
|
Desc("HIS_TRADE_TRADEDETAIL.TRADEID")
|
|
|
if req.TradeID > 0 {
|
|
|
s = s.And("HIS_TRADE_TRADEDETAIL.TRADEID = ?", req.TradeID)
|
|
|
@@ -801,19 +806,25 @@ func QueryHisTradeDetail(c *gin.Context) {
|
|
|
s = s.And("HIS_TRADE_TRADEDETAIL.GOODSID = ?", req.GoodsID)
|
|
|
}
|
|
|
if len(req.TradeMode) > 0 {
|
|
|
- s = s.And(fmt.Sprintf("MARKET.TRADEMODE in (%s)", req.TradeMode))
|
|
|
+ // s = s.And(fmt.Sprintf("MARKET.TRADEMODE in (%s)", req.TradeMode))
|
|
|
+ tradeModes := strings.Split(req.TradeMode, ",")
|
|
|
+ s = s.In("MARKET.TRADEMODE", tradeModes)
|
|
|
}
|
|
|
if req.BuildType > 0 {
|
|
|
s = s.And("HIS_TRADE_TRADEDETAIL.BUILDTYPE = ?", req.BuildType)
|
|
|
}
|
|
|
if len(req.TradeType) > 0 {
|
|
|
- s = s.And(fmt.Sprintf("HIS_TRADE_TRADEDETAIL.TRADETYPE in (%s)", req.TradeType))
|
|
|
+ // s = s.And(fmt.Sprintf("HIS_TRADE_TRADEDETAIL.TRADETYPE in (%s)", req.TradeType))
|
|
|
+ tradeTypes := strings.Split(req.TradeType, ",")
|
|
|
+ s = s.In("HIS_TRADE_TRADEDETAIL.TRADETYPE", tradeTypes)
|
|
|
}
|
|
|
if len(req.StartDate) > 0 {
|
|
|
- s = s.And(fmt.Sprintf("to_date(HIS_TRADE_TRADEDETAIL.HISTRADEDATE,'yyyyMMdd') >= to_date('%s','yyyy-MM-dd')", req.StartDate))
|
|
|
+ // s = s.And(fmt.Sprintf("to_date(HIS_TRADE_TRADEDETAIL.HISTRADEDATE,'yyyyMMdd') >= to_date('%s','yyyy-MM-dd')", req.StartDate))
|
|
|
+ s = s.And("HIS_TRADE_TRADEDETAIL.HISTRADEDATE >= ?", req.StartDate)
|
|
|
}
|
|
|
if len(req.EndDate) > 0 {
|
|
|
- s = s.And(fmt.Sprintf("to_date(HIS_TRADE_TRADEDETAIL.HISTRADEDATE,'yyyyMMdd') <= to_date('%s','yyyy-MM-dd')", req.EndDate))
|
|
|
+ // s = s.And(fmt.Sprintf("to_date(HIS_TRADE_TRADEDETAIL.HISTRADEDATE,'yyyyMMdd') <= to_date('%s','yyyy-MM-dd')", req.EndDate))
|
|
|
+ s = s.And("HIS_TRADE_TRADEDETAIL.HISTRADEDATE <= ?", req.EndDate)
|
|
|
}
|
|
|
if err := s.Find(&datas); err != nil {
|
|
|
// 查询失败
|