9 changed files with 110 additions and 30 deletions
@ -0,0 +1,48 @@ |
|||
package com.qs.serve.modules.third; |
|||
|
|||
import cn.hutool.crypto.SecureUtil; |
|||
import com.qs.serve.common.config.DevEnvironmentConfig; |
|||
import com.qs.serve.common.model.dto.R; |
|||
import com.qs.serve.common.util.Assert; |
|||
import com.qs.serve.modules.third.consts.ThirtyConst; |
|||
import com.qs.serve.modules.third.entity.ProcessCreateCostApplyBo; |
|||
import com.qs.serve.modules.third.entity.ProcessCreatePolicyCostBo; |
|||
import com.qs.serve.modules.third.service.PortalOfCostApplication; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.web.bind.annotation.PostMapping; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.validation.Valid; |
|||
import java.time.LocalDate; |
|||
|
|||
/** |
|||
* 【第三方接口】核销系统 |
|||
* headers+ => tenant-id = 001 |
|||
* headers+ => v-token = MD5.encrypt('jslApi-'+yyyy-MM-dd) |
|||
* @author YenHex |
|||
* @since 2023/2/14 |
|||
*/ |
|||
@Slf4j |
|||
@AllArgsConstructor |
|||
@RestController |
|||
@RequestMapping("thirty/") |
|||
public class PortalController { |
|||
|
|||
/** |
|||
* 测试连通性 |
|||
* @param request |
|||
* @return |
|||
*/ |
|||
@RequestMapping("/test") |
|||
public R<?> testConnect(HttpServletRequest request){ |
|||
ThirdTokenUtil.checkToken(request); |
|||
return R.ok("connect_success"); |
|||
} |
|||
|
|||
|
|||
|
|||
} |
@ -0,0 +1,32 @@ |
|||
package com.qs.serve.modules.third; |
|||
|
|||
import cn.hutool.crypto.SecureUtil; |
|||
import com.qs.serve.common.config.DevEnvironmentConfig; |
|||
import com.qs.serve.common.util.Assert; |
|||
import com.qs.serve.modules.third.consts.ThirtyConst; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import java.time.LocalDate; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2023/3/11 |
|||
*/ |
|||
@Slf4j |
|||
public class ThirdTokenUtil { |
|||
|
|||
public static void checkToken(HttpServletRequest request) { |
|||
String time = LocalDate.now().toString(); |
|||
String match = SecureUtil.md5(ThirtyConst.PREFIX_MD5_VALUE + time); |
|||
String token = request.getHeader(ThirtyConst.TOKEN_API_PARAM); |
|||
if(token==null||token.equalsIgnoreCase(match)){ |
|||
if(DevEnvironmentConfig.isDev()){ |
|||
log.error("v-token==>"+match); |
|||
Assert.throwEx("请求头 v-token 为空。或token无效"); |
|||
} |
|||
Assert.throwEx("err"); |
|||
} |
|||
} |
|||
|
|||
} |
Loading…
Reference in new issue