|
@@ -45,14 +45,16 @@ func GetDictPageIndex(condition string, pars []interface{}, pageIndex, pageSize,
|
|
|
fields := "ID, CODE, NAME, UNIT, FREQUENCY, DESCRIPTION, TABLE_NAME, SOURCE_TYPE, SOURCE_CODE, SOURCE_DESCRIPTION, INDUSTRY, TYPE, COMMODITY, SJB_ID, USER_ID, ROWS_COUNT, DATE_FIRST, DATE_LAST, TIME_LAST_UPDATE, TIME_LAST_REQUEST, PRIORITY, STATUS, SHORT_NAME, UPDATE_DESCRIPTION, FORECAST_FLAG, MANUAL_FLAG, VARIABLE_FLAG, MARKETDATA_FLAG, CREATE_USER, CREATE_TIME, UPDATE_USER, UPDATE_TIME"
|
|
|
|
|
|
// 排序
|
|
|
- order := ``
|
|
|
+ order := `ORDER BY TIME_LAST_UPDATE DESC`
|
|
|
sortFMap := map[int]string{1: "DATE_FIRST", 2: "DATE_LAST", 3: "TIME_LAST_UPDATE"}
|
|
|
sortRMap := map[int]string{1: "ASC", 2: "DESC"}
|
|
|
if sortFMap[sortField] != "" && sortRMap[sortRule] != "" {
|
|
|
order = fmt.Sprintf("ORDER BY %s %s", sortFMap[sortField], sortRMap[sortRule])
|
|
|
}
|
|
|
|
|
|
- sqlBase := fmt.Sprintf(`SELECT %s, no FROM (SELECT rownum no, a.* FROM %s a WHERE %s %s) WHERE no BETWEEN %d AND %d`, fields, IndexTableName, condition, order, (pageIndex-1)*pageSize+1, pageIndex*pageSize)
|
|
|
+ //sqlBase := fmt.Sprintf(`SELECT %s, no FROM (SELECT rownum no, a.* FROM %s a WHERE %s %s) WHERE no BETWEEN %d AND %d`, fields, IndexTableName, condition, order, (pageIndex-1)*pageSize+1, pageIndex*pageSize)
|
|
|
+ sqlBase := fmt.Sprintf(`SELECT * FROM (SELECT rownum no, tmp.* FROM (SELECT %s FROM %s WHERE %s %s) tmp) WHERE no BETWEEN %d AND %d`, fields, IndexTableName, condition, order, (pageIndex-1)*pageSize+1, pageIndex*pageSize)
|
|
|
+ global.LOG.Info("GetDictPageIndex SQL: ", sqlBase)
|
|
|
dictIndexList, err = getDictIndex(sqlBase, pars)
|
|
|
if err != nil {
|
|
|
err = fmt.Errorf("查询指标信息失败 %s", err)
|