12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- package yb
- import (
- "errors"
- "fmt"
- "hongze/hz_crm_api/models"
- "hongze/hz_crm_api/models/yb"
- "hongze/hz_crm_api/models/yb/response"
- "hongze/hz_crm_api/utils"
- "time"
- )
- // GetBulletChatList 获取弹幕列表
- func GetBulletChatList(condition string, pars []interface{}, startSize, pageSize int) (total int, resp []*response.BulletChatItem, err error) {
- resp = make([]*response.BulletChatItem, 0)
- t, list, e := yb.GetBulletChatPageList(condition, pars, "", startSize, pageSize)
- if e != nil {
- err = errors.New("获取弹幕列表失败 Err:" + e.Error())
- return
- }
- if len(list) == 0 {
- return
- }
- total = t
- // 用户名称
- userIdArr := make([]int, 0)
- for i := range list {
- userIdArr = append(userIdArr, list[i].UserId)
- }
- userIds := utils.IntArr2joinString(userIdArr, ",")
- userMap := make(map[int]string, 0)
- if userIds != "" {
- userList, e := models.GetWxUserListByUserIds(userIds)
- if e != nil {
- err = errors.New("获取弹幕用户信息失败, Err: " + e.Error())
- return
- }
- for i := range userList {
- userMap[int(userList[i].UserId)] = userList[i].RealName
- }
- }
- for _, v := range list {
- sa := 1
- if v.SourceAgent == 2 || v.SourceAgent == 4 {
- sa = 2
- }
- item := &response.BulletChatItem{
- Id: v.Id,
- Title: v.Title,
- Content: v.Content,
- Source: v.Source,
- Seconds: fmt.Sprint(v.Seconds),
- UserName: userMap[v.UserId],
- SourceAgent: sa,
- CreateTime: v.CreateTime.Format(utils.FormatDateTime),
- }
- resp = append(resp, item)
- }
- return
- }
- // SoftDeleteBulletChat 删除弹幕
- func SoftDeleteBulletChat(adminId, id int) (err error) {
- item, e := yb.GetBulletChatById(id)
- if e != nil {
- err = errors.New("获取弹幕信息失败, Err:" + e.Error())
- return
- }
- if item.IsDeleted != 0 {
- err = errors.New("弹幕状态有误")
- return
- }
- nowTime := time.Now().Local()
- updateCols := []string{"ModifyTime", "OpAdminId", "IsDeleted", "DeleteTime"}
- item.ModifyTime = nowTime
- item.OpAdminId = adminId
- item.IsDeleted = 1
- item.DeleteTime = nowTime
- if e = item.Update(updateCols); e != nil {
- err = errors.New("删除弹幕失败, Err: " + e.Error())
- return
- }
- return
- }
|