源文件

This commit is contained in:
gyq
2024-05-23 14:39:33 +08:00
commit a1128dd791
2997 changed files with 500069 additions and 0 deletions

View File

@@ -0,0 +1,103 @@
/**
* HTTP的封装 基于uni.request
* 包括: 通用响应结果的处理 和 业务的增删改查函数
*
* @author terrfly
* @site https://www.jeequan.com
* @date 2021/12/16 18:35
*/
// 导入全局属性
import appConfig from "../config/appConfig.js"
import storageManage from "@/util/storageManage.js"
import { sm4DecryptByResData } from "@/util/encryptUtil.js"
function req(uri, data, method = "GET", extParams = {}) {
// 放置token
let headerObject = {}
headerObject[appConfig.tokenKey] = storageManage.token()
return uni
.request(
Object.assign(
{
url: appConfig.env.JEEPAY_BASE_URL + uri,
data: data,
method: method,
header: headerObject,
},
extParams
)
)
.then((httpData) => {
// 从http响应数据中解构响应数据 [ 响应码、 bodyData ]
let { statusCode, data } = httpData
// 避免混淆重新命名
let bodyData = data
if (statusCode == 401) {
uni.showToast({ title: "请登录1", icon: "none", mask: true, duration: 1500 })
setTimeout(function () {
uni.reLaunch({ url: "/pages/login/login" })
}, 1500)
}
// http响应码不正确
if (statusCode != 200) {
return Promise.reject(bodyData) // 跳转到catch函数
}
// 业务响应异常
if (bodyData.code != 0) {
uni.hideLoading()
uni.showToast({ icon: "none", title: bodyData.msg })
if (bodyData.code == 5005) {
// 密码已过期, 直接跳转到更改密码页面
uni.reLaunch({ url: "/pageWork/setUp/securitySetting/passwordSetting" })
}
return Promise.reject(bodyData.msg)
}
// 加密数据
if (!bodyData.data && bodyData.encryptData) {
return Promise.resolve({ bizData: sm4DecryptByResData(bodyData.encryptData), code: bodyData.code })
}
// 构造请求成功的响应数据
return Promise.resolve({ bizData: bodyData.data, code: bodyData.code })
})
.catch((res) => {
return Promise.reject(res)
})
}
// 通用list
function list(uri, params) {
return req(uri, params, "GET")
}
// 通用add
function add(uri, data) {
return req(uri, data, "POST")
}
// 通用 根据ID获取
function getById(uri, bizId) {
return req(`${uri}/${bizId}`, {}, "GET")
}
// 通用 更新
function updateById(uri, bizId, data) {
return req(`${uri}/${bizId}`, data, "PUT")
}
// 通用 删除
function delById(uri, bizId) {
return req(`${uri}/${bizId}`, {}, "DELETE")
}
export default {
req: req,
list: list,
add: add,
getById: getById,
updateById: updateById,
delById: delById,
}