custom.go 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package overseas_custom
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "time"
  5. )
  6. type Custom struct {
  7. }
  8. type RsCompany struct {
  9. CompanyId int
  10. Total int
  11. }
  12. // EnglishCompany 英文客户
  13. type EnglishCompany struct {
  14. CompanyId int `orm:"column(company_id);pk" description:"英文客户ID"`
  15. CompanyName string `description:"客户名称"`
  16. CountryCode string `description:"国家Code"`
  17. Country string `description:"国家"`
  18. SellerId int `description:"销售ID"`
  19. SellerName string `description:"销售姓名"`
  20. ViewTotal int `description:"累计点击量/阅读量"`
  21. IsDeleted int `description:"删除状态:0-正常;1-已删除"`
  22. CreateTime time.Time `description:"创建时间"`
  23. ModifyTime time.Time `description:"更新时间"`
  24. Enabled int `description:"0-禁用; 1-启用; 2-部分禁用"`
  25. Status int `description:"1:正式,2:临时,3:终止"`
  26. Nation string `description:"所属国家"`
  27. IsHide int `description:"是否隐藏:0:不隐藏,1:隐藏"`
  28. OverseasStatus string `description:"海外客户状态:'正式','试用','关闭'"`
  29. OverseasLabel int `description:"海外客户试用子标签:1未分类、2 推进、3 跟踪、4 预备、"`
  30. RoadShowTotal int `description:"累计路演次数"`
  31. }
  32. // 获取客户路演数据
  33. func (obj *Custom) GetRsCompanyTotal() (list []*RsCompany, err error) {
  34. o := orm.NewOrm()
  35. sql := `SELECT a.company_id,COUNT(1) AS total
  36. FROM rs_calendar AS a
  37. INNER JOIN rs_calendar_researcher AS b ON a.rs_calendar_id = b.rs_calendar_id
  38. WHERE
  39. a.source = 0
  40. AND b.status = 2
  41. AND a.english_company=1
  42. GROUP BY a.company_id`
  43. _, err = o.Raw(sql).QueryRows(&list)
  44. return
  45. }
  46. // 获取所有英文客户
  47. func (obj *Custom) GetEnglishCompanyAll() (list []*EnglishCompany, err error) {
  48. o := orm.NewOrmUsingDB("rddp")
  49. sql := `SELECT * FROM english_company WHERE is_deleted = 0 `
  50. _, err = o.Raw(sql).QueryRows(&list)
  51. return
  52. }
  53. func (obj *Custom) UpdateRoadShowTotal(companyId, total int) (err error) {
  54. o := orm.NewOrmUsingDB("rddp")
  55. sql := ` UPDATE english_company SET road_show_total=? WHERE company_id=? `
  56. _, err = o.Raw(sql, total, companyId).Exec()
  57. return
  58. }