updateBaseModel method
Implementation
Object updateBaseModel() async {
final model = this;
BaseModelParm.Pref =
BaseModelParm.Pref ?? await SharedPreferences.getInstance();
BaseModelParm.UserId =
BaseModelParm.UserId ?? await BaseModelParm.Pref.getInt('UserId') ?? 0;
BaseModelParm.GeoType = BaseModelParm.GeoType ??
await BaseModelParm.Pref.getString('GeoType') ??
0;
BaseModelParm.Gps = BaseModelParm.Gps ?? await UtilRF.geoPosition();
var userId = BaseModelParm.UserId;
var geoType = BaseModelParm.GeoType;
var gps = BaseModelParm.Gps; //await UtilRF.geoPosition();
var dynModel = Dynamic(model);
var dataCollectionDate = await dynModel.get('DataCollectionDate');
var dataCollectionTime = await dynModel.get('DataCollectionTime');
var dataStatus = await dynModel.get('DataStatus');
var modifiedBy = await dynModel.get('ModifiedBy');
dynModel.set('GeoType', geoType!);
dynModel.set('CompanyCode', '6'); //geo controller
dynModel.set('TeaEstateCode', '01');
dynModel.set('EstateDivisionCode', '01');
dynModel.set('ChildrenClubCode', '01');
dynModel.set('DataCollectionDate', dataCollectionDate ?? UtilRF.getDate());
dynModel.set('DataCollectionTime', dataCollectionTime ?? UtilRF.getTime());
dynModel.set('UserId', userId!); //'pref'
dynModel.set(
'Latitude', gps == null ? 0 : gps.latitude.toString()); //SystemRF.gps
dynModel.set('Longitude', gps == null ? 0 : gps.longitude.toString());
dynModel.set('DataStatus', dataStatus ?? 0);
dynModel.set('ModifiedBy', modifiedBy ?? 0);
dynModel.set('ModificationDate', UtilRF.getDate());
// in future make it dynamic
//Dynamic(model).modelMembers.forEach((key, value) {});
return model;
}