diff --git a/nxhs-common/src/main/java/cc/yunxi/common/utils/WebUtils.java b/nxhs-common/src/main/java/cc/yunxi/common/utils/WebUtils.java index fc54fbe..447dfc4 100644 --- a/nxhs-common/src/main/java/cc/yunxi/common/utils/WebUtils.java +++ b/nxhs-common/src/main/java/cc/yunxi/common/utils/WebUtils.java @@ -101,10 +101,10 @@ public class WebUtils { StringBuilder buffer = new StringBuilder(); for (Map.Entry entry : queries.entrySet()) { if(entry.getValue() instanceof String[]){ - buffer.append(entry.getKey()).append(String.join(",", ((String[])entry.getValue()))) + buffer.append(entry.getKey()).append("=").append(String.join(",", ((String[])entry.getValue()))) .append("&"); }else if(entry.getValue() instanceof Collection){ - buffer.append(entry.getKey()).append( + buffer.append(entry.getKey()).append("=").append( CollUtil.join(((Collection)entry.getValue()),",") ).append("&"); } diff --git a/nxhs-service/src/main/java/cc/yunxi/controller/IndexController.java b/nxhs-service/src/main/java/cc/yunxi/controller/IndexController.java index f71c8f3..c5d0ab4 100644 --- a/nxhs-service/src/main/java/cc/yunxi/controller/IndexController.java +++ b/nxhs-service/src/main/java/cc/yunxi/controller/IndexController.java @@ -6,6 +6,7 @@ import cc.yunxi.common.utils.BeanUtils; import cc.yunxi.domain.dto.UserDTO; import cc.yunxi.domain.po.Client; import cc.yunxi.domain.po.Product; +import cc.yunxi.domain.vo.enterprise.RechargeBalanceVO; import cc.yunxi.domain.vo.priceproduct.ProductSimpleVO; import cc.yunxi.enums.UserTypeEnum; import cc.yunxi.service.IClientService; @@ -16,9 +17,11 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.http.MediaType; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import javax.validation.Valid; import javax.validation.constraints.*; import java.math.BigDecimal; import java.util.Collections; @@ -62,13 +65,10 @@ public class IndexController { @ApiOperation(value = "商户余额充值", hidden = true) - @PostMapping("/recharge-balance") - public CommonResult recharge( - @NotBlank(message = "商户号不能为空") - String merchantId, - @NotNull(message = "充值金额不能为空") - @Min(value = 100, message = "充值金额最大为100元") - @Max(value = 10000, message = "充值金额最大为10000元") Integer amount) throws Exception { + @PostMapping(value = "/recharge-balance") + public CommonResult recharge(@Valid @RequestBody RechargeBalanceVO rechargeBalanceVO) { + String merchantId = rechargeBalanceVO.getMerchantId(); + Integer amount = rechargeBalanceVO.getAmount(); enterpriseService.rechargeBalance(merchantId, amount); return CommonResult.success(true); } diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/enterprise/RechargeBalanceVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/enterprise/RechargeBalanceVO.java new file mode 100644 index 0000000..72143ce --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/enterprise/RechargeBalanceVO.java @@ -0,0 +1,25 @@ +package cc.yunxi.domain.vo.enterprise; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +@ApiModel(description = "商户余额充值 Request VO") +@Data +public class RechargeBalanceVO { + + @ApiModelProperty(value = "企业商户id") + @NotBlank(message = "商户号不能为空") + private String merchantId; + + @ApiModelProperty(value = "充值金额") + @NotNull(message = "充值金额不能为空") + @Min(value = 100, message = "充值金额最大为100元") + @Max(value = 10000, message = "充值金额最大为10000元") + private Integer amount; +} diff --git a/nxhs-service/src/main/java/cc/yunxi/interceptor/StatsInterceptor.java b/nxhs-service/src/main/java/cc/yunxi/interceptor/StatsInterceptor.java index e9c7ae1..9c713b3 100644 --- a/nxhs-service/src/main/java/cc/yunxi/interceptor/StatsInterceptor.java +++ b/nxhs-service/src/main/java/cc/yunxi/interceptor/StatsInterceptor.java @@ -2,6 +2,7 @@ package cc.yunxi.interceptor; import cc.yunxi.common.utils.WebUtils; import cc.yunxi.filter.RequestReaderHttpServletRequestWrapper; +import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.core.Ordered; @@ -30,9 +31,9 @@ public class StatsInterceptor implements HandlerInterceptor { String contentType = request.getContentType(); String data = "其他复杂请求数据不记录!"; if(HttpMethod.POST.name().equals(method) && !contentType.equals(MediaType.MULTIPART_FORM_DATA_VALUE)) { - if (contentType.equals(MediaType.APPLICATION_JSON_VALUE)) { + if (contentType.startsWith(MediaType.APPLICATION_JSON_VALUE)) { data = WebUtils.getRequestPostStr(request); - } else if (contentType.equals(MediaType.APPLICATION_FORM_URLENCODED_VALUE)) { + } else if (contentType.startsWith(MediaType.APPLICATION_FORM_URLENCODED_VALUE)) { data = WebUtils.getParameters(request); } } else if (HttpMethod.GET.name().equals(method)) {