Update pdf.go
This commit is contained in:
parent
1ebbdece8b
commit
e47bb3316c
@ -617,17 +617,17 @@ func QuestionnaireSurveyPDF(templatePath, outputPath string, data *model.Questio
|
||||
return fmt.Errorf("设置字体失败: %w", err)
|
||||
}
|
||||
|
||||
startTime, err := time.Parse("2006-01-02", data.BundleStartDate)
|
||||
startTime, err := parseFlexibleDate(data.BundleStartDate)
|
||||
if err != nil {
|
||||
return fmt.Errorf("BundleStartDate格式错误: %w", err)
|
||||
}
|
||||
endTime, err := time.Parse("2006-01-02", data.BundleEndDate)
|
||||
endTime, err := parseFlexibleDate(data.BundleEndDate)
|
||||
if err != nil {
|
||||
return fmt.Errorf("BundleEndDate格式错误: %w", err)
|
||||
}
|
||||
submissionDate, err := time.Parse("2006-01-02", data.SubmissionDate)
|
||||
submissionDate, err := parseFlexibleDate(data.SubmissionDate)
|
||||
if err != nil {
|
||||
return fmt.Errorf("submissionDate格式错误: %w", err)
|
||||
return fmt.Errorf("SubmissionDate格式错误: %w", err)
|
||||
}
|
||||
nowTime := time.Now().Format(time.DateTime)
|
||||
onePage := 1
|
||||
@ -868,3 +868,26 @@ func scoreStars(score int) string {
|
||||
return "★★★★★"
|
||||
}
|
||||
}
|
||||
func parseFlexibleDate(value string) (time.Time, error) {
|
||||
v := strings.TrimSpace(value)
|
||||
if v == "" {
|
||||
return time.Time{}, fmt.Errorf("日期为空")
|
||||
}
|
||||
|
||||
layouts := []string{
|
||||
"2006-01-02",
|
||||
time.RFC3339,
|
||||
"2006-01-02 15:04:05",
|
||||
"2006-01-02 15:04",
|
||||
}
|
||||
|
||||
var lastErr error
|
||||
for _, layout := range layouts {
|
||||
t, err := time.Parse(layout, v)
|
||||
if err == nil {
|
||||
return t, nil
|
||||
}
|
||||
lastErr = err
|
||||
}
|
||||
return time.Time{}, fmt.Errorf("不支持的日期格式: %s, %w", v, lastErr)
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user