aiSearch_v1_bidding_list.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package aiSearch
  2. import (
  3. "aiChat/api/aiSearch/v1"
  4. "aiChat/internal/model"
  5. "aiChat/utility"
  6. "context"
  7. "fmt"
  8. "app.yhyue.com/moapp/jybase/encrypt"
  9. "github.com/gogf/gf/v2/frame/g"
  10. "github.com/gogf/gf/v2/util/gconv"
  11. )
  12. func (c *ControllerV1) BiddingList(ctx context.Context, req *v1.BiddingListReq) (res *v1.BiddingListRes, err error) {
  13. var hTmp []v1.ResBidding
  14. session := model.SessionCtx.Get(ctx).JSession
  15. if session.PositionId <= 0 {
  16. return nil, fmt.Errorf("请登录")
  17. }
  18. chatId := gconv.Int64(encrypt.SE.Decode4HexByCheck(req.ChatId))
  19. if chatId == 0 {
  20. return &v1.BiddingListRes{
  21. ErrorCode: 0,
  22. ErrorMsg: "",
  23. Data: hTmp,
  24. }, nil
  25. }
  26. err = g.Model("ai_search_bidding").Where("chat_id = ? and position_id=?", chatId, session.PositionId).OrderDesc("create_time").Scan(&hTmp)
  27. if hTmp != nil && len(hTmp) > 0 {
  28. collection := utility.GetMyBidCollect(ctx, session.PositionId)
  29. for i := len(hTmp) - 1; i >= 0; i-- {
  30. data := hTmp[i]
  31. data.InfoId = encrypt.EncodeArticleId2ByCheck(data.InfoId)
  32. if collection[data.InfoId] {
  33. data.Collect = 1
  34. }
  35. }
  36. }
  37. return &v1.BiddingListRes{
  38. ErrorCode: 0,
  39. ErrorMsg: "",
  40. Data: hTmp,
  41. }, nil
  42. }