diff --git a/0005-fix-token-refresh-issue.patch b/0005-fix-token-refresh-issue.patch
new file mode 100644
index 0000000..4703b18
--- /dev/null
+++ b/0005-fix-token-refresh-issue.patch
@@ -0,0 +1,157 @@
+From 6d60ace02d2a80c5ecc200e847963780cbc861cc Mon Sep 17 00:00:00 2001
+From: wkl505997900 <2313665567@qq.com>
+Date: Fri, 9 Jun 2023 17:50:01 +0800
+Subject: [PATCH] fix tokenissue
+
+---
+ src/vendor/ant-design-pro/utils/request.js | 64 +++++++++++++++++-----
+ src/vendor/ant-design-pro/utils/util.js | 16 ++++++
+ src/views/leaks/LeakTaskList.vue | 3 +-
+ src/views/leaks/components/HostTable.vue | 3 +-
+ 4 files changed, 69 insertions(+), 17 deletions(-)
+
+diff --git a/src/vendor/ant-design-pro/utils/request.js b/src/vendor/ant-design-pro/utils/request.js
+index 53d4f3b..bccd36c 100644
+--- a/src/vendor/ant-design-pro/utils/request.js
++++ b/src/vendor/ant-design-pro/utils/request.js
+@@ -7,6 +7,24 @@ import store from '@/store';
+ import notification from 'ant-design-vue/es/notification';
+ import { VueAxios } from './axios';
+
++// 全局声明缓存变量
++var timestamp1;
++var isRefreshing = false;
++
++let subscribers = []
++// 刷新 token 后, 将缓存的接口重新请求一次
++function onAccessTokenFetched(newToken) {
++ subscribers.forEach((callback) => {
++ callback(newToken)
++ })
++ // 清空缓存接口
++ subscribers = []
++}
++// 添加缓存接口
++function addSubscriber(callback) {
++ subscribers.push(callback)
++}
++
+ const errorMsgs = {
+ noResponse: 'request failed, no response'
+ };
+@@ -77,25 +95,41 @@ request.interceptors.response.use(response => {
+ let err = null;
+ switch (code) {
+ case '1201':
+- notification.error({
+- message: '用户校验失败',
+- description: response.data.message
+- });
+- store.dispatch('Logout').then(() => {
++ if (!timestamp1 || timestamp1 + 1632252465 < new Date().getTime()) {
++ timestamp1 = new Date().getTime();
++ notification.error({
++ message: '用户校验失败',
++ description: response.data.message
++ });
+ setTimeout(() => {
+- window.location.reload();
+- }, 1500);
+- })
++ store.dispatch('Logout').then(() => {
++ window.location.reload();
++ }).catch((err) => {
++ this.$message.error(err.response.message)
++ })
++ }, 1000)
++ }
+ break;
+ case '1207':
+- // token过期后,调接口,刷新token
+- store.dispatch('RefreshToken').then(() => {
+- // 再发请求
+- return request(response.config);
+- }).catch((err) => {
+- this.$message.error(err.response.message)
++ if (!isRefreshing) {
++ isRefreshing = true
++ store.dispatch('RefreshToken').then(() => {
++ // 再发请求
++ isRefreshing = false
++ onAccessTokenFetched(localStorage.getItem('Access-Token'))
++ }).catch(() => {
++ isRefreshing = false;
++ window.location.reload();
++ })
++ }
++ const retryRequest = new Promise((resolve) => {
++ addSubscriber((newToken) => {
++ response.config.headers['Access-Token'] = newToken;
++ response.config.url = response.config.url.replace(response.config.baseURL, '')
++ resolve(request(response.config))
++ })
+ })
+- break;
++ return retryRequest
+ default:
+ err = new Error(response.data.message);
+ err.data = response.data.data;
+diff --git a/src/vendor/ant-design-pro/utils/util.js b/src/vendor/ant-design-pro/utils/util.js
+index 979e320..dd73f3e 100644
+--- a/src/vendor/ant-design-pro/utils/util.js
++++ b/src/vendor/ant-design-pro/utils/util.js
+@@ -2,6 +2,22 @@
+ * @file: antd vue框架的通用工具文件
+ */
+
++// 节流函数
++export function throttle(func, wait) {
++ let timeout;
++ return () => {
++ const context = this
++ const args = arguments
++ if (!timeout) {
++ func.apply(context, args);
++ timeout = setTimeout(function () {
++ timeout = null
++ }, wait)
++ }
++ }
++}
++export default throttle
++
+ export function timeFix() {
+ const time = new Date();
+ const hour = time.getHours();
+diff --git a/src/views/leaks/LeakTaskList.vue b/src/views/leaks/LeakTaskList.vue
+index d40d8d8..ca4b697 100644
+--- a/src/views/leaks/LeakTaskList.vue
++++ b/src/views/leaks/LeakTaskList.vue
+@@ -251,7 +251,8 @@ export default {
+ handleTableChange(pagination, filters, sorter) {
+ // 存储翻页状态
+ this.pagination = pagination;
+- this.filters = filters;
++ // this.filters = filters;
++ this.filters = Object.assign({}, this.filters, filters);
+ this.sorter = sorter;
+ // 出发排序、筛选、分页时,重新请求主机列表
+ this.getTaskList();
+diff --git a/src/views/leaks/components/HostTable.vue b/src/views/leaks/components/HostTable.vue
+index 96a7737..4f9e431 100644
+--- a/src/views/leaks/components/HostTable.vue
++++ b/src/views/leaks/components/HostTable.vue
+@@ -20,8 +20,9 @@
+ 已修复
+
+
++
+
+-
++
+
+
+
+--
+Gitee
+
diff --git a/aops-hermes.spec b/aops-hermes.spec
index 3d2eedf..a3e3450 100644
--- a/aops-hermes.spec
+++ b/aops-hermes.spec
@@ -2,7 +2,7 @@
Name: aops-hermes
Version: v1.2.1
-Release: 5
+Release: 6
Summary: Web for an intelligent diagnose frame
License: MulanPSL2
URL: https://gitee.com/openeuler/%{name}
@@ -12,6 +12,7 @@ Patch0001: 0001-Resolve-issues-such-as-abnormal-display.patch
Patch0002: 0002-Host-management-field-changes-and-hot-patch-repair.patch
Patch0003: 0003-add-Hot-patch-Filtering-function.patch
Patch0004: 0004-add-host-under-cve-hotpatch-Filtering-function.patch
+Patch0005: 0005-fix-token-refresh-issue.patch
BuildRequires: nodejs node-gyp nodejs-yarn
@@ -47,6 +48,11 @@ cp -r deploy/aops-hermes.service %{buildroot}/usr/lib/systemd/system/
%changelog
+* Fri Jun 9 2023 wangkunlong<505997900@qq.com> - v1.2.1-6
+- Fix-token-refresh-issue
+- Solve-the-issue-of-unreasonable-layout-in-the-CVE-detail-interface
+- Resolve-the-issue-of-incorrect-task-list-filtering
+
* Fri Jun 2 2023 wangkunlong<505997900@qq.com> - v1.2.1-5
- Add host under cve hotpatch Filtering function