package logic import ( "app.yhyue.com/moapp/jybase/common" "context" IC "jyBXCore/api/init" "jyBXCore/api/internal/util" "jyBXCore/rpc/bxcore" "log" "net/http" "time" "jyBXCore/api/internal/svc" "jyBXCore/api/internal/types" "github.com/zeromicro/go-zero/core/logx" ) type NologinSearchLogic struct { logx.Logger ctx context.Context r *http.Request svcCtx *svc.ServiceContext w http.ResponseWriter } func NewNologinSearchLogic(ctx context.Context, svcCtx *svc.ServiceContext, r *http.Request, w http.ResponseWriter) *NologinSearchLogic { return &NologinSearchLogic{ Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx, r: r, w: w, } } func (l *NologinSearchLogic) NologinSearch(req *types.NoLoginSearchReq) (resp *types.CommonResp, err error) { defer common.Catch() t := time.Now() res, err := l.svcCtx.BxCore.GetSearchListNoLogin(l.ctx, &bxcore.SearchReq{ AppId: req.AppId, PageNum: req.PageNum, PageSize: req.PageSize, SelectType: req.SelectType, KeyWords: req.KeyWords, Platform: util.CheckPlatform(l.r), }) log.Println("请求接口耗时:", time.Since(t).Seconds()) if err != nil { return &types.CommonResp{ Err_code: res.ErrCode, Err_msg: res.ErrMsg, Data: nil, }, err } var data []map[string]interface{} detailMosaicTxt := IC.C.DetailMosaicTxt sm := common.StructToMapMore(IC.C.SearchMosaic) for _, v := range res.Data.List { d := common.StructToMapMore(v) for name, t1 := range sm { ts, _ := t1.(bool) if !ts { continue } d[name] = detailMosaicTxt //if v1, ok := d[name]; ok && v1 != "" && v1 != 0 && ts { // d[name] = detailMosaicTxt //} } data = append(data, d) } dataAll := common.StructToMapMore(res.Data) dataAll["list"] = data return &types.CommonResp{ Err_code: res.ErrCode, Err_msg: res.ErrMsg, Data: dataAll, }, nil }