诊断流程提交

dev_v1.0.1
liu 2 years ago
parent 018c97712f
commit 8f8114764b

@ -7,26 +7,37 @@ import cn.hutool.jwt.JWT;
import cn.hutool.jwt.JWTUtil;
import com.supervision.domain.UserInfo;
import com.supervision.exception.BusinessException;
import com.supervision.util.SpringBeanUtil;
import com.supervision.util.TokenUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.env.Environment;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.Map;
@Slf4j
public class JwtInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
//请求消息头获取用户ID
String token = request.getHeader("token");
// 如果是开发环境,不获取token
if (StrUtil.isBlank(token)) {
throw new BusinessException("当前用户未登录");
if (StrUtil.isBlank(token) ) {
// 如果是swagger来的接口,说明这里是测试的,会伪造一个用户
if (StrUtil.isNotBlank(request.getHeader("Knife4j-Gateway-Code"))){
token = devActiveUser();
}else {
throw new BusinessException("当前用户未登录");
}
}
JWT jwt = JWTUtil.parseToken(token);
// 校验token是否过期,如果过期了,需要提示过期重新登录
checkTokenExpire(jwt);
@ -46,7 +57,6 @@ public class JwtInterceptor implements HandlerInterceptor {
Object expireTime = jwt.getPayload("expireTime");
long l = Long.parseLong(String.valueOf(expireTime));
// 校验是否比当前时间大
System.out.println(l);
long currentTimeMillis = System.currentTimeMillis();
if (currentTimeMillis > l) {
throw new BusinessException("用户登录已过期,请重新登录");
@ -62,6 +72,14 @@ public class JwtInterceptor implements HandlerInterceptor {
}
}
private String devActiveUser(){
Map<String, Object> map = new HashMap<>();
map.put("id","1");
map.put("account","test");
map.put("name","测试账户");
return TokenUtil.creatToken(JSONUtil.toJsonStr(map));
}
private void clearAuth() {
ThreadCache.USER.remove();
}

@ -10,8 +10,6 @@
*/
package com.supervision.config;
import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
import io.swagger.annotations.Api;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.bind.annotation.RestController;

@ -30,7 +30,7 @@ public class WebConfig implements WebMvcConfigurer {
paths.add("/favicon.ico");
paths.add("/user/login");
// 开发环境,放开不校验token.每次修改这里需要重启(热部署不行)
paths.add("/**");
// paths.add("/**");
return paths;
}
}

@ -35,10 +35,10 @@ public class Patient implements Serializable {
private String name;
/**
* 0 1
*
*/
@ApiModelProperty("性别 0男 1女")
private Integer gender;
@ApiModelProperty("性别")
private String gender;
/**
*
@ -64,6 +64,15 @@ public class Patient implements Serializable {
@ApiModelProperty("体重")
private BigDecimal weight;
@ApiModelProperty("婚姻")
private String marriage;
@ApiModelProperty("职业")
private String profession;
@ApiModelProperty("地址")
private String address;
/**
* ID
*/

@ -12,6 +12,9 @@
<result property="symptoms" column="symptoms" jdbcType="VARCHAR"/>
<result property="height" column="height" jdbcType="DECIMAL"/>
<result property="weight" column="weight" jdbcType="DECIMAL"/>
<result property="marriage" column="marriage" jdbcType="VARCHAR"/>
<result property="profession" column="profession" jdbcType="VARCHAR"/>
<result property="address" column="address" jdbcType="VARCHAR"/>
<result property="createUserId" column="create_user_id" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateUserId" column="update_user_id" jdbcType="VARCHAR"/>
@ -21,7 +24,7 @@
<sql id="Base_Column_List">
id
,name,gender,
age,symptoms,height,
age,symptoms,height,address,marriage,profession,
weight,disease_list,create_user_id,
create_time,update_user_id,update_time
</sql>

@ -24,7 +24,7 @@ public class AskProcessController {
@ApiOperation("生成诊断流程任务")
@GetMapping("creatDiagnosisProcess")
public Process creatDiagnosisProcess(@ApiParam("病人ID") String patientId, String medicalId) {
public Process creatDiagnosisProcess(@ApiParam("病人ID") String patientId,@ApiParam("病历ID") String medicalId) {
User user = UserUtil.getUser();
return askProcessService.creatDiagnosisProcess(patientId, medicalId, user);
}

Loading…
Cancel
Save