package com.nova.sankuai.controller.v1;
|
|
import com.nova.sankuai.domain.api.weiyaquanyi.WeiyaOrderNotifyDTO;
|
import com.nova.sankuai.domain.vo.vipcard.VipCardVo;
|
import com.nova.sankuai.infra.utils.ResultJson;
|
import com.nova.sankuai.security.UserDetail;
|
import com.nova.sankuai.service.IVipCardOrderService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.AllArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.core.annotation.AuthenticationPrincipal;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.Arrays;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @author weikangdi
|
* @create 2021/12/22
|
*/
|
@Api(tags = "会员服务")
|
@Slf4j
|
@RestController
|
@RequestMapping(value = "/api/v1/vipCardOrder")
|
@AllArgsConstructor
|
public class VipCardOrderController {
|
|
private final IVipCardOrderService vipCardOrderService;
|
|
@PostMapping(value = "/notifyOrder")
|
@ApiOperation(value = "烈熊购买会员回调接口")
|
public ResultJson<?> notifyOrder(HttpServletRequest request) {
|
Map<String, String[]> parameterMap = request.getParameterMap();
|
vipCardOrderService.notifyOrder(parameterMap);
|
return ResultJson.success();
|
}
|
|
@PostMapping(value = "/weiyaOrderNotify")
|
@ApiOperation(value = "纬雅权益支付结果回调通知")
|
public ResultJson<?> weiyaOrderNotify(@RequestBody WeiyaOrderNotifyDTO nofityDTO) {
|
vipCardOrderService.weiyaOrderNotify(nofityDTO);
|
return ResultJson.success();
|
}
|
|
@PostMapping(value = "/alipayNotifyOrder")
|
@ApiOperation(value = "支付宝购买会员回调接口")
|
public String alipayNotifyOrder(HttpServletRequest request) {
|
log.info("支付宝回调: req={}", request);
|
Map<String, String[]> parameterMap = request.getParameterMap();
|
vipCardOrderService.alipayNotifyOrder(parameterMap);
|
log.info("支付宝回调响应:{}", request);
|
// 返回给支付宝平台,必须返回该字符串
|
return "success";
|
}
|
|
@PostMapping(value = "/alipayNotifyOrderTest")
|
@ApiOperation(value = "支付宝购买会员回调接口 - 测试")
|
public String alipayNotifyOrderTest(HttpServletRequest request) {
|
Map<String, String[]> parameterMap = request.getParameterMap();
|
parameterMap.forEach((k, v) -> log.info(">> alipayNotifyOrderTestRequestParams {} = {}", k, Arrays.toString(v)));
|
// 返回给支付宝平台,必须返回该字符串
|
return "success";
|
}
|
|
@RequestMapping(value = "/notifyByYinSheng", method = {RequestMethod.POST,
|
RequestMethod.GET})
|
public String notifyByYinSheng(@RequestParam Map<String, String> params) {
|
return vipCardOrderService.notifyByYinSheng(params);
|
}
|
|
@GetMapping(value = "/getVipCardList")
|
@ApiOperation(value = "会员卡列表查询接口")
|
@PreAuthorize("hasAuthority('channelInfo.editMemberDefault')")
|
public ResultJson<List<VipCardVo>> getVipCardList(String appId, @AuthenticationPrincipal UserDetail userDetail) {
|
List<VipCardVo> result = vipCardOrderService.getVipCardList(appId, userDetail.getPhone());
|
return ResultJson.ok(result);
|
}
|
|
}
|