记得上下班打卡 | git大法好,push需谨慎

Commit ff5792b9 authored by 姜秀龙's avatar 姜秀龙

接口分级相关 candy kylin 配置,candy kylin order adam 分级注解与接口实现

parent 6fc379f3
......@@ -3,7 +3,8 @@ package com.liquidnet.common.swagger.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.common.swagger.dto.ApiLevelInfoDto;
import com.liquidnet.common.swagger.dto.ApiLevelStatisticsDto;
import com.liquidnet.common.swagger.service.ApiLevelStatisticsService;
import com.liquidnet.common.swagger.dto.MultiServiceStatisticsDto;
import com.liquidnet.common.swagger.service.MultiServiceApiLevelStatisticsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
......@@ -27,27 +28,41 @@ import java.util.Map;
@RestController
@RequestMapping("/levelStatistics")
@Slf4j
@ApiLevel(level = ApiLevel.Level.L2, description = "接口分级统计管理")
public class ApiLevelStatisticsController {
@Autowired
private ApiLevelStatisticsService apiLevelStatisticsService;
private MultiServiceApiLevelStatisticsService statisticsService;
@GetMapping("/overview")
@ApiOperation("获取接口分级统计概览(理想是获取所有服务的数据, 但是现在还做不到预留吧)")
@ApiLevel(level = ApiLevel.Level.L3, description = "查看系统所有接口的分级统计信息")
public ApiLevelStatisticsDto getApiLevelStatistics() {
@GetMapping("/all")
@ApiOperation("获取所有服务接口分级统计概览")
public MultiServiceStatisticsDto getAllServicesStatistics() {
try {
return statisticsService.getAllServicesStatistics();
} catch (Exception e) {
log.error("获取所有服务分级统计失败", e);
throw new RuntimeException("获取所有服务分级统计失败: " + e.getMessage());
}
}
@GetMapping("/health")
@ApiOperation("获取所有服务健康状态")
public Map<String, Object> getServicesHealth() {
try {
return apiLevelStatisticsService.getApiLevelStatistics();
Map<String, Boolean> healthStatus = statisticsService.getServicesHealth();
Map<String, Object> result = new HashMap<>();
result.put("services", healthStatus);
result.put("totalServices", healthStatus.size());
result.put("healthyServices", healthStatus.values().stream().mapToInt(v -> v ? 1 : 0).sum());
return result;
} catch (Exception e) {
log.error("获取接口分级统计失败", e);
throw new RuntimeException("获取接口分级统计失败: " + e.getMessage());
log.error("获取服务健康状态失败", e);
throw new RuntimeException("获取服务健康状态失败: " + e.getMessage());
}
}
@GetMapping("/levels")
@ApiOperation("获取所有接口级别定义")
@ApiLevel(level = ApiLevel.Level.L4, description = "查看接口级别定义说明")
public List<ApiLevelInfoDto> getApiLevels() {
List<ApiLevelInfoDto> levels = new ArrayList<>();
......@@ -73,40 +88,9 @@ public class ApiLevelStatisticsController {
@GetMapping("/service")
@ApiOperation("获取本服务接口分级统计信息")
@ApiLevel(level = ApiLevel.Level.L3, description = "获取当前服务的接口分级统计,包含按级别分组的接口列表")
public Map<String, Object> getServiceStatistics() {
public ApiLevelStatisticsDto getServiceStatistics() {
try {
ApiLevelStatisticsDto fullStats = apiLevelStatisticsService.getApiLevelStatistics();
Map<String, Object> serviceStats = new HashMap<>();
// 基础统计信息
serviceStats.put("totalCount", fullStats.getTotalCount());
serviceStats.put("levelStatistics", fullStats.getLevelStatistics());
// 按级别分组的接口列表 - 动态初始化所有级别
Map<String, List<Map<String, Object>>> apisByLevel = new HashMap<>();
for (ApiLevel.Level level : ApiLevel.Level.values()) {
apisByLevel.put(level.name(), new ArrayList<>());
}
// 将接口按级别分组
for (ApiLevelStatisticsDto.ApiInfo api : fullStats.getApiList()) {
Map<String, Object> apiInfo = new HashMap<>();
apiInfo.put("url", api.getUrl());
apiInfo.put("method", api.getHttpMethod());
apiInfo.put("controller", api.getControllerName());
apiInfo.put("methodName", api.getMethodName());
apiInfo.put("description", api.getApiDescription());
// 现在所有接口都有级别(包括L99未配置)
String levelKey = api.getLevel().name();
apisByLevel.get(levelKey).add(apiInfo);
}
serviceStats.put("apisByLevel", apisByLevel);
return serviceStats;
return statisticsService.getLocalServiceStatistics();
} catch (Exception e) {
log.error("获取服务统计失败", e);
throw new RuntimeException("获取服务统计失败: " + e.getMessage());
......
......@@ -20,22 +20,15 @@ public class ApiLevelStatisticsDto {
*/
private Integer totalCount;
/**
* 接口列表
*/
private List<ApiInfo> apiList;
/**
* 级别统计 (级别名称 -> 数量)
*/
private Map<String, Integer> levelStatistics;
/**
* 服务统计 (服务名称 -> (级别名称 -> 数量))
* 按级别分组的接口列表 (级别名称 -> 接口信息列表)
*/
private Map<String, Map<String, Integer>> serviceStatistics;
private Map<String, List<ApiInfo>> apisByLevel;
/**
* 接口信息
......
package com.liquidnet.common.swagger.dto;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
* 多服务接口分级统计数据传输对象
*
* @author system
* @since 2024-10-30
*/
@Data
public class MultiServiceStatisticsDto {
/**
* 所有服务的总接口数
*/
private Integer totalCount;
/**
* 所有服务汇总的级别统计 (级别名称 -> 数量)
*/
private Map<String, Integer> totalLevelStatistics;
/**
* 各服务的统计信息列表
*/
private List<ServiceStatistics> serviceStatistics;
/**
* 服务健康状态 (服务名称 -> 是否健康)
*/
private Map<String, Boolean> serviceHealth;
/**
* 单个服务的统计信息
*/
@Data
public static class ServiceStatistics {
/**
* 服务名称
*/
private String serviceName;
/**
* 服务是否健康
*/
private Boolean isHealthy;
/**
* 该服务的完整统计数据
*/
private ApiLevelStatisticsDto statistics;
}
}
\ No newline at end of file
......@@ -115,7 +115,6 @@ spring:
# -----------------------------------------------------------
global-auth:
exclude-url-pattern: # 模式I(与模式II互斥)
- ${liquidnet.info.context}/levelTest/**
- ${liquidnet.info.context}/levelStatistics/**
- ${liquidnet.info.context}/doc.html
- ${liquidnet.info.context}/webjars/**
......
......@@ -102,6 +102,7 @@ spring:
# -----------------------------------------------------------
global-auth:
exclude-url-pattern: # 模式I(与模式II互斥)
- ${liquidnet.info.context}/levelStatistics/**
- ${liquidnet.info.context}/doc.html
- ${liquidnet.info.context}/webjars/**
- ${liquidnet.info.context}/swagger-resources/**
......
......@@ -118,6 +118,7 @@ spring:
# -----------------------------------------------------------
global-auth:
exclude-url-pattern:
- ${liquidnet.info.context}/levelStatistics/**
- ${liquidnet.info.context}/doc.html
- ${liquidnet.info.context}/webjars/**
- ${liquidnet.info.context}/swagger-resources/**
......
......@@ -108,7 +108,6 @@ spring:
# -----------------------------------------------------------
global-auth:
exclude-url-pattern:
- ${liquidnet.info.context}/levelTest/**
- ${liquidnet.info.context}/levelStatistics/**
- ${liquidnet.info.context}/doc.html
- ${liquidnet.info.context}/webjars/**
......
......@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import com.liquidnet.service.adam.dto.AdamAddressesParam;
......@@ -37,6 +38,7 @@ import java.util.List;
@Validated
@RestController
@RequestMapping("addr")
@ApiLevel(level = ApiLevel.Level.L3, description = "收货地址管理,购票配送需要")
public class AdamAddressesController {
@Autowired
AdamRdmService adamRdmService;
......@@ -45,6 +47,7 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 1)
@ApiOperation(value = "添加收货地址")
@ApiLevel(level = ApiLevel.Level.L3, description = "添加收货地址,购票配送功能")
@PostMapping("add")
public ResponseDto<Object> add(@Valid @RequestBody AdamAddressesParam parameter) {
return ResponseDto.success(adamAddressesService.add(parameter));
......@@ -52,6 +55,7 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 2)
@ApiOperation(value = "收货地址列表")
@ApiLevel(level = ApiLevel.Level.L3, description = "地址列表查询,购票选择配送地址")
@GetMapping("list")
public ResponseDto<List<AdamAddressesVo>> list() {
List<AdamAddressesVo> vos = adamRdmService.getAddressesVoByUid(CurrentUtil.getCurrentUid());
......@@ -122,6 +126,7 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 7)
@ApiOperation(value = "获取默认收货地址")
@ApiLevel(level = ApiLevel.Level.L2, description = "获取默认地址,购票快速选择")
@PostMapping("query/def")
public ResponseDto<AdamAddressesVo> queryDef() {
AdamAddressesVo vo = adamAddressesService.queryDefault(null, CurrentUtil.getCurrentUid(), true);
......@@ -135,6 +140,7 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 99)
@ApiOperation(value = "@API:收货地址", notes = "查取用户指定收货地址详情")
@ApiLevel(level = ApiLevel.Level.L2, description = "内部API,订单服务查询地址信息")
@GetMapping("query/depth")
public ResponseDto<AdamAddressesVo> queryForDepth(@NotBlank(message = "收货地址ID不能为空") @RequestParam String addrId,
@NotBlank(message = "用户ID不能为空") @RequestParam String uid) {
......
......@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.exception.constant.ErrorCode;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.constant.LnsRegex;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.SensitizeUtil;
......@@ -43,6 +44,7 @@ import java.util.regex.Pattern;
@Validated
@RestController
@RequestMapping("enters")
@ApiLevel(level = ApiLevel.Level.L1, description = "入场人管理,购票核心功能,无入场人无法购票")
public class AdamEntersController {
@Autowired
AdamRdmService adamRdmService;
......@@ -57,6 +59,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 1)
@ApiOperation(value = "添加入场人")
@ApiLevel(level = ApiLevel.Level.L1, description = "添加入场人,购票必需功能")
@PostMapping("add")
public ResponseDto<String> add(@RequestBody @Valid AdamEntersParam parameter) {
switch (parameter.getType()) {// 证件类型:1-大陆身份证,2-港澳通行证,3-台胞证,4-护照,5-军官证
......@@ -124,6 +127,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 2)
@ApiOperation(value = "入场人列表")
@ApiLevel(level = ApiLevel.Level.L1, description = "入场人列表,购票选择入场人必需")
@GetMapping("list")
public ResponseDto<List<AdamEntersVo>> list() {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(CurrentUtil.getCurrentUid());
......@@ -139,6 +143,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 3)
@ApiOperation(value = "设置默认入场人")
@ApiLevel(level = ApiLevel.Level.L2, description = "设置默认入场人,提升购票体验")
@PostMapping("def/{entersId}")
public ResponseDto<Object> def(@NotBlank(message = "入场人ID不能为空") @PathVariable String entersId) {
String currentUid = CurrentUtil.getCurrentUid();
......@@ -154,6 +159,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 4)
@ApiOperation(value = "编辑入场人")
@ApiLevel(level = ApiLevel.Level.L2, description = "编辑入场人信息,重要管理功能")
@PostMapping("edit")
public ResponseDto<Object> edit(@RequestBody @Valid AdamEntersParam parameter) {
if (1 == parameter.getType()) {
......@@ -189,6 +195,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 5)
@ApiOperation(value = "删除入场人")
@ApiLevel(level = ApiLevel.Level.L3, description = "删除入场人,管理功能")
@PostMapping("del/{entersId}")
public ResponseDto<Object> del(@NotBlank(message = "入场人ID不能为空") @PathVariable String entersId) {
String currentUid = CurrentUtil.getCurrentUid();
......@@ -203,6 +210,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "入场人详情")
@ApiLevel(level = ApiLevel.Level.L1, description = "入场人详情查询,购票确认信息必需")
@PostMapping("query")
public ResponseDto<List<AdamEntersVo>> query(@NotBlank(message = "入场人ID不能为空") @RequestParam String entersIds) {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUidEntersIds(CurrentUtil.getCurrentUid(), Arrays.asList(entersIds.split(",")));
......@@ -218,6 +226,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 7)
@ApiOperation(value = "获取默认入场人")
@ApiLevel(level = ApiLevel.Level.L1, description = "获取默认入场人,购票快速选择")
@PostMapping("query/def")
public ResponseDto<AdamEntersVo> queryDef() {
AdamEntersVo vo = adamEntersService.queryDefault(null, CurrentUtil.getCurrentUid(), true);
......@@ -233,6 +242,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 99)
@ApiOperation(value = "不推荐使用@API:入场人详情", notes = "不推荐使用,建议使用`rsc/inquire/enters`")
@ApiLevel(level = ApiLevel.Level.L1, description = "内部API,订单服务查询入场人信息")
@GetMapping("query/depth")
public ResponseDto<AdamEntersVo> queryForDepth(@NotBlank(message = "入场人ID不能为空") @RequestParam String entersId,
@NotBlank(message = "用户ID不能为空") @RequestParam String uid) {
......
......@@ -10,6 +10,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.common.sms.constant.SmsEnum;
import com.liquidnet.common.sms.processor.SmsProcessor;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.constant.LnsEnum;
import com.liquidnet.commons.lang.core.JwtValidator;
import com.liquidnet.commons.lang.util.*;
......@@ -52,6 +53,7 @@ import java.util.Objects;
@Validated
@RestController
@RequestMapping("")
@ApiLevel(level = ApiLevel.Level.L1, description = "用户登录核心功能,影响整个购票流程")
public class AdamLoginController {
@Autowired
Environment env;
......@@ -84,6 +86,7 @@ public class AdamLoginController {
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "mobile", value = "手机号"),
})
@ApiLevel(level = ApiLevel.Level.L1, description = "登录验证码发送,购票流程必需")
@GetMapping(value = {"send"})
public ResponseDto<Object> sendSms(@Pattern(regexp = "\\d{11}", message = "手机号格式有误") @RequestParam String mobile) {
log.debug("send to mobile:{}", mobile);
......@@ -112,6 +115,7 @@ public class AdamLoginController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "mobile", value = "手机号"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "password", value = "登录密码(只针对PHP老用户,新用户无此功能)"),
})
@ApiLevel(level = ApiLevel.Level.L1, description = "密码登录核心接口,老用户购票必需")
@PostMapping(value = {"login/pin"})
public ResponseDto<AdamLoginInfoVo> loginByPin(@Pattern(regexp = "\\d{11}", message = "手机号格式有误")
@RequestParam String mobile,
......@@ -151,6 +155,7 @@ public class AdamLoginController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "code", value = "验证码"),
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "skip", value = "是否跳过完善资料[1-跳过]"),
})
@ApiLevel(level = ApiLevel.Level.L1, description = "验证码登录核心接口,主要登录方式")
@PostMapping(value = {"login/sms"})
public ResponseDto<AdamLoginInfoVo> loginBySms(@Pattern(regexp = "\\d{11}", message = "手机号格式有误")
@RequestParam String mobile,
......@@ -192,6 +197,7 @@ public class AdamLoginController {
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "accessToken", value = "访问令牌"),
})
@ApiLevel(level = ApiLevel.Level.L1, description = "一键登录核心接口,便捷登录方式")
@PostMapping(value = {"login/mobile"})
public ResponseDto<AdamLoginInfoVo> loginByMobile(@NotBlank(message = "访问令牌不能为空") @RequestParam String accessToken) {
log.debug("login by mobile access token:{}", accessToken);
......@@ -279,6 +285,7 @@ public class AdamLoginController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "第三方账号登录")
@ApiLevel(level = ApiLevel.Level.L2, description = "第三方登录,重要但非主要登录方式")
@PostMapping(value = {"login/tpa"})
public ResponseDto<AdamLoginInfoVo> loginByThirdPartApp(@Valid @RequestBody AdamThirdPartParam parameter) {
log.info("login by tpa:{}", JsonUtils.toJson(parameter));
......@@ -324,6 +331,7 @@ public class AdamLoginController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "mobile", value = "手机号"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "otp", value = "临时票据"),
})
@ApiLevel(level = ApiLevel.Level.L2, description = "静默登录,提升用户体验")
@PostMapping(value = {"login/silent_mobile"})
public ResponseDto<AdamLoginInfoVo> loginBySilentMobile(@Pattern(regexp = "\\d{11}", message = "手机号格式有误")
@NotBlank(message = "手机号不能为空")
......@@ -366,6 +374,7 @@ public class AdamLoginController {
@ApiOperationSupport(order = 7)
@ApiOperation(value = "登出")
@ApiLevel(level = ApiLevel.Level.L3, description = "用户登出,常规功能")
@PostMapping(value = {"out"})
public void logout() {
log.info("###logout_uid:{}", CurrentUtil.getCurrentUid());
......@@ -375,6 +384,7 @@ public class AdamLoginController {
@ApiOperationSupport(order = 8)
@ApiOperation(value = "注销")
@ApiLevel(level = ApiLevel.Level.L4, description = "账号注销,低频使用")
@PostMapping(value = {"close"})
public ResponseDto<Object> close() {
// log.info("###close_uid:{}", CurrentUtil.getCurrentUid());
......@@ -388,6 +398,7 @@ public class AdamLoginController {
@ApiOperationSupport(order = 9)
@ApiOperation(value = "时间戳")
@ApiLevel(level = ApiLevel.Level.L88, description = "工具接口,无需分级")
@GetMapping(value = {"ts"})
public ResponseDto<Long> timestamp() {
return ResponseDto.success(LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli());
......
......@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.service.AdamRdmService;
......@@ -31,6 +32,7 @@ import javax.validation.constraints.NotBlank;
@Validated
@RestController
@RequestMapping("member")
@ApiLevel(level = ApiLevel.Level.L2, description = "会员信息查询,购票时可能需要判断会员权益")
public class AdamMemberController {
@Autowired
QueueUtils queueUtils;
......@@ -44,6 +46,7 @@ public class AdamMemberController {
@ApiOperationSupport(order = 1)
@ApiOperation(value = "会员信息")
@ApiLevel(level = ApiLevel.Level.L2, description = "会员信息查询,购票时判断会员权益")
@GetMapping("info")
public ResponseDto<AdamMemberVo> info() {
AdamMemberSimpleVo memberSimpleVo = adamRdmService.getMemberSimpleVo();
......@@ -78,6 +81,7 @@ public class AdamMemberController {
@ApiOperationSupport(order = 2)
@ApiOperation(value = "会员协议")
@ApiLevel(level = ApiLevel.Level.L4, description = "会员协议查看,辅助功能")
@GetMapping("agreement")
public ResponseDto<String> agreement() {
return ResponseDto.success(adamRdmService.getMemberAgreement());
......@@ -85,6 +89,7 @@ public class AdamMemberController {
@ApiOperationSupport(order = 3)
@ApiOperation(value = "权益详情")
@ApiLevel(level = ApiLevel.Level.L3, description = "会员权益详情,购票参考信息")
@GetMapping("info/rights")
public ResponseDto<AdamMemberRightsDetailVo> infoRights(@RequestParam String memberId, @RequestParam String mrightsId) {
return ResponseDto.success(adamRdmService.getMemberRightsDetailVoByRightsId(memberId, mrightsId));
......@@ -92,6 +97,7 @@ public class AdamMemberController {
@ApiOperationSupport(order = 4)
@ApiOperation(value = "会员开售状态")
@ApiLevel(level = ApiLevel.Level.L3, description = "会员开售状态,购票时参考")
@GetMapping("onsale")
public ResponseDto<Integer> onsale() {
AdamMemberSimpleVo memberSimpleVo = adamRdmService.getMemberSimpleVo();
......@@ -104,6 +110,7 @@ public class AdamMemberController {
@ApiOperationSupport(order = 5)
@ApiOperation(value = "会员卡信息")
@ApiLevel(level = ApiLevel.Level.L3, description = "会员卡信息查询,常规功能")
@GetMapping("joininfo")
public ResponseDto<AdamMemberJoinusVo> joininfo() {
String currentUid = CurrentUtil.getCurrentUid();
......@@ -130,6 +137,7 @@ public class AdamMemberController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "领取会员卡")
@ApiLevel(level = ApiLevel.Level.L3, description = "领取会员卡,常规功能")
@GetMapping("joinus")
public ResponseDto<AdamMemberJoinusVo> joinus() {
String currentUid = CurrentUtil.getCurrentUid();
......
......@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.controller;
import com.fasterxml.jackson.databind.JsonNode;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.constant.LnsEnum;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
......@@ -41,6 +42,7 @@ import java.util.List;
@Validated
@RestController
@RequestMapping("member/order")
@ApiLevel(level = ApiLevel.Level.L4, description = "购买会员功能,非购票必需,可选增值服务")
public class AdamMemberOrderController {
@Autowired
Environment env;
......@@ -53,6 +55,7 @@ public class AdamMemberOrderController {
@ApiOperationSupport(order = 0)
@ApiOperation(value = "购买会员预览")
@ApiLevel(level = ApiLevel.Level.L4, description = "会员购买预览,增值服务")
@GetMapping("preview/{mno}/{id}")
public ResponseDto<AdamMemberOrderPreviewVo> preview(@NotBlank(message = "会员类型ID不能为空") @PathVariable String mno,
@NotBlank(message = "会员价格ID不能为空") @PathVariable String id) {
......
......@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.common.third.shumei.util.ShumeiUtil;
import com.liquidnet.commons.lang.constant.LnsEnum;
import com.liquidnet.commons.lang.constant.LnsRegex;
......@@ -45,6 +46,7 @@ import java.util.Optional;
@Validated
@RestController
@RequestMapping("user")
@ApiLevel(level = ApiLevel.Level.L2, description = "用户信息管理,购票流程重要功能")
public class AdamUserController {
@Autowired
Environment env;
......@@ -64,6 +66,7 @@ public class AdamUserController {
@ApiOperationSupport(order = 1)
@ApiOperation(value = "资料编辑")
@ApiLevel(level = ApiLevel.Level.L2, description = "用户资料编辑,购票可能需要完整信息")
@PostMapping(value = {"edit"})
public ResponseDto<AdamUserInfoVo> edit(@Valid @RequestBody AdamUserInfoParam parameter) {
log.debug("parameter:{}", JsonUtils.toJson(parameter));
......@@ -188,6 +191,7 @@ public class AdamUserController {
@ApiOperationSupport(order = 2)
@ApiOperation(value = "音乐风格")
@ApiLevel(level = ApiLevel.Level.L4, description = "音乐风格标签,个性化功能")
@GetMapping(value = {"tag/ms"})
public ResponseDto<List<AdamTagParentVo>> getTagsForMusic() {
List<AdamTagParentVo> tagsForMusic = adamRdmService.getTagsForMusic();
......@@ -229,6 +233,7 @@ public class AdamUserController {
@ApiOperationSupport(order = 3)
@ApiOperation(value = "性别列表")
@ApiLevel(level = ApiLevel.Level.L4, description = "性别选项,个人资料配置")
@GetMapping(value = {"tag/sex"})
public ResponseDto<List<AdamTagVo>> getTagsForSex() {
List<AdamTagVo> tagsForSex = adamRdmService.getTagsForSex();
......@@ -257,6 +262,7 @@ public class AdamUserController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "mobile", value = "新手机号"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "code", value = "验证码", example = "111111"),
})
@ApiLevel(level = ApiLevel.Level.L2, description = "手机号修改,影响登录和购票通知")
@PostMapping(value = {"edit/mobile"})
public ResponseDto<String> editMobile(@Pattern(regexp = "\\d{11}", message = "手机号格式有误")
@RequestParam String mobile,
......@@ -285,6 +291,7 @@ public class AdamUserController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "idCard", value = "证件号"),
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "beValid", value = "是否校验年满18周岁"),
})
@ApiLevel(level = ApiLevel.Level.L1, description = "实名认证,购票必需功能")
@PostMapping(value = {"identity"})
public ResponseDto<AdamRealInfoVo> identity(@RequestParam String name, @RequestParam String idCard, @RequestParam(required = false) Integer beValid) {
log.debug("name:{},idCard:{}", name, idCard);
......@@ -334,6 +341,7 @@ public class AdamUserController {
@ApiOperationSupport(order = 7)
@ApiOperation(value = "绑定第三方账号")
@ApiLevel(level = ApiLevel.Level.L3, description = "第三方账号绑定,便民功能")
@PostMapping(value = {"tpa/bind"})
public ResponseDto<List<AdamThirdPartInfoVo>> bindTpa(@Valid @RequestBody AdamThirdPartParam parameter) {
log.debug("login by tpa:{}", JsonUtils.toJson(parameter));
......
......@@ -2,6 +2,7 @@ package com.liquidnet.service.candy.controller;
import com.fasterxml.jackson.core.type.TypeReference;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
......@@ -42,6 +43,7 @@ import java.util.List;
@RestController
@Validated
@RequestMapping("/candy-coupon")
@ApiLevel(level = ApiLevel.Level.L2, description = "优惠券功能,购票时重要的优惠服务")
public class CandyCouponController {
@Autowired
......@@ -50,6 +52,7 @@ public class CandyCouponController {
//我的券列表
@GetMapping("my")
@ApiOperation("我的券列表")
@ApiLevel(level = ApiLevel.Level.L2, description = "我的优惠券列表,购票时查看可用优惠")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "Integer", name = "type", value = "类型 1可用 2过期/已使用 ", required = true),
})
......@@ -76,6 +79,7 @@ public class CandyCouponController {
//我的会员权益券统计
@GetMapping("member-pre")
@ApiOperation("会员权益券统计")
@ApiLevel(level = ApiLevel.Level.L3, description = "会员权益券统计,会员服务功能")
public ResponseDto<List<CandyCouponPreVo>> myCouponPre() {
return ResponseDto.success(candyCouponService.memberCouponPre(CurrentUtil.getCurrentUid()));
}
......@@ -83,6 +87,7 @@ public class CandyCouponController {
//我的会员权益券列表
@GetMapping("member")
@ApiOperation("会员权益券列表")
@ApiLevel(level = ApiLevel.Level.L3, description = "会员权益券列表,会员服务功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "String", name = "mCouponId", value = "mCouponId", required = true),
})
......@@ -93,6 +98,7 @@ public class CandyCouponController {
//要使用券列表 - 演出
@GetMapping("preUse/performance")
@ApiOperation("要使用券列表 - 演出")
@ApiLevel(level = ApiLevel.Level.L2, description = "购票时可用优惠券列表,重要的优惠功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "BigDecimal", name = "priceTotal", value = "待支付总金额", required = true),
@ApiImplicitParam(type = "form", dataType = "String", name = "performanceId", value = "演出id", required = true),
......@@ -138,6 +144,7 @@ public class CandyCouponController {
// 是否可用券演出
@GetMapping("preCanUse/performance")
@ApiOperation("是否可用券 - 演出")
@ApiLevel(level = ApiLevel.Level.L2, description = "检查购票是否可用优惠券,重要的优惠判断")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "BigDecimal", name = "priceTotal", value = "待支付总金额", required = true),
@ApiImplicitParam(type = "form", dataType = "String", name = "performanceId", value = "演出id", required = true),
......@@ -167,6 +174,7 @@ public class CandyCouponController {
//要使用券列表 - 商品
@PostMapping("preUse/goods")
@ApiOperation("要使用券列表 - 商品")
@ApiLevel(level = ApiLevel.Level.L3, description = "商品购买优惠券,周边商品功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "BigDecimal", name = "priceTotal", value = "待支付总金额", required = true),
@ApiImplicitParam(type = "form", dataType = "String", name = "goodId", value = "商品id(逗号隔开的字符串)", required = true),
......@@ -223,6 +231,7 @@ public class CandyCouponController {
//要使用券列表 - 演出提前
@GetMapping("my/advance")
@ApiOperation("提前券列表")
@ApiLevel(level = ApiLevel.Level.L3, description = "提前购票券,特殊优惠功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "String", name = "performanceId", value = "演出id", required = true)
})
......
package com.liquidnet.service.candy.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.candy.dto.CandyCouponInfoDto;
import com.liquidnet.service.candy.util.ObjectUtil;
......@@ -28,12 +29,14 @@ import java.util.List;
@RestController
@Validated
@RequestMapping("rsc")
@ApiLevel(level = ApiLevel.Level.L2, description = "优惠券内部API,订单服务查询优惠券信息")
public class CandyRscController {
@Autowired
private RedisDataUtils redisDataUtils;
@PostMapping("couinfo")
@ApiOperation("券基础详情")
@ApiLevel(level = ApiLevel.Level.L2, description = "内部API查询优惠券详情,订单服务需要")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "String", name = "couponIds", value = "券ID,多个以,分割", required = true),
})
......
package com.liquidnet.service.kylin.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.entity.KylinBanners;
import com.liquidnet.service.kylin.service.impl.BannersServiceImpl;
......@@ -28,6 +29,7 @@ import java.util.List;
@RestController
@RequestMapping("banners")
@Slf4j
@ApiLevel(level = ApiLevel.Level.L2, description = "轮播图展示,首页重要内容")
public class KylinBannersController {
@Autowired
......@@ -35,6 +37,7 @@ public class KylinBannersController {
@GetMapping("")
@ApiOperation("banner列表")
@ApiLevel(level = ApiLevel.Level.L2, description = "轮播图列表,首页重要展示内容")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "position", value = "展示位置 1首页 3周边 5积分商城 6YB 8视频 10福袋", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "provinceName", value = "城市名称"),
......
......@@ -2,6 +2,7 @@ package com.liquidnet.service.kylin.controller;
import com.github.pagehelper.PageInfo;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
......@@ -36,6 +37,7 @@ import java.util.List;
@RestController
@RequestMapping("order")
@Validated
@ApiLevel(level = ApiLevel.Level.L1, description = "订单管理,购票流程核心功能")
public class KylinOrderTicketsController {
@Autowired
......@@ -70,6 +72,7 @@ public class KylinOrderTicketsController {
@GetMapping("list")
@ApiOperation("订单列表")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "订单列表查询,用户查看购票记录的核心功能")
public ResponseDto<PageInfo<List<KylinOrderListVo>>> orderList() {
return ResponseDto.success(orderTicketsService.orderList());
}
......@@ -84,6 +87,7 @@ public class KylinOrderTicketsController {
@GetMapping("details")
@ApiOperation("订单详情")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "订单详情查询,查看购票信息的核心功能")
public ResponseDto<OrderDetailsVo> orderDetails(@RequestParam(value = "orderId", required = false) @NotNull(message = "订单ID不能为空") String orderId) {
OrderDetailsVo vo = orderTicketsService.orderDetails(orderId);
if (null == vo) {
......@@ -96,6 +100,7 @@ public class KylinOrderTicketsController {
@GetMapping("supplementEnter")
@ApiOperation("补充入场人")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L2, description = "补充入场人信息,重要的订单完善功能")
public ResponseDto<Boolean> supplementEnter(@RequestParam(value = "orderId", required = true) @NotNull(message = "订单ID不能为空") String orderId,
@RequestParam(value = "enterList", required = true) @NotNull(message = "入场人id(逗号隔开)") String enterList) {
return orderTicketsService.supplementEnter(orderId, enterList);
......@@ -113,6 +118,7 @@ public class KylinOrderTicketsController {
@PostMapping("transfer")
@ApiOperation("转赠订单")
@ApiLevel(level = ApiLevel.Level.L3, description = "订单转赠功能,增值服务")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "orderId", value = "订单id"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "transferUid", value = "转赠目标uid"),
......
package com.liquidnet.service.kylin.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.vo.admin.OrderRefundPoundage;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderTicketPreVo;
......@@ -25,6 +26,7 @@ import javax.validation.constraints.NotNull;
@RestController
@RequestMapping("orderRefund")
@Validated
@ApiLevel(level = ApiLevel.Level.L2, description = "退票服务,重要的售后功能")
public class KylinOrderTicketsRefundController {
@Autowired
......@@ -33,6 +35,7 @@ public class KylinOrderTicketsRefundController {
@GetMapping("toOrderRefundDetails")
@ApiOperation("想要退款订单详情")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L2, description = "退款订单详情查询,重要售后功能")
public ResponseDto<KylinOrderTicketPreVo> toOrderRefundDetails(
@RequestParam(value = "orderId", required = false) @NotNull(message = "订单ID不能为空") String orderId
) {
......@@ -42,6 +45,7 @@ public class KylinOrderTicketsRefundController {
@GetMapping("getChargesRatioItem")
@ApiOperation("阶梯退款详情")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L3, description = "退款规则查询,辅助信息")
public ResponseDto<OrderRefundPoundage> getChargesRatioItem(
@RequestParam(value = "performanceId", required = true) @NotNull(message = "演出id") String performanceId
) {
......@@ -60,6 +64,7 @@ public class KylinOrderTicketsRefundController {
@PostMapping("sendOrderRefunds")
@ApiOperation("发起退款申请")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L2, description = "发起退款申请,重要售后服务")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "String", name = "orderId", value = "订单ID", required = true),
@ApiImplicitParam(type = "form", dataType = "String", name = "orderTicketEntitiesId", value = "订单入场人ID", required = true),
......@@ -98,6 +103,7 @@ public class KylinOrderTicketsRefundController {
@GetMapping("orderRefundDetails")
@ApiOperation("退款申请详情")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L2, description = "退款申请详情,重要售后查询")
public ResponseDto<OrderRefundVo> orderRefundDetails(@RequestParam(value = "orderId", required = true) @NotNull(message = "订单ID不能为空") String orderId,
@RequestParam(value = "orderRefundId", required = true) @NotNull(message = "退款订单ID不能为空") String orderRefundId) {
return kylinOrderTicketsRefundService.orderRefundDetails(orderId, orderRefundId);
......@@ -106,6 +112,7 @@ public class KylinOrderTicketsRefundController {
@PostMapping("orderRefundWithdraw")
@ApiOperation("发起退款撤回")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L3, description = "退款撤回,辅助管理功能")
public ResponseDto<Boolean> orderRefundWithdraw(@RequestParam(value = "orderRefundId", required = true) @NotNull(message = "退款订单ID不能为空") String orderRefundId) {
return kylinOrderTicketsRefundService.orderRefundWithdraw(orderRefundId);
}
......
package com.liquidnet.service.kylin.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
......@@ -35,6 +36,7 @@ import java.util.List;
@RestController
@RequestMapping("performance")
@Slf4j
@ApiLevel(level = ApiLevel.Level.L1, description = "演出信息展示,购票流程核心功能")
public class KylinPerformancesController {
@Autowired
......@@ -46,6 +48,7 @@ public class KylinPerformancesController {
@GetMapping("localList")
@ApiOperation("本地演出列表")
@ApiLevel(level = ApiLevel.Level.L1, description = "本地演出列表,用户浏览演出的核心入口")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "cityName", value = "城市名称"),
@ApiImplicitParam(type = "query", dataType = "Integer", name = "adCode", value = "城市code"),
......@@ -83,6 +86,7 @@ public class KylinPerformancesController {
@GetMapping("noticeList")
@ApiOperation("演出预告列表")
@ApiLevel(level = ApiLevel.Level.L2, description = "演出预告列表,重要的内容展示功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "Integer", name = "type", value = "type为1的时候合并巡演")
})
......@@ -94,6 +98,7 @@ public class KylinPerformancesController {
@GetMapping("recommendList")
@ApiOperation("推荐演出列表")
@ApiLevel(level = ApiLevel.Level.L2, description = "推荐演出列表,重要的个性化推荐功能")
public ResponseDto<List<KylinPerformanceVo>> recommendList() {
List<KylinPerformanceVo> result = kylinPerformancesService.recommendList();
return ResponseDto.success(result);
......@@ -101,6 +106,7 @@ public class KylinPerformancesController {
@GetMapping("exclusiveList")
@ApiOperation("会员专属演出列表")
@ApiLevel(level = ApiLevel.Level.L3, description = "会员专属演出,会员权益功能")
public ResponseDto<List<KylinPerformanceVo>> exclusiveList() {
List<KylinPerformanceVo> result = kylinPerformancesService.exclusiveList();
return ResponseDto.success(result);
......@@ -108,6 +114,7 @@ public class KylinPerformancesController {
@GetMapping(value = "search")
@ApiOperation("演出搜索")
@ApiLevel(level = ApiLevel.Level.L1, description = "演出搜索,用户查找演出的核心功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "title", value = "演出名称", required = true),
@ApiImplicitParam(type = "query", dataType = "int", name = "page", value = "页码"),
......@@ -125,6 +132,7 @@ public class KylinPerformancesController {
@GetMapping(value = "calendar")
@ApiOperation("演出日历")
@ApiLevel(level = ApiLevel.Level.L3, description = "演出日历,辅助浏览功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "yearMonth", value = "年月 2021-01", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "cityName", value = "城市名称"),
......@@ -171,6 +179,7 @@ public class KylinPerformancesController {
@GetMapping("{performancesId}")
@ApiOperation("演出详情")
@ApiLevel(level = ApiLevel.Level.L1, description = "演出详情,购票前必看的核心信息")
@ApiImplicitParams({
@ApiImplicitParam(type = "path", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "double", name = "latitudeFrom", value = "经纬度"),
......@@ -212,6 +221,7 @@ public class KylinPerformancesController {
@GetMapping("partner/{performancesId}")
@ApiOperation("场次票种")
@ApiLevel(level = ApiLevel.Level.L1, description = "场次票种信息,购票选择的核心数据")
@ApiImplicitParams({
@ApiImplicitParam(type = "path", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "Integer", name = "isAgent", value = "是否分销 1是 0不是 空/不传/0")
......@@ -230,6 +240,7 @@ public class KylinPerformancesController {
@GetMapping("payDetail")
@ApiOperation("支付前详情")
@ApiLevel(level = ApiLevel.Level.L1, description = "支付前详情确认,购票流程关键步骤")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketsId", value = "票种id", required = true)
......@@ -248,6 +259,7 @@ public class KylinPerformancesController {
@PostMapping("lackRegister")
@ApiOperation("缺票登记")
@ApiLevel(level = ApiLevel.Level.L3, description = "缺票登记,辅助服务功能")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketsId", value = "票种id", required = true)
......
package com.liquidnet.service.order.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.codec.vo.EncryptedReq;
......@@ -22,6 +23,7 @@ import javax.validation.Valid;
@Api(tags = "商城-支付相关")
@RestController
@RequestMapping("/goblin")
@ApiLevel(level = ApiLevel.Level.L3, description = "商城订单处理,周边商品购买功能")
public class GoblinOrderController {
@Autowired
......@@ -29,6 +31,7 @@ public class GoblinOrderController {
@PostMapping("pre")
@ApiOperation("下单")
@ApiLevel(level = ApiLevel.Level.L3, description = "商城商品下单,周边商品购买")
public ResponseDto<GoblinPayInnerResultVo> checkOrder(@RequestBody EncryptedReq<GoblinOrderParam> param) {
GoblinOrderParam payOrderParam = param.getData();
String uid = CurrentUtil.getCurrentUid();
......@@ -45,12 +48,14 @@ public class GoblinOrderController {
@PostMapping("syncOrder")
@ApiOperation("支付回调")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L3, description = "商城订单支付回调,周边商品支付处理")
public String syncOrder(@ModelAttribute @Valid SyncOrderParam syncOrderParam) {
return goblinAppOrderService.syncOrder(syncOrderParam);
}
@ApiOperation(value = "退款回调")
@PostMapping(value = "refundSyncOrder")
@ApiLevel(level = ApiLevel.Level.L4, description = "商城退款回调,低频售后功能")
public String refundSyncOrder(RefundCallbackParam refundCallbackParam) {
return goblinAppOrderService.refundSyncOrder(refundCallbackParam);
}
......@@ -58,6 +63,7 @@ public class GoblinOrderController {
@PostMapping("paySuccess")
@ApiOperation("汇付支付成功回调")
@ResponseBody
@ApiLevel(level = ApiLevel.Level.L88, description = "第三方支付回调,系统集成接口")
public String refundDetails(HttpServletRequest request) {
return goblinAppOrderService.huiFuSync(request);
}
......@@ -65,6 +71,7 @@ public class GoblinOrderController {
@PostMapping("payAgain")
@ApiOperation("再次支付")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L3, description = "商城订单重新支付,周边商品支付")
public ResponseDto<GoblinPayInnerResultVo> payAgain(@RequestBody @Valid PayAgainParam param) {
return goblinAppOrderService.payAgain(param);
}
......@@ -72,6 +79,7 @@ public class GoblinOrderController {
@PostMapping("checkPayment")
@ApiOperation("订单状态")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L3, description = "商城订单状态查询,周边商品订单跟踪")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "orderId", value = "订单id", example = "1"),
})
......
package com.liquidnet.service.order.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.codec.annotation.DecryptAndVerify;
......@@ -35,6 +36,7 @@ import java.util.HashMap;
@RestController
@RequestMapping("order")
@Validated
@ApiLevel(level = ApiLevel.Level.L1, description = "演出票订单处理,购票流程核心功能")
public class KylinOrderTicketsController {
@Autowired
......@@ -43,6 +45,7 @@ public class KylinOrderTicketsController {
@PostMapping("fc7bce6d6c2213b866f76493f92224b7")
@ApiOperation("fc7bce6d6c2213b866f76493f92224b7")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "下单检查,购票流程核心步骤")
public ResponseDto<PayInnerResultVo> checkCanOrder(@RequestBody @Valid PayOrderParam payOrderParam) {
return orderTicketsOrderService.checkCanOrder(payOrderParam);
}
......@@ -51,6 +54,7 @@ public class KylinOrderTicketsController {
@PostMapping("pre")
@ApiOperation("下单")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "创建订单,购票流程核心功能")
public ResponseDto<PayInnerResultVo> checkCanOrder(@RequestBody @Valid EncryptedReq<PayOrderParam> encryptedReq) {
PayOrderParam payOrderParam = encryptedReq.getData();
return orderTicketsOrderService.checkCanOrder(payOrderParam);
......@@ -59,6 +63,7 @@ public class KylinOrderTicketsController {
@PostMapping("payAgain")
@ApiOperation("再次支付")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "重新支付,购票流程核心功能")
public ResponseDto<PayInnerResultVo> payAgain(@RequestBody @Valid PayAgainParam payAgainParam) {
PayInnerResultVo vo = orderTicketsOrderService.payAgain(payAgainParam).getData();
if (null == vo) {
......@@ -71,6 +76,7 @@ public class KylinOrderTicketsController {
@PostMapping("syncOrder")
@ApiOperation("支付回调")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "支付回调处理,购票流程核心环节")
public String syncOrder(@ModelAttribute @Valid SyncOrderParam syncOrderParam) {
return orderTicketsOrderService.syncOrder(syncOrderParam);
}
......@@ -81,6 +87,7 @@ public class KylinOrderTicketsController {
@GetMapping("checkPayment")
@ApiOperation("订单状态")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L1, description = "订单状态查询,购票流程状态确认")
public ResponseDto<HashMap<String, Object>> checkOrderResult(@RequestParam("orderId") @NotNull(message = "订单ID不能为空") String orderId) {
return orderTicketsOrderService.checkOrderResult(orderId);
}
......
package com.liquidnet.service.order.controller;
import com.liquidnet.common.swagger.annotation.ApiLevel;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.codec.vo.EncryptedReq;
......@@ -24,6 +25,7 @@ import javax.validation.Valid;
@Api(tags = "混合售-支付相关")
@RestController
@RequestMapping("/mix")
@ApiLevel(level = ApiLevel.Level.L2, description = "混合订单处理,重要的多商品购买功能")
public class MixOrderController {
@Autowired
......@@ -31,6 +33,7 @@ public class MixOrderController {
@PostMapping("pre")
@ApiOperation("下单")
@ApiLevel(level = ApiLevel.Level.L2, description = "混合订单下单,重要的多商品购买")
public ResponseDto<GoblinPayInnerResultVo> checkOrder(@RequestBody EncryptedReq<MixOrderParam> param) {
MixOrderParam payOrderParam = param.getData();
String uid = CurrentUtil.getCurrentUid();
......@@ -47,6 +50,7 @@ public class MixOrderController {
@PostMapping("syncOrder")
@ApiOperation("支付回调")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L2, description = "混合订单支付回调,重要的支付处理")
public String syncOrder(@ModelAttribute @Valid SyncOrderParam syncOrderParam) {
return mixOrderService.syncOrder(syncOrderParam);
}
......@@ -70,6 +74,7 @@ public class MixOrderController {
@PostMapping("checkPaymentMaster")
@ApiOperation("订单状态[主订单号]")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiLevel(level = ApiLevel.Level.L2, description = "混合订单状态查询,重要的订单跟踪")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "masterCode", value = "masterCode", example = "1"),
})
......
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