From d20acf38c36c11ee4428c3e74a17f5870dc61b51 Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期四, 16 十一月 2023 09:51:00 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/aps/SRM --- service/test/member.go | 76 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 76 insertions(+), 0 deletions(-) diff --git a/service/test/member.go b/service/test/member.go new file mode 100644 index 0000000..02aca1c --- /dev/null +++ b/service/test/member.go @@ -0,0 +1,76 @@ +package test + +import ( + "srm/global" + "srm/model/common/request" + "srm/model/test" + testReq "srm/model/test/request" +) + +type MemberService struct { +} + +// CreateMember 鍒涘缓Member璁板綍 +// Author [piexlmax](https://github.com/piexlmax) +func (mService *MemberService) CreateMember(m *test.Member) (err error) { + err = global.GVA_DB.Create(m).Error + return err +} + +// DeleteMember 鍒犻櫎Member璁板綍 +// Author [piexlmax](https://github.com/piexlmax) +func (mService *MemberService) DeleteMember(m test.Member) (err error) { + err = global.GVA_DB.Delete(&m).Error + return err +} + +// DeleteMemberByIds 鎵归噺鍒犻櫎Member璁板綍 +// Author [piexlmax](https://github.com/piexlmax) +func (mService *MemberService) DeleteMemberByIds(ids request.IdsReq) (err error) { + err = global.GVA_DB.Delete(&[]test.Member{}, "id in ?", ids.Ids).Error + return err +} + +// UpdateMember 鏇存柊Member璁板綍 +// Author [piexlmax](https://github.com/piexlmax) +func (mService *MemberService) UpdateMember(m test.Member) (err error) { + err = global.GVA_DB.Updates(&m).Error + return err +} + +// GetMember 鏍规嵁id鑾峰彇Member璁板綍 +// Author [piexlmax](https://github.com/piexlmax) +func (mService *MemberService) GetMember(id uint) (m test.Member, err error) { + err = global.GVA_DB.Where("id = ?", id).First(&m).Error + return +} + +// GetMemberInfoList 鍒嗛〉鑾峰彇Member璁板綍 +// Author [piexlmax](https://github.com/piexlmax) +func (mService *MemberService) GetMemberInfoList(info testReq.MemberSearch) (list []test.Member, total int64, err error) { + limit := info.PageSize + offset := info.PageSize * (info.Page - 1) + // 鍒涘缓db + db := global.GVA_DB.Model(&test.Member{}) + var ms []test.Member + // 濡傛灉鏈夋潯浠舵悳绱� 涓嬫柟浼氳嚜鍔ㄥ垱寤烘悳绱㈣鍙� + if info.StartCreatedAt != nil && info.EndCreatedAt != nil { + db = db.Where("created_at BETWEEN ? AND ?", info.StartCreatedAt, info.EndCreatedAt) + } + if info.Uuid != "" { + db = db.Where("uuid LIKE ?", "%"+info.Uuid+"%") + } + if info.UserName != "" { + db = db.Where("user_name LIKE ?", "%"+info.UserName+"%") + } + if info.Nickname != "" { + db = db.Where("nickname LIKE ?", "%"+info.Nickname+"%") + } + err = db.Count(&total).Error + if err != nil { + return + } + + err = db.Limit(limit).Offset(offset).Find(&ms).Error + return ms, total, err +} -- Gitblit v1.8.0