1234567891011121314151617181920212223242526272829303132333435363738394041 |
- // Package utils @Author gmy 2024/8/6 16:06:00
- package utils
- import (
- "fmt"
- "strings"
- "time"
- )
- // ParseDateAndWeek parseDateAndWeek 解析日期并计算当前周数
- func ParseDateAndWeek(dateText string) (string, error) {
- // 解析日期
- reportDate, err := time.Parse("2006-01-02", strings.TrimSpace(strings.Split(dateText, " ")[0]))
- if err != nil {
- return "", fmt.Errorf("failed to parse report date: %v", err)
- }
- // 计算年份和周数
- year, week := reportDate.ISOWeek()
- // 获取年份的后两位
- shortYear := year % 100
- targetWeek := fmt.Sprintf("%02d年第%d周", shortYear, week)
- return targetWeek, nil
- }
- // GetCurrentTime 获取当前时间 格式为 2024-08-07 15:29:58
- func GetCurrentTime() string {
- return time.Now().Format("2006-01-02 15:04:05")
- }
- // ConvertTimeFormat 转换时间格式 dateText 格式为 2024-08-03 07:53 --> 2024-08-03
- func ConvertTimeFormat(dateText string) (string, error) {
- // 解析日期
- reportDate, err := time.Parse("2006-01-02 15:04", strings.TrimSpace(dateText))
- if err != nil {
- return "", fmt.Errorf("failed to parse report date: %v", err)
- }
- return reportDate.Format("2006-01-02"), nil
- }
|