package com.nova.sankuai.domain.entity;
|
|
import cn.hutool.http.HttpStatus;
|
import cn.hutool.json.JSONUtil;
|
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.nova.sankuai.domain.api.aizhudai.AiZhuDaiResponse;
|
import com.nova.sankuai.domain.api.huizhongzhidai.HuiZhongZhiDaiCommitResponse;
|
import com.nova.sankuai.domain.api.huizhongzhidai.HuiZhongZhiDaiHitResponse;
|
import com.nova.sankuai.domain.api.jinRiTouTiao.JinRiTouTiaoResponse;
|
import com.nova.sankuai.domain.api.jinxiushuke.JinXiuShuKeResponse;
|
import com.nova.sankuai.domain.api.jinxiushuke.JinXiuShuKeUtil;
|
import com.nova.sankuai.domain.api.jinzhanggui.JinZhangGuiResponse;
|
import com.nova.sankuai.domain.api.jinzhanggui.JinZhangGuiUtil;
|
import com.nova.sankuai.domain.api.minsheng.MinShengResponse;
|
import com.nova.sankuai.domain.api.nanjingmingtuo.NanJingMingTuoResp;
|
import com.nova.sankuai.domain.api.nanjingmingtuo.NanJingMingTuoUtil;
|
import com.nova.sankuai.domain.api.rongduoduo.RongDuoDuoResponse;
|
import com.nova.sankuai.domain.api.rongduoduo.RongDuoDuoUtil;
|
import com.nova.sankuai.domain.api.shanghaizhongzan.ShangHaiZhongZanResponse;
|
import com.nova.sankuai.domain.api.sujinsuo.SuJinSuoResponse;
|
import com.nova.sankuai.domain.api.tianshi.TianShiResponse;
|
import com.nova.sankuai.domain.api.tianshi.TianShiUtil;
|
import com.nova.sankuai.domain.api.xiamenzhongheyinhua.XiaMenZhongHeYinHuaResponse;
|
import com.nova.sankuai.domain.api.xinyeyoupin.XyypResponse;
|
import com.nova.sankuai.domain.api.yidai.YiDaiResponse;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import lombok.extern.slf4j.Slf4j;
|
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Objects;
|
import java.util.Optional;
|
|
/**
|
* @author weikangdi
|
* @create 2021/11/12
|
*/
|
@Data
|
@ApiModel(value = "接口公司客户推送记录表")
|
@Slf4j
|
public class ApiCompanyRecord {
|
|
public static final int SUCCESS = 1;
|
|
public static final int FAIL = 0;
|
|
@ApiModelProperty(value = "主键")
|
@TableId
|
private Long id;
|
|
@ApiModelProperty(value = "接口公司id")
|
private Long companyId;
|
|
@ApiModelProperty(value = "客户记录id")
|
private Long customerRecordId;
|
|
@ApiModelProperty(value = "创建日期")
|
private Date creationDate;
|
|
@ApiModelProperty(value = "状态")
|
private Integer status;
|
|
@ApiModelProperty(value = "推送结果信息")
|
private String message;
|
|
@ApiModelProperty(value = "推送结果json")
|
private String result;
|
|
public ApiCompanyRecord(Long companyId, Long customerRecordId, String result) {
|
this.companyId = companyId;
|
this.customerRecordId = customerRecordId;
|
this.result = result;
|
this.creationDate = new Date();
|
}
|
|
public static ApiCompanyRecord getMinShengRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
MinShengResponse response = JSONUtil.toBean(result, MinShengResponse.class);
|
if (ApiCompanyRecord.SUCCESS == response.getResStatus()) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(response.getResMsg());
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getAiZhuDaiRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
AiZhuDaiResponse response = JSONUtil.toBean(result, AiZhuDaiResponse.class);
|
if (ApiCompanyRecord.SUCCESS == response.getCode()) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(response.getMessage());
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getXiaMenZhongHeYinHuaRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
XiaMenZhongHeYinHuaResponse response = JSONUtil.toBean(result, XiaMenZhongHeYinHuaResponse.class);
|
if (HttpStatus.HTTP_OK == response.getCode()) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(response.getMsg());
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getRongDuoDuoRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
RongDuoDuoResponse response = RongDuoDuoUtil.getResponse(result);
|
if (response != null && RongDuoDuoResponse.SUCCESS == response.getStatus()) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
if (response != null) {
|
apiCompanyRecord.setMessage(response.getMes());
|
}
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getTianShiRecord(Long companyId, Long customerRecordId, Integer result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, Integer.toString(result));
|
TianShiResponse response = new TianShiResponse();
|
response.setCode(result);
|
if (TianShiResponse.SUCCESS == response.getCode()) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
apiCompanyRecord.setMessage(TianShiResponse.SUCCESS_MESSAGE);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
apiCompanyRecord.setMessage(TianShiUtil.getFailMessage(response.getCode()));
|
}
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getJinXiuShuKeRecord(Long companyId, Long customerRecordId, String response) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, response);
|
if ("success".equals(response)) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
apiCompanyRecord.setMessage("成功");
|
} else {
|
String code = "";
|
try {
|
JinXiuShuKeResponse toBean = JSONUtil.toBean(response, JinXiuShuKeResponse.class);
|
code = toBean.getMsg();
|
} catch (Exception e) {
|
if (response.length() > 255) {
|
code = response.subSequence(0, 254).toString();
|
} else {
|
code = response;
|
}
|
}
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
apiCompanyRecord.setMessage(JinXiuShuKeUtil.getFailMessage(code));
|
}
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getSuJinSuoRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
SuJinSuoResponse response = JSONUtil.toBean(result, SuJinSuoResponse.class);
|
JSONObject jsonObject = JSONObject.parseObject(result);
|
List susses = (List) jsonObject.getJSONObject("data").get("successIdList");
|
if (susses.size() > 0) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(response.getMsg());
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getJinRiTouTiaoRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
JinRiTouTiaoResponse response = JSONUtil.toBean(result, JinRiTouTiaoResponse.class);
|
if (response.getErrno() == 0) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(response.getMsg());
|
return apiCompanyRecord;
|
}
|
|
|
public static ApiCompanyRecord getHuiZhongZhiDai(Long companyId, Long customerRecordId, String response) {
|
String code = "";
|
String msg = "";
|
try {
|
JSONObject data = (JSONObject) JSONObject.parseObject(response).get("data");
|
code = data.get("error_no").toString();
|
msg = (String) data.get("error_info");
|
} catch (Exception e) {
|
try {
|
HuiZhongZhiDaiHitResponse hitResponse = JSONObject.parseObject(response, HuiZhongZhiDaiHitResponse.class);
|
code = hitResponse.getCode();
|
msg = hitResponse.getMsg();
|
} catch (Exception ex) {
|
ApiCompanyRecord record = new ApiCompanyRecord(companyId, customerRecordId, response);
|
record.setStatus(ApiCompanyRecord.FAIL);
|
record.setMessage("解析惠众直贷响应失败,响应内容" + response);
|
return record;
|
}
|
}
|
ApiCompanyRecord record = new ApiCompanyRecord(companyId, customerRecordId, response);
|
if (Integer.toString(HuiZhongZhiDaiCommitResponse.SUCCESS).equals(code)) {
|
record.setStatus(ApiCompanyRecord.SUCCESS);
|
record.setMessage(msg);
|
} else {
|
record.setStatus(ApiCompanyRecord.FAIL);
|
record.setMessage(msg);
|
}
|
return record;
|
}
|
|
public static ApiCompanyRecord getYiDaiRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
YiDaiResponse yiDaiResponse = JSONUtil.toBean(result, YiDaiResponse.class);
|
if (YiDaiResponse.SUCCESS.equals(yiDaiResponse.getRetCode())) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
apiCompanyRecord.setMessage("成功");
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
apiCompanyRecord.setMessage(yiDaiResponse.getRetDesc());
|
}
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getShangHaiZhongZanRecord(Long companyId, Long customerRecordId, String result) {
|
result = Optional.ofNullable(result).map(String::trim).orElse(null);
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
if (ShangHaiZhongZanResponse.SUCCESS.equals(result)) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
apiCompanyRecord.setMessage("成功");
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
apiCompanyRecord.setMessage(result);
|
}
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getNanJingMingTuoRecord(Long companyId, Long customerRecordId, String result) {
|
result = Optional.ofNullable(result).orElse("{}");
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
NanJingMingTuoResp resp = JSON.parseObject(result, NanJingMingTuoResp.class);
|
if (Objects.equals(NanJingMingTuoUtil.HIT_RESP_OK, resp.getCode())) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(resp.getMsg());
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getXinYeYouPinRecord(Long companyId, Long customerRecordId, String result) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, result);
|
XyypResponse xyypResponse = JSONUtil.toBean(result, XyypResponse.class);
|
Integer code = 200;
|
if (xyypResponse.getCode().equals(code)) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
} else {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
}
|
apiCompanyRecord.setMessage(xyypResponse.getMsg());
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getDoudouMoneyRecord(Long companyId, Long customerRecordId, String msg, boolean ok) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, msg);
|
apiCompanyRecord.setStatus(ok ? ApiCompanyRecord.SUCCESS : ApiCompanyRecord.FAIL);
|
apiCompanyRecord.setMessage(msg);
|
return apiCompanyRecord;
|
}
|
|
public static ApiCompanyRecord getJinZhangGuiRecord(Long companyId, Long customerRecordId, String response) {
|
ApiCompanyRecord apiCompanyRecord = new ApiCompanyRecord(companyId, customerRecordId, response);
|
JinZhangGuiResponse jinZhangGuiResponse = null;
|
try {
|
jinZhangGuiResponse = JSONObject.parseObject(response, JinZhangGuiResponse.class);
|
} catch (Exception e) {
|
log.error("金掌柜对接失败");
|
}
|
if (jinZhangGuiResponse != null && JinZhangGuiUtil.SUCCESS.equals(jinZhangGuiResponse.getErrno())) {
|
apiCompanyRecord.setStatus(ApiCompanyRecord.SUCCESS);
|
apiCompanyRecord.setMessage("成功");
|
} else {
|
String code = "";
|
try {
|
code = jinZhangGuiResponse.getMsg();
|
} catch (Exception e) {
|
if (response.length() > 255) {
|
code = response.subSequence(0, 254).toString();
|
} else {
|
code = response;
|
}
|
}
|
apiCompanyRecord.setStatus(ApiCompanyRecord.FAIL);
|
apiCompanyRecord.setMessage(code);
|
}
|
return apiCompanyRecord;
|
}
|
}
|