package dao import ( "github.com/druidcaesa/gotool" "ulink-admin/frame" "ulink-admin/modules/car/models/model" "ulink-admin/modules/car/models/req" "ulink-admin/pkg/base" "ulink-admin/pkg/page" ) type RunDao struct { base.BaseDao } // Page 查询营运记录分页数据 func (this RunDao) Page(query *req.RunQuery) (*[]model.Run, int64) { run := make([]model.Run, 0) session := this.GetSession().Table(model.Run{}.TableName()) if query.Id > 0 { session.And("id = ?", query.Id) } if !gotool.StrUtils.HasEmpty(query.ServiceNo) { session.And("service_no = ?", query.ServiceNo) } if !gotool.StrUtils.HasEmpty(query.Card) { session.And("card = ?", query.Card) } if !gotool.StrUtils.HasEmpty(query.Driver) { session.And("driver = ?", query.Driver) } if !gotool.StrUtils.HasEmpty(query.IdCard) { session.And("id_card = ?", query.IdCard) } if query.CompanyId > 0 { session.And("company_id = ?", query.CompanyId) } if !gotool.StrUtils.HasEmpty(query.CarNo) { session.And("car_no = ?", query.CarNo) } if !gotool.StrUtils.HasEmpty(query.Address) { session.And("address = ?", query.Address) } if !gotool.StrUtils.HasEmpty(query.ViolationDate) { session.And("violation_date = ?", query.ViolationDate) } if !gotool.StrUtils.HasEmpty(query.Content) { session.And("content = ?", query.Content) } if query.Score > 0 { session.And("score = ?", query.Score) } if !gotool.StrUtils.HasEmpty(query.Company) { session.And("company = ?", query.Company) } if !gotool.StrUtils.HasEmpty(query.HandlerDate) { session.And("handler_date = ?", query.HandlerDate) } if !gotool.StrUtils.HasEmpty(query.Remark) { session.And("remark = ?", query.Remark) } 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, err := session.Limit(query.PageSize, page.StartSize(query.PageNum, query.PageSize)).FindAndCount(&run) if err != nil { frame.Throw(frame.SQL_CODE, "数据查询错误"+err.Error()) } return &run, total } // List 查询营运记录分页数据 func (this RunDao) List(query *req.RunQuery, list interface{}) { session := this.GetSession().Table(model.Run{}.TableName()) if query.Id > 0 { session.And("id = ?", query.Id) } if !gotool.StrUtils.HasEmpty(query.ServiceNo) { session.And("service_no = ?", query.ServiceNo) } if !gotool.StrUtils.HasEmpty(query.Card) { session.And("card = ?", query.Card) } if !gotool.StrUtils.HasEmpty(query.Driver) { session.And("driver = ?", query.Driver) } if !gotool.StrUtils.HasEmpty(query.IdCard) { session.And("id_card = ?", query.IdCard) } if query.CompanyId > 0 { session.And("company_id = ?", query.CompanyId) } if !gotool.StrUtils.HasEmpty(query.CarNo) { session.And("car_no = ?", query.CarNo) } if !gotool.StrUtils.HasEmpty(query.Address) { session.And("address = ?", query.Address) } if !gotool.StrUtils.HasEmpty(query.ViolationDate) { session.And("violation_date = ?", query.ViolationDate) } if !gotool.StrUtils.HasEmpty(query.Content) { session.And("content = ?", query.Content) } if query.Score > 0 { session.And("score = ?", query.Score) } if !gotool.StrUtils.HasEmpty(query.Company) { session.And("company = ?", query.Company) } if !gotool.StrUtils.HasEmpty(query.HandlerDate) { session.And("handler_date = ?", query.HandlerDate) } if !gotool.StrUtils.HasEmpty(query.Remark) { session.And("remark = ?", query.Remark) } 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()) } }