日志框架修复搜索问题

main
钱涛 1 year ago
parent 13117c90b1
commit 1a2957e977

@ -7,9 +7,9 @@ import com.engine.salary.elog.entity.dto.LoggerDetailContext;
import com.engine.salary.elog.enums.ElogConsts;
import com.engine.salary.elog.service.ILocalElogService;
import com.engine.salary.elog.util.ElogUtils;
import com.engine.salary.mapper.elog.LocalElogAopDaoMapper;
import com.engine.salary.elog.util.db.IdGenerator;
import com.engine.salary.elog.util.db.MapperProxyFactory;
import com.engine.salary.mapper.elog.LocalElogAopDaoMapper;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;

@ -16,16 +16,12 @@ import com.engine.salary.elog.entity.param.ELogGetLogParam;
import com.engine.salary.elog.entity.param.GetDetailChangesParam;
import com.engine.salary.elog.enums.ElogConsts;
import com.engine.salary.elog.service.ILoggerTableService;
import com.engine.salary.elog.util.ElogServiceUtils;
import com.engine.salary.elog.util.ElogSeviceSwitchUtils;
import com.engine.salary.elog.util.ElogSeviceUtils;
import com.engine.salary.elog.util.FieldNameMap;
import com.engine.salary.mapper.elog.LocalElogDaoMapper;
import com.engine.salary.elog.util.SalaryI18nUtil;
import com.engine.salary.elog.util.*;
import com.engine.salary.elog.util.db.MapperProxyFactory;
import com.engine.salary.elog.util.page.Column;
import com.engine.salary.elog.util.page.PageInfo;
import com.engine.salary.elog.util.page.SalaryPageUtil;
import com.engine.salary.mapper.elog.LocalElogDaoMapper;
import com.github.pagehelper.Page;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@ -415,7 +411,9 @@ public class LoggerTableService extends Service implements ILoggerTableService {
private String getSearchMapSql(String searchMap, String module, String function, List<ShowColumsDto> showColumns) {
StringBuffer sb = new StringBuffer();
Map map = JSON.parseObject(searchMap);
if (map == null) return sb.toString();
if (map == null) {
return sb.toString();
}
Iterator<Map.Entry<String, Object>> iterators = map.entrySet().iterator();
while (iterators.hasNext()) {
Map.Entry<String, Object> next = iterators.next();
@ -426,25 +424,25 @@ public class LoggerTableService extends Service implements ILoggerTableService {
if (date != null) {
if (StringUtils.isNotBlank(date.toString())) {
List dates = (List) date;
// if (dates != null && dates.size() == 2) {
// Object startDate = dates.get(0);
// Object endDate = dates.get(1);
// startDate = ElogSeviceUtils.checkValSql(startDate.toString());
// endDate = ElogSeviceUtils.checkValSql(endDate.toString());
// if (StringUtils.isNotBlank(startDate.toString()) && StringUtils.isNotBlank(endDate.toString())) {
// startDate = startDate.toString().replaceAll("'", "''");
// endDate = endDate.toString().replaceAll("'", "''");
// String dateRangeAfter = dateRangeTransformer.getDateRangeAfter(startDate.toString());
// String dateRangeBefore = dateRangeTransformer.getDateRangeBefore(endDate.toString());
// sb.append(" and log_date ").append(" between ").append(getSwithDatabaseDate(dateRangeAfter)).append(" and ").append(getSwithDatabaseDate(dateRangeBefore)).append(" ");
// } else if (StringUtils.isNotBlank(startDate.toString())) {
// String dateRangeAfter = dateRangeTransformer.getDateRangeAfter(startDate.toString());
// sb.append(" and log_date ").append(" >= ").append(getSwithDatabaseDate(dateRangeAfter)).append(" ");
// } else if (StringUtils.isNotBlank(endDate.toString())) {
// String dateRangeBefore = dateRangeTransformer.getDateRangeBefore(endDate.toString());
// sb.append(" and log_date ").append(" <= ").append(getSwithDatabaseDate(dateRangeBefore)).append(" ");
// }
// }
if (dates != null && dates.size() == 2) {
Object startDate = dates.get(0);
Object endDate = dates.get(1);
startDate = ElogSeviceUtils.checkValSql(startDate.toString());
endDate = ElogSeviceUtils.checkValSql(endDate.toString());
if (StringUtils.isNotBlank(startDate.toString()) && StringUtils.isNotBlank(endDate.toString())) {
startDate = startDate.toString().replaceAll("'", "''");
endDate = endDate.toString().replaceAll("'", "''");
String dateRangeAfter = startDate + " 00:00:00";
String dateRangeBefore = endDate + " 23:59:59";
sb.append(" and log_date ").append(" between ").append(getSwithDatabaseDate(dateRangeAfter)).append(" and ").append(getSwithDatabaseDate(dateRangeBefore)).append(" ");
} else if (StringUtils.isNotBlank(startDate.toString())) {
String dateRangeAfter = startDate + " 00:00:00";
sb.append(" and log_date ").append(" >= ").append(getSwithDatabaseDate(dateRangeAfter)).append(" ");
} else if (StringUtils.isNotBlank(endDate.toString())) {
String dateRangeBefore = endDate + " 23:59:59";
sb.append(" and log_date ").append(" <= ").append(getSwithDatabaseDate(dateRangeBefore)).append(" ");
}
}
}
}
} else if ("operator".equals(next.getKey())) {
@ -456,21 +454,9 @@ public class LoggerTableService extends Service implements ILoggerTableService {
if (StringUtils.isNumeric(operator.toString()) && operator.toString().length() > 15) {
sb.append(" and log_operator = ").append(operator.toString()).append(" ");
}
// else {
// List<HrmEmployee> likeNameHrmEmployeeList = hrmCommonEmployeeService.queryEmpsByCondidtion(
// new HrmOrgEmpCondition().setNameLikeList(Arrays.asList(operator.toString())).setTenantKey(getTenantKey()),
// HrmConditionResultType.BEAN.name());
// if (likeNameHrmEmployeeList != null && likeNameHrmEmployeeList.size() > 0) {
// List<Long> ids = likeNameHrmEmployeeList.stream().map(HrmEmployee::getId).collect(Collectors.toList());
// if (ids != null && ids.size() > 0) {
// sb.append(" and ( operatorname like '%").append(operator.toString()).append("%' ")
// .append(" or log_operator in (").append(StringUtils.join(ids, ",")).append(")) ");
// }
// } else {
// sb.append(" and operatorname like '%").append(operator.toString()).append("%' ");
// }
// }
else {
sb.append(" and operatorname like '%").append(operator.toString()).append("%' ");
}
}
}
} else if ("modulename".equals(next.getKey())) {
@ -604,17 +590,17 @@ public class LoggerTableService extends Service implements ILoggerTableService {
// return false;
// }
// private String getSwithDatabaseDate(String date) {
// if (ElogConsts.ORACLE.equals(DatabaseUtil.getDatabaseId())) {
// return " to_date('" + date + "','yyyy-mm-dd hh24:mi:ss') ";
// } else if (ElogConsts.POSTGRESQL.equals(DatabaseUtil.getDatabaseId())) {
// return " to_timestamp('" + date + "', 'YYYY-MM-DD HH24:MI:SS') ";
// } else if (ElogConsts.SQLSERVER.equals(DatabaseUtil.getDatabaseId())) {
// return " convert(nvarchar(19),'" + date + "',120) ";
// } else {
// return " DATE_FORMAT('" + date + "','%Y-%m-%d %H:%i:%s') ";
// }
// }
private String getSwithDatabaseDate(String date) {
if (ElogConsts.ORACLE.equals(databaseId)) {
return " to_date('" + date + "','yyyy-mm-dd hh24:mi:ss') ";
} else if (ElogConsts.POSTGRESQL.equals(databaseId)) {
return " to_timestamp('" + date + "', 'YYYY-MM-DD HH24:MI:SS') ";
} else if (ElogConsts.SQLSERVER.equals(databaseId)) {
return " convert(nvarchar(19),'" + date + "',120) ";
} else {
return " DATE_FORMAT('" + date + "','%Y-%m-%d %H:%i:%s') ";
}
}
public String matchOperatetype(String str) {
// if (ElogSeviceUtils.currentLanguage() != 8) {

Loading…
Cancel
Save