package com.nova.sankuai.controller.v2.callback;
|
|
import com.nova.sankuai.domain.api.rongbei.RbResponse;
|
import com.nova.sankuai.domain.dto.rongbei.RongBeBasicDto;
|
import com.nova.sankuai.infra.utils.wolaidai.WolaidaiUtil;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.http.ResponseEntity;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.servlet.http.HttpServletRequest;
|
import javax.validation.Valid;
|
|
@Slf4j
|
@RestController
|
@RequestMapping(value = "/api/v2/")
|
@Api(tags = "我来贷接口")
|
@RequiredArgsConstructor
|
@Validated
|
public class WoLaiDaiController {
|
private final WolaidaiUtil wolaidaiUtil;
|
|
@PostMapping("check")
|
@ApiOperation(value = "准入接口", notes = "检测用户是否满足产品方借款申请的条件")
|
ResponseEntity<RbResponse> check(@RequestBody @Valid RongBeBasicDto body, HttpServletRequest request) {
|
log.info("准入接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.wld2ThirdPlatform(body, "check"));
|
}
|
|
@PostMapping("apply")
|
@ApiOperation(value = "进件接口", notes = "提交进件所需全部资料")
|
ResponseEntity<RbResponse> apply(@RequestBody @Valid RongBeBasicDto body, HttpServletRequest request) {
|
return ResponseEntity.ok(wolaidaiUtil.wld2ThirdPlatform(body, "apply"));
|
}
|
|
@PostMapping("order_status")
|
@ApiOperation(value = "进件接口", notes = "用于流量平台主动查询在产品方的进件订单状态")
|
ResponseEntity<RbResponse> orderStatus(@RequestBody @Valid RongBeBasicDto body, HttpServletRequest request) {
|
log.debug("进件接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.wld2ThirdPlatform(body, "order_status"));
|
}
|
|
@PostMapping("conclusion")
|
@ApiOperation(value = "查询授信结果", notes = "用于流量平台主动查询在产品方进件的授信结果")
|
ResponseEntity<RbResponse> conclusion(@RequestBody @Valid RongBeBasicDto body, HttpServletRequest request) {
|
log.debug("进件接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.wld2ThirdPlatform(body, "conclusion"));
|
}
|
|
@PostMapping("repay_info")
|
@ApiOperation(value = "查询还款计划接口", notes = "用于流量平台主动查询在产品方放款订单的还款计划")
|
ResponseEntity<RbResponse> repayInfo(@RequestBody @Valid RongBeBasicDto body, HttpServletRequest request) {
|
log.debug("查询还款计划接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.wld2ThirdPlatform(body, "repay_info"));
|
}
|
|
@PostMapping("h5_url")
|
@ApiOperation(value = "获取跳转H5页面地址接口", notes = "获取产品方联登后的H5页面URL,访问该URL将跳转到产品方的页面")
|
ResponseEntity<RbResponse> h5Url(@RequestBody @Valid RongBeBasicDto body, HttpServletRequest request) {
|
log.debug("获取跳转H5页面地址接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.wld2ThirdPlatform(body, "h5_url"));
|
}
|
|
@PostMapping("wld/order_status")
|
@ApiOperation(value = "接受订单状态接口", notes = "产品方的订单状态存在变更,可通过此接口触发推送")
|
ResponseEntity<RbResponse> orderStatusByWld(@RequestBody @Valid RongBeBasicDto body) {
|
log.debug("接受订单状态接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.checkOrderStatusByWld(body));
|
}
|
|
@PostMapping("wld/credit_result")
|
@ApiOperation(value = "接受授信结果接口", notes = "可通过此接口触发推送产品方的订单授信结果。")
|
ResponseEntity<RbResponse> creditResult(@RequestBody @Valid RongBeBasicDto body) {
|
log.debug("接受授信结果接口");
|
return ResponseEntity.ok(wolaidaiUtil.creditResultByWld(body));
|
}
|
|
@PostMapping("wld/repay_info")
|
@ApiOperation(value = "接受还款计划接口", notes = "可通过此接口触发推送已放款订单的还款计划")
|
ResponseEntity<RbResponse> repayInfoByWld(@RequestBody @Valid RongBeBasicDto body) {
|
log.debug("接受还款计划接口测试");
|
return ResponseEntity.ok(wolaidaiUtil.repayInfoByWld(body));
|
}
|
|
@PostMapping("h5/click")
|
@ApiOperation(value = "H5用户点击链接埋点")
|
ResponseEntity<RbResponse> h5Click(@RequestParam String mobile, @RequestParam Integer type) {
|
return ResponseEntity.ok(wolaidaiUtil.saveH5ClickRecord(mobile, type));
|
}
|
|
}
|