activity_ask_email.go 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package cygx
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "hongze/hz_crm_api/models/system"
  5. )
  6. type AskEmailRep struct {
  7. Name string `description:"姓名"`
  8. Email string `description:"邮箱"`
  9. Mobile string `description:"手机号"`
  10. ChartPermissionName string `description:"权限名称"`
  11. AdminId int
  12. }
  13. func GetAskEmail() (item []*AskEmailRep, err error) {
  14. o := orm.NewOrmUsingDB("hz_cygx")
  15. sql := `SELECT * FROM cygx_activity_ask_email`
  16. _, err = o.Raw(sql).QueryRows(&item)
  17. return
  18. }
  19. // 判断研究员是不是策略行业的
  20. func GetAskEmailCountByCelue(adminId string) (count int, err error) {
  21. o := orm.NewOrmUsingDB("hz_cygx")
  22. sqlCount := ` SELECT COUNT(1) AS count FROM cygx_activity_ask_email WHERE chart_permission_name = '策略' AND admin_id IN (` + adminId + `) `
  23. err = o.Raw(sqlCount).QueryRow(&count)
  24. return
  25. }
  26. func GetAskEmailListByAdminIds(adminId string) (item []*AskEmailRep, err error) {
  27. o := orm.NewOrmUsingDB("hz_cygx")
  28. sql := `SELECT * FROM cygx_activity_ask_email WHERE chart_permission_name != '' AND admin_id IN (` + adminId + `) `
  29. _, err = o.Raw(sql).QueryRows(&item)
  30. return
  31. }
  32. func GetAskEmailList() (item []*AskEmailRep, err error) {
  33. o := orm.NewOrmUsingDB("hz_cygx")
  34. sql := `SELECT * FROM cygx_activity_ask_email WHERE chart_permission_name != '' ORDER BY sort DESC`
  35. _, err = o.Raw(sql).QueryRows(&item)
  36. return
  37. }
  38. // 权益自定义研究员信息
  39. func GetAskEmailListResearcher() (item []*AskEmailRep, err error) {
  40. o := orm.NewOrmUsingDB("hz_cygx")
  41. sql := `SELECT * FROM cygx_activity_ask_email WHERE chart_permission_name != '' AND enabled_researcher = 1 AND admin_id > 0 ORDER BY sort DESC , id ASC `
  42. _, err = o.Raw(sql).QueryRows(&item)
  43. return
  44. }
  45. func UpdateAskEmail(item *AskEmailRep) (err error) {
  46. o := orm.NewOrmUsingDB("hz_cygx")
  47. sql := `UPDATE cygx_activity_ask_email SET admin_id=? where mobile=?`
  48. _, err = o.Raw(sql, item.AdminId, item.Mobile).Exec()
  49. return
  50. }
  51. func InitSyncActivityAskEmailAdminId() {
  52. list, err := GetAskEmailList()
  53. if err != nil {
  54. return
  55. }
  56. sysUserList, err := system.GetAdminList()
  57. if err != nil {
  58. return
  59. }
  60. adminMap := make(map[string]*system.Admin, 0)
  61. for _, v := range sysUserList {
  62. adminMap[v.Mobile] = v
  63. }
  64. for _, v := range list {
  65. if admin, ok := adminMap[v.Mobile]; ok {
  66. v.AdminId = admin.AdminId
  67. err = UpdateAskEmail(v)
  68. if err != nil {
  69. return
  70. }
  71. }
  72. }
  73. }