You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
weaver-hrm-organization/src/com/engine/organization/util/OrganizationWrapper.java

67 lines
2.4 KiB
Java

3 years ago
package com.engine.organization.util;
import com.alibaba.fastjson.JSON;
3 years ago
import com.engine.core.impl.Service;
import com.engine.organization.entity.LoggerContext;
import com.engine.organization.entity.logview.bo.FieldBaseEquator;
import org.apache.commons.collections.CollectionUtils;
3 years ago
import java.lang.reflect.Method;
import java.util.List;
3 years ago
/**
* @author:dxfeng
* @createTime: 2022/07/04
* @version: 1.0
*/
public class OrganizationWrapper extends Service {
/**
*
*
* @param clazz
* @param value
* @param params
* @param before
* @param after
3 years ago
*/
public void writeOperateLog(Class clazz, String value, String params,
Object before, Object after) {
3 years ago
Method method = clazz.getEnclosingMethod();
LoggerContext loggerContext;
if (null != before) {
if (null != after) {
FieldBaseEquator fieldBaseEquator = new FieldBaseEquator();
List<String> diffFields = fieldBaseEquator.getDiffFields(before, after);
if (CollectionUtils.isEmpty(diffFields)) {
return;
}
StringBuilder message = new StringBuilder();
for (int i = 0; i < diffFields.size(); i++) {
message.append(i + 1).append(".").append(diffFields.get(i)).append("<br/>");
}
loggerContext = LoggerContext.builder().operatorId(user.getUID()).value(value).clientIp(user.getLoginip()).paramsStr(params).operatorName(user.getLastname()).message(message.toString()).build();
} else {
loggerContext = LoggerContext.builder().operatorId(user.getUID()).value(value).clientIp(user.getLoginip()).paramsStr(params).operatorName(user.getLastname()).message(JSON.toJSONString(before)).build();
}
LogAspect logAspect = new LogAspect(clazz, method, loggerContext);
logAspect.start();
}
}
/**
* @param clazz
* @param value
* @param params
* @param message
*/
public void writeOperateLog(Class clazz, String value, String params,
String message) {
writeOperateLog(clazz, value, params, message, null);
3 years ago
}
}