123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 |
- package models
- import (
- "github.com/beego/beego/v2/client/orm"
- "time"
- )
- type CygxActivitySpecialSignup struct {
- Id int `orm:"column(id);pk"`
- ActivityId int `description:"活动ID"`
- UserId int `description:"用户ID"`
- CreateTime time.Time `description:"创建时间"`
- Mobile string `description:"手机号"`
- Email string `description:"邮箱"`
- CompanyId int `description:"公司id"`
- CompanyName string `description:"公司名称"`
- RealName string `description:"用户实际名称"`
- SellerName string `description:"所属销售"`
- RegisterPlatform int `description:"来源 1小程序,2:网页"`
- }
- type SignupSpecialStatus struct {
- ActivityId int `description:"活动ID"`
- HasPermission int `description:"操作方式,1:有该行业权限,正常展示,2:无该行业权限,3:潜在客户,未提交过申请,4:潜在客户,已提交过申请"`
- PopupMsg string `description:"权限弹窗信息"`
- PopupMsg2 string `description:"权限弹窗信息"`
- Status int `description:"返回类型,1:添加,2:取消"`
- SellerMobile string `description:"销售电话"`
- SellerName string `description:"销售姓名"`
- SignupStatus int `description:"返回状态:1:成功 、2 :人数已满 、3:调研次数已用完、 4:超时"`
- }
- // 添加
- func AddCygxActivitySpecialSignup(item *CygxActivitySpecialSignup) (err error) {
- o := orm.NewOrm()
- _, err = o.Insert(item)
- return
- }
- // 获取某一用户的报名的数量
- func GetUserCygxActivitySpecialSignup(uid, activityId int) (count int, err error) {
- sqlCount := `SELECT COUNT(1) AS count FROM cygx_activity_special_signup WHERE user_id=? AND activity_id =? `
- o := orm.NewOrm()
- err = o.Raw(sqlCount, uid, activityId).QueryRow(&count)
- return
- }
- // 删除
- func DeleteCygxActivitySpecialSignup(uid, activityId int) (err error) {
- o := orm.NewOrm()
- sql := `DELETE FROM cygx_activity_special_signup WHERE user_id=? AND activity_id=? `
- _, err = o.Raw(sql, uid, activityId).Exec()
- return
- }
- // 列表
- func GetActivityListSpecialAll(activityId int) (items []*CygxActivitySpecialSignup, err error) {
- o := orm.NewOrm()
- sql := `SELECT art.* FROM cygx_activity_special_signup as art WHERE 1= 1 AND activity_id = ? GROUP BY company_id`
- _, err = o.Raw(sql, activityId).QueryRows(&items)
- return
- }
- // 列表
- func GetActivityListSpecialByActivityId(activityId int) (items []*CygxActivitySpecialSignup, err error) {
- o := orm.NewOrm()
- sql := `SELECT art.* FROM cygx_activity_special_signup as art WHERE 1= 1 AND activity_id = ? `
- _, err = o.Raw(sql, activityId).QueryRows(&items)
- return
- }
- type CygxActivitySpecialSignupResp struct {
- Id int `orm:"column(id);pk"`
- ActivityId int `description:"活动ID"`
- UserId int `description:"用户ID"`
- CreateTime time.Time `description:"创建时间"`
- Mobile string `description:"手机号"`
- Email string `description:"邮箱"`
- CompanyId int `description:"公司id"`
- CompanyName string `description:"公司名称"`
- RealName string `description:"用户实际名称"`
- SellerName string `description:"所属销售"`
- Count string `description:"所属销售"`
- }
- // 列表
- func GetActivityListSpecialGroupByMobile(condition string, pars []interface{}) (items []*CygxActivitySpecialSignupResp, err error) {
- o := orm.NewOrm()
- sql := `SELECT s.*, COUNT( 1 ) AS count FROM cygx_activity_special_signup as s INNER JOIN cygx_activity_special AS a ON a.activity_id = s.activity_id ` + condition + ` GROUP BY s.mobile`
- _, err = o.Raw(sql, pars).QueryRows(&items)
- return
- }
- // 列表
- func GetActivityListSpecialGroupByCompanyId(condition string, pars []interface{}) (items []*CygxActivitySpecialSignupResp, err error) {
- o := orm.NewOrm()
- sql := `SELECT *, COUNT( 1 ) AS count FROM cygx_activity_special_signup as s INNER JOIN cygx_activity_special AS a ON a.activity_id = s.activity_id
- ` + condition + ` GROUP BY s.company_id`
- _, err = o.Raw(sql, pars).QueryRows(&items)
- return
- }
- // UpdateActivitySpecialSignupNumMulti 批量修改专项调研感兴趣的人数排名
- func UpdateActivitySpecialSignupNumMulti(items []*CygxActivitySpecialSignupResp) (err error) {
- o := orm.NewOrm()
- p, err := o.Raw("UPDATE cygx_activity_special_signup SET user_num = ? WHERE mobile = ?").Prepare()
- if err != nil {
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range items {
- _, err = p.Exec(v.Count, v.Mobile)
- if err != nil {
- return
- }
- }
- return
- }
- // UpdateActivitySpecialSignupCompanyIdMulti 批量修改专项调研感兴趣的用户的对应公司ID
- func UpdateActivitySpecialSignupCompanyIdMulti(items []*WxUser) (err error) {
- o := orm.NewOrm()
- p, err := o.Raw("UPDATE cygx_activity_special_signup SET company_id = ? WHERE mobile = ?").Prepare()
- if err != nil {
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range items {
- _, err = p.Exec(v.CompanyId, v.Mobile)
- if err != nil {
- return
- }
- }
- return
- }
- // UpdateActivitySpecialSignupCompanyNumMulti 批量修改专项调研感兴趣的公司对应的数量
- func UpdateActivitySpecialSignupCompanyNumMulti(items []*CygxActivitySpecialSignupResp) (err error) {
- o := orm.NewOrm()
- p, err := o.Raw("UPDATE cygx_activity_special_signup SET company_num = ? WHERE company_id = ?").Prepare()
- if err != nil {
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range items {
- _, err = p.Exec(v.Count, v.CompanyId)
- if err != nil {
- return
- }
- }
- return
- }
|