【fix sonar】MybatisInterceptor文件
This commit is contained in:
+57
-45
@@ -42,8 +42,65 @@ public class MybatisInterceptor implements Interceptor {
|
|||||||
if (SqlCommandType.INSERT == sqlCommandType) {
|
if (SqlCommandType.INSERT == sqlCommandType) {
|
||||||
LoginUser sysUser = this.getLoginUser();
|
LoginUser sysUser = this.getLoginUser();
|
||||||
Field[] fields = oConvertUtils.getAllFields(parameter);
|
Field[] fields = oConvertUtils.getAllFields(parameter);
|
||||||
|
setInsert(parameter, sysUser, fields);
|
||||||
|
}
|
||||||
|
if (SqlCommandType.UPDATE == sqlCommandType) {
|
||||||
|
LoginUser sysUser = this.getLoginUser();
|
||||||
|
Field[] fields;
|
||||||
|
if (parameter instanceof ParamMap) {
|
||||||
|
ParamMap<?> p = (ParamMap<?>) parameter;
|
||||||
|
//update-begin-author:scott date:20190729 for:批量更新报错issues/IZA3Q--
|
||||||
|
if (p.containsKey("et")) {
|
||||||
|
parameter = p.get("et");
|
||||||
|
} else {
|
||||||
|
parameter = p.get("param1");
|
||||||
|
}
|
||||||
|
//update-end-author:scott date:20190729 for:批量更新报错issues/IZA3Q-
|
||||||
|
|
||||||
|
//update-begin-author:scott date:20190729 for:更新指定字段时报错 issues/#516-
|
||||||
|
if (parameter == null) {
|
||||||
|
return invocation.proceed();
|
||||||
|
}
|
||||||
|
//update-end-author:scott date:20190729 for:更新指定字段时报错 issues/#516-
|
||||||
|
|
||||||
|
fields = oConvertUtils.getAllFields(parameter);
|
||||||
|
} else {
|
||||||
|
fields = oConvertUtils.getAllFields(parameter);
|
||||||
|
}
|
||||||
|
|
||||||
|
setUpdateField(parameter, sysUser, fields);
|
||||||
|
}
|
||||||
|
return invocation.proceed();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setUpdateField(Object parameter, LoginUser sysUser, Field[] fields) {
|
||||||
for (Field field : fields) {
|
for (Field field : fields) {
|
||||||
log.debug("------field.name------" + field.getName());
|
log.debug("------field.name------" + field.getName());
|
||||||
|
try {
|
||||||
|
if ("updateBy".equals(field.getName()) && sysUser != null) {
|
||||||
|
//获取登录用户信息
|
||||||
|
// 登录账号
|
||||||
|
ReflectionUtils.makeAccessible(field);
|
||||||
|
ReflectionUtils.setField(field,parameter,sysUser.getUsername());
|
||||||
|
}
|
||||||
|
if ("updateTime".equals(field.getName())) {
|
||||||
|
ReflectionUtils.makeAccessible(field);
|
||||||
|
ReflectionUtils.setField(field,parameter,new Date());
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("异常", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setInsert(Object parameter, LoginUser sysUser, Field[] fields) {
|
||||||
|
for (Field field : fields) {
|
||||||
|
log.debug("------field.name------" + field.getName());
|
||||||
|
setInsertField(parameter, sysUser, field);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setInsertField(Object parameter, LoginUser sysUser, Field field) {
|
||||||
try {
|
try {
|
||||||
if ("createBy".equals(field.getName()) && sysUser != null) {
|
if ("createBy".equals(field.getName()) && sysUser != null) {
|
||||||
ReflectionUtils.makeAccessible(field);
|
ReflectionUtils.makeAccessible(field);
|
||||||
@@ -77,51 +134,6 @@ public class MybatisInterceptor implements Interceptor {
|
|||||||
log.error("异常", e);
|
log.error("异常", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if (SqlCommandType.UPDATE == sqlCommandType) {
|
|
||||||
LoginUser sysUser = this.getLoginUser();
|
|
||||||
Field[] fields;
|
|
||||||
if (parameter instanceof ParamMap) {
|
|
||||||
ParamMap<?> p = (ParamMap<?>) parameter;
|
|
||||||
//update-begin-author:scott date:20190729 for:批量更新报错issues/IZA3Q--
|
|
||||||
if (p.containsKey("et")) {
|
|
||||||
parameter = p.get("et");
|
|
||||||
} else {
|
|
||||||
parameter = p.get("param1");
|
|
||||||
}
|
|
||||||
//update-end-author:scott date:20190729 for:批量更新报错issues/IZA3Q-
|
|
||||||
|
|
||||||
//update-begin-author:scott date:20190729 for:更新指定字段时报错 issues/#516-
|
|
||||||
if (parameter == null) {
|
|
||||||
return invocation.proceed();
|
|
||||||
}
|
|
||||||
//update-end-author:scott date:20190729 for:更新指定字段时报错 issues/#516-
|
|
||||||
|
|
||||||
fields = oConvertUtils.getAllFields(parameter);
|
|
||||||
} else {
|
|
||||||
fields = oConvertUtils.getAllFields(parameter);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (Field field : fields) {
|
|
||||||
log.debug("------field.name------" + field.getName());
|
|
||||||
try {
|
|
||||||
if ("updateBy".equals(field.getName()) && sysUser != null) {
|
|
||||||
//获取登录用户信息
|
|
||||||
// 登录账号
|
|
||||||
ReflectionUtils.makeAccessible(field);
|
|
||||||
ReflectionUtils.setField(field,parameter,sysUser.getUsername());
|
|
||||||
}
|
|
||||||
if ("updateTime".equals(field.getName())) {
|
|
||||||
ReflectionUtils.makeAccessible(field);
|
|
||||||
ReflectionUtils.setField(field,parameter,new Date());
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("异常", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return invocation.proceed();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object plugin(Object target) {
|
public Object plugin(Object target) {
|
||||||
|
|||||||
Reference in New Issue
Block a user