sys_member_service.go 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package service
  2. import (
  3. "github.com/druidcaesa/gotool"
  4. "ulink-admin/frame"
  5. "ulink-admin/modules/system/dao"
  6. "ulink-admin/modules/system/models/model"
  7. "ulink-admin/modules/system/models/req"
  8. )
  9. type SysMemberService struct {
  10. SysMemberDao *dao.SysMemberDao `inject:""`
  11. }
  12. // List 查询所有会员管理业务方法
  13. func (this SysMemberService) List(query *req.SysMemberQuery, list interface{}) {
  14. this.SysMemberDao.List(query, list)
  15. }
  16. // Page 查询会员管理分页列表
  17. func (this SysMemberService) Page(query *req.SysMemberQuery, list interface{}) int64 {
  18. return this.SysMemberDao.Page(query, list)
  19. }
  20. // Insert 添加会员管理
  21. func (this SysMemberService) Insert(sysMember *model.SysMember) {
  22. //检查登录账号唯一性
  23. if this.SysMemberDao.Exist(sysMember.TableName(), "user_name=?", sysMember.UserName) {
  24. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.UserName+"'失败,登录账号已存在")
  25. }
  26. //检查手机号唯一性
  27. if this.SysMemberDao.Exist(sysMember.TableName(), "phone=?", sysMember.Phone) {
  28. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.Phone+"'失败,手机号已存在")
  29. }
  30. //检查邮箱地址唯一性
  31. if this.SysMemberDao.Exist(sysMember.TableName(), "email=?", sysMember.Email) {
  32. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.Email+"'失败,邮箱地址已存在")
  33. }
  34. //检查微信openId唯一性
  35. if gotool.StrUtils.HasEmpty(sysMember.OpenId) {
  36. if this.SysMemberDao.Exist(sysMember.TableName(), "open_id=?", sysMember.OpenId) {
  37. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.OpenId+"'失败,微信openId已存在")
  38. }
  39. }
  40. sysMember.Password = gotool.BcryptUtils.Generate(sysMember.Password)
  41. this.SysMemberDao.Insert(sysMember)
  42. }
  43. // Get 查询
  44. func (this SysMemberService) Get(id int64) *model.SysMember {
  45. return this.SysMemberDao.GetById(id, &model.SysMember{}).(*model.SysMember)
  46. }
  47. // Delete 批量删除
  48. func (this SysMemberService) Delete(list []int64) {
  49. this.SysMemberDao.Delete(&model.SysMember{}, list)
  50. }
  51. // Edit 修改
  52. func (this SysMemberService) Edit(sysMember *model.SysMember, cols []string) {
  53. //检查登录账号唯一性
  54. if this.SysMemberDao.Exist(sysMember.TableName(), "user_name=? and id!=?", sysMember.UserName, sysMember.Id) {
  55. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.UserName+"'失败,登录账号已存在")
  56. }
  57. //检查手机号唯一性
  58. if this.SysMemberDao.Exist(sysMember.TableName(), "phone=? and id!=?", sysMember.Phone, sysMember.Id) {
  59. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.Phone+"'失败,手机号已存在")
  60. }
  61. //检查邮箱地址唯一性
  62. if this.SysMemberDao.Exist(sysMember.TableName(), "email=? and id!=?", sysMember.Email, sysMember.Id) {
  63. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.Email+"'失败,邮箱地址已存在")
  64. }
  65. //检查微信openId唯一性
  66. if this.SysMemberDao.Exist(sysMember.TableName(), "open_id=? and id!=?", sysMember.OpenId, sysMember.Id) {
  67. frame.Throw(frame.BUSINESS_CODE, "新增会员管理'"+sysMember.OpenId+"'失败,微信openId已存在")
  68. }
  69. this.SysMemberDao.Update(sysMember, cols...)
  70. }