toJson method
Convierte a Map<String, dynamic> para enviar al core/API. Omite valores nulos.
Implementation
Map<String, dynamic> toJson() {
final Map<String, dynamic> m = {};
// Obligatorios
m['kinddoc'] = kinddoc;
m['doc'] = doc;
void put(String key, dynamic value) {
if (value != null) m[key] = value;
}
put('email', email);
put('typeuser', typeuser);
put('name', name);
put('lastname', lastname);
put('birthdate', birthdate);
put('gender', gender);
put('kindrif', kindrif);
put('rif', rif);
put('phone', phone);
put('kindphone', kindphone);
put('postalcode', postalcode);
put('address', address);
put('fiscaladdress', fiscaladdress);
put('fiscalkindphone', fiscalkindphone);
put('fiscalphone', fiscalphone);
put('occupation', occupation);
put('degree', degree);
put('university', university);
put('graduationyear', graduationyear);
put('collegiatenumber', collegiatenumber);
put('collegiateyear', collegiateyear);
put('companyname', companyname);
put('companykindrif', companykindrif);
put('companyrif', companyrif);
put('companystate', companystate);
put('companymunicipality', companymunicipality);
put('companyparish', companyparish);
put('companyaddress', companyaddress);
put('companykindphone', companykindphone);
put('companyphone', companyphone);
put('companypostalcode', companypostalcode);
put('companywebpage', companywebpage);
put('companycommercialregister', companycommercialregister);
put('companyregisterdate', companyregisterdate);
put('companyregisternumber', companyregisternumber);
put('companyconstitutiondate', companyconstitutiondate);
put('companypublishdate', companypublishdate);
put('companyconstitutiondecree', companyconstitutiondecree);
put('companynumberdecree', companynumberdecree);
put('positionprivate', positionprivate);
put('departmentprivate', departmentprivate);
put('authorizedprivate', authorizedprivate);
put('functionsprivate', functionsprivate);
put('publishprivate', publishprivate);
put('issuedateprivate', issuedateprivate);
put('kindphoneprivate', kindphoneprivate);
put('phoneprivate', phoneprivate);
put('positionpublic', positionpublic);
put('departmentpublic', departmentpublic);
put('authorizedpublic', authorizedpublic);
put('functionspublic', functionspublic);
put('publishpublic', publishpublic);
put('issuedatepublic', issuedatepublic);
put('kindphonepublic', kindphonepublic);
put('phonepublic', phonepublic);
put('companyid', companyid);
// files: se incluye si existe (el http client del SDK debe convertirse a FormData)
if (files != null && files!.isNotEmpty) {
m['files'] = files;
}
return m;
}