12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package utility
- import (
- "context"
- "encoding/json"
- "github.com/gogf/gf/v2/frame/g"
- "net/rpc"
- )
- type RpcParams struct {
- UserId string //用户id
- Answer string //答案原型
- BiddingId string //招标信息id
- IsEnt bool //当前是否是企业身份
- PageNum int //当前页码
- PageSize int //每页数据
- BaseUserId int64 //base_user_id
- }
- type Result struct {
- ErrCode int
- ErrMsg string
- ReplyMsg string
- }
- type RpcResult []byte
- // DoBusiness 调用业务意图处理
- func DoBusiness(ctx context.Context, joggle string, param *RpcParams) (*Result, error) {
- client, err := rpc.DialHTTP("tcp", g.Cfg().MustGet(ctx, "chat.businessRpc", "").String())
- defer client.Close()
- if err != nil {
- return nil, err
- }
- var repl RpcResult
- err = client.Call(joggle, param, &repl)
- if err != nil {
- return nil, err
- }
- rData := &Result{}
- err = json.Unmarshal(repl, rData)
- if err != nil {
- return nil, err
- }
- return rData, nil
- }
|