email.go 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package english_report_email
  2. import (
  3. "hongze/hongze_yb_en_api/global"
  4. "hongze/hongze_yb_en_api/models/base"
  5. "time"
  6. )
  7. // 英文研报-邮箱
  8. type Email struct {
  9. Id uint `gorm:"primaryKey;column:id" json:"id"`
  10. CompanyId uint `gorm:"column:company_id" json:"company_id"` //客户ID
  11. Name string `gorm:"column:name" json:"name"` //客户名称
  12. CompanyName string `gorm:"column:company_name" json:"company_name"` //公司名称
  13. Email string `gorm:"column:email" json:"email"` //邮箱地址
  14. ViewTotal uint `gorm:"column:view_total" json:"view_total"` //累计点击量/阅读量
  15. LastViewTime time.Time `gorm:"column:last_view_time" json:"last_view_time"` //最后阅读时间
  16. IsDeleted uint8 `gorm:"column:is_deleted" json:"is_deleted"` //删除状态:0-正常;1-已删除
  17. AdminId uint `gorm:"column:admin_id" json:"admin_id"` //创建人ID
  18. AdminName string `gorm:"column:admin_name" json:"admin_name"` //创建人名称
  19. Enable int `gorm:"column:enabled" json:"enabled"`
  20. Status int `description:"1:正式,2:临时,3:终止"`
  21. Password string `gorm:"column:password" json:"password"`
  22. Mobile string `gorm:"column:mobile" json:"mobile"`
  23. base.TimeBase
  24. }
  25. // TableName get sql table name.获取数据库表名
  26. func (e *Email) TableName() string {
  27. return "english_report_email"
  28. }
  29. // Add 新增
  30. func (e *Email) Add() (err error) {
  31. err = global.MYSQL["rddp"].Create(e).Error
  32. return
  33. }
  34. // 修改
  35. func (e *Email) Update(updateCols []string) (err error) {
  36. err = global.MYSQL["rddp"].Model(e).Select(updateCols).Updates(e).Error
  37. return
  38. }
  39. func (e *Email) GetById(id int) (item *Email, err error) {
  40. err = global.MYSQL["rddp"].Model(e).Where("is_deleted = 0 AND id= ?", id).First(&item).Error
  41. return
  42. }
  43. func (e *Email) UpdateViewTotalById(Id uint) (err error) {
  44. sql := `UPDATE english_report_email SET view_total = view_total+1, last_view_time = NOW() WHERE id = ? `
  45. err = global.MYSQL["rddp"].Exec(sql, Id).Error
  46. return
  47. }
  48. func CheckUserPwd(loginType int, countryCode, account, password string) (item *Email, err error) {
  49. sql := ``
  50. if loginType == 1 {
  51. sql = `SELECT * FROM english_report_email WHERE email=? AND password=? `
  52. err = global.MYSQL["rddp"].Raw(sql, account, password).Scan(&item).Error
  53. } else {
  54. sql = `SELECT * FROM english_report_email WHERE country_code = ? mobile=? AND password=? `
  55. err = global.MYSQL["rddp"].Raw(sql, countryCode, account, password).Scan(&item).Error
  56. }
  57. return
  58. }
  59. func CheckUser(email string) (item *Email, err error) {
  60. sql := `SELECT * FROM english_report_email WHERE email=? `
  61. err = global.MYSQL["rddp"].Raw(sql, email).First(&item).Error
  62. return
  63. }
  64. func (e *Email) GetByEmail(id string) (item *Email, err error) {
  65. err = global.MYSQL["rddp"].Model(e).Where("email = ? ", id).First(&item).Error
  66. return
  67. }