mirror of
https://gitee.com/baidu/amis.git
synced 2024-11-30 02:58:05 +08:00
feat:增加DATETOWEEK表达式
This commit is contained in:
parent
be6f7ce1b8
commit
59ce750d6c
@ -265,9 +265,7 @@ test('formula:date', () => {
|
|||||||
'DATERANGESPLIT("1676563200,1676735999", "end" , "YYYY.MM.DD hh:mm:ss")'
|
'DATERANGESPLIT("1676563200,1676735999", "end" , "YYYY.MM.DD hh:mm:ss")'
|
||||||
)
|
)
|
||||||
).toBe('2023.02.18 11:59:59');
|
).toBe('2023.02.18 11:59:59');
|
||||||
expect(evalFormual('DATETOWEEK("2023-02-27")')).toBe(
|
expect(evalFormual('WEEKDAY("2023-02-27")')).toBe(moment('2023-02-27').day());
|
||||||
moment('2023-02-27').day()
|
|
||||||
);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
test('formula:last', () => {
|
test('formula:last', () => {
|
||||||
|
@ -612,6 +612,20 @@
|
|||||||
|
|
||||||
返回现在的日期
|
返回现在的日期
|
||||||
|
|
||||||
|
### WEEKDAY
|
||||||
|
|
||||||
|
用法:`WEEKDAY(date)`
|
||||||
|
|
||||||
|
* `date:any` 日期
|
||||||
|
|
||||||
|
返回:`number` 星期几的数字标识
|
||||||
|
|
||||||
|
获取日期的星期几,从0到6分别表示星期日、一、二...六
|
||||||
|
|
||||||
|
示例:
|
||||||
|
|
||||||
|
WEEKDAY('2023-02-27') 得到 1
|
||||||
|
|
||||||
### DATETOSTR
|
### DATETOSTR
|
||||||
|
|
||||||
用法:`DATETOSTR(date, 'YYYY-MM-DD')`
|
用法:`DATETOSTR(date, 'YYYY-MM-DD')`
|
||||||
@ -652,20 +666,6 @@ DATERANGESPLIT('1676563200, 1676735999', 'start' , 'YYYY.MM.DD hh:mm:ss') 得到
|
|||||||
DATERANGESPLIT('1676563200, 1676735999', 1 , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
|
DATERANGESPLIT('1676563200, 1676735999', 1 , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
|
||||||
DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
|
DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
|
||||||
|
|
||||||
### DATETOWEEK
|
|
||||||
|
|
||||||
用法:`DATETOWEEK(date)`
|
|
||||||
|
|
||||||
* `date:any` 日期
|
|
||||||
|
|
||||||
返回:`number` 星期几的数字标识
|
|
||||||
|
|
||||||
获取日期的星期几,从0到6分别表示星期日、一、二...六
|
|
||||||
|
|
||||||
示例:
|
|
||||||
|
|
||||||
DATETOWEEK('2023-02-27') 得到 1
|
|
||||||
|
|
||||||
### STARTOF
|
### STARTOF
|
||||||
|
|
||||||
用法:`STARTOF(date[unit = "day"])`
|
用法:`STARTOF(date[unit = "day"])`
|
||||||
|
@ -1029,6 +1029,23 @@ export const doc: {
|
|||||||
},
|
},
|
||||||
namespace: "日期函数"
|
namespace: "日期函数"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "WEEKDAY",
|
||||||
|
description: "获取日期的星期几,从0到6分别表示星期日、一、二...六\n\n示例:\n\nWEEKDAY('2023-02-27') 得到 1",
|
||||||
|
example: "WEEKDAY(date)",
|
||||||
|
params: [
|
||||||
|
{
|
||||||
|
type: "any",
|
||||||
|
name: "date",
|
||||||
|
description: "日期"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
returns: {
|
||||||
|
type: "number",
|
||||||
|
description: "星期几的数字标识"
|
||||||
|
},
|
||||||
|
namespace: "日期函数"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "DATETOSTR",
|
name: "DATETOSTR",
|
||||||
description: "对日期、日期字符串、时间戳进行格式化\n\n示例:\n\nDATETOSTR('12/25/2022', 'YYYY-MM-DD') 得到 '2022.12.25'\nDATETOSTR(1676563200, 'YYYY.MM.DD') 得到 '2023.02.17'\nDATETOSTR(1676563200000, 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'\nDATETOSTR(DATE('2021-12-21'), 'YYYY.MM.DD hh:mm:ss') 得到 '2021.12.21 08:00:00'",
|
description: "对日期、日期字符串、时间戳进行格式化\n\n示例:\n\nDATETOSTR('12/25/2022', 'YYYY-MM-DD') 得到 '2022.12.25'\nDATETOSTR(1676563200, 'YYYY.MM.DD') 得到 '2023.02.17'\nDATETOSTR(1676563200000, 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'\nDATETOSTR(DATE('2021-12-21'), 'YYYY.MM.DD hh:mm:ss') 得到 '2021.12.21 08:00:00'",
|
||||||
@ -1083,23 +1100,6 @@ export const doc: {
|
|||||||
},
|
},
|
||||||
namespace: "日期函数"
|
namespace: "日期函数"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
name: "DATETOWEEK",
|
|
||||||
description: "获取日期的星期几,从0到6分别表示星期日、一、二...六\n\n示例:\n\nDATETOWEEK('2023-02-27') 得到 1",
|
|
||||||
example: "DATETOWEEK(date)",
|
|
||||||
params: [
|
|
||||||
{
|
|
||||||
type: "any",
|
|
||||||
name: "date",
|
|
||||||
description: "日期"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
returns: {
|
|
||||||
type: "number",
|
|
||||||
description: "星期几的数字标识"
|
|
||||||
},
|
|
||||||
namespace: "日期函数"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "STARTOF",
|
name: "STARTOF",
|
||||||
description: "返回日期的指定范围的开端",
|
description: "返回日期的指定范围的开端",
|
||||||
|
@ -1500,6 +1500,23 @@ export class Evaluator {
|
|||||||
return new Date();
|
return new Date();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取日期的星期几,从0到6分别表示星期日、一、二...六
|
||||||
|
*
|
||||||
|
* 示例:
|
||||||
|
*
|
||||||
|
* WEEKDAY('2023-02-27') 得到 1
|
||||||
|
*
|
||||||
|
* @example WEEKDAY(date)
|
||||||
|
* @namespace 日期函数
|
||||||
|
* @param {any} date 日期
|
||||||
|
*
|
||||||
|
* @returns {number} 星期几的数字标识
|
||||||
|
*/
|
||||||
|
fnWEEKDAY(date: Date | string | number) {
|
||||||
|
return moment(this.normalizeDate(date)).day();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 对日期、日期字符串、时间戳进行格式化
|
* 对日期、日期字符串、时间戳进行格式化
|
||||||
*
|
*
|
||||||
@ -1575,23 +1592,6 @@ export class Evaluator {
|
|||||||
return dateArr;
|
return dateArr;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取日期的星期几,从0到6分别表示星期日、一、二...六
|
|
||||||
*
|
|
||||||
* 示例:
|
|
||||||
*
|
|
||||||
* DATETOWEEK('2023-02-27') 得到 1
|
|
||||||
*
|
|
||||||
* @example DATETOWEEK(date)
|
|
||||||
* @namespace 日期函数
|
|
||||||
* @param {any} date 日期
|
|
||||||
*
|
|
||||||
* @returns {number} 星期几的数字标识
|
|
||||||
*/
|
|
||||||
fnDATETOWEEK(date: Date | string | number) {
|
|
||||||
return moment(this.normalizeDate(date)).day();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 返回日期的指定范围的开端
|
* 返回日期的指定范围的开端
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user