Commit 425fc16c by “zcwang”

add: 查询供应商信息

parent 5a6ae72d
package com.netease.mail.yanxuan.change.integration.flow.supplier.impl;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplierInfoService;
import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierRelatedUserReq;
import com.netease.mail.yanxuan.change.integration.flow.supplier.rsp.SupplierUserRsp;
import com.netease.mail.yanxuan.change.integration.rpc.RpcObjectHandler;
import com.netease.mail.yanxuan.change.integration.rpc.RpcListData;
import com.netease.mail.yanxuan.change.integration.rpc.RpcTemplate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author WangJiaXiang
......@@ -21,17 +22,20 @@ import java.util.List;
@Service
public class FlowRpcSupplierInfoServiceImpl implements FlowRpcSupplierInfoService {
private final String path = "/api/supplier/batchGetSupplierRelatedUser.json";
@Autowired
private RpcTemplate rpcTemplate;
@Value("${supplier.url}")
private String riskUrl;
Logger logger = LoggerFactory.getLogger(FlowRpcSupplierInfoServiceImpl.class);
@Override
public List<SupplierUserRsp> querySupplierRelatedUser(SupplierRelatedUserReq req) {
String url = "http://127.0.0.1:8550/proxy/test-v1.yanxuan-supplier-ms.service.mailsaas/api/supplier/batchGetSupplierRelatedUser.json";
JSONObject supplierUserRsp = rpcTemplate.postJson(url, JSON.toJSONString(req),500,new RpcObjectHandler<>(JSONObject.class));
Object data = supplierUserRsp.get("data");
List<SupplierUserRsp> objects = JSONArray.parseArray(data.toString(), SupplierUserRsp.class);
List<SupplierUserRsp> objects = rpcTemplate.postJson(url, JSON.toJSONString(req),500,new RpcListData<>(SupplierUserRsp.class));
logger.error("请求返回结果"+objects);
return objects;
}
......
package com.netease.mail.yanxuan.change.integration.rpc;
/**
* @author jmt
* @Date 2021/6/7
*/
public enum RpcCode {
/**
* 成功响应
*/
OK(200),
/**
* 业务失败
*/
FAIL(400),
/**
* 系统异常
*/
SERVER_ERROR(500);
private int value;
RpcCode(int value) {
this.value = value;
}
public int getValue() {
return value;
}
}
package com.netease.mail.yanxuan.change.integration.rpc;
/**
* @author jmt
* @Date 2021/6/7
*/
public interface RpcConst {
String CODE = "code";
String RESULT = "result";
String DATA = "data";
String ERRCODE = "errorCode";
}
package com.netease.mail.yanxuan.change.integration.rpc;
import java.io.IOException;
import java.util.List;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
/**
* @author jmt
* @Date 2021/6/7
*/
public class RpcListData<T> implements RpcTemplate.CallHandler<List<T>> {
private final Class<T> tClass;
public RpcListData(Class<T> tClass) {
this.tClass = tClass;
}
@Override
public List<T> handle(String resp) throws IOException {
JSONObject rpcResult = JSON.parseObject(resp);
int code = rpcResult.getIntValue(RpcConst.CODE);
if (code == RpcCode.OK.getValue()) {
return JSON.parseArray(rpcResult.getString(RpcConst.DATA), tClass);
}
throw new RpcResultException("response error, code = " + code);
}
}
package com.netease.mail.yanxuan.change.integration.rpc;
/**
* @author: bndong
* @date: 2021/5/29
*/
public class RpcResultException extends RpcException {
public RpcResultException(String message) {
super(message);
}
public RpcResultException(Throwable t) {
super(t);
}
public RpcResultException(String message, Throwable t) {
super(message, t);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment