优化数组参数转化为不规范url,兼容后端接口
This commit is contained in:
parent
51e19b3266
commit
502cf3507f
26
api/utils.js
Normal file
26
api/utils.js
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
/**
|
||||||
|
* 将参数对象中的数组转换为查询字符串
|
||||||
|
* @param {Object} params - 参数对象
|
||||||
|
* @returns {Object} { params: 处理后的参数对象, queryString: 查询字符串 }
|
||||||
|
*/
|
||||||
|
export const convertArrayParamsToQuery = (params = {}) => {
|
||||||
|
const processedParams = { ...params };
|
||||||
|
let queryString = '';
|
||||||
|
|
||||||
|
Object.keys(processedParams).forEach(key => {
|
||||||
|
if (Array.isArray(processedParams[key])) {
|
||||||
|
const arrayValue = processedParams[key];
|
||||||
|
// 为数组中的每个元素添加查询参数
|
||||||
|
arrayValue.forEach(item => {
|
||||||
|
queryString += `&${key}=${encodeURIComponent(item)}`;
|
||||||
|
});
|
||||||
|
// 从参数对象中删除数组
|
||||||
|
delete processedParams[key];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return {
|
||||||
|
params: processedParams,
|
||||||
|
queryString: queryString.slice(1)
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
@ -1,37 +1,15 @@
|
||||||
|
import {convertArrayParamsToQuery} from "@/api/utils";
|
||||||
// 审批相关 API
|
// 审批相关 API
|
||||||
export const getVerifyList = (params = {}) => {
|
export const getVerifyList = (params = {}) => {
|
||||||
// 处理 createTimeList 参数,如果是数组则转换为重复参数格式
|
// 使用通用函数处理数组参数
|
||||||
const processedParams = { ...params };
|
const { params: processedParams, queryString } = convertArrayParamsToQuery(params);
|
||||||
|
|
||||||
if (Array.isArray(processedParams.createTimeList)) {
|
// 构建请求 URL(去掉查询字符串开头的 &)
|
||||||
const tempList = processedParams.createTimeList;
|
const url = queryString
|
||||||
|
? `/bst/verify/list?${queryString}`
|
||||||
|
: '/bst/verify/list';
|
||||||
|
|
||||||
// 删除原来的 createTimeList,因为我们要手动处理
|
return uni.$uv.http.get(url, {
|
||||||
delete processedParams.createTimeList;
|
|
||||||
|
|
||||||
// 构建查询字符串
|
|
||||||
let queryString = '';
|
|
||||||
tempList.forEach(date => {
|
|
||||||
queryString += `&createTimeList=${encodeURIComponent(date)}`;
|
|
||||||
});
|
|
||||||
|
|
||||||
return uni.$uv.http.get(`/bst/verify/list?${queryString}`, {
|
|
||||||
params: {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 20,
|
|
||||||
orderByColumn: 'createTime',
|
|
||||||
isAsc: 'descending',
|
|
||||||
bstType: 'UPDATE_TASK',
|
|
||||||
...processedParams
|
|
||||||
},
|
|
||||||
custom: {
|
|
||||||
auth: true
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 如果不是数组,正常处理
|
|
||||||
return uni.$uv.http.get('/bst/verify/list', {
|
|
||||||
params: {
|
params: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user