getList method

List<Map> getList()

get list data manage must create by FormGroupManage.createList

Implementation

List<Map> getList() {
  Map<String, Map<String, dynamic>> _jsonData = {};
  _list.forEach((key, value) {
    dynamic _fieldData = value.getValue();
    dynamic _value;
    if (_fieldData is SparkFormDataChangeImp) {
      _value = _fieldData.data;
    } else if (_fieldData is List<SparkFormDataChangeImp>) {
      _value = _fieldData
          .where((element) => element.needSelected)
          .map((e) => e.data)
          .toList();
    } else {
      _value = _fieldData;
    }
    List<String> _keyRaw = key.split('.');
    if (_keyRaw.length > 1) {
      if (_jsonData.containsKey(_keyRaw.first)) {
        _jsonData[_keyRaw.first]![_keyRaw[1]] = _value;
      } else {
        _jsonData[_keyRaw.first] = {_keyRaw[1]: _value};
      }
    }
  });
  return _jsonData.values.toList();
}