From 46d143d1d6fe8f286399f4d027c9a86adf7cd7fc Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期三, 09 七月 2025 08:50:01 +0800 Subject: [PATCH] feat(inspection,maintenance): - 实现保养工单批量确认功能 - 在点检记录确认时增加时间限制,距离上次更新时间两小时内不允许确认 --- eims-ui-mobile/src/utils/http.ts | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 55 insertions(+), 3 deletions(-) diff --git a/eims-ui-mobile/src/utils/http.ts b/eims-ui-mobile/src/utils/http.ts index 4e3f38c..b9f2ada 100644 --- a/eims-ui-mobile/src/utils/http.ts +++ b/eims-ui-mobile/src/utils/http.ts @@ -1,6 +1,10 @@ import { CustomRequestOptions } from '@/interceptors/request' +import { useUserStore, useAccessStore } from '@/store' export const http = <T>(options: CustomRequestOptions) => { + uni.showLoading({ + title: '鍔犺浇涓�', + }) // 1. 杩斿洖 Promise 瀵硅薄 return new Promise<IResData<T>>((resolve, reject) => { uni.request({ @@ -11,14 +15,39 @@ // #endif // 鍝嶅簲鎴愬姛 success(res) { + uni.hideLoading() // 鐘舵�佺爜 2xx锛屽弬鑰� axios 鐨勮璁� if (res.statusCode >= 200 && res.statusCode < 300) { // 2.1 鎻愬彇鏍稿績鏁版嵁 res.data - resolve(res.data as IResData<T>) + if ((res.data as IResData<T>).code === 200) { + resolve(((res.data as IResData<T>).data || res.data) as IResData<T>) + } else if ((res.data as IResData<T>).code === 401) { + uni.showToast({ + icon: 'none', + title: '鐧诲綍瓒呮椂锛岃閲嶆柊鐧诲綍锛�', + }) + // 401閿欒 -> 娓呯悊鐢ㄦ埛淇℃伅锛岃烦杞埌鐧诲綍椤� + useAccessStore().clearAccessInfo() + useUserStore().clearUserInfo() + const loginRoute = '/pages/login/index' + // 閲嶆柊鐧诲綍鍚庤繑鍥為〉闈� + const url = '/pages/home/index' + const redirectRoute = `${loginRoute}?redirect=${encodeURIComponent(url)}` + uni.navigateTo({ url: redirectRoute }) + reject(res) + } else { + // 鍏朵粬閿欒 -> 鏍规嵁鍚庣閿欒淇℃伅杞绘彁绀� + uni.showToast({ + icon: 'none', + title: (res.data as IResData<T>).msg || '璇锋眰閿欒', + }) + reject(res) + } } else if (res.statusCode === 401) { // 401閿欒 -> 娓呯悊鐢ㄦ埛淇℃伅锛岃烦杞埌鐧诲綍椤� - // userStore.clearUserInfo() - // uni.navigateTo({ url: '/pages/login/login' }) + useAccessStore().clearAccessInfo() + useUserStore().clearUserInfo() + uni.navigateTo({ url: '/pages/login/index' }) reject(res) } else { // 鍏朵粬閿欒 -> 鏍规嵁鍚庣閿欒淇℃伅杞绘彁绀� @@ -37,6 +66,7 @@ title: '缃戠粶閿欒锛屾崲涓綉缁滆瘯璇�', }) reject(err) + uni.hideLoading() }, }) }) @@ -76,5 +106,27 @@ }) } +export const httpPut = <T>( + url: string, + data?: Record<string, any>, + query?: Record<string, any>, +) => { + return http<T>({ + url, + query, + data, + method: 'PUT', + }) +} + +export const httpDel = <T>(url: string) => { + return http<T>({ + url, + method: 'DELETE', + }) +} + http.get = httpGet http.post = httpPost +http.put = httpPut +http.del = httpDel -- Gitblit v1.9.3