diff --git a/src/assets/css/base.scss b/src/assets/css/base.scss
index 709b468..a1cd5b1 100644
--- a/src/assets/css/base.scss
+++ b/src/assets/css/base.scss
@@ -758,3 +758,15 @@ color:var(--color-text) !important;
margin-top: 0 !important;
}
}
+
+.yisa-custom-scrollbar{
+ &::-webkit-scrollbar{
+ width: 10px;
+ background-color: #3e4557;
+ cursor: pointer;
+ }
+ &::-webkit-scrollbar-thumb{
+ background-color: #9da2ab;
+ border-radius: 5px;
+ }
+}
diff --git a/src/config/ajax.js b/src/config/ajax.js
index f7e4b62..e348cb2 100644
--- a/src/config/ajax.js
+++ b/src/config/ajax.js
@@ -7,6 +7,10 @@ import qs from 'qs'
axios.defaults.baseURL = baseApi
axios.defaults.timeout = 5 * 60 * 1000
axios.defaults.headers.common['Authorization'] = getToken()
+window.queryRecord = {} // 临时方案, 对于查询比较慢的接口, 先统一在这里处理, todo, 后期每个接口再加loading,
+const longtimeInterfaces = [ // 对于一些查询比较慢的接口, 先定义一个数组,
+ "/api/orp/road/road_list"
+]
// axios.defaults.headers.common['Authorization'] = `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTk2MzAwNzUsInN1YiI6Inlpc2Ffand0IiwibmJmIjoxNjk5NjI2NDc1LCJhdWQiOiJ5aXNhX3VzZXIiLCJpYXQiOjE2OTk2MjY0NzUsImp0aSI6IjlhYzg3MzcxNGUyYWUyNjQyOWNlMTFjMDliZjZiMTFiIiwiaXNzIjoieWlzYV9pc3MiLCJzdGF0dXMiOjEsImRhdGEiOnsidXNlcl91aWQiOjE4MTkwOTEwNDA1MzQ2MTU5NjksImlkX2NhcmQiOm51bGwsInJvbGVfaWQiOjE3NjcyMTAwNDQ0NDE2MTQ0NzksIm5hbWUiOiLotoXnuqfnrqHnkIblkZgiLCJkZXBhcnRtZW50X25hbWUiOiLopb_mtbflsrjlhaznlKjkuovkuJrpm4blm6IiLCJ1c2VyX25hbWUiOiJ4dXF1biIsInRlbCI6IjE4OTc2MzMwMzIwIiwiYXV0aCI6IjE1MiwxNTMsMTU0LDE1NSwxNTYsMTU3LDE1OCwxNTksMTYwLDE2MSwxNjIsMTYzLDE2NCwxNjUsMTY2LDE2NywxNjgsMTY5LDE3MCwxNzEsMTcyLDE3MywxNzQsMTc1LDE3NiwxNzcsMTc4LDE3OSwxODAsMTgxLDE4MiwxODMsMTUyLDEyMSwxMzQsMTM1LDEzOSwxNDMsMTQ5LDEzNiwxMzcsMTM4LDE0MCwxNDEsMTQyLDE0NCwxNDUsMTUwLDE1MSwxMjAsMTIyLDEyMywxMjQsMTI1LDExMiwxMTMsMTE0LDExNSwxNDYsMTQ3LDE0OCw4OCw4OSw5MCw5MSwxMDMsMTE4LDEyNiwxMzAsOTcsMTE2LDExNyw5Miw5Myw5NCw5NSw5NiwxMDQsMTA1LDExOSwxMjcsMTI4LDEyOSwxMzEsMTMyLDEzMyw5OCw5OSwxMDAsMTAxLDEwMiwxMDYsMTA3LDEwOCwxMDksMTEwLDExMSwxLDIsMyw2LDcsOCw5LDEwLDQsMTMsMTQsMTUsMTYsMTcsMTgsMTksMjAsMTEsMTIsMjEsMjIsMjcsMjgsMzMsMzYsMzcsMzgsMzksNDAsNDEsNDIsNDMsNDQsNDUsNDYsNDksNTAsNTEsNTIsNTMsNSw1Nyw1OCw1NCw1NSw1Niw3MSw3Miw1OSw2MCw2MSw2Miw2OSw3MCw3Myw3NCw3NSw3Niw3Nyw2NSw2Niw2Nyw2OCw2Myw2NCwyMywyNCwyNSwyNiwzNCwzNSwyOSwzMCwzMSwzMiw0Nyw0OCw3OCw3OSw4MCw4MSw4Miw4Myw4NCw4NSw4Niw4NyIsInBpZCI6MCwiaWRfbmFtZSI6IuiuuOe-pCJ9fQ.mYH-k_uKUDxysOiytBSRzOj4hWjKSxkTBVEpy4FnLe8`
/**
* @description 请求全局拦截
@@ -37,6 +41,27 @@ function ajax(ajaxData = {}) {
if (ajaxData.transFormData) {
ajaxData.data = { ...ajaxData.data, transFormData: true }
}
+ // 新增逻辑
+ if(ajaxData.data?.guard){
+ if( window.queryRecord[ajaxData.url]?.ing ){
+ message.destroy()
+ if(ajaxData.data.pn && ajaxData.data.pn != window.queryRecord[ajaxData.url].pn){ // 约定pn 作为分页器 页码的唯一变量名
+ message.error('建议不要快速切换')
+ }else{
+ message.error('请勿重复操作')
+ // 返回一个promise防止语法错误
+ return new Promise((resolve, reject)=>{
+ new Error(1)
+ })
+ }
+ }else{
+ if(ajaxData.data.pn){
+ window.queryRecord[ajaxData.url] = {ing: true, pn: ajaxData.data.pn}
+ }else{
+ window.queryRecord[ajaxData.url] = {ing: true}
+ }
+ }
+ }
return new Promise((resolve, reject) => {
if (!utils.isObject(ajaxData)) {
return reject(new Error('ajax请求配置错误'))
@@ -44,7 +69,6 @@ function ajax(ajaxData = {}) {
let method = ajaxData.type || 'GET'
method = method.toLowerCase()
let url = ajaxData.mock && isDevelopment ? `/mock` + ajaxData.url : ajaxData.url
-
// let data = method === 'get' ? { params: ajaxData.data } : ajaxData.data
let data =
method === "get" || method === 'delete'
@@ -53,17 +77,23 @@ function ajax(ajaxData = {}) {
axios[method](url, data)
.then(res => {
+ if(res?.config?.data && JSON.parse(res.config.data)?.guard){
+ window.queryRecord[res.config.url].ing = false
+ }
if (res.data.status === 30009 || res.data.status === 40006 || res.data.status === 40005 ) {
removeToken()
window.location.replace(sysConfig.logout_url)
// window.location.replace("/#/login")
message.error(res.data.message)
reject(res)
- } else {
+ } else {
resolve(res.data)
}
})
.catch(err => {
+ if(err?.config?.data && JSON.parse(err.config.data)?.guard){
+ window.queryRecord[err.config.url].ing = false
+ }
let response = err.response
if (response) {
switch (response.status) {
diff --git a/src/pages/InRoadMgm/EquipmentOpe/faultReport/loadable.jsx b/src/pages/InRoadMgm/EquipmentOpe/faultReport/loadable.jsx
index c582393..2c14b72 100644
--- a/src/pages/InRoadMgm/EquipmentOpe/faultReport/loadable.jsx
+++ b/src/pages/InRoadMgm/EquipmentOpe/faultReport/loadable.jsx
@@ -92,6 +92,7 @@ function faultReport(props) {
{
title: '序号',
render: (text, record, index) => index + 1,
+ width: 80,
},
{
title: '商户名称',
@@ -109,6 +110,11 @@ function faultReport(props) {
key: 'park_name',
},
{
+ title: '泊位号',
+ dataIndex: 'berth_code',
+ key: 'berth_code',
+ },
+ {
title: '设备类型',
dataIndex: 'fault_type_name',
key: 'fault_type_name',
@@ -119,9 +125,11 @@ function faultReport(props) {
key: 'name',
},
{
- title: '故障原因',
+ title: '备注',
dataIndex: 'reason',
key: 'reason',
+ width: 200,
+ ellipsis: true
},
{
title: '上报时间',
@@ -286,7 +294,7 @@ function faultReport(props) {
]}
/>
-