vben
2021-08-24 56a966cfbf8db5b29a42185f0f25a0e800c30dbb
提交 | 用户 | age
f646e3 1 import { isObject, isString } from '/@/utils/is';
V 2
5465f0 3 const DATE_TIME_FORMAT = 'YYYY-MM-DD HH:mm';
V 4
50f94b 5 export function joinTimestamp<T extends boolean>(
f646e3 6   join: boolean,
56a966 7   restful: T,
f646e3 8 ): T extends true ? string : object;
V 9
50f94b 10 export function joinTimestamp(join: boolean, restful = false): string | object {
f646e3 11   if (!join) {
V 12     return restful ? '' : {};
13   }
14   const now = new Date().getTime();
15   if (restful) {
16     return `?_t=${now}`;
17   }
a821d9 18   return { _t: now };
f646e3 19 }
V 20
21 /**
a821d9 22  * @description: Format request parameter time
f646e3 23  */
834fa7 24 export function formatRequestDate(params: Recordable) {
V 25   if (Object.prototype.toString.call(params) !== '[object Object]') {
26     return;
27   }
28
f646e3 29   for (const key in params) {
V 30     if (params[key] && params[key]._isAMomentObject) {
31       params[key] = params[key].format(DATE_TIME_FORMAT);
32     }
33     if (isString(key)) {
34       const value = params[key];
35       if (value) {
36         try {
37           params[key] = isString(value) ? value.trim() : value;
38         } catch (error) {
39           throw new Error(error);
40         }
41       }
42     }
43     if (isObject(params[key])) {
44       formatRequestDate(params[key]);
45     }
46   }
47 }