Update application branding and localization; refactor user input validation and logging
- Changed app name from "iLink City" to "SIM_ba Mobile" in French localization files. - Updated various UI text to reflect new branding in French localization. - Added validation for Cameroon phone numbers in CreateUserStep2. - Enhanced logging for debugging purposes across multiple components. - Refactored user input handling to trim whitespace for phone numbers. - Updated geocoding URL to use test base URL for development. - Adjusted constants for API endpoints to reflect new test environment.
This commit is contained in:
parent
e2557b3ab3
commit
1ce94928b6
|
@ -132,7 +132,8 @@ android {
|
|||
compileSdkVersion rootProject.ext.compileSdkVersion
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.test_city.douala3"
|
||||
// applicationId "com.test_city.douala3"
|
||||
applicationId "com.test_city.douala3test"
|
||||
minSdkVersion rootProject.ext.minSdkVersion
|
||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||
missingDimensionStrategy 'react-native-camera', 'general'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"WELCOME": "Bienvenue sur iLink City !",
|
||||
"WELCOME": "Bienvenue sur SIM_ba Mobile !",
|
||||
"WAITING_LONG": "Veuillez patienter un instant",
|
||||
"HELP": "Aide",
|
||||
"SIMPLE_USER": "Utilisateur simple",
|
||||
|
@ -386,7 +386,7 @@
|
|||
"OK": "OK",
|
||||
"SIMPLE": "Simple",
|
||||
"BLOCKED": "Bloqué",
|
||||
"APP_FULLNAME": "Ilink City",
|
||||
"APP_FULLNAME": "SIM_ba Mobile",
|
||||
"GUIDE_TITLE": "Bienvenue dans le Guide de",
|
||||
"GUIDE_USER_SIMPLE": "Guide pour un utilisateur",
|
||||
"GUIDE_AGENT": "Guide pour un agent",
|
||||
|
@ -544,8 +544,8 @@
|
|||
"MEMBERSHIP_REQUEST": "Demandes d'adhésion",
|
||||
"HISTORY_TYPE_REQUEST": "Requêtes",
|
||||
"TREAT": "Traité",
|
||||
"EXIT_TITLE": "Fermer iLink City !",
|
||||
"EXIT_DESC": "Voulez-vous vraiment fermer iLink City ?",
|
||||
"EXIT_TITLE": "Fermer SIM_ba Mobile !",
|
||||
"EXIT_DESC": "Voulez-vous vraiment fermer SIM_ba Mobile ?",
|
||||
"NO_TREAT": "Non traité",
|
||||
"EXIT": "Fermer",
|
||||
"PERIOD": "Période",
|
||||
|
@ -558,7 +558,7 @@
|
|||
"ACCOUNT_ACTIVATE_TEXT": "Votre compte a été activé avec succès !",
|
||||
"HISTORY_END": "Fin",
|
||||
"DONT_VALIDATE_ACCOUNT": "Compte non validé",
|
||||
"CONNEXION_SUCCESSFULL_TEXT": "Connexion réussie. Bienvenue dans iLink City ! ",
|
||||
"CONNEXION_SUCCESSFULL_TEXT": "Connexion réussie. Bienvenue dans SIM_ba Mobile ! ",
|
||||
"UNVALIDATE_ACCOUNT_TEXT": "Votre hyperviseur n'a pas encore validé votre compte",
|
||||
"TEXT_NEED_POSITION": "Veuillez mettre à jour votre position !",
|
||||
"TITLE_NEED_POSITION": "Votre position doit être mise à jour",
|
||||
|
@ -571,12 +571,12 @@
|
|||
"TITLE_PROBLE_COME": "Un problème a été rencontré",
|
||||
"TITLE_SUPPRESS_CONFIRM": "Confirmation de suppression",
|
||||
"TEXT_SUPPRESS_CONFIRM": "Voulez vous vraiment supprimer cet utilisateur ?",
|
||||
"TEXT_ERROR_START_APPLICATION": "Une erreur est survenue au démarrage de iLink City. Veuillez relancer iLink City",
|
||||
"TEXT_UNABLE_TO_GET_YOUR_POSITION": "Impossible de recupérez votre position. Veuillez verifier que votre GPS est activé et relancez iLink City",
|
||||
"TEXT_ERROR_START_APPLICATION": "Une erreur est survenue au démarrage de SIM_ba Mobile. Veuillez relancer SIM_ba Mobile",
|
||||
"TEXT_UNABLE_TO_GET_YOUR_POSITION": "Impossible de recupérez votre position. Veuillez verifier que votre GPS est activé et relancez SIM_ba Mobile",
|
||||
"RESTART": "RECOMMENCER",
|
||||
"TEXT_UNABLE_TO_GET_COUNTRY_INFO": "Impossible de recupérer les informations de votre pays. Verifiez votre connexion internet ! cliquez sur \"Ok\" pour reessayer",
|
||||
"TITLE_UNABLE_TO_AUTORISE": "Echec de l'autorisation",
|
||||
"MISSING_AUTORISATION_LOCATION": "iLink City n'est pas autorisé à acceder à votre position. Veuillez autoriser iLink City à accéder à votre localisation et relancez iLink City",
|
||||
"MISSING_AUTORISATION_LOCATION": "SIM_ba Mobile n'est pas autorisé à acceder à votre position. Veuillez autoriser SIM_ba Mobile à accéder à votre localisation et relancez SIM_ba Mobile",
|
||||
"TEXT_FORGOTTEN_PASSWORD": "Saisissez votre identifiant,nous vous enverrons un nouveau mot de passe\n",
|
||||
"TEXT_NETWORK_UNABLE": "Réseau non disponible, voulez vous réessayer ?",
|
||||
"LOADING_TEXT_MARKERS": "Suite des points ",
|
||||
|
@ -585,7 +585,7 @@
|
|||
"LAUNCH_POINT_WITH_FILTER": "Voulez-vous relancer la recherche dans un rayon de ",
|
||||
"LOADING_TEXT_MARKERS_2": "autour",
|
||||
"UNABLE_GET_INFORMATION": "Problème de récuperation des Informations",
|
||||
"UNABLE_GET_INFORMATION_TEXT": "Vérifiez que votre GPS est activé et mis en mode haute precision et relancez iLink City",
|
||||
"UNABLE_GET_INFORMATION_TEXT": "Vérifiez que votre GPS est activé et mis en mode haute precision et relancez SIM_ba Mobile",
|
||||
"TITLE_HELP_SOON": "Aide non disponible !",
|
||||
"YOUR_NETWORK": "Sélectionner votre réseau",
|
||||
"YOUR_NETWORK_SELECTED": "Classe de la taxe",
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
<resources>
|
||||
<string name="app_name">SIM_ba mobile CAD3</string>
|
||||
<string name="app_name">Test SIM_ba mobile CAD3</string>
|
||||
<!-- <string name="app_name">SIM_ba mobile CAD3</string> -->
|
||||
</resources>
|
||||
|
|
|
@ -521,8 +521,9 @@ class Home extends BaseScreen {
|
|||
}
|
||||
|
||||
createUsagerAccounts = (usagers) => {
|
||||
console.log("createGeolocatedAccounts===>>",JSON.stringify(usagers));
|
||||
createGeolocatedAccounts(usagers).then((result) => {
|
||||
console.log("result", result);
|
||||
console.log("resultcreateGeolocatedAccounts===>>", result);
|
||||
this.setState({displaySynchronizeLoader: false});
|
||||
|
||||
if (!_.isNil(result)) {
|
||||
|
@ -556,6 +557,7 @@ class Home extends BaseScreen {
|
|||
}
|
||||
|
||||
createActifsAccounts = (actifs) => {
|
||||
console.log("createActifsAccounts===>>",actifs)
|
||||
saveActifsSociety(actifs).then((result) => {
|
||||
console.log("result", result);
|
||||
this.setState({displaySynchronizeLoader: false});
|
||||
|
@ -634,6 +636,7 @@ class Home extends BaseScreen {
|
|||
usagersToSend.push(usagersToSave[index].data);
|
||||
|
||||
if (usagersToSend.length === (usagersToSave.filter((usager) => !usager.isSaved)).length) {
|
||||
console.log("Isco2===>>", usagersToSend);
|
||||
this.createUsagerAccounts(usagersToSend);
|
||||
}
|
||||
console.warn("USAGERS FORMATE", usagersToSave);
|
||||
|
@ -663,6 +666,7 @@ class Home extends BaseScreen {
|
|||
usagersToSend.push(usagersToSave[index].data);
|
||||
|
||||
if (usagersToSend.length === (usagersToSave.filter((usager) => !usager.isSaved)).length) {
|
||||
console.log("Isco3===>>", usagersToSend);
|
||||
this.createUsagerAccounts(usagersToSend);
|
||||
}
|
||||
console.warn("USAGERS FORMATE", usagersToSave);
|
||||
|
@ -673,9 +677,10 @@ class Home extends BaseScreen {
|
|||
} else
|
||||
usagersToSend.push(usagersToSave[index].data);
|
||||
|
||||
if (usagersToSend.length === (usagersToSave.filter((usager) => !usager.isSaved)).length) {
|
||||
this.createUsagerAccounts(usagersToSend);
|
||||
}
|
||||
// if (usagersToSend.length === (usagersToSave.filter((usager) => !usager.isSaved)).length) {
|
||||
// console.log("Isco4===>>", usagersToSend);
|
||||
// this.createUsagerAccounts(usagersToSend);
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
|
@ -686,6 +691,7 @@ class Home extends BaseScreen {
|
|||
console.log("Usagers to save length", (usagersToSave.filter((usager) => !usager.isSaved)).length);
|
||||
|
||||
if (usagersToSend.length === (usagersToSave.filter((usager) => !usager.isSaved)).length) {
|
||||
console.log("Isco5===>>", usagersToSend);
|
||||
this.createUsagerAccounts(usagersToSend);
|
||||
}
|
||||
}
|
||||
|
@ -720,6 +726,8 @@ class Home extends BaseScreen {
|
|||
actif.data.taxes.map((taxe, indexTaxe) => {
|
||||
console.log("Usagers to send length", actifsToSend.length);
|
||||
console.log("Usagers To save", actifsToSave.filter((usager) => !usager.isSaved).length);
|
||||
console.log("taxe.has_image_capture", taxe.has_image_capture);
|
||||
console.log("taxe.has_image_capture", taxe.has_image_capture === "1");
|
||||
if (taxe.has_image_capture === "1") {
|
||||
this.createFormData(taxe.image);
|
||||
this.uploadImage().then((response) => {
|
||||
|
@ -738,6 +746,8 @@ class Home extends BaseScreen {
|
|||
});
|
||||
} else {
|
||||
actifsToSend.push(actif.data);
|
||||
console.log("actifsToSend.push===>>",actif.data)
|
||||
console.log("actifsToSend.length === (actifsToSave.filter((usager) => !usager.isSaved)).length",actifsToSend.length === (actifsToSave.filter((usager) => !usager.isSaved)).length)
|
||||
if (actifsToSend.length === (actifsToSave.filter((usager) => !usager.isSaved)).length)
|
||||
this.createActifsAccounts(actifsToSend);
|
||||
}
|
||||
|
|
|
@ -122,6 +122,7 @@ class CreateUserStep extends Component {
|
|||
tax_units_count: [],
|
||||
units_per_tax_unit_count: [],
|
||||
number_of_days: [],
|
||||
building_value: [],
|
||||
latlng: [],
|
||||
id_company_type: null,
|
||||
identification_number: null,
|
||||
|
@ -165,16 +166,17 @@ class CreateUserStep extends Component {
|
|||
accountType:"",
|
||||
cni_number:"",
|
||||
birth_date:new Date(),
|
||||
birth_place:"",
|
||||
birth_country:"",
|
||||
nationality_country:"",
|
||||
father_lastname:"",
|
||||
father_firstname:"",
|
||||
mother_lastname:"",
|
||||
mother_firstname:"",
|
||||
signboard:"",
|
||||
birth_place:null,
|
||||
birth_country:null,
|
||||
nationality_country:null,
|
||||
father_lastname:null,
|
||||
father_firstname:null,
|
||||
mother_lastname:null,
|
||||
mother_firstname:null,
|
||||
signboard:null,
|
||||
entreprise_creation_date: new Date(), // initialisation avec la date actuelle
|
||||
showDatePicker: false,
|
||||
built:[false],
|
||||
|
||||
};
|
||||
|
||||
|
@ -828,6 +830,18 @@ class CreateUserStep extends Component {
|
|||
|
||||
renderTaxesDropdown = (index) => {
|
||||
const isTaxesEmpty = !this.state.result.taxes || this.state.result.taxes.length === 0;
|
||||
// ─── CALCUL DE LA VALEUR MERCURIALE ───────────────────────────────
|
||||
// Trouve l’objet quartier correspondant au nom sélectionné
|
||||
const selectedNeighbourhood = this.state.result.neighborhoods.find(
|
||||
n => n.name === this.state.neighborhood
|
||||
);
|
||||
// Choisit built ou unbuilt selon le dropdown, ou null si introuvable
|
||||
const mercurialValue = selectedNeighbourhood
|
||||
? (this.state.built[index]
|
||||
? selectedNeighbourhood.mercur_built_value
|
||||
: selectedNeighbourhood.mercur_unbuilt_value)
|
||||
: null;
|
||||
//
|
||||
return (
|
||||
<>
|
||||
|
||||
|
@ -914,6 +928,8 @@ class CreateUserStep extends Component {
|
|||
}
|
||||
</View>
|
||||
</Animatable.View>
|
||||
{console.log("this.state.taxes_selected[index]==>",this.state.taxes_selected[index])}
|
||||
{console.log("this.state.taxes_selected[index]==>",!isNil(this.state.taxes_selected[index]))}
|
||||
{
|
||||
!isNil(this.state.taxes_selected[index]) ?
|
||||
this.state.taxes_selected[index].measurement_unit !== "forfait" &&
|
||||
|
@ -1024,6 +1040,87 @@ class CreateUserStep extends Component {
|
|||
: null
|
||||
|
||||
}
|
||||
{
|
||||
/* Champs spécifiques à la taxe foncière (“taxe sur la propriété”) */
|
||||
!isNil(this.state.taxes_selected[index]) &&
|
||||
this.state.taxes_selected[index].name?.toLowerCase() === 'taxe sur la propriété' && (
|
||||
<>
|
||||
{/* Sélection Immeuble bâti → built */}
|
||||
<Animatable.View>
|
||||
<View style={{
|
||||
width: responsiveWidth(90),
|
||||
alignSelf: 'center',
|
||||
backgroundColor: 'white',
|
||||
borderRadius: 10,
|
||||
marginTop: 20,
|
||||
paddingLeft: 20,
|
||||
paddingRight: 20
|
||||
}}>
|
||||
<Dropdown
|
||||
label={I18n.t('BUILDING_CONSTRUCTED')}
|
||||
data={[ { value: 'Non' }, { value: 'Oui' } ]}
|
||||
value={ this.state.built[index] ? 'Oui' : 'Non' }
|
||||
onChangeText={(value) => {
|
||||
const built = [...this.state.built];
|
||||
// quand Non → false, Oui → true
|
||||
built[index] = (value === 'Oui');
|
||||
this.setState({ built });
|
||||
}}
|
||||
/>
|
||||
</View>
|
||||
</Animatable.View>
|
||||
{mercurialValue != null && (
|
||||
<Text style={{
|
||||
marginTop: 5,
|
||||
marginLeft: responsiveWidth(6),
|
||||
fontSize: 16,
|
||||
color: '#fff'
|
||||
}}>
|
||||
{`${I18n.t('MERCURIAL_VALUE')}: ${mercurialValue}`}
|
||||
</Text>
|
||||
)}
|
||||
{/* Saisir la valeur mercuriale → units_per_tax_unit_count */}
|
||||
{/* <Animatable.View>
|
||||
<Fumi
|
||||
iconClass={FontAwesomeIcon}
|
||||
iconName="money-bill-wave"
|
||||
label={I18n.t('MERCURIAL_VALUE')}
|
||||
iconColor="#f95a25"
|
||||
iconSize={20}
|
||||
keyboardType="decimal-pad"
|
||||
style={styles.input}
|
||||
onChangeText={(value) => {
|
||||
const units_per_tax_unit_count = [...this.state.units_per_tax_unit_count];
|
||||
units_per_tax_unit_count[index] = value;
|
||||
this.setState({ units_per_tax_unit_count });
|
||||
}}
|
||||
/>
|
||||
</Animatable.View> */}
|
||||
|
||||
{/* Saisir la valeur de la construction → building_value */}
|
||||
{this.state.built[index] && (
|
||||
<Animatable.View>
|
||||
<Fumi
|
||||
iconClass={FontAwesomeIcon}
|
||||
iconName="building"
|
||||
label={I18n.t('CONSTRUCTION_VALUE')}
|
||||
iconColor="#f95a25"
|
||||
iconSize={20}
|
||||
keyboardType="decimal-pad"
|
||||
style={styles.input}
|
||||
onChangeText={(value) => {
|
||||
const building_value = [...this.state.building_value];
|
||||
building_value[index] = value;
|
||||
this.setState({ building_value });
|
||||
}}
|
||||
/>
|
||||
</Animatable.View>
|
||||
)}
|
||||
|
||||
|
||||
</>
|
||||
)
|
||||
}
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
@ -1623,6 +1720,18 @@ handleTaxSlection = (selectedTax) => {
|
|||
/>
|
||||
</>
|
||||
)}
|
||||
<Animatable.View ref={(comp) => { this.neightborhoodAnim = comp }}>
|
||||
{console.log("ICI===>>",this.state.result)}
|
||||
{console.log("ICI===>>",this.state.result.neighborhoods)}
|
||||
<FilteredList
|
||||
items={this.state.result.neighborhoods}
|
||||
placeholder={I18n.t('FIND_A_NEIGHBORHOOD')}
|
||||
onItemSelect={(selectedItem) => {
|
||||
const id = parseInt(selectedItem.id, 10);
|
||||
this.setState({ neighborhood: selectedItem.name });
|
||||
}}
|
||||
/>
|
||||
</Animatable.View>
|
||||
|
||||
{required_taxes_only_single_tax ? (
|
||||
|
||||
|
@ -1873,18 +1982,7 @@ handleTaxSlection = (selectedTax) => {
|
|||
this.setState({neighborhood: text})
|
||||
}}/>
|
||||
</Animatable.View> */}
|
||||
<Animatable.View ref={(comp) => { this.neightborhoodAnim = comp }}>
|
||||
{console.log("ICI===>>",this.state.result)}
|
||||
{console.log("ICI===>>",this.state.result.neighborhoods)}
|
||||
<FilteredList
|
||||
items={this.state.result.neighborhoods}
|
||||
placeholder={I18n.t('FIND_A_NEIGHBORHOOD')}
|
||||
onItemSelect={(selectedItem) => {
|
||||
const id = parseInt(selectedItem.id, 10);
|
||||
this.setState({ neighborhood: selectedItem.name });
|
||||
}}
|
||||
/>
|
||||
</Animatable.View>
|
||||
|
||||
|
||||
{/* <Animatable.View>
|
||||
<Fumi iconClass={FontAwesomeIcon}
|
||||
|
@ -2216,7 +2314,7 @@ handleTaxSlection = (selectedTax) => {
|
|||
checkUserGeolocated() {
|
||||
let {myPosition, textaddress, place, indicatif, user, network, phone, phoneTransaction} = this.state;
|
||||
this.setState({isLoading: true});
|
||||
|
||||
console.log("isActif===>>", this.state.isActif);
|
||||
if (this.state.isActif) {
|
||||
let taxes_to_send = [];
|
||||
console.log("Taxes to send", this.state.taxes_selected);
|
||||
|
@ -2250,6 +2348,7 @@ handleTaxSlection = (selectedTax) => {
|
|||
district: this.state.taxes_selected[i].district
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2377,7 +2476,9 @@ handleTaxSlection = (selectedTax) => {
|
|||
id_network_tax: this.state.taxes_selected[i].id,
|
||||
number_of_days: isNil(this.state.number_of_days[i]) ? null : this.state.number_of_days[i],
|
||||
tax_units_count: isNil(this.state.tax_units_count[i]) ? null : this.state.tax_units_count[i],
|
||||
units_per_tax_unit_count: isNil(this.state.units_per_tax_unit_count[i]) ? null : this.state.units_per_tax_unit_count[i]
|
||||
units_per_tax_unit_count: isNil(this.state.units_per_tax_unit_count[i]) ? null : this.state.units_per_tax_unit_count[i],
|
||||
building_value: isNil(this.state.building_value[i]) ? null : this.state.building_value[i],
|
||||
built: isNil(this.state.built[i]) ? null : this.state.built[i],
|
||||
});
|
||||
} else {
|
||||
taxes_to_send.push({
|
||||
|
@ -2386,7 +2487,9 @@ handleTaxSlection = (selectedTax) => {
|
|||
name: this.state.taxes_selected[i].name,
|
||||
number_of_days: isNil(this.state.number_of_days[i]) ? null : this.state.number_of_days[i],
|
||||
tax_units_count: isNil(this.state.tax_units_count[i]) ? null : this.state.tax_units_count[i],
|
||||
units_per_tax_unit_count: isNil(this.state.units_per_tax_unit_count[i]) ? null : this.state.units_per_tax_unit_count[i]
|
||||
units_per_tax_unit_count: isNil(this.state.units_per_tax_unit_count[i]) ? null : this.state.units_per_tax_unit_count[i],
|
||||
building_value: isNil(this.state.building_value[i]) ? null : this.state.building_value[i],
|
||||
built: isNil(this.state.built[i]) ? null : this.state.built[i],
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -2467,98 +2570,198 @@ handleTaxSlection = (selectedTax) => {
|
|||
|
||||
let idsNetworksGroup1 = ["15", "16", "21", "17"];
|
||||
let idsNetworksGroup3 = ["14"];
|
||||
const isPP = this.state.accountType === "PP";
|
||||
const isPM = this.state.accountType === "PM";
|
||||
|
||||
if (this.isOffline) {
|
||||
console.log("STATE", this.state);
|
||||
if (((this.state.data.network.id !== "15") && (this.checkOrAlert(this.state.taxes_selected[0], `${I18n.t("THE_FIELD")} ${I18n.t("TAXE")} ${I18n.t("IS_REQUIRED")}`, true))) || ((this.state.data.network.id === "15") && !(this.checkOrAlert(this.state.taxes_selected[0], `${I18n.t("TAXE")} ${I18n.t("IS_REQUIRED")}`, true)))) {
|
||||
if (this.checkOrAlert(this.state.companies_types_selected, `${I18n.t("THE_FIELD")} ${I18n.t("SOCIETY_TYPE")} ${I18n.t("IS_REQUIRED")}`, true)) {
|
||||
if ((this.state.data.network.id !== "14") && (this.checkOrAlert(this.state.activity_type, `${I18n.t("THE_FIELD")} ${I18n.t("TYPE_ACTIVITE")} ${I18n.t("IS_REQUIRED")}`, false))) {
|
||||
if ((this.state.data.network.id !== "14") && (this.checkOrAlert(this.state.municipality, `${I18n.t("THE_FIELD")} ${I18n.t("MUNICIPALITY")} ${I18n.t("IS_REQUIRED")}`, false))) {
|
||||
if ((this.checkOrAlert(this.state.responsable_name, `${I18n.t("THE_FIELD")} ${I18n.t("NOM_RESPONSABLE")} ${I18n.t("IS_REQUIRED")}`, false))) {
|
||||
if ((this.checkOrAlert(this.state.district, `${I18n.t("THE_FIELD")} ${I18n.t("DISTRICT")} ${I18n.t("IS_REQUIRED")}`, false))) {
|
||||
if ((this.checkOrAlert(this.state.neighborhood, `${I18n.t("THE_FIELD")} ${I18n.t("NEIGHTBORHOOD")} ${I18n.t("IS_REQUIRED")}`, false))) {
|
||||
if (this.checkIfAllImagesIsOk(data)) {
|
||||
if (!this.state.addNewTaxeOdtp) {
|
||||
if (this.state.data.network.id === "18") {
|
||||
Alert.alert("", I18n.t("DO_YOU_WANT_TO_ADD_ANOTHER_TAXES"), [{
|
||||
text: I18n.t('YES'),
|
||||
onPress: () => {
|
||||
|
||||
getData(supervisorCode).then(codeSupervisor => {
|
||||
if (_.isNil(codeSupervisor)) {
|
||||
Alert.alert(
|
||||
I18n.t("ERROR_LABEL"),
|
||||
I18n.t('DATA_NOT_SYNCHRONISED_WITH_SERVER')
|
||||
,
|
||||
[
|
||||
{
|
||||
text: I18n.t("NO"),
|
||||
onPress: () => {
|
||||
BackHandler.exitApp();
|
||||
}
|
||||
},
|
||||
{
|
||||
text: I18n.t("YES"),
|
||||
onPress: () => {
|
||||
this.setState({displayLoader: true});
|
||||
}
|
||||
if (
|
||||
((this.state.data.network.id !== "15") &&
|
||||
this.checkOrAlert(
|
||||
this.state.taxes_selected[0],
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("TAXE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
true
|
||||
)) ||
|
||||
((this.state.data.network.id === "15") &&
|
||||
!this.checkOrAlert(
|
||||
this.state.taxes_selected[0],
|
||||
`${I18n.t("TAXE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
true
|
||||
))
|
||||
) {
|
||||
if (this.checkOrAlert(
|
||||
this.state.companies_types_selected,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("SOCIETY_TYPE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
true
|
||||
)) {
|
||||
if (
|
||||
(this.state.data.network.id !== "14") &&
|
||||
this.checkOrAlert(
|
||||
this.state.activity_type,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("TYPE_ACTIVITE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)) {
|
||||
if (
|
||||
(this.state.data.network.id !== "14") &&
|
||||
this.checkOrAlert(
|
||||
this.state.municipality,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("MUNICIPALITY")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)) {
|
||||
if (this.checkOrAlert(
|
||||
this.state.responsable_name,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("NOM_RESPONSABLE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)) {
|
||||
if (this.checkOrAlert(
|
||||
this.state.district,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("DISTRICT")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)) {
|
||||
if (this.checkOrAlert(
|
||||
this.state.neighborhood,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("NEIGHTBORHOOD")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)) {
|
||||
|
||||
/* ---------- NOUVEAUX CHAMPS OBLIGATOIRES ---------- */
|
||||
const isPP = this.state.accountType === "PP";
|
||||
const isPM = this.state.accountType === "PM";
|
||||
console.log("isPP isPM", this.state.accountType, isPP, isPM);
|
||||
|
||||
if (
|
||||
(isPP && // Personne Physique
|
||||
this.checkOrAlert(
|
||||
this.state.birth_date,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("BIRTH_DATE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
) &&
|
||||
this.checkOrAlert(
|
||||
this.state.birth_place,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("BIRTH_PLACE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
) &&
|
||||
this.checkOrAlert(
|
||||
this.state.birth_country,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("BIRTH_COUNTRY")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
) &&
|
||||
this.checkOrAlert(
|
||||
this.state.nationality_country,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("NATIONALITY_FORM")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
) &&
|
||||
this.checkOrAlert(
|
||||
this.state.mother_lastname,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("MOTHER_LASTNAME")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
) &&
|
||||
this.checkOrAlert(
|
||||
this.state.father_lastname,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("FATHER_LASTNAME")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)
|
||||
) ||
|
||||
(isPM && // Personne Morale
|
||||
this.checkOrAlert(
|
||||
this.state.signboard,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("SIGNBOARD")} ${I18n.t("IS_REQUIRED")}`,
|
||||
false
|
||||
)
|
||||
)
|
||||
) {
|
||||
/* ---------- VALIDATIONS OK, ON CONTINUE ---------- */
|
||||
|
||||
if (this.checkIfAllImagesIsOk(data)) {
|
||||
if (!this.state.addNewTaxeOdtp) {
|
||||
if (this.state.data.network.id === "18") {
|
||||
Alert.alert(
|
||||
"",
|
||||
I18n.t("DO_YOU_WANT_TO_ADD_ANOTHER_TAXES"),
|
||||
[
|
||||
{
|
||||
text: I18n.t("YES"),
|
||||
onPress: () => {
|
||||
getData(supervisorCode).then(codeSupervisor => {
|
||||
if (_.isNil(codeSupervisor)) {
|
||||
Alert.alert(
|
||||
I18n.t("ERROR_LABEL"),
|
||||
I18n.t("DATA_NOT_SYNCHRONISED_WITH_SERVER"),
|
||||
[
|
||||
{
|
||||
text: I18n.t("NO"),
|
||||
onPress: () => BackHandler.exitApp()
|
||||
},
|
||||
{
|
||||
text: I18n.t("YES"),
|
||||
onPress: () => this.setState({displayLoader: true})
|
||||
}
|
||||
],
|
||||
{cancelable: false}
|
||||
);
|
||||
} else {
|
||||
const codeSupervisorsData = JSON.parse(codeSupervisor);
|
||||
let dataTaxesPublicite = {};
|
||||
Object.entries(codeSupervisorsData).forEach(entry => {
|
||||
if (entry[1].network.id === "19") {
|
||||
dataTaxesPublicite = entry[1];
|
||||
}
|
||||
});
|
||||
this.setState({dataTaxesPublicite});
|
||||
}
|
||||
});
|
||||
|
||||
],
|
||||
{cancelable: false}
|
||||
);
|
||||
} else {
|
||||
|
||||
let codeSupervisorsData = JSON.parse(codeSupervisor);
|
||||
let codeSupervisors = Object.keys(codeSupervisorsData);
|
||||
let dataSupervisors = Object.entries(codeSupervisorsData);
|
||||
let dataTaxesPublicite = {};
|
||||
dataSupervisors.map((codeSupervisor, index) => {
|
||||
if (codeSupervisor[1].network.id === "19")
|
||||
dataTaxesPublicite = codeSupervisor[1];
|
||||
});
|
||||
this.setState({dataTaxesPublicite});
|
||||
this.setState({
|
||||
addNewTaxeOdtp: true,
|
||||
displayAddTaxeFromOtherNetwork: true,
|
||||
isLoading: false
|
||||
});
|
||||
this._scrollView.scrollTo(0);
|
||||
}
|
||||
},
|
||||
{
|
||||
text: I18n.t("NO"),
|
||||
onPress: () => this.submitUsagerOffline(data)
|
||||
}
|
||||
});
|
||||
|
||||
this.setState({
|
||||
addNewTaxeOdtp: true,
|
||||
displayAddTaxeFromOtherNetwork: true,
|
||||
isLoading: false
|
||||
});
|
||||
this._scrollView.scrollTo(0);
|
||||
}
|
||||
}, {
|
||||
text: I18n.t('NO'),
|
||||
onPress: () => {
|
||||
this.submitUsagerOffline(data);
|
||||
}
|
||||
}]);
|
||||
} else
|
||||
this.submitUsagerOffline(data);
|
||||
} else {
|
||||
if ((this.checkOrAlert(this.state.publicites_taxes, `${I18n.t("THE_FIELD")} ${I18n.t("TAXES_SUR_LA_PUBLICITE")} ${I18n.t("IS_REQUIRED")}`, true))) {
|
||||
this.submitUsagerOffline(data);
|
||||
} else this.setState({isLoading: false})
|
||||
}
|
||||
} else {
|
||||
Alert.alert(I18n.t("ERROR_LABEL"), I18n.t("TAXES_REQUIRED_IMAGE"), [{
|
||||
text: "Ok",
|
||||
onPress: () => {
|
||||
//this._scrollView.scrollTo(0);
|
||||
this.setState({isLoading: false});
|
||||
]
|
||||
);
|
||||
} else {
|
||||
this.submitUsagerOffline(data);
|
||||
}
|
||||
} else {
|
||||
if (this.checkOrAlert(
|
||||
this.state.publicites_taxes,
|
||||
`${I18n.t("THE_FIELD")} ${I18n.t("TAXES_SUR_LA_PUBLICITE")} ${I18n.t("IS_REQUIRED")}`,
|
||||
true
|
||||
)) {
|
||||
this.submitUsagerOffline(data);
|
||||
} else {
|
||||
this.setState({isLoading: false});
|
||||
}
|
||||
}
|
||||
}]);
|
||||
} else {
|
||||
Alert.alert(
|
||||
I18n.t("ERROR_LABEL"),
|
||||
I18n.t("TAXES_REQUIRED_IMAGE"),
|
||||
[{
|
||||
text: "Ok",
|
||||
onPress: () => this.setState({isLoading: false})
|
||||
}]
|
||||
);
|
||||
}
|
||||
|
||||
} else {
|
||||
this.setState({isLoading: false}); // PP / PM manquant
|
||||
}
|
||||
|
||||
|
||||
} else this.setState({isLoading: false})
|
||||
} else this.setState({isLoading: false})
|
||||
} else this.setState({isLoading: false});
|
||||
} else this.setState({isLoading: false});
|
||||
} else this.setState({isLoading: false});
|
||||
} else this.setState({isLoading: false});
|
||||
} else this.setState({isLoading: false});
|
||||
} else this.setState({isLoading: false}); // neighborhood
|
||||
} else this.setState({isLoading: false}); // district
|
||||
} else this.setState({isLoading: false}); // responsable_name
|
||||
} else this.setState({isLoading: false}); // municipality
|
||||
} else this.setState({isLoading: false}); // activity_type
|
||||
} else this.setState({isLoading: false}); // companies_types_selected
|
||||
} else this.setState({isLoading: false}); // taxes_selected[0]
|
||||
|
||||
} else {
|
||||
console.log("here===>>",JSON.stringify(data, null, 2));
|
||||
|
|
|
@ -160,6 +160,17 @@ export default class CreateUserStep2 extends Component {
|
|||
console.log("props", this.props);
|
||||
}
|
||||
|
||||
// Fonction de validation pour les numéros de téléphone camerounais
|
||||
validateCameroonPhoneNumber = (phoneNumber) => {
|
||||
if (!phoneNumber) {
|
||||
return false; // Si le numéro est vide, retourne false
|
||||
}
|
||||
console.log("Phone number===>>", phoneNumber);
|
||||
const trimmedPhoneNumber = phoneNumber.trim();
|
||||
const phoneRegex = /^\d{9}$/;
|
||||
return phoneRegex.test(trimmedPhoneNumber);
|
||||
}
|
||||
|
||||
createFormData = (photo) => {
|
||||
this.dataToSendTemp.append("image", {
|
||||
name: photo.path.split('/').pop(),
|
||||
|
@ -789,8 +800,7 @@ export default class CreateUserStep2 extends Component {
|
|||
}}
|
||||
iconSize={20}
|
||||
onChangeText={(text) => {
|
||||
let phonenumber = text
|
||||
this.setState({phone: phonenumber, contact: text})
|
||||
this.setState({phone: text.trim(), contact: text.trim()})
|
||||
}}
|
||||
style={{
|
||||
|
||||
|
@ -811,8 +821,7 @@ export default class CreateUserStep2 extends Component {
|
|||
}}
|
||||
iconSize={20}
|
||||
onChangeText={(text) => {
|
||||
let phonenumber = text
|
||||
this.setState({phoneTransaction: phonenumber, contactTransaction: text})
|
||||
this.setState({phoneTransaction: text.trim(), contactTransaction: text.trim()})
|
||||
}}
|
||||
style={{
|
||||
|
||||
|
@ -1212,7 +1221,16 @@ export default class CreateUserStep2 extends Component {
|
|||
|
||||
checkUserGeolocated() {
|
||||
let {myPosition, textaddress, place, indicatif, user, network, phone, phoneTransaction} = this.state;
|
||||
this.setState({isLoading: true})
|
||||
this.setState({isLoading: true});
|
||||
// Validation des numéros de téléphone
|
||||
const isPhoneValid = this.validateCameroonPhoneNumber(phone);
|
||||
const isPhoneTransactionValid = this.validateCameroonPhoneNumber(phoneTransaction);
|
||||
|
||||
if (!isPhoneValid || !isPhoneTransactionValid) {
|
||||
Alert.alert("Erreur", "Les numéros de téléphone doivent être des numéros camerounais valides de 9 chiffres (ex: 656391882).");
|
||||
this.setState({isLoading: false});
|
||||
return;
|
||||
}
|
||||
if (user !== undefined) {
|
||||
if (this.checkOrShake(phone, this.numanim)) {
|
||||
if (this.checkOrShake(network, this.networkanim)) {
|
||||
|
|
|
@ -132,6 +132,8 @@ export default class SplashScreen extends Component {
|
|||
}
|
||||
|
||||
componentDidMount() {
|
||||
console.log("ComponentDidMount===>>")
|
||||
this.retreiveSupervisorInfosCode();
|
||||
try {
|
||||
this.requestCameraPermission()
|
||||
} catch (e) {
|
||||
|
@ -197,15 +199,16 @@ export default class SplashScreen extends Component {
|
|||
}
|
||||
|
||||
retreiveSupervisorInfosCode() {
|
||||
console.log("RETRIEVE SUPERVISOR INFOS CODE");
|
||||
getSupervisorInfoCode().then((result) => {
|
||||
console.warn("SUPERVISOR INFOS CODE", JSON.stringify(result));
|
||||
console.warn("SUPERVISOR INFOS CODE_", JSON.stringify(result));
|
||||
storeData(supervisorCode, JSON.stringify(result)).then(() => {
|
||||
getData(supervisorCode).then(resultGet => {
|
||||
console.log("DATA FROM ASYNC STORAGE", resultGet);
|
||||
});
|
||||
});
|
||||
}).catch(error => {
|
||||
console.log(error);
|
||||
console.log("errorGetSupervisorInfoCode", error);
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -756,5 +756,8 @@
|
|||
"SIGNBOARD": "Acronym *",
|
||||
"CREATION_DATE": "Creation Date",
|
||||
"TECHNICAL_APPROVAL": "Technical Approval",
|
||||
"TRADE_LICENSE": "Business License"
|
||||
"TRADE_LICENSE": "Business License",
|
||||
"MERCURIAL_VALUE": "Mercurial Value ",
|
||||
"CONSTRUCTION_VALUE": "Enter the Construction Value",
|
||||
"BUILDING_CONSTRUCTED": "Building Constructed"
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"WELCOME": "Bienvenue sur iLink City !",
|
||||
"WELCOME": "Bienvenue sur SIM_ba Mobile !",
|
||||
"WAITING_LONG": "Veuillez patienter un instant",
|
||||
"HELP": "Aide",
|
||||
"SIMPLE_USER": "Utilisateur simple",
|
||||
|
@ -384,7 +384,7 @@
|
|||
"OK": "OK",
|
||||
"SIMPLE": "Simple",
|
||||
"BLOCKED": "Bloqué",
|
||||
"APP_FULLNAME": "Ilink City",
|
||||
"APP_FULLNAME": "SIM_ba Mobile",
|
||||
"GUIDE_TITLE": "Bienvenue dans le Guide de",
|
||||
"GUIDE_USER_SIMPLE": "Guide pour un utilisateur",
|
||||
"GUIDE_AGENT": "Guide pour un agent",
|
||||
|
@ -546,8 +546,8 @@
|
|||
"MEMBERSHIP_REQUEST": "Demandes d'adhésion",
|
||||
"HISTORY_TYPE_REQUEST": "Requêtes",
|
||||
"TREAT": "Traité",
|
||||
"EXIT_TITLE": "Fermer iLink City !",
|
||||
"EXIT_DESC": "Voulez-vous vraiment fermer iLink City ?",
|
||||
"EXIT_TITLE": "Fermer SIM_ba Mobile !",
|
||||
"EXIT_DESC": "Voulez-vous vraiment fermer SIM_ba Mobile ?",
|
||||
"NO_TREAT": "Non traité",
|
||||
"EXIT": "Fermer",
|
||||
"PERIOD": "Période",
|
||||
|
@ -560,7 +560,7 @@
|
|||
"ACCOUNT_ACTIVATE_TEXT": "Votre compte a été activé avec succès !",
|
||||
"HISTORY_END": "Fin",
|
||||
"DONT_VALIDATE_ACCOUNT": "Compte non validé",
|
||||
"CONNEXION_SUCCESSFULL_TEXT": "Connexion réussie. Bienvenue dans iLink City ! ",
|
||||
"CONNEXION_SUCCESSFULL_TEXT": "Connexion réussie. Bienvenue dans SIM_ba Mobile ! ",
|
||||
"UNVALIDATE_ACCOUNT_TEXT": "Votre hyperviseur n'a pas encore validé votre compte",
|
||||
"TEXT_NEED_POSITION": "Veuillez mettre à jour votre position !",
|
||||
"TITLE_NEED_POSITION": "Votre position doit être mise à jour",
|
||||
|
@ -573,12 +573,12 @@
|
|||
"TITLE_PROBLE_COME": "Un problème a été rencontré",
|
||||
"TITLE_SUPPRESS_CONFIRM": "Confirmation de suppression",
|
||||
"TEXT_SUPPRESS_CONFIRM": "Voulez vous vraiment supprimer cet utilisateur ?",
|
||||
"TEXT_ERROR_START_APPLICATION": "Une erreur est survenue au démarrage de iLink City. Veuillez relancer iLink City",
|
||||
"TEXT_UNABLE_TO_GET_YOUR_POSITION": "Impossible de recupérez votre position. Veuillez verifier que votre GPS est activé et relancez iLink City",
|
||||
"TEXT_ERROR_START_APPLICATION": "Une erreur est survenue au démarrage de SIM_ba Mobile. Veuillez relancer SIM_ba Mobile",
|
||||
"TEXT_UNABLE_TO_GET_YOUR_POSITION": "Impossible de recupérez votre position. Veuillez verifier que votre GPS est activé et relancez SIM_ba Mobile",
|
||||
"RESTART": "RECOMMENCER",
|
||||
"TEXT_UNABLE_TO_GET_COUNTRY_INFO": "Impossible de recupérer les informations de votre pays. Verifiez votre connexion internet ! cliquez sur \"Ok\" pour reessayer",
|
||||
"TITLE_UNABLE_TO_AUTORISE": "Echec de l'autorisation",
|
||||
"MISSING_AUTORISATION_LOCATION": "iLink City n'est pas autorisé à acceder à votre position. Veuillez autoriser iLink City à accéder à votre localisation et relancez iLink City",
|
||||
"MISSING_AUTORISATION_LOCATION": "SIM_ba Mobile n'est pas autorisé à acceder à votre position. Veuillez autoriser SIM_ba Mobile à accéder à votre localisation et relancez SIM_ba Mobile",
|
||||
"TEXT_FORGOTTEN_PASSWORD": "Saisissez votre identifiant,nous vous enverrons un nouveau mot de passe\n",
|
||||
"TEXT_NETWORK_UNABLE": "Réseau non disponible, voulez vous réessayer ?",
|
||||
"LOADING_TEXT_MARKERS": "Suite des points ",
|
||||
|
@ -587,7 +587,7 @@
|
|||
"LAUNCH_POINT_WITH_FILTER": "Voulez-vous relancer la recherche dans un rayon de ",
|
||||
"LOADING_TEXT_MARKERS_2": "autour",
|
||||
"UNABLE_GET_INFORMATION": "Problème de récuperation des Informations",
|
||||
"UNABLE_GET_INFORMATION_TEXT": "Vérifiez que votre GPS est activé et mis en mode haute precision et relancez iLink City",
|
||||
"UNABLE_GET_INFORMATION_TEXT": "Vérifiez que votre GPS est activé et mis en mode haute precision et relancez SIM_ba Mobile",
|
||||
"TITLE_HELP_SOON": "Aide non disponible !",
|
||||
"YOUR_NETWORK": "Sélectionner votre réseau",
|
||||
"YOUR_NETWORK_SELECTED": "Classe de la taxe",
|
||||
|
@ -662,7 +662,7 @@
|
|||
"CREATE_ACTIF": "Créer un actif",
|
||||
"IMPOSSIBLE_TO_CONNECT_INTERNET": "Vérifier votre connexion internet. Voulez-vous réessayer ?",
|
||||
"REGISTER_OPTIONS": "Options d'enregistrement",
|
||||
"WOULD_YOU_WANT_TO_REGISTER_OFFLINE": "Voulez-vous enregistrer un usager en ligne ?",
|
||||
"WOULD_YOU_WANT_TO_REGISTER_OFFLINE": "Voulez-vous enregistrer un contribuable en ligne ?",
|
||||
"DATA_NOT_SYNCHRONISED_WITH_SERVER": "Les données nécessaires au mode offline n'ont pas été sauvegarder. Voulez-vous vous connecter et réessayez ?",
|
||||
"CODE_AGENT_NOT_EXIST": "Ce code agent n'existe pas",
|
||||
"FOR_THIS_KING_OF_USER_PLEASE_CONNECT": "Pour enregistrer ce type d'agent, veuillez vous connecter",
|
||||
|
@ -672,13 +672,13 @@
|
|||
"HOW_WOULD_YOU_WANT_TO_TAKE_IMAGE": "Comment voulez-vous prendre l'image?",
|
||||
"FROM_GALLERY": "Depuis la galerie",
|
||||
"FROM_CAMERA": "Depuis la caméra",
|
||||
"USAGER_SAVED_SUCCESSFULLY": "Usager enregistré avec succès sur votre mobile",
|
||||
"USAGER_SAVED_SUCCESSFULLY": "contribuable enregistré avec succès sur votre mobile",
|
||||
"ACTIF_SAVED_SUCCESSFULLY": "Actif enregistré avec succès sur votre mobile",
|
||||
"SAUVEGARDER_OF_USAGER": "Création des comptes usagers: ",
|
||||
"SAUVEGARDER_OF_USAGER_LOADING_SAVE": "Création des comptes usagers sauvegardés... ",
|
||||
"SAUVEGARDER_OF_USAGER": "Création des contribuables: ",
|
||||
"SAUVEGARDER_OF_USAGER_LOADING_SAVE": "Création des contribuables sauvegardés... ",
|
||||
"SAUVEGARDER_OF_ACTIF_LOADING_SAVE": "Création des actifs sauvegardés... ",
|
||||
"LIMITE_ACTIF_LOCAL_ATTEINTE": "Vous avez enregistré de nombreux actifs, veuillez les synchroniser avant de réessayer",
|
||||
"LIMITE_USAGER_LOCAL_ATTEINTE": "Vous avez enregistré de nombreux usagers, veuillez les synchroniser avant de réessayer",
|
||||
"LIMITE_USAGER_LOCAL_ATTEINTE": "Vous avez enregistré de nombreux contribuables, veuillez les synchroniser avant de réessayer",
|
||||
"DO_YOU_WANT_TO_ADD_ANOTHER_TAXES": "Voulez-vous rajouter une taxe sur la publicité ?",
|
||||
"TAXES_SUR_LA_PUBLICITE": "Taxes sur la publicité",
|
||||
"TAXE_REQUIRED_IMAGE": "L'image est requise pour la taxe",
|
||||
|
@ -712,10 +712,10 @@
|
|||
"AMOUNT_ORDRE_RECETTE": "Montant de l'ordre de recette",
|
||||
"AMOUNT_TAX_NOTICE": "Montant de la déclaration",
|
||||
"YOU_CANT_DELETE_LAST_TAX_NOTICE": "Une quittance doit contenir au moins un ordre de recette",
|
||||
"WOULD_YOU_WANT_SEARCH_BY_NAME": "Voulez-vous rechercher l'usager par son nom ?",
|
||||
"USAGER_NAME": "Nom de l'usager",
|
||||
"NO_USAGER_CORRESPONDING_TO_SEARCH": "Aucun usager ne correspond à votre recherche",
|
||||
"USAGER_SEARCH": "Recherche d'un usager",
|
||||
"WOULD_YOU_WANT_SEARCH_BY_NAME": "Voulez-vous rechercher le contribuable par son nom ?",
|
||||
"USAGER_NAME": "Nom du contribuable",
|
||||
"NO_USAGER_CORRESPONDING_TO_SEARCH": "Aucun contribuable ne correspond à votre recherche",
|
||||
"USAGER_SEARCH": "Recherche d'un contribuable",
|
||||
"BY_NAME": "Par nom",
|
||||
"BY_QR_CODE": "Par QR Code",
|
||||
"SCAN": "Scanner",
|
||||
|
@ -756,5 +756,8 @@
|
|||
"SIGNBOARD": "Sigle *",
|
||||
"CREATION_DATE": "Date de création",
|
||||
"TECHNICAL_APPROVAL": "Agrément technique",
|
||||
"TRADE_LICENSE": "Patente"
|
||||
"TRADE_LICENSE": "Patente",
|
||||
"MERCURIAL_VALUE": "Valeur mercuriale ",
|
||||
"CONSTRUCTION_VALUE": "Saisir la valeur de la construction",
|
||||
"BUILDING_CONSTRUCTED": "Immeuble bâti"
|
||||
}
|
||||
|
|
|
@ -103,7 +103,9 @@ async function queryData(data, url) {
|
|||
body: JSON.stringify(data),
|
||||
});
|
||||
let responseJson = null;
|
||||
console.log("response1===>>",data,response)
|
||||
let responseText = await response.text()
|
||||
console.log("response2===>>",data,responseText)
|
||||
try {
|
||||
console.warn("SERVER RESPONSE SUCCESS", responseText);
|
||||
responseJson = JSON.parse(responseText)
|
||||
|
|
|
@ -1,36 +1,16 @@
|
|||
export const isDebugMode = false
|
||||
//base url test
|
||||
//export const baseUrl = "https://ilink-app.com/mobilebackendbeta"
|
||||
//base url production
|
||||
//export const baseUrl = "https://ilink-app.com/mobilebackend";
|
||||
//export const baseUrl = "https://test.ilink-app.com/mobilebackendtest";
|
||||
//export const baseUrl = "http://test.ilink-app.com:8080/mobilebackendtest";
|
||||
//const baseUrl = "https://ilink-app.com/mobilebackendtest2";
|
||||
|
||||
/*export const baseUrl = "http://city.ilink-app.com:8080/mobilebackend";
|
||||
export const testBaseUrl = "https://city.ilink-app.com:8081";*/
|
||||
// PROD URL
|
||||
// export const baseUrl = "https://city-douala3.ilink-app.com:8080/mobilebackend";
|
||||
// export const testBaseUrl= "https://city-douala3.ilink-app.com:8081";
|
||||
|
||||
export const baseUrl = "https://city-douala3.ilink-app.com:8080/mobilebackend";
|
||||
export const testBaseUrl= "https://city-douala3.ilink-app.com:8081";
|
||||
|
||||
//CUD
|
||||
// export const baseUrl = "https://test-cud.ilink-app.com:9080/mobilebackend";
|
||||
// export const testBaseUrl = "https://test-cud.ilink-app.com:9081";
|
||||
|
||||
|
||||
// les derniers api modifiers commune X
|
||||
// export const baseUrl = "http://test-city.ilink-app.com:8080/mobilebackend";
|
||||
// export const testBaseUrl = "https://test-city.ilink-app.com:8081";
|
||||
// TEST URL
|
||||
export const baseUrl = "https://test-city-douala3.ilink-app.com:9080/mobilebackend";
|
||||
export const testBaseUrl= "https://test-city-douala3.ilink-app.com:9081";
|
||||
|
||||
|
||||
|
||||
|
||||
/* export const baseUrl = "https://preprod.ilink-app.com:8080/mobilebackend";
|
||||
export const testBaseUrl = "https://preprod.ilink-app.com"; */
|
||||
|
||||
//base url agent test
|
||||
//const baseUrl = "https://ilink-app.com/mobilebackendtest";
|
||||
|
||||
export const adhesionUrl = baseUrl + '/interacted/LoginAction.php';
|
||||
export const memberActionUrl = baseUrl + '/interacted/MembersAction.php';
|
||||
export const networkActionUrl = baseUrl + '/interacted/NetworkAction.php';
|
||||
|
|
|
@ -3,9 +3,11 @@ import React, {Component} from 'react';
|
|||
var db = require('./persistences/db.js');
|
||||
import I18n from 'react-native-i18n'
|
||||
import {readUser} from './AuthApi'
|
||||
import {isDebugMode, MARKER_URL, mobileAppVersion, opencageDataApiUrl} from "./IlinkConstants";
|
||||
import {isDebugMode, MARKER_URL, mobileAppVersion, opencageDataApiUrl, testBaseUrl} from "./IlinkConstants";
|
||||
|
||||
let GEOCODDING_URL = "https://city-douala3.ilink-app.com:8081/geocode";
|
||||
// let GEOCODDING_URL = "https://city-douala3.ilink-app.com:8081/geocode";
|
||||
let GEOCODDING_URL = testBaseUrl + "/geocode"
|
||||
console.log("GEOCODDING_URL===>>",GEOCODDING_URL)
|
||||
let API_KEY = "AIzaSyAme0ZMQjUynvo6AeSVlMRzUPdcOSuPbZE"
|
||||
export const getLocalMarkers = () => {
|
||||
return db.markers.get_all()
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import {AsyncStorage} from "react-native";
|
||||
|
||||
export const storeData = async (key, value) => {
|
||||
console.log("Store data ===>>")
|
||||
return new Promise(async (resolve, reject) => {
|
||||
try {
|
||||
const val = await AsyncStorage.setItem(key, value);
|
||||
|
|
Loading…
Reference in New Issue