package dao import ( "github.com/druidcaesa/gotool" "ulink-admin/frame" "ulink-admin/modules/system/models/model" "ulink-admin/modules/system/models/req" "ulink-admin/pkg/base" "ulink-admin/pkg/page" ) type SysMemberDao struct { base.BaseDao } // Page 查询会员管理分页数据 func (this SysMemberDao) Page(query *req.SysMemberQuery, list interface{}) int64 { session := this.GetSession().Table(model.SysMember{}.TableName()) if query.Id > 0 { session.And("id = ?", query.Id) } if !gotool.StrUtils.HasEmpty(query.UserName) { session.And("user_name = ?", query.UserName) } if !gotool.StrUtils.HasEmpty(query.Phone) { session.And("phone = ?", query.Phone) } if !gotool.StrUtils.HasEmpty(query.Password) { session.And("password = ?", query.Password) } if !gotool.StrUtils.HasEmpty(query.NickName) { session.And("nick_name = ?", query.NickName) } if !gotool.StrUtils.HasEmpty(query.RealName) { session.And("real_name = ?", query.RealName) } if !gotool.StrUtils.HasEmpty(query.Sex) { session.And("sex = ?", query.Sex) } if !gotool.StrUtils.HasEmpty(query.Avatar) { session.And("avatar = ?", query.Avatar) } if !gotool.StrUtils.HasEmpty(query.Email) { session.And("email = ?", query.Email) } if query.State > 0 { session.And("state = ?", query.State) } if !gotool.StrUtils.HasEmpty(query.OpenId) { session.And("open_id = ?", query.OpenId) } if !gotool.StrUtils.HasEmpty(query.LoginIp) { session.And("login_ip = ?", query.LoginIp) } if !gotool.StrUtils.HasEmpty(query.Remark) { session.And("remark = ?", query.Remark) } 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()) session.Desc("id") total, err := session.Limit(query.PageSize, page.StartSize(query.PageNum, query.PageSize)).FindAndCount(list) if err != nil { frame.Throw(frame.SQL_CODE, "数据查询错误"+err.Error()) } return total } // List 查询会员管理分页数据 func (this SysMemberDao) List(query *req.SysMemberQuery, list interface{}) { session := this.GetSession().Table(model.SysMember{}.TableName()) if query.Id > 0 { session.And("id = ?", query.Id) } if !gotool.StrUtils.HasEmpty(query.UserName) { session.And("user_name = ?", query.UserName) } if !gotool.StrUtils.HasEmpty(query.Phone) { session.And("phone = ?", query.Phone) } if !gotool.StrUtils.HasEmpty(query.Password) { session.And("password = ?", query.Password) } if !gotool.StrUtils.HasEmpty(query.NickName) { session.And("nick_name = ?", query.NickName) } if !gotool.StrUtils.HasEmpty(query.RealName) { session.And("real_name = ?", query.RealName) } if !gotool.StrUtils.HasEmpty(query.Sex) { session.And("sex = ?", query.Sex) } if !gotool.StrUtils.HasEmpty(query.Avatar) { session.And("avatar = ?", query.Avatar) } if !gotool.StrUtils.HasEmpty(query.Email) { session.And("email = ?", query.Email) } if query.State > 0 { session.And("state = ?", query.State) } if !gotool.StrUtils.HasEmpty(query.OpenId) { session.And("open_id = ?", query.OpenId) } if !gotool.StrUtils.HasEmpty(query.LoginIp) { session.And("login_ip = ?", query.LoginIp) } if !gotool.StrUtils.HasEmpty(query.Remark) { session.And("remark = ?", query.Remark) } 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) } session.Desc("id") err := session.Find(list) if err != nil { frame.Throw(frame.SQL_CODE, "数据查询错误"+err.Error()) } } func (this SysMemberDao) GetUserByPhone(phone string) *model.SysMember { member := new(model.SysMember) bl, err := this.GetSession().Where("phone", phone).Get(member) if err != nil { frame.Throw(frame.SQL_CODE, err.Error()) } if bl { return member } else { return nil } } func (this SysMemberDao) GetUserByUserName(name string) *model.SysMember { member := new(model.SysMember) bl, err := this.GetSession().Where("user_name=?", name).Limit(1).Get(member) if err != nil { frame.Throw(frame.SQL_CODE, err.Error()) } if bl { return member } else { return nil } }