|
@@ -4,22 +4,12 @@ import (
|
|
"aiChat/api/aiSearch/v1"
|
|
"aiChat/api/aiSearch/v1"
|
|
"app.yhyue.com/moapp/jybase/encrypt"
|
|
"app.yhyue.com/moapp/jybase/encrypt"
|
|
"context"
|
|
"context"
|
|
- "fmt"
|
|
|
|
"github.com/gogf/gf/v2/errors/gcode"
|
|
"github.com/gogf/gf/v2/errors/gcode"
|
|
"github.com/gogf/gf/v2/errors/gerror"
|
|
"github.com/gogf/gf/v2/errors/gerror"
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
- "github.com/gogf/gf/v2/os/gtime"
|
|
|
|
"github.com/gogf/gf/v2/util/gconv"
|
|
"github.com/gogf/gf/v2/util/gconv"
|
|
)
|
|
)
|
|
|
|
|
|
-type SsDetail struct {
|
|
|
|
- Id int
|
|
|
|
- Passport string
|
|
|
|
- Password string
|
|
|
|
- NickName string
|
|
|
|
- CreateTime *gtime.Time
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
func (c *ControllerV1) SessionDetail(ctx context.Context, req *v1.SessionDetailReq) (res *v1.SessionDetailRes, err error) {
|
|
func (c *ControllerV1) SessionDetail(ctx context.Context, req *v1.SessionDetailReq) (res *v1.SessionDetailRes, err error) {
|
|
sid := gconv.Int(encrypt.SE.Decode4HexByCheck(req.Sid))
|
|
sid := gconv.Int(encrypt.SE.Decode4HexByCheck(req.Sid))
|
|
results, err := g.Model("ai_search_chat").Where("session_id = ? and status = 1", sid).OrderDesc("create_time").All()
|
|
results, err := g.Model("ai_search_chat").Where("session_id = ? and status = 1", sid).OrderDesc("create_time").All()
|
|
@@ -27,18 +17,32 @@ func (c *ControllerV1) SessionDetail(ctx context.Context, req *v1.SessionDetailR
|
|
g.Log().Error(ctx, "会话详情查询异常:%s", err)
|
|
g.Log().Error(ctx, "会话详情查询异常:%s", err)
|
|
return nil, gerror.NewCode(gcode.CodeInternalError)
|
|
return nil, gerror.NewCode(gcode.CodeInternalError)
|
|
}
|
|
}
|
|
- list := make([]g.Map, 0)
|
|
|
|
|
|
+ list := make([]*v1.SsDetailList, 0)
|
|
for _, r := range results {
|
|
for _, r := range results {
|
|
|
|
+ item := &v1.SsDetailList{}
|
|
r1 := r.Map()
|
|
r1 := r.Map()
|
|
- r1["id"] = encrypt.SE.Encode2HexByCheck(fmt.Sprint(r1["id"]))
|
|
|
|
- r1["session_id"] = encrypt.SE.Encode2HexByCheck(fmt.Sprint(r1["session_id"]))
|
|
|
|
- list = append(list, r1)
|
|
|
|
|
|
+ item.Id = encrypt.SE.Encode2HexByCheck(gconv.String(r1["id"]))
|
|
|
|
+ item.Question = gconv.String(r1["question"])
|
|
|
|
+ item.Like = gconv.Int(r1["like"])
|
|
|
|
+ item.Collect = gconv.Int(r1["collect"])
|
|
|
|
+ item.CreateTime = *gconv.GTime(r1["create_time"])
|
|
|
|
+ blist := make([]*v1.ResBidding, 0)
|
|
|
|
+ for _, v := range gconv.Maps(r1["answer"]) {
|
|
|
|
+ bidding := &v1.ResBidding{}
|
|
|
|
+ _ = gconv.Struct(v, bidding)
|
|
|
|
+ bidding.InfoId = encrypt.SE.Encode2HexByCheck(bidding.InfoId)
|
|
|
|
+ blist = append(blist, bidding)
|
|
|
|
+ }
|
|
|
|
+ item.Answer = &v1.ChatRes{
|
|
|
|
+ Status: gconv.Int(r1["answer_status"]),
|
|
|
|
+ Count: gconv.Int(r1["list_count"]),
|
|
|
|
+ List: blist,
|
|
|
|
+ }
|
|
|
|
+ list = append(list, item)
|
|
|
|
|
|
}
|
|
}
|
|
res = &v1.SessionDetailRes{
|
|
res = &v1.SessionDetailRes{
|
|
- ErrorCode: 0,
|
|
|
|
- ErrorMsg: "",
|
|
|
|
- Data: list,
|
|
|
|
|
|
+ Data: list,
|
|
}
|
|
}
|
|
return res, nil
|
|
return res, nil
|
|
}
|
|
}
|