exa_customer.go 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package model
  2. import (
  3. "gin-vue-admin/global"
  4. "github.com/jinzhu/gorm"
  5. )
  6. type ExaCustomer struct {
  7. gorm.Model
  8. CustomerName string `json:"customerName"`
  9. CustomerPhoneData string `json:"customerPhoneData"`
  10. SysUserID uint `json:"sysUserId"`
  11. SysUserAuthorityID string `json:"sysUserAuthorityID"`
  12. SysUser SysUser `json:"sysUser"`
  13. }
  14. // @title CreateExaCustomer
  15. // @description create a customer, 创建用户
  16. // @auth (2020/04/05 20:22 )
  17. // @param newPassword string
  18. // @return err error
  19. func (e *ExaCustomer) CreateExaCustomer() (err error) {
  20. err = global.GVA_DB.Create(e).Error
  21. return err
  22. }
  23. // @title DeleteFileChunk
  24. // @description delete a customer, 删除用户
  25. // @auth (2020/04/05 20:22 )
  26. // @param FileMd5 string
  27. // @param FileName string
  28. // @param FilePath string
  29. // @return error
  30. func (e *ExaCustomer) DeleteExaCustomer() (err error) {
  31. err = global.GVA_DB.Delete(e).Error
  32. return err
  33. }
  34. // @title UpdateExaCustomer
  35. // @description update a customer, 更新用户
  36. // @auth (2020/04/05 20:22 )
  37. // @param FileMd5 string
  38. // @param FileName string
  39. // @param FilePath string
  40. // @return error
  41. func (e *ExaCustomer) UpdateExaCustomer() (err error) {
  42. err = global.GVA_DB.Save(e).Error
  43. return err
  44. }
  45. // @title GetExaCustomer
  46. // @description get the info of a costumer , 获取用户信息
  47. // @auth (2020/04/05 20:22 )
  48. // @param FileMd5 string
  49. // @param FileName string
  50. // @param FilePath string
  51. // @return error
  52. func (e *ExaCustomer) GetExaCustomer() (err error, customer ExaCustomer) {
  53. err = global.GVA_DB.Where("id = ?", e.ID).First(&customer).Error
  54. return
  55. }
  56. // @title GetInfoList
  57. // @description get customer list by pagination, 分页获取用户列表
  58. // @auth (2020/04/05 20:22 )
  59. // @param FileMd5 string
  60. // @param FileName string
  61. // @param FilePath string
  62. // @return error
  63. func (e *ExaCustomer) GetInfoList(info PageInfo) (err error, list interface{}, total int) {
  64. limit := info.PageSize
  65. offset := info.PageSize * (info.Page - 1)
  66. db := global.GVA_DB
  67. if err != nil {
  68. return
  69. } else {
  70. var a SysAuthority
  71. a.AuthorityId = e.SysUserAuthorityID
  72. err, auth := a.GetAuthorityInfo()
  73. var dataId []string
  74. for _, v := range auth.DataAuthorityId {
  75. dataId = append(dataId, v.AuthorityId)
  76. }
  77. var CustomerList []ExaCustomer
  78. err = db.Where("sys_user_authority_id in (?)", dataId).Find(&CustomerList).Count(&total).Error
  79. if err != nil {
  80. return err, CustomerList, total
  81. } else {
  82. err = db.Limit(limit).Offset(offset).Preload("SysUser").Where("sys_user_authority_id in (?)", dataId).Find(&CustomerList).Error
  83. }
  84. return err, CustomerList, total
  85. }
  86. }