package roadshow import ( "github.com/beego/beego/v2/client/orm" "hongze/hz_crm_api/utils" "time" ) type AddRsCalendarMeetingUserReq struct { RsCalendarId int `description:"日程ID"` UserId []int // 用户ID } type RsCalendarMeetingUser struct { RsCalendarMeetingUserId int `orm:"column(rs_calendar_meeting_user_id);pk" description:"主键ID"` RsCalendarId int `description:"日程ID"` UserId int `description:"用户ID"` Mobile string `description:"手机号"` Email string `description:"邮箱"` CompanyId int `description:"公司ID"` CompanyName string `description:"公司名称"` RealName string `description:"用户实际名称"` Position string `description:"职位"` AdminId int `description:"管理员ID"` AdminName string `description:"管理员姓名"` CreateTime time.Time `description:"创建时间"` ModifyTime time.Time `description:"修改时间"` } type RsCalendarMeetingUserResp struct { RsCalendarMeetingUserId int `description:"参会名单主键ID"` RealName string `description:"用户实际名称"` Position string `description:"职位"` } type DeleteRsCalendarMeetingUserReq struct { RsCalendarMeetingUserId int `description:"参会名单主键ID"` } type RsCalendarMeetingUserListResp struct { List []*RsCalendarMeetingUserResp } // MultiAddRsCalendarMeetingUser 批量添加RsCalendarMeetingUser func MultiAddRsCalendarMeetingUser(items []*RsCalendarMeetingUser) (err error) { if len(items) == 0 { return } o := orm.NewOrm() _, err = o.InsertMulti(len(items), items) return } // 删除 func DeleteRsCalendarMeetingUser(rsCalendarMeetingUserID int) (err error) { o := orm.NewOrm() sql := ` DELETE FROM rs_calendar_meeting_user WHERE rs_calendar_meeting_user_id=? ` _, err = o.Raw(sql, rsCalendarMeetingUserID).Exec() return err } // 列表 func GetRsCalendarMeetingUserList(condition string, pars []interface{}) (items *RsCalendarMeetingUserResp, err error) { o := orm.NewOrm() sql := `SELECT * FROM rs_calendar_meeting_user WHERE 1=1 ` if condition != "" { sql += condition } err = o.Raw(sql, pars).QueryRow(&items) return } // 通过路演ID获取参会人员列表 func GetRsCalendarMeetingUserListByRsCalendarId(rsCalendarId int) (items []*RsCalendarMeetingUserResp, err error) { o := orm.NewOrm() sql := `SELECT * FROM rs_calendar_meeting_user WHERE rs_calendar_id = ? ` _, err = o.Raw(sql, rsCalendarId).QueryRows(&items) return } type RsCalendarMeetingUserCountResp struct { RsCalendarId int `description:"日程ID"` Total int `description:"数量"` } // 路演参会人员数量 func GetRsCalendarMeetingUserListCount(rsCalendarIds []int) (items []*RsCalendarMeetingUserCountResp, err error) { lenNum := len(rsCalendarIds) if lenNum <= 0 { return } o := orm.NewOrm() sql := `SELECT rs_calendar_id ,COUNT(1) as total FROM rs_calendar_meeting_user WHERE rs_calendar_id IN ( ` + utils.GetOrmInReplace(lenNum) + `) GROUP BY rs_calendar_id ` _, err = o.Raw(sql, rsCalendarIds).QueryRows(&items) return }