|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zy.acs.framework.common.Cools; | 
|---|
|  |  |  | import com.zy.acs.manager.manager.enums.BusStsType; | 
|---|
|  |  |  | import com.zy.acs.manager.manager.enums.TaskStsType; | 
|---|
|  |  |  | import com.zy.acs.manager.manager.service.BusStsService; | 
|---|
|  |  |  | import com.zy.acs.manager.manager.service.TaskStsService; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private BusStsService busStsService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private TaskStsService taskStsService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PostConstruct | 
|---|
|  |  |  | public void init() { | 
|---|
|  |  |  | set(BusStsType.class, field -> busStsService.selectByUuid(field).getId()); | 
|---|
|  |  |  | set(TaskStsType.class, field -> taskStsService.selectByUuid(field).getId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void set(Class<? extends DataFieldSortFunc> cls, SelectSupport support) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public String getSql(Class<? extends DataFieldSortFunc> cls, String fieldName) { | 
|---|
|  |  |  | public String getOrderBySql(Class<? extends DataFieldSortFunc> cls, String fieldName) { | 
|---|
|  |  |  | return getOrderBySql(cls, fieldName, "create_time"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public String getOrderBySql(Class<? extends DataFieldSortFunc> cls, String fieldName, String timeField) { | 
|---|
|  |  |  | String sql = map.get(cls); | 
|---|
|  |  |  | if (!Cools.isEmpty(sql)) { | 
|---|
|  |  |  | return "ORDER BY FIELD(" + fieldName + ", " + sql + ") ASC, create_time DESC"; | 
|---|
|  |  |  | return "ORDER BY FIELD(" + fieldName + ", " + sql + ") ASC, " + timeField + " DESC"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|