submitData method

List<ZkFormData> submitData()

返回表单项值

Implementation

List<ZkFormData> submitData() {
  List<ZkFormData> result = [];
  List<Map<String, dynamic>> data = _logc.list.value;
  List<ZkFormData> sourceData = _logc.sourceData.value;
  // 处理传入的原始值
  sourceData.forEach((e) {
    int index = data.indexWhere((v) => v['tag'] == e.tag);
    if (index != -1) {
      e.value = data[index]['value'];
    }
    result.add(
      e,
    );
  });

  // 找出新增的值
  data.forEach((e) {
    final int index = sourceData.indexWhere(
      (v) => v.tag == e['tag'],
    );
    if (index == -1) {
      result.add(
        ZkFormData.fromJson(e),
      );
    }
  });

  return result;
}