|  |  |  | 
|---|
|  |  |  | import com.zy.acs.manager.manager.service.TaskStsService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Arrays; | 
|---|
|  |  |  | import java.util.EnumMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  | import java.util.stream.Collectors; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public enum TaskStsType implements DataFieldSortFunc { | 
|---|
|  |  |  | 
|---|
|  |  |  | this.dataSort = dataSort; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private static final Map<TaskStsType, Long> cache = new EnumMap<>(TaskStsType.class); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public long val() { | 
|---|
|  |  |  | TaskStsService service = SpringUtils.getBean(TaskStsService.class); | 
|---|
|  |  |  | TaskSts taskSts = service.selectByUuid(this.toString()); | 
|---|
|  |  |  | if (taskSts == null) { | 
|---|
|  |  |  | throw new BusinessException("TaskStsType Error!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return taskSts.getId(); | 
|---|
|  |  |  | return cache.computeIfAbsent(this, key -> { | 
|---|
|  |  |  | TaskStsService service = SpringUtils.getBean(TaskStsService.class); | 
|---|
|  |  |  | TaskSts taskSts = service.selectByUuid(key.toString()); | 
|---|
|  |  |  | if (taskSts == null) { | 
|---|
|  |  |  | throw new BusinessException("TaskStsType Error for " + key); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return taskSts.getId(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<String> getDataFieldSort() { | 
|---|
|  |  |  | return Arrays.stream(BusStsType.values()) | 
|---|
|  |  |  | return Arrays.stream(TaskStsType.values()) | 
|---|
|  |  |  | .sorted((e1, e2) -> Integer.compare(e1.dataSort, e2.dataSort)) | 
|---|
|  |  |  | .map(Enum::name) | 
|---|
|  |  |  | .collect(Collectors.toList()); | 
|---|