优化字典排序问题

v1.4.1
Parker 5 years ago
parent a67894712a
commit 4977b177c2

@ -15,6 +15,7 @@
*/ */
package org.opsli.core.utils; package org.opsli.core.utils;
import cn.hutool.core.collection.ListUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -130,6 +131,7 @@ public class DictUtil {
dictWrapperModel.setTypeCode(model.getTypeCode()); dictWrapperModel.setTypeCode(model.getTypeCode());
dictWrapperModel.setDictName(model.getDictName()); dictWrapperModel.setDictName(model.getDictName());
dictWrapperModel.setDictValue(model.getDictValue()); dictWrapperModel.setDictValue(model.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperModel.setModel(model); dictWrapperModel.setModel(model);
// 保存至缓存 // 保存至缓存
DictUtil.put(dictWrapperModel); DictUtil.put(dictWrapperModel);
@ -217,6 +219,7 @@ public class DictUtil {
dictWrapperModel.setTypeCode(model.getTypeCode()); dictWrapperModel.setTypeCode(model.getTypeCode());
dictWrapperModel.setDictName(model.getDictName()); dictWrapperModel.setDictName(model.getDictName());
dictWrapperModel.setDictValue(model.getDictValue()); dictWrapperModel.setDictValue(model.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperModel.setModel(model); dictWrapperModel.setModel(model);
// 保存至缓存 // 保存至缓存
DictUtil.put(dictWrapperModel); DictUtil.put(dictWrapperModel);
@ -270,10 +273,12 @@ public class DictUtil {
dictWrapperModel.setTypeCode(typeCode); dictWrapperModel.setTypeCode(typeCode);
dictWrapperModel.setDictName(model.getDictName()); dictWrapperModel.setDictName(model.getDictName());
dictWrapperModel.setDictValue(model.getDictValue()); dictWrapperModel.setDictValue(model.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperModels.add(dictWrapperModel); dictWrapperModels.add(dictWrapperModel);
} }
if(!dictWrapperModels.isEmpty()){ if(!dictWrapperModels.isEmpty()){
return dictWrapperModels; // 排序
return sortDictWrappers(dictWrapperModels);
} }
// 防止缓存穿透判断 // 防止缓存穿透判断
@ -315,10 +320,12 @@ public class DictUtil {
dictWrapperModel.setTypeCode(typeCode); dictWrapperModel.setTypeCode(typeCode);
dictWrapperModel.setDictName(model.getDictName()); dictWrapperModel.setDictName(model.getDictName());
dictWrapperModel.setDictValue(model.getDictValue()); dictWrapperModel.setDictValue(model.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperModels.add(dictWrapperModel); dictWrapperModels.add(dictWrapperModel);
} }
if(!dictWrapperModels.isEmpty()){ if(!dictWrapperModels.isEmpty()){
return dictWrapperModels; // 排序
return sortDictWrappers(dictWrapperModels);
} }
@ -331,6 +338,7 @@ public class DictUtil {
dictWrapperModel.setTypeCode(model.getTypeCode()); dictWrapperModel.setTypeCode(model.getTypeCode());
dictWrapperModel.setDictName(model.getDictName()); dictWrapperModel.setDictName(model.getDictName());
dictWrapperModel.setDictValue(model.getDictValue()); dictWrapperModel.setDictValue(model.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperModel.setModel(model); dictWrapperModel.setModel(model);
dictWrapperModels.add(dictWrapperModel); dictWrapperModels.add(dictWrapperModel);
// 保存至缓存 // 保存至缓存
@ -358,6 +366,22 @@ public class DictUtil {
log.error(e.getMessage(),e); log.error(e.getMessage(),e);
dictWrapperModels = Lists.newArrayList(); dictWrapperModels = Lists.newArrayList();
} }
// 排序
return sortDictWrappers(dictWrapperModels);
}
/**
*
* @param dictWrapperModels
* @return
*/
private static List<DictWrapper> sortDictWrappers(List<DictWrapper> dictWrapperModels) {
ListUtil.sort(dictWrapperModels, (o1, o2) -> {
int oInt1 = o1.getDictValue()==null?Integer.MAX_VALUE:o1.getDictSort();
int oInt2 = o2.getDictValue()==null?Integer.MAX_VALUE:o2.getDictSort();
return Integer.compare(oInt1, oInt2);
});
return dictWrapperModels; return dictWrapperModels;
} }

@ -91,6 +91,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode()); dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode());
dictWrapperModel.setDictName(dictDetailModel.getDictName()); dictWrapperModel.setDictName(dictDetailModel.getDictName());
dictWrapperModel.setDictValue(dictDetailModel.getDictValue()); dictWrapperModel.setDictValue(dictDetailModel.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperList.add(dictWrapperModel); dictWrapperList.add(dictWrapperModel);
} }
// 删除缓存 // 删除缓存
@ -135,6 +136,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode()); dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode());
dictWrapperModel.setDictName(dictDetailModel.getDictName()); dictWrapperModel.setDictName(dictDetailModel.getDictName());
dictWrapperModel.setDictValue(dictDetailModel.getDictValue()); dictWrapperModel.setDictValue(dictDetailModel.getDictValue());
dictWrapperModel.setDictSort(model.getSortNo());
dictWrapperList.add(dictWrapperModel); dictWrapperList.add(dictWrapperModel);
} }
// 删除缓存 // 删除缓存
@ -168,6 +170,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode()); dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode());
dictWrapperModel.setDictName(dictDetailModel.getDictName()); dictWrapperModel.setDictName(dictDetailModel.getDictName());
dictWrapperModel.setDictValue(dictDetailModel.getDictValue()); dictWrapperModel.setDictValue(dictDetailModel.getDictValue());
dictWrapperModel.setDictSort(dictDetailModel.getSortNo());
dictWrapperList.add(dictWrapperModel); dictWrapperList.add(dictWrapperModel);
} }
// 删除缓存 // 删除缓存
@ -199,6 +202,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode()); dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode());
dictWrapperModel.setDictName(dictDetailModel.getDictName()); dictWrapperModel.setDictName(dictDetailModel.getDictName());
dictWrapperModel.setDictValue(dictDetailModel.getDictValue()); dictWrapperModel.setDictValue(dictDetailModel.getDictValue());
dictWrapperModel.setDictSort(dictDetailModel.getSortNo());
dictWrapperList.add(dictWrapperModel); dictWrapperList.add(dictWrapperModel);
} }
// 删除缓存 // 删除缓存
@ -236,6 +240,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(sysDictDetail.getTypeCode()); dictWrapperModel.setTypeCode(sysDictDetail.getTypeCode());
dictWrapperModel.setDictName(sysDictDetail.getDictName()); dictWrapperModel.setDictName(sysDictDetail.getDictName());
dictWrapperModel.setDictValue(sysDictDetail.getDictValue()); dictWrapperModel.setDictValue(sysDictDetail.getDictValue());
dictWrapperModel.setDictSort(sysDictDetail.getSortNo());
dictWrapperModels.add(dictWrapperModel); dictWrapperModels.add(dictWrapperModel);
@ -288,6 +293,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(sysDictDetail.getTypeCode()); dictWrapperModel.setTypeCode(sysDictDetail.getTypeCode());
dictWrapperModel.setDictName(sysDictDetail.getDictName()); dictWrapperModel.setDictName(sysDictDetail.getDictName());
dictWrapperModel.setDictValue(sysDictDetail.getDictValue()); dictWrapperModel.setDictValue(sysDictDetail.getDictValue());
dictWrapperModel.setDictSort(sysDictDetail.getSortNo());
dictWrapperModels.add(dictWrapperModel); dictWrapperModels.add(dictWrapperModel);
@ -336,6 +342,7 @@ public class DictDetailServiceImpl extends CrudServiceImpl<DictDetailMapper, Sys
dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode()); dictWrapperModel.setTypeCode(dictDetailModel.getTypeCode());
dictWrapperModel.setDictName(dictDetailModel.getDictName()); dictWrapperModel.setDictName(dictDetailModel.getDictName());
dictWrapperModel.setDictValue(dictDetailModel.getDictValue()); dictWrapperModel.setDictValue(dictDetailModel.getDictValue());
dictWrapperModel.setDictSort(dictDetailModel.getSortNo());
dictWrapperList.add(dictWrapperModel); dictWrapperList.add(dictWrapperModel);
} }
// 删除缓存 // 删除缓存

Loading…
Cancel
Save