This commit is contained in:
Shaun Chyxion 2017-07-04 22:33:14 +08:00
parent 3136e1a364
commit 13a69caa4c
8 changed files with 29 additions and 30 deletions

View File

@ -14,7 +14,7 @@ abstract class AbstractSearchProcessor implements SearchProcessor {
*/
@Override
public final boolean accept(SearchProcessArgs args) {
return args.getCondition().getType().equals(type());
return args.getCriterion().getType().equals(type());
}
/**
@ -37,9 +37,9 @@ abstract class AbstractSearchProcessor implements SearchProcessor {
abstract CriterionType type();
void processInList(SearchProcessArgs args, boolean in) {
args.append(args.getCondition().getCol() +
args.append(args.getCol() +
(in ? " in (" : " not in ("));
Collection<?> values = args.getCondition().getValues();
Collection<?> values = args.getCriterion().getValues();
int valuesSize = values.size();
int i = 0;
for (Object value : values) {

View File

@ -22,7 +22,7 @@ class AndSearchProcessor extends AbstractSearchProcessor {
*/
@Override
void doProcess(SearchProcessArgs args) {
final Search search = args.getCondition().getSearch();
final Search search = args.getCriterion().getSearch();
if (StringUtils.isBlank(search.table())) {
search.table(args.getTable());
}

View File

@ -22,7 +22,7 @@ class BetweenSearchProcessor extends AbstractSearchProcessor {
*/
@Override
void doProcess(SearchProcessArgs args) {
Iterator<?> valuesIt = args.getCondition().getValues().iterator();
Iterator<?> valuesIt = args.getCriterion().getValues().iterator();
args.append(args.getCol() + " between ")
.addValue(valuesIt.next()).append(" and ")
.addValue(valuesIt.next());

View File

@ -20,6 +20,6 @@ class IsNotNullSearchProcessor extends AbstractSearchProcessor {
*/
@Override
void doProcess(SearchProcessArgs args) {
args.append(args.getCondition().getCol() + " is not null");
args.append(args.getCol() + " is not null");
}
}

View File

@ -14,7 +14,7 @@ class OrSearchProcessor implements SearchProcessor {
*/
@Override
public boolean accept(SearchProcessArgs args) {
return CriterionType.OR.equals(args.getCondition().getType());
return CriterionType.OR.equals(args.getCriterion().getType());
}
/**
@ -28,7 +28,7 @@ class OrSearchProcessor implements SearchProcessor {
else {
args.setHasPrevOrCol(true);
}
final Search search = args.getCondition().getSearch();
final Search search = args.getCriterion().getSearch();
if (StringUtils.isBlank(search.table())) {
search.table(args.getTable());
}

View File

@ -26,7 +26,7 @@ public class Search implements Serializable {
/**
* extended data
*/
private final Map<String, Object> ext =
private final Map<String, Object> attrs =
new HashMap<String, Object>();
private static final List<SearchProcessor> PROCESSORS;
@ -408,7 +408,15 @@ public class Search implements Serializable {
* @return orders
*/
public Map<String, String> orders() {
return orders;
final Map<String, String> ordersRtn =
new LinkedHashMap<String, String>(orders.size());
boolean hasTable = StringUtils.isNotBlank(table);
for (final Map.Entry<String, String> order : orders.entrySet()) {
final String col = order.getKey();
ordersRtn.put(hasTable && !col.contains(".") ?
table + "." + col : col, order.getValue());
}
return ordersRtn;
}
/**
@ -448,24 +456,24 @@ public class Search implements Serializable {
}
/**
* get ext data
* get attrs data
* @param name name
* @param <T> data type
* @return data
*/
@SuppressWarnings("unchecked")
public <T> T getExt(String name) {
return (T) ext.get(name);
public <T> T getAttr(String name) {
return (T) attrs.get(name);
}
/**
* set ext data
* set attrs data
* @param name name
* @param value value
* @return this
*/
public Search setExt(String name, Object value) {
ext.put(name, value);
public Search setAttr(String name, Object value) {
attrs.put(name, value);
return this;
}
@ -477,7 +485,7 @@ public class Search implements Serializable {
* @param direction direction
* @return this
*/
Search order(String col, String direction) {
Search order(final String col, final String direction) {
Assert.hasText(col, "Order Column Could Not Be Blank");
orders.put(col, direction);
return this;
@ -495,7 +503,7 @@ public class Search implements Serializable {
List<Object> result = new LinkedList<Object>();
final SearchProcessArgs args = new SearchProcessArgs(table, result);
for (final Criterion criterion : criteria) {
args.setCondition(criterion);
args.setCriterion(criterion);
for (final SearchProcessor processor : PROCESSORS) {
if (processor.accept(args)) {
processor.process(args);

View File

@ -19,7 +19,7 @@ public class SearchProcessArgs {
@NonNull
private final List<Object> result;
@Setter
private Criterion condition;
private Criterion criterion;
@Setter
private boolean hasPrevCol;
@Setter
@ -36,13 +36,13 @@ public class SearchProcessArgs {
}
public String getCol() {
String col = condition.getCol();
String col = criterion.getCol();
return StringUtils.isNotBlank(table)
&& !col.contains(".") ?
table + "." + col : col;
}
public <T> T getValue() {
return condition.getValue();
return criterion.getValue();
}
}

View File

@ -146,15 +146,6 @@ public class TigonWebMvcSpringBootConfiguration extends WebMvcConfigurerAdapter
super.configureMessageConverters(converters);
}
/**
* {@inheritDoc}
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/assets/**")
.addResourceLocations("/assets/", "classpath:webapp/assets/");
}
@Bean
public LocaleResolver localeResolver() {
return new CookieLocaleResolver() {