Commit ae438f60 authored by zw's avatar zw

1

parent 8d698605
...@@ -139,25 +139,25 @@ class SquareSortService ...@@ -139,25 +139,25 @@ class SquareSortService
$index_max = $page_no * $page_size; $index_max = $page_no * $page_size;
$result = []; $result = [];
if ($total <= $page_size && $page_no == 1) { if ($total <= $page_size && $page_no == 1) {
$cream_list = $this->redis->zRevRange(self::SORT_KEY_CREAM . $site_id, 0, -1, true); $cream_list = $this->redis->zRange(self::SORT_KEY_CREAM . $site_id, 0, -1, true);
$list = $this->redis->zRevRange(self::SORT_KEY . $site_id, 0, -1, true); $list = $this->redis->zRange(self::SORT_KEY . $site_id, 0, -1, true);
$result = $cream_list + $list; $result = $cream_list + $list;
} elseif ($index_min <= $cream_num && $index_max <= $cream_num) { } elseif ($index_min <= $cream_num && $index_max <= $cream_num) {
$index_end = $cream_num - $index_min; $index_end = $cream_num - $index_min;
$index_start = $index_end - $page_size; $index_start = $index_end - $page_size;
$cream_list = $this->redis->zRevRange(self::SORT_KEY_CREAM . $site_id, $index_start, $index_end, true); $cream_list = $this->redis->zRange(self::SORT_KEY_CREAM . $site_id, $index_start, $index_end, true);
$result = $cream_list; $result = $cream_list;
} elseif ($index_min <= $cream_num && $index_max > $cream_num) { } elseif ($index_min <= $cream_num && $index_max > $cream_num) {
$residue = $index_max - $cream_num; $residue = $index_max - $cream_num;
$index_end = $total; $index_end = $total;
$index_start = $total - ($page_size - $residue); $index_start = $total - ($page_size - $residue);
$cream_list = $this->redis->zRevRange(self::SORT_KEY_CREAM . $site_id, 0, $residue, true); $cream_list = $this->redis->zRange(self::SORT_KEY_CREAM . $site_id, 0, $residue, true);
$list = $this->redis->zRevRange(self::SORT_KEY . $site_id, $index_start, $index_end, true); $list = $this->redis->zRange(self::SORT_KEY . $site_id, $index_start, $index_end, true);
$result = $cream_list + $list; $result = $cream_list + $list;
} elseif ($index_min > $cream_num) { } elseif ($index_min > $cream_num) {
$index_end = $total - ($index_min - $cream_num); $index_end = $total - ($index_min - $cream_num);
$index_start = $index_end - $page_size; $index_start = $index_end - $page_size;
$list = $this->redis->zRevRange(self::SORT_KEY . $site_id, $index_start, $index_end, true); $list = $this->redis->zRange(self::SORT_KEY . $site_id, $index_start, $index_end, true);
$result = $list; $result = $list;
} }
return $result; return $result;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment