apply_record.go 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package models
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "time"
  5. )
  6. type CygxApplyRecord struct {
  7. ApplyRecordId int `orm:"column(apply_record_id);pk" description:"申请试用id"`
  8. UserId int `description:"用户ID"`
  9. BusinessCardUrl string `description:"名片地址"`
  10. RealName string `description:"姓名"`
  11. CompanyName string `description:"公司名称"`
  12. CompanyIdPay int `description:"已付费客户公司id"`
  13. CompanyIdType int `description:"用户状态,1:潜在客户 、2:现有客户 、3:FICC客户 、4:现有客户(正式,无对应权限) 、5:现有客户(试用,无对应权限) 、6:现有客户(试用暂停) 、7:现有客户(冻结) 、8:现有客户(流失) "`
  14. CompanyNamePay string `description:"公司名称"`
  15. Mobile string `description:"手机号"`
  16. CreateTime time.Time `description:"创建时间"`
  17. ApplyMethod int `description:"1:已付费客户申请试用,2:非客户申请试用"`
  18. RegisterPlatform int `description:"来源 1小程序,2:网页"`
  19. InviteCompanySource int `description:"来源 1小程序,2:网页"`
  20. SourceId int `description:"资源ID"`
  21. Source string `description:"资源类型 报告 :article 、图表 :newchart、微路演 :roadshow、活动 :activity、活动视频:activityvideo、活动音频:activityvoice、专项调研活动:activityspecial"`
  22. Title string `description:"标题"`
  23. }
  24. func AddApplyRecord(item *CygxApplyRecord) (err error) {
  25. o, err := orm.NewOrm().Begin()
  26. if err != nil {
  27. return
  28. }
  29. defer func() {
  30. if err != nil {
  31. o.Rollback()
  32. } else {
  33. o.Commit()
  34. }
  35. }()
  36. _, err = o.Insert(item)
  37. ow := orm.NewOrmUsingDB("weekly_report")
  38. if err != nil {
  39. return
  40. }
  41. msql := `UPDATE wx_user
  42. SET
  43. note = ?,
  44. is_note = 1,
  45. apply_method = ?,
  46. real_name=?,
  47. mobile=?
  48. WHERE user_id = ? `
  49. _, err = ow.Raw(msql, item.CompanyName, item.ApplyMethod, item.RealName, item.Mobile, item.UserId).Exec()
  50. return
  51. }
  52. func GetApplyRecordCount(userId int) (count int, err error) {
  53. o := orm.NewOrm()
  54. sql := `SELECT COUNT(1) AS count FROM cygx_apply_record WHERE user_id=? AND status=0 `
  55. err = o.Raw(sql, userId).QueryRow(&count)
  56. return
  57. }
  58. // 通过手机号获取详情
  59. func GetCygxApplyRecordByMobile(mobile string) (item *CygxApplyRecord, err error) {
  60. o := orm.NewOrm()
  61. sql := `SELECT * FROM cygx_apply_record WHERE mobile=? AND status=0 ORDER BY apply_record_id DESC LIMIT 1 `
  62. err = o.Raw(sql, mobile).QueryRow(&item)
  63. return
  64. }
  65. // 获取客户的试用申请次数
  66. func GetApplyRecordCountByCompanyIdPay(companyIdPay int) (count int, err error) {
  67. o := orm.NewOrm()
  68. sql := `SELECT COUNT(1) AS count FROM cygx_apply_record WHERE company_id_pay = ? `
  69. err = o.Raw(sql, companyIdPay).QueryRow(&count)
  70. return
  71. }