Commit 4fb4b813 authored by 赵啸非's avatar 赵啸非

修改构建api文档

parent 42823e3e
...@@ -61,6 +61,7 @@ exec "$JAVACMD" $JAVA_OPTS \ ...@@ -61,6 +61,7 @@ exec "$JAVACMD" $JAVA_OPTS \
-Dbasedir="$BASEDIR" \ -Dbasedir="$BASEDIR" \
-Djava.io.tmpdir=$TEMP_PATH \ -Djava.io.tmpdir=$TEMP_PATH \
-Dloader.path="file://$BASEDIR/conf,file://$BASEDIR/lib" \ -Dloader.path="file://$BASEDIR/conf,file://$BASEDIR/lib" \
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5503 \
-jar $MAIN_CLASS \ -jar $MAIN_CLASS \
> /dev/null & > /dev/null &
......
...@@ -47,7 +47,7 @@ public class OperlogAspect extends FileLogServiceImpl implements ILogService { ...@@ -47,7 +47,7 @@ public class OperlogAspect extends FileLogServiceImpl implements ILogService {
// content); // content);
this.doHandlerLog(platformMark, null, "", loginName, requestUrl, content, ip, new Date()); this.doHandlerLog(platformMark, null, "", loginName, requestUrl, content, ip, new Date());
} }
/*
@Pointcut("execution(public * com.mortals.xhx..*Controller.*(..))") @Pointcut("execution(public * com.mortals.xhx..*Controller.*(..))")
public void accessLog() { public void accessLog() {
} }
...@@ -74,5 +74,5 @@ public class OperlogAspect extends FileLogServiceImpl implements ILogService { ...@@ -74,5 +74,5 @@ public class OperlogAspect extends FileLogServiceImpl implements ILogService {
if (null != object) { if (null != object) {
logger.info("response={}", object.toString()); logger.info("response={}", object.toString());
} }
} }*/
} }
...@@ -33,7 +33,7 @@ import java.util.Map; ...@@ -33,7 +33,7 @@ import java.util.Map;
@Component @Component
@Slf4j @Slf4j
@Order(1) @Order(1)
@Profile({ "develop", "test"}) @Profile({"default", "develop", "test"})
public class WebLogAspect { public class WebLogAspect {
@Pointcut("execution(public * com.mortals..*Controller.*(..))") @Pointcut("execution(public * com.mortals..*Controller.*(..))")
public void webLog() { public void webLog() {
...@@ -64,11 +64,11 @@ public class WebLogAspect { ...@@ -64,11 +64,11 @@ public class WebLogAspect {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest(); HttpServletRequest request = attributes.getRequest();
Map<String, String> map = MDC.getCopyOfContextMap(); Map<String, String> map = MDC.getCopyOfContextMap();
if (map != null) { if (map != null&&result!=null) {
String startTime = map.getOrDefault("startTime", String.valueOf(System.currentTimeMillis())); String startTime = map.getOrDefault("startTime", String.valueOf(System.currentTimeMillis()));
long takeTime = (System.currentTimeMillis() - Long.parseLong(startTime)) / 100; long takeTime = (System.currentTimeMillis() - Long.parseLong(startTime));
log.debug(" \n 请求路径:{} \n 耗时:{}ms \n 请求报文:{} \n 响应报文:{}" log.info(" \n 请求路径:{} \n 耗时:{}ms \n 请求报文:{} \n 响应报文:{}"
, request.getRequestURI(), takeTime, map.getOrDefault("req", ""), result == null ? "" : result.toString()); , request.getRequestURI(), takeTime, map.getOrDefault("req", ""), result == null ? "" : result.toString());
} }
} }
......
package com.mortals.xhx.base.framework.filter;
import cn.hutool.core.util.IdUtil;
import com.mortals.framework.service.IAuthTokenService;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.web.filter.OncePerRequestFilter;
import org.springframework.web.util.ContentCachingRequestWrapper;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
*
* 请求过滤链
* @author: zxfei
* @date: 2022/4/20 14:52
*/
@Component
@Slf4j
public class RequestFilter extends OncePerRequestFilter implements Filter {
@Autowired
private IAuthTokenService authTokenService;
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
try {
//每个请求记录一个traceId,可以根据traceId搜索出本次请求的全部相关日志
MDC.put("traceId", IdUtil.fastSimpleUUID().substring(0,12));
setUsername(request);
request = new ContentCachingRequestWrapper(request);
filterChain.doFilter(request, response);
} catch (Exception e) {
throw e;
} finally {
//清理ThreadLocal
MDC.clear();
}
}
private void setUsername(HttpServletRequest request) {
//通过token解析出username
String token = authTokenService.getToken(request);
//String token = request.getHeader("token");
if (!ObjectUtils.isEmpty(token)) {
MDC.put("token",token);
// MDC.put("token", token);
// try {
// SessionUserInfo info = tokenService.getUserInfo();
// if (info != null) {
// String username = info.getUsername();
// MDC.put("username", username);
// }
// } catch (CommonJsonException e) {
// log.info("无效的token:{}", token);
// }
}
}
}
...@@ -238,13 +238,12 @@ public class LoginController extends BaseCRUDJsonController<UserService, UserFor ...@@ -238,13 +238,12 @@ public class LoginController extends BaseCRUDJsonController<UserService, UserFor
@RequestMapping("parseToken") @RequestMapping("parseToken")
public String parseToken() throws Exception { public IUser parseToken() throws Exception {
UserEntity userEntity = (UserEntity)authTokenService.getLoginUser(request); IUser userEntity = authTokenService.getLoginUser(request);
if (!ObjectUtils.isEmpty(userEntity)) { if (!ObjectUtils.isEmpty(userEntity)) {
authTokenService.verifyToken(userEntity); authTokenService.verifyToken(userEntity);
return JSON.toJSONString(userEntity); return userEntity;
} }
return null; return null;
} }
} }
...@@ -106,7 +106,7 @@ public class OperLogServiceImpl extends AbstractCRUDServiceImpl<OperLogDao,OperL ...@@ -106,7 +106,7 @@ public class OperLogServiceImpl extends AbstractCRUDServiceImpl<OperLogDao,OperL
operLogEntity.setLogDate(new Date()); operLogEntity.setLogDate(new Date());
operLogEntity.setPlatformMark(GlobalSysInfo.getPropertyValue(SysConstains.PROP_PLATFORM_MARK)); operLogEntity.setPlatformMark(GlobalSysInfo.getPropertyValue(SysConstains.PROP_PLATFORM_MARK));
// operLogEntity.setOperType(operType.getValue()); //operLogEntity.setOperType(operType.getValue());
operLogEntity.setRequestUrl(requestUrl); operLogEntity.setRequestUrl(requestUrl);
operLogEntity.setLoginName(loginName); operLogEntity.setLoginName(loginName);
operLogEntity.setUserId(userId); operLogEntity.setUserId(userId);
......
...@@ -226,16 +226,21 @@ public class UserEntity extends UserEntityExt implements IUser { ...@@ -226,16 +226,21 @@ public class UserEntity extends UserEntityExt implements IUser {
return super.getId() == null ? false : super.getId().longValue() == SysConstains.ADMIN_ID; return super.getId() == null ? false : super.getId().longValue() == SysConstains.ADMIN_ID;
} }
@Override @Override
public boolean isSystemUser() { public boolean isSystemUser() {
return userType != null && userType.intValue() == 0; return userType != null && userType.intValue() == 0;
} }
@Override @Override
public boolean isManager() { public boolean isManager() {
return false; return false;
} }
/** /**
* 设置 用户名 * 设置 用户名
* @param realName * @param realName
......
package com.mortals.xhx.module.dept.web; package com.mortals.xhx.module.dept.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.web.BasePhpCRUDJsonMappingController; import com.mortals.framework.web.BasePhpCRUDJsonMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.dept.model.DeptEntity; import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.service.DeptService; import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.model.model.ModelEntity;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.Map; import java.util.Map;
/** /**
...@@ -29,6 +33,16 @@ public class DeptController extends BasePhpCRUDJsonMappingController<DeptService ...@@ -29,6 +33,16 @@ public class DeptController extends BasePhpCRUDJsonMappingController<DeptService
super.setModuleDesc("部门"); super.setModuleDesc("部门");
} }
@Override
protected void doListBefore(DeptEntity query, Map<String, Object> model, Context context) throws AppException {
query.setOrderColList(new ArrayList<OrderCol>() {
{
add(new OrderCol("a.sort", OrderCol.ASCENDING));
}
});
super.doListBefore(query, model, context);
}
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "isAutotable", paramService.getParamBySecondOrganize("Dept", "isAutotable")); this.addDict(model, "isAutotable", paramService.getParamBySecondOrganize("Dept", "isAutotable"));
......
package com.mortals.xhx.module.model.web; package com.mortals.xhx.module.model.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.web.BasePhpCRUDJsonMappingController; import com.mortals.framework.web.BasePhpCRUDJsonMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.model.model.ModelEntity; import com.mortals.xhx.module.model.model.ModelEntity;
import com.mortals.xhx.module.model.model.ModelQuery;
import com.mortals.xhx.module.model.service.ModelService; import com.mortals.xhx.module.model.service.ModelService;
import com.mortals.xhx.module.window.model.WindowMatterEntity;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.Map; import java.util.Map;
/** /**
...@@ -29,6 +34,17 @@ public class ModelController extends BasePhpCRUDJsonMappingController<ModelServi ...@@ -29,6 +34,17 @@ public class ModelController extends BasePhpCRUDJsonMappingController<ModelServi
super.setModuleDesc("模块"); super.setModuleDesc("模块");
} }
@Override
protected void doListBefore(ModelEntity query, Map<String, Object> model, Context context) throws AppException {
query.setOrderColList(new ArrayList<OrderCol>() {
{
add(new OrderCol("a.sort", OrderCol.ASCENDING));
}
});
super.doListBefore(query, model, context);
}
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
super.init(model, context); super.init(model, context);
......
package com.mortals.xhx.module.sms.web; package com.mortals.xhx.module.sms.web;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.framework.web.BasePhpCRUDJsonMappingController; import com.mortals.framework.web.BasePhpCRUDJsonMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.sms.model.SmsSetEntity; import com.mortals.xhx.module.sms.model.SmsSetEntity;
...@@ -19,7 +20,7 @@ import java.util.Map; ...@@ -19,7 +20,7 @@ import java.util.Map;
*/ */
@RestController @RestController
@RequestMapping("sms/set") @RequestMapping("sms/set")
public class SmsSetController extends BasePhpCRUDJsonMappingController<SmsSetService, SmsSetForm, SmsSetEntity, Long> { public class SmsSetController extends BaseCRUDJsonBodyMappingController<SmsSetService, SmsSetEntity, Long> {
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
......
...@@ -38,7 +38,7 @@ public class WindowMatterController extends BasePhpCRUDJsonMappingController<Win ...@@ -38,7 +38,7 @@ public class WindowMatterController extends BasePhpCRUDJsonMappingController<Win
protected void doListBefore(WindowMatterEntity query, Map<String, Object> model, Context context) throws AppException { protected void doListBefore(WindowMatterEntity query, Map<String, Object> model, Context context) throws AppException {
query.setOrderColList(new ArrayList<OrderCol>() { query.setOrderColList(new ArrayList<OrderCol>() {
{ {
add(new OrderCol("a.sort", OrderCol.DESCENDING)); add(new OrderCol("a.sort", OrderCol.ASCENDING));
} }
}); });
super.doListBefore(query, model, context); super.doListBefore(query, model, context);
......
...@@ -11,13 +11,13 @@ ...@@ -11,13 +11,13 @@
<appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder> <encoder>
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] [%.50c\(%L\)] - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%X{traceId}] [%thread] [%.50c\(%L\)] - %msg%n</pattern>
</encoder> </encoder>
</appender> </appender>
<!-- 文件输出策略--> <!-- 文件输出策略-->
<appender name="fileInfo" class="ch.qos.logback.core.rolling.RollingFileAppender"> <appender name="fileInfo" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder> <encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] [%.50c\(%L\)] - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%X{traceId}] [%thread] [%.50c\(%L\)] - %msg%n</pattern>
</encoder> </encoder>
<file>${logFilePath}/${springApplicationName:-default}/${serverPort:-default}-info.log</file> <file>${logFilePath}/${springApplicationName:-default}/${serverPort:-default}-info.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
<level>ERROR</level> <level>ERROR</level>
</filter> </filter>
<encoder> <encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] [%.50c\(%L\)] - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%X{traceId}] [%thread] [%.50c\(%L\)] - %msg%n</pattern>
</encoder> </encoder>
<file>${logFilePath}/${springApplicationName:-default}/${serverPort:-default}-error.log</file> <file>${logFilePath}/${springApplicationName:-default}/${serverPort:-default}-error.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
...@@ -56,12 +56,10 @@ ...@@ -56,12 +56,10 @@
<!-- level 用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,还有一个特俗值INHERITED或者同义词NULL,代表强制执行上级的级别。如果未设置此属性,那么当前logger将会继承上级的级别--> <!-- level 用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,还有一个特俗值INHERITED或者同义词NULL,代表强制执行上级的级别。如果未设置此属性,那么当前logger将会继承上级的级别-->
<!-- additivity 是否向上级logger传递打印信息。默认是true。false:表示只用当前logger的appender-ref。true:表示当前logger的appender-ref和rootLogger的appender-ref都有效。--> <!-- additivity 是否向上级logger传递打印信息。默认是true。false:表示只用当前logger的appender-ref。true:表示当前logger的appender-ref和rootLogger的appender-ref都有效。-->
<logger name="com.mortals" level="DEBUG" additivity="false"> <logger name="com.mortals" level="INFO" additivity="false">
<appender-ref ref="console"/> <appender-ref ref="console"/>
<appender-ref ref="fileInfo"/> <appender-ref ref="fileInfo"/>
<appender-ref ref="fileError"/> <appender-ref ref="fileError"/>
</logger> </logger>
<logger name="org.mybatis" level="INFO"/>
<logger name="org.springframework" level="WARN"/>
<logger name="org.apache" level="WARN"/>
</configuration> </configuration>
\ No newline at end of file
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
###短信设置列表 ###短信设置列表
POST {{baseUrl}}/sms/set/list POST {{baseUrl}}/sms/set/list
Content-Type: application/json Content-Type: application/json
Authorization: Bearer {{authToken}}
{ {
"sign":"b0t82r" , "sign":"b0t82r" ,
......
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