package dao import ( "github.com/druidcaesa/gotool" "ulink-admin/frame" "ulink-admin/modules/stock/models/model" "ulink-admin/modules/stock/models/req" "ulink-admin/pkg/base" "ulink-admin/pkg/page" ) type StockDetailDao struct { base.BaseDao } // Page 查询股票明细分页数据 func (this StockDetailDao) Page(query *req.StockDetailQuery) (*[]model.StockDetail, int64) { stockDetail := make([]model.StockDetail, 0) session := this.GetSession().Table(model.StockDetail{}.TableName()) if query.Id > 0 { session.And("id = ?", query.Id) } if query.StockId > 0 { session.And("stock_id = ?", query.StockId) } if query.Site30 > 0 { session.And("site30 = ?", query.Site30) } if query.Site60 > 0 { session.And("site60 = ?", query.Site60) } if query.SiteDate > 0 { session.And("site_date = ?", query.SiteDate) } if query.Target > 0 { session.And("target = ?", query.Target) } if !gotool.StrUtils.HasEmpty(query.CreateBy) { session.And("create_by = ?", query.CreateBy) } if !gotool.StrUtils.HasEmpty(query.UpdateBy) { session.And("update_by = ?", query.UpdateBy) } if !gotool.StrUtils.HasEmpty(query.BeginTime) { session.And("date_format(u.create_time,'%y%m%d') >= date_format(?,'%y%m%d')", query.BeginTime) } if !gotool.StrUtils.HasEmpty(query.EndTime) { session.And("date_format(u.create_time,'%y%m%d') <= date_format(?,'%y%m%d')", query.EndTime) } total, _ := page.GetTotal(session.Clone()) err := session.Limit(query.PageSize, page.StartSize(query.PageNum, query.PageSize)).Find(&stockDetail) if err != nil { frame.Throw(frame.SQL_CODE, "数据查询错误"+err.Error()) } return &stockDetail, total } // List 查询股票明细分页数据 func (this StockDetailDao) List(query *req.StockDetailQuery, list interface{}) { session := this.GetSession().Table(model.StockDetail{}.TableName()) if query.Id > 0 { session.And("id = ?", query.Id) } if query.StockId > 0 { session.And("stock_id = ?", query.StockId) } if query.Site30 > 0 { session.And("site30 = ?", query.Site30) } if query.Site60 > 0 { session.And("site60 = ?", query.Site60) } if query.SiteDate > 0 { session.And("site_date = ?", query.SiteDate) } if query.Target > 0 { session.And("target = ?", query.Target) } if !gotool.StrUtils.HasEmpty(query.CreateBy) { session.And("create_by = ?", query.CreateBy) } if !gotool.StrUtils.HasEmpty(query.UpdateBy) { session.And("update_by = ?", query.UpdateBy) } if !gotool.StrUtils.HasEmpty(query.BeginTime) { session.And("date_format(u.create_time,'%y%m%d') >= date_format(?,'%y%m%d')", query.BeginTime) } if !gotool.StrUtils.HasEmpty(query.EndTime) { session.And("date_format(u.create_time,'%y%m%d') <= date_format(?,'%y%m%d')", query.EndTime) } err := session.Find(list) if err != nil { frame.Throw(frame.SQL_CODE, "数据查询错误"+err.Error()) } }