formSubmit method
Implementation
formSubmit(BuildContext context, aparam) async {
myLogAll('formSubmit');
resetLastBarcode();
dynamic param = (aparam is Map) ? aparam[gItem] : aparam;
dynamic formid = '';
if (param is Map) {
formid = param[gValue];
} else {
formid = param;
}
/*if (!formKey.currentState!.validate()) {
return;
}
formKey.currentState.save();*/
Map changeMap = formChanged(context, formid, true);
var changed = changeMap[gStatus];
Map data = changeMap[gData];
var obj = changeMap[gCol];
if (changed) {
//console.log(data);
if (formid == gChangepassword || formid == gResetpassword) {
var password = data[gPassword];
var password1 = data[gPassword1];
if (password1 != password) {
showMsg(context, getSCurrent(gPasswordnotmatch), null);
return;
}
setGlobalParam([gMyid], [getValue(formid, gEmail, null)[gValue]]);
if (isNull(_globalParam[gMyid])) {
return;
}
} else if (formid == gLogin) {
setValue(gLogin, gMsgtoken, '', _fcmToken, context);
}
//set to default value if empty
for (int i = 0; i < obj.entries.length; i++) {
MapEntry<dynamic, dynamic> element = obj.entries.elementAt(i);
var objI = element.value;
if (objI[gId] != '' &&
//objI[gIsPrimary] != null &&
//objI[gIsPrimary] &&
(isNull(data[objI[gId]])) &&
//isNull(objI[gValue]) &&
!isNull(objI[gDefaultValue])) {
data[objI[gId]] = objI[gDefaultValue];
}
}
if (_tableList[formid] != null) {
if (!isNull(_tableList[formid]?[gWherelist])) {
Map whereList = _tableList[formid]?[gWherelist];
for (int i = 0; i < whereList.entries.length; i++) {
MapEntry<dynamic, dynamic> element = whereList.entries.elementAt(i);
var col = element.key;
if (data.containsKey(col)) {
continue;
}
data[col] = element.value ?? '';
}
}
}
//send request;
//print(' ------------------ formSubmit 3');
if (aparam is Map && !isNull(aparam[gLastid])) {
data[gLastfluttermydetailid] = aparam[gLastid];
}
sendRequestFormChange(data, context); //refresh Form
return;
}
alert(context, gNochange);
}