(items map[string]interface{})
| 220 | } |
| 221 | |
| 222 | func parseTimeContentItems(items map[string]interface{}) []*model.MsgTimeItem { |
| 223 | lst := []*model.MsgTimeItem{} |
| 224 | for k, v := range items { |
| 225 | switch val := v.(type) { |
| 226 | case int: |
| 227 | lst = append(lst, &model.MsgTimeItem{ |
| 228 | Name: k, |
| 229 | Value: int64(val), |
| 230 | }) |
| 231 | case int64: |
| 232 | lst = append(lst, &model.MsgTimeItem{ |
| 233 | Name: k, |
| 234 | Value: val, |
| 235 | }) |
| 236 | case float32: |
| 237 | lst = append(lst, &model.MsgTimeItem{ |
| 238 | Name: k, |
| 239 | Value: float64(val), |
| 240 | }) |
| 241 | case float64: |
| 242 | lst = append(lst, &model.MsgTimeItem{ |
| 243 | Name: k, |
| 244 | Value: val, |
| 245 | }) |
| 246 | case string: |
| 247 | if strings.ContainsRune(val, '.') { |
| 248 | if vv, err := strconv.ParseFloat(val, 64); err == nil { |
| 249 | lst = append(lst, &model.MsgTimeItem{ |
| 250 | Name: k, |
| 251 | Value: vv, |
| 252 | }) |
| 253 | continue |
| 254 | } |
| 255 | } else { |
| 256 | if vv, err := strconv.ParseInt(val, 10, 64); err == nil { |
| 257 | lst = append(lst, &model.MsgTimeItem{ |
| 258 | Name: k, |
| 259 | Value: vv, |
| 260 | }) |
| 261 | continue |
| 262 | } |
| 263 | } |
| 264 | lst = append(lst, &model.MsgTimeItem{ |
| 265 | Name: k, |
| 266 | Value: 0, |
| 267 | }) |
| 268 | default: |
| 269 | lst = append(lst, &model.MsgTimeItem{ |
| 270 | Name: k, |
| 271 | Value: 0, |
| 272 | }) |
| 273 | } |
| 274 | } |
| 275 | return lst |
| 276 | } |
| 277 | |
| 278 | func parseTimeContentStringItems(items map[string]string) []*model.MsgTimeItem { |
| 279 | lst := []*model.MsgTimeItem{} |
no outgoing calls