date_time_info.dart 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import 'package:fis_lib_report/converts/event_type.dart';
  2. import 'package:fis_lib_report/report/dateTimeElement.dart';
  3. import 'package:fis_lib_report/report/interfaces/element.dart';
  4. import 'package:fis_lib_report/report/interfaces/inputText.dart';
  5. import 'package:fis_lib_report/report/text_element.dart';
  6. import 'package:fis_lib_report/report_info/report_info.dart';
  7. import 'package:fis_lib_report/report_info/text_element_info.dart';
  8. class DateTimeInfo extends TextElementInfo {
  9. ///UI绑定的文本
  10. String get text => _text;
  11. set text(String v) {
  12. _text = v;
  13. onTextChange.emit(this, v);
  14. }
  15. ///文本改变通知UI变化
  16. FEventHandler<String> onTextChange = FEventHandler<String>();
  17. ///日期格式
  18. String? dateTimeFormat = 'yyyy-MM-dd';
  19. String _text = '';
  20. DateTimeInfo.fromElement(DateTimeElement element)
  21. : super.fromElement(element) {
  22. dateTimeFormat = element.dateTimeFormat;
  23. }
  24. @override
  25. Map<String, dynamic> toJson() {
  26. final map = <String, dynamic>{};
  27. map['Key'] = id;
  28. map['Value'] = text;
  29. ReportInfo.instance.jsonItems.add(map);
  30. return map;
  31. }
  32. }