aiSearch_v1_bidding_list.go 1.0 KB

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