package com.qianwen.smartman.modules.system.handler.field.provider;
|
|
import cn.hutool.core.util.StrUtil;
|
import com.baomidou.mybatisplus.annotation.DbType;
|
import org.springframework.stereotype.Component;
|
|
@Component
|
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/system/handler/field/provider/OracleSqlParseProvider.class */
|
public class OracleSqlParseProvider extends AbstractSqlParseProvider {
|
@Override // org.springblade.modules.system.handler.field.provider.AbstractSqlParseProvider
|
public Boolean support(DbType dbType) {
|
return Boolean.valueOf(DbType.ORACLE.equals(dbType));
|
}
|
|
@Override // org.springblade.modules.system.handler.field.provider.AbstractSqlParseProvider
|
protected String equalsTemplate() {
|
return "JSON_VALUE({}, '$.{}') = {} ";
|
}
|
|
@Override // org.springblade.modules.system.handler.field.provider.AbstractSqlParseProvider
|
protected String likeTemplate() {
|
return "JSON_VALUE({}, '$.{}') LIKE '%{}%' ";
|
}
|
|
@Override // org.springblade.modules.system.handler.field.provider.AbstractSqlParseProvider
|
protected String dateTemplate() {
|
return unixTimestamp("JSON_VALUE({}, '$.{}')") + " BETWEEN " + unixTimestamp("{}") + "AND " + unixTimestamp("{}");
|
}
|
|
private String unixTimestamp(String value) {
|
return StrUtil.format("(to_date({},'yyyy-mm-dd hh24:mi:ss')-to_date('1970-01-01 08:00:00', 'yyyy-mm-dd hh24:mi:ss')) * 86400000", new Object[]{value});
|
}
|
}
|