(faqStr string)
| 185 | } |
| 186 | |
| 187 | func validateFAQ(faqStr string) error { |
| 188 | list, err := parseJSONArray(faqStr, "FAQ信息") |
| 189 | if err != nil { |
| 190 | return err |
| 191 | } |
| 192 | if len(list) > 100 { |
| 193 | return fmt.Errorf("FAQ数量不能超过100个") |
| 194 | } |
| 195 | for i, faq := range list { |
| 196 | question, ok := faq["question"].(string) |
| 197 | if !ok || question == "" { |
| 198 | return fmt.Errorf("第%d个FAQ缺少问题字段", i+1) |
| 199 | } |
| 200 | answer, ok := faq["answer"].(string) |
| 201 | if !ok || answer == "" { |
| 202 | return fmt.Errorf("第%d个FAQ缺少答案字段", i+1) |
| 203 | } |
| 204 | if len(question) > 200 { |
| 205 | return fmt.Errorf("第%d个FAQ的问题长度不能超过200字符", i+1) |
| 206 | } |
| 207 | if len(answer) > 1000 { |
| 208 | return fmt.Errorf("第%d个FAQ的答案长度不能超过1000字符", i+1) |
| 209 | } |
| 210 | } |
| 211 | return nil |
| 212 | } |
| 213 | |
| 214 | func getPublishTime(item map[string]interface{}) time.Time { |
| 215 | if v, ok := item["publishDate"]; ok { |
no test coverage detected