Modification consultation ok

This commit is contained in:
Brice Zele 2022-01-04 12:42:58 +01:00
parent f86b879396
commit 35c1884e17
18 changed files with 3173 additions and 39 deletions

2
App.js
View File

@ -90,6 +90,7 @@ import SaisirFeuilleSoinScreen from "./screens/wallet/agent/SaisirFeuilleSoinScr
import ValidateConsultationScreen from "./screens/wallet/user/ValidateConsultationScreen"; import ValidateConsultationScreen from "./screens/wallet/user/ValidateConsultationScreen";
import ValidateConsultationDetailScreen from "./screens/wallet/user/ValidateConsultationDetailScreen"; import ValidateConsultationDetailScreen from "./screens/wallet/user/ValidateConsultationDetailScreen";
import ExecuterPrescriptionScreen from "./screens/wallet/agent/ExecuterPrescriptionScreen"; import ExecuterPrescriptionScreen from "./screens/wallet/agent/ExecuterPrescriptionScreen";
import ModifierFeuilleSoinScreen from "./screens/wallet/agent/ModifierFeuilleSoinScreen";
const instructions = Platform.select({ const instructions = Platform.select({
@ -258,6 +259,7 @@ const AppAgentStack = createDrawerNavigator({
creditrequest: HistoryRequester, creditrequest: HistoryRequester,
saisirFeuilleSoinScreen: SaisirFeuilleSoinScreen, saisirFeuilleSoinScreen: SaisirFeuilleSoinScreen,
executerPrescriptionScreen: ExecuterPrescriptionScreen, executerPrescriptionScreen: ExecuterPrescriptionScreen,
modifierFeuilleSoinScreen: ModifierFeuilleSoinScreen,
addNetwork: AddNetwork, addNetwork: AddNetwork,
updateinformation: UpdateInformations, updateinformation: UpdateInformations,
notificationview: Notifications, notificationview: Notifications,

File diff suppressed because one or more lines are too long

View File

@ -69,5 +69,6 @@
"souscrireAssuranceUser": "souscrireAssuranceUser", "souscrireAssuranceUser": "souscrireAssuranceUser",
"askPrestationUser": "askPrestationUser", "askPrestationUser": "askPrestationUser",
"saisirFeuilleSoinScreen": "saisirFeuilleSoinScreen", "saisirFeuilleSoinScreen": "saisirFeuilleSoinScreen",
"executerPrescriptionScreen": "executerPrescriptionScreen" "executerPrescriptionScreen": "executerPrescriptionScreen",
"modifierFeuilleSoinScreen": "modifierFeuilleSoinScreen",
} }

View File

@ -663,6 +663,7 @@
"PRESTATION_SUCCESSFULLY_ADD": "Prestation ajouté avec succès", "PRESTATION_SUCCESSFULLY_ADD": "Prestation ajouté avec succès",
"EXAMENS_SUCCESSFULLY_ADD": "Examens ajouté avec succès", "EXAMENS_SUCCESSFULLY_ADD": "Examens ajouté avec succès",
"PRESCRIPTIONS_SUCCESSFULLY_ADD": "Prescription ajouté avec succès", "PRESCRIPTIONS_SUCCESSFULLY_ADD": "Prescription ajouté avec succès",
"PRESCRIPTIONS_SUCCESSFULLY_MODIFY": "Prescription modifié avec succès",
"YOU_MUST_ADD_AT_LEAST_ONE_PRESTATION": "Vous devez ajouter au moins une prestation", "YOU_MUST_ADD_AT_LEAST_ONE_PRESTATION": "Vous devez ajouter au moins une prestation",
"NO_DRUG_MATCH_YOU_SEARCH": "Aucun médicament ne correspond à votre rechercher, voulez-vous en ajouter ?", "NO_DRUG_MATCH_YOU_SEARCH": "Aucun médicament ne correspond à votre rechercher, voulez-vous en ajouter ?",
"COMPRESSED": "Comprimé", "COMPRESSED": "Comprimé",
@ -680,5 +681,13 @@
"REJECT": "Rejeter", "REJECT": "Rejeter",
"DETAIL": "Détail", "DETAIL": "Détail",
"NO_CONSULTATION_DEMAND": "Aucune demande de consultation", "NO_CONSULTATION_DEMAND": "Aucune demande de consultation",
"LIST_CONSULTATION": "Liste des consultations" "LIST_CONSULTATION": "Liste des consultations",
"MODIFY_CONSULTATION": "Modifier une consultation",
"MEDICAMENTS": "Médicaments",
"MODIFIER_MEDICAMENT": "Modifier médicament",
"MODIFIER_EXAMEN": "Modifier examen",
"EXAMENS_SUCCESSFULLY_MODIFY": "Examen modifié avec succès",
"PRESTATION_SUCCESSFULLY_MODIFY": "Prestation modifié avec succès",
"MODIFY_PRESTATION": "Modifier une prestation",
"LIST_PRESTATION": "Liste des prestation"
} }

View File

@ -485,9 +485,10 @@ export const fetchGetConsultationError = (error: any) => ({
payload: error, payload: error,
}); });
export const fetchGetConsultation = (user_id, state = 'UNTREATED', typeParam = 'CONSULTATION') => { export const fetchGetConsultation = (user_id, state = 'UNTREATED', typeParam = 'CONSULTATION', otherParam = '') => {
console.log("user_id", user_id);
return ApiAction({ return ApiAction({
url: `${consultationUrl}?user_id=${user_id}&state=${state}&type=${typeParam}`, url: `${consultationUrl}?user_id=${user_id}&state=${state}&type=${typeParam}${otherParam}`,
method: 'GET', method: 'GET',
onLoading: fetchGetConsultationPending, onLoading: fetchGetConsultationPending,
onSuccess: fetchGetConsultationSuccess, onSuccess: fetchGetConsultationSuccess,
@ -554,3 +555,33 @@ export const fetchExecutionPrescription = (data) => {
onError: fetchExecutionPrescriptionError, onError: fetchExecutionPrescriptionError,
}); });
}; };
/************************************************************/
export const fetchModifyPrescriptionPending = () => ({
type: InsuranceActions.MODIFY_PRESCRIPTION_PENDING,
});
export const fetchModifyPrescriptionReset = () => ({
type: InsuranceActions.MODIFY_PRESCRIPTION_RESET,
});
export const fetchModifyPrescriptionSuccess = (authkey: any) => ({
type: InsuranceActions.MODIFY_PRESCRIPTION_SUCCESS,
payload: authkey,
});
export const fetchModifyPrescriptionError = (error: any) => ({
type: InsuranceActions.MODIFY_PRESCRIPTION_ERROR,
payload: error,
});
export const fetchModifyPrescription = (id, data) => {
return ApiAction({
url: `${consultationUrl}/${id}`,
method: 'PUT',
data,
onLoading: fetchModifyPrescriptionPending,
onSuccess: fetchModifyPrescriptionSuccess,
onError: fetchModifyPrescriptionError,
});
};

View File

@ -557,3 +557,33 @@ export const executionPrescriptionReducer = (state = INITIAL_STATE, action: Insu
} }
}; };
export const modifyPrescriptionReducer = (state = INITIAL_STATE, action: InsuranceActions) => {
switch (action.type) {
case InsuranceActions.MODIFY_PRESCRIPTION_PENDING:
return {
...state,
loading: true
}
case InsuranceActions.MODIFY_PRESCRIPTION_SUCCESS:
return {
loading: false,
result: action.payload,
error: null
}
case InsuranceActions.MODIFY_PRESCRIPTION_ERROR:
return {
...state,
loading: false,
result: null,
error: action.payload
}
case InsuranceActions.MODIFY_PRESCRIPTION_RESET:
return INITIAL_STATE;
default:
return state
}
};

View File

@ -25,6 +25,7 @@ const selectGetAmountConsultationReducer = (state) => state.getAmountConsultatio
const selectGetConsultationReducer = (state) => state.getConsultationReducer; const selectGetConsultationReducer = (state) => state.getConsultationReducer;
const selectAcceptRefuseConsultationReducer = (state) => state.acceptOrRejectConsultationReducer; const selectAcceptRefuseConsultationReducer = (state) => state.acceptOrRejectConsultationReducer;
const selectExecutionPrescriptionReducerReducer = (state) => state.executionPrescriptionReducer; const selectExecutionPrescriptionReducerReducer = (state) => state.executionPrescriptionReducer;
const selectModifyPrescriptionReducer = (state) => state.modifyPrescriptionReducer;
export const selectInsuranceList = createSelector( export const selectInsuranceList = createSelector(
[selectInsuranceListReducer], [selectInsuranceListReducer],
@ -105,3 +106,8 @@ export const selectExecutionPrescription = createSelector(
[selectExecutionPrescriptionReducerReducer], [selectExecutionPrescriptionReducerReducer],
(executionPrescription) => executionPrescription (executionPrescription) => executionPrescription
); );
export const selectModifyPrescription = createSelector(
[selectModifyPrescriptionReducer],
(modifyPrescriptionReducer) => modifyPrescriptionReducer
);

View File

@ -95,5 +95,10 @@ const InsuranceActions = {
EXECUTION_PRESCRIPTION_SUCCESS: 'EXECUTION_PRESCRIPTION_SUCCESS', EXECUTION_PRESCRIPTION_SUCCESS: 'EXECUTION_PRESCRIPTION_SUCCESS',
EXECUTION_PRESCRIPTION_ERROR: 'EXECUTION_PRESCRIPTION_ERROR', EXECUTION_PRESCRIPTION_ERROR: 'EXECUTION_PRESCRIPTION_ERROR',
EXECUTION_PRESCRIPTION_RESET: 'EXECUTION_PRESCRIPTION_RESET', EXECUTION_PRESCRIPTION_RESET: 'EXECUTION_PRESCRIPTION_RESET',
MODIFY_PRESCRIPTION_PENDING: 'MODIFY_PRESCRIPTION_PENDING',
MODIFY_PRESCRIPTION_SUCCESS: 'MODIFY_PRESCRIPTION_SUCCESS',
MODIFY_PRESCRIPTION_ERROR: 'MODIFY_PRESCRIPTION_ERROR',
MODIFY_PRESCRIPTION_RESET: 'MODIFY_PRESCRIPTION_RESET',
} }
export default InsuranceActions; export default InsuranceActions;

View File

@ -63,7 +63,7 @@ import {
getSubscriptionListReducer, getSubscriptionListReducer,
getUserByIdQRCodeReducer, getUserByIdQRCodeReducer,
getUserByNameOrNumberReducer, getUserByNameOrNumberReducer,
insuranceListReducer, insuranceListReducer, modifyPrescriptionReducer,
subscribeInsuranceReducer, subscribeInsuranceReducer,
uploadInsuranceImagesReducer uploadInsuranceImagesReducer
} from "../insurance/insurance.reducer"; } from "../insurance/insurance.reducer";
@ -170,7 +170,8 @@ const rootReducer = persistCombineReducers(persistConfig, {
getAmountConsultationReducer: getAmountConsultationReducer, getAmountConsultationReducer: getAmountConsultationReducer,
getConsultationReducer: getConsultationReducer, getConsultationReducer: getConsultationReducer,
acceptOrRejectConsultationReducer: acceptOrRejectConsultationReducer, acceptOrRejectConsultationReducer: acceptOrRejectConsultationReducer,
executionPrescriptionReducer: executionPrescriptionReducer executionPrescriptionReducer: executionPrescriptionReducer,
modifyPrescriptionReducer: modifyPrescriptionReducer
}); });
export default rootReducer; export default rootReducer;

View File

@ -69,5 +69,6 @@
"souscrireAssuranceUser": "souscrireAssuranceUser", "souscrireAssuranceUser": "souscrireAssuranceUser",
"askPrestationUser": "askPrestationUser", "askPrestationUser": "askPrestationUser",
"saisirFeuilleSoinScreen": "saisirFeuilleSoinScreen", "saisirFeuilleSoinScreen": "saisirFeuilleSoinScreen",
"executerPrescriptionScreen": "executerPrescriptionScreen" "executerPrescriptionScreen": "executerPrescriptionScreen",
"modifierFeuilleSoinScreen": "modifierFeuilleSoinScreen",
} }

View File

@ -1666,8 +1666,7 @@ class Home extends BaseScreen {
barStyle="light-content" barStyle="light-content"
translucent={true} translucent={true}
/> />
{/* Start here to comment */} {
{/* {
(this.state.loadingDialog || this.props.loading) ? (this.state.loadingDialog || this.props.loading) ?
<View <View
style={{ style={{
@ -1720,7 +1719,7 @@ class Home extends BaseScreen {
} }
}]) }])
}} }}
/>*/} />
{this.makeCardSearch()} {this.makeCardSearch()}
{this.showInterticiel()} {this.showInterticiel()}
{this.makeSlidingUp()} {this.makeSlidingUp()}

View File

@ -272,8 +272,8 @@ export default class OptionsMenu extends Component {
|| item === 'envoieCashVersCarteAgent' || item === 'modifyIdentificationUser' || item === 'createGroupNanoCredit' || item === 'groupNanoCredit' || item === 'demandeValidationGroupe' || item === 'envoieCashVersCarteAgent' || item === 'modifyIdentificationUser' || item === 'createGroupNanoCredit' || item === 'groupNanoCredit' || item === 'demandeValidationGroupe'
|| item === 'adhererGroupNanoCredit' || item === 'myNanoCreditGroup' || item === 'askNanoCredit' || item === 'refundNanoCreditUser' || item === 'cautionNanoCreditAgent' || item === 'adhererGroupNanoCredit' || item === 'myNanoCreditGroup' || item === 'askNanoCredit' || item === 'refundNanoCreditUser' || item === 'cautionNanoCreditAgent'
|| item === 'epargnerArgentUser' || item === 'askNanoCredit' || item === 'casserEpargneUser' || item === 'envoieWalletToBankAgent' || item === 'reattachAccountUser' || item === 'insuranceSubscriptionScreen' || item === 'epargnerArgentUser' || item === 'askNanoCredit' || item === 'casserEpargneUser' || item === 'envoieWalletToBankAgent' || item === 'reattachAccountUser' || item === 'insuranceSubscriptionScreen'
|| item === 'addBeneficiaryScreen' || item === 'activateBuySubscriptionScreen' || item === 'saisirFeuilleSoinScreen' || item === 'validateConsultationScreen' || item === 'validateConsultationDetailScreen' || item === 'addBeneficiaryScreen' || item === 'activateBuySubscriptionScreen' || item === 'saisirFeuilleSoinScreen' || item === 'validateConsultationScreen' || item === 'validateConsultationDetailScreen'
|| item === 'executerPrescriptionScreen') { || item === 'executerPrescriptionScreen' || item === 'modifierFeuilleSoinScreen') {
return null return null
} else { } else {
const color = this.state.currentId === item.id ? theme.accent : "grey" const color = this.state.currentId === item.id ? theme.accent : "grey"

View File

@ -51,6 +51,11 @@ import {getUserIdentificationAction} from "../../webservice/IdentificationApi";
import {store} from "../../redux/store"; import {store} from "../../redux/store";
import FontAwesome5 from "react-native-vector-icons/FontAwesome5"; import FontAwesome5 from "react-native-vector-icons/FontAwesome5";
import FontAwesome from "react-native-vector-icons/FontAwesome"; import FontAwesome from "react-native-vector-icons/FontAwesome";
import {
fetchGetAmountConsultationReset, fetchGetConsultationReset, fetchGetNetworkActsReset, fetchGetProviderClassReset,
fetchGetSubscriptionListReset, fetchGetUserByIdQRCodeReset,
fetchGetUserByNameOrNumberReset
} from "../../redux/insurance/insurance.actions";
const route = require('./../../route.json'); const route = require('./../../route.json');
let slugify = require('slugify'); let slugify = require('slugify');
@ -117,6 +122,15 @@ class WalletOptionSelect extends Component {
} }
} }
} }
this.props.fetchGetSubscriptionListReset();
this.props.fetchGetUserByNameOrNumberReset();
this.props.fetchGetUserByIdQRCodeReset();
this.props.fetchGetProviderClassReset();
this.props.fetchGetConsultationReset();
this.props.fetchGetNetworkActsReset();
}); });
}); });
} }
@ -1257,6 +1271,13 @@ const mapDispatchToProps = dispatch => bindActionCreators({
getNanoCreditUserHistoryAction, getNanoCreditUserHistoryAction,
getNanoCreditUserHistoryReset, getNanoCreditUserHistoryReset,
fetchGetSubscriptionListReset,
fetchGetUserByNameOrNumberReset,
fetchGetUserByIdQRCodeReset,
fetchGetProviderClassReset,
fetchGetConsultationReset,
fetchGetNetworkActsReset,
getWalletDetailActivated, getWalletDetailActivated,
getUserIdentificationAction, getUserIdentificationAction,
getWalletTransactionHistoryUser getWalletTransactionHistoryUser

View File

@ -260,6 +260,7 @@ const ExecuterPrescriptionScreen = ({
const [showQRCodeScanner, setShowQRCodeScanner] = useState(false); const [showQRCodeScanner, setShowQRCodeScanner] = useState(false);
const [wallet] = useState(store.getState().walletDetailReducer.result.response); const [wallet] = useState(store.getState().walletDetailReducer.result.response);
console.log("Wallet", wallet);
const [isNumeroAssureSearch, setIsNumeroAssureSearch] = useState(true); const [isNumeroAssureSearch, setIsNumeroAssureSearch] = useState(true);
@ -639,10 +640,14 @@ const ExecuterPrescriptionScreen = ({
<FlatList data={getUserByNameOrNumber.result?.response} <FlatList data={getUserByNameOrNumber.result?.response}
extraData={getUserByNameOrNumber.result?.response} extraData={getUserByNameOrNumber.result?.response}
ListEmptyComponent={<Text body2>{I18n.t('NO_ASSURE_MATCH_SEARCH')}</Text>}
keyExtractor={(item, index) => index} keyExtractor={(item, index) => index}
renderItem={({item, index}) => { renderItem={({item, index}) => {
return ( return (
<View style={{
paddingVertical: 15,
alignItems: 'flex-start',
}}>
<TouchableOpacity <TouchableOpacity
style={[ style={[
styles.contentActionModalBottom, styles.contentActionModalBottom,
@ -677,6 +682,33 @@ const ExecuterPrescriptionScreen = ({
{`${item.user.firstname} ${item.user.lastname}`} {`${item.user.firstname} ${item.user.lastname}`}
</Text> </Text>
</TouchableOpacity> </TouchableOpacity>
{item.beneficiaries.map((beneficiary) => (
<TouchableOpacity style={styles.beneficiarySubSection}
onPress={() => {
setAssure(item);
setBeneficiary(beneficiary);
setStatutPatient(0);
setModalListAssure(false);
setFieldValue(
'lastname_patient',
beneficiary.lastname,
);
setFieldValue(
'firstname_patient',
beneficiary.firstname,
);
fetchGetConsultation(beneficiary.id, 'TO_BILL', 'CONSULTATION');
}}>
<View style={{width: 10}}/>
<View style={{paddingHorizontal: 10, alignItems: 'flex-start'}}>
<Text subhead semibold>
{`${beneficiary.firstname} ${beneficiary.lastname} (${I18n.t('AYANT_DROITS')})`}
</Text>
</View>
</TouchableOpacity>
))}
</View>
) )
}}/> }}/>
@ -716,6 +748,7 @@ const ExecuterPrescriptionScreen = ({
<FlatList data={getConsultation.result?.response} <FlatList data={getConsultation.result?.response}
extraData={getConsultation.result?.response} extraData={getConsultation.result?.response}
ListEmptyComponent={<Text body2>{I18n.t('NO_CONSULTATION')}</Text>}
keyExtractor={(item, index) => index} keyExtractor={(item, index) => index}
renderItem={({item, index}) => { renderItem={({item, index}) => {
return ( return (
@ -838,6 +871,17 @@ const ExecuterPrescriptionScreen = ({
style={[Typography.caption1, Color.grayColor]}>{moment(historyItemDetail.created_at).format('YYYY-MM-DD')}</Text> style={[Typography.caption1, Color.grayColor]}>{moment(historyItemDetail.created_at).format('YYYY-MM-DD')}</Text>
</View> </View>
</View> </View>
<View style={{flexDirection: 'row', marginTop: 10}}>
<View style={{flex: 1}}>
<Text style={[styles.body2]}>{I18n.t('PRESTATION')}</Text>
</View>
<View style={{flex: 1, alignItems: 'flex-end'}}>
{historyItemDetail.performances.map(performance => (
<Text
style={[Typography.caption1, Color.grayColor]}>{`${performance.act.name} \n ${performance.amount} \n`}</Text>
))}
</View>
</View>
<View style={{flexDirection: 'row', marginTop: 10}}> <View style={{flexDirection: 'row', marginTop: 10}}>
<View style={{flex: 1}}> <View style={{flex: 1}}>
<Text style={[styles.body2]}>{I18n.t('EXAMEN')}</Text> <Text style={[styles.body2]}>{I18n.t('EXAMEN')}</Text>
@ -860,17 +904,6 @@ const ExecuterPrescriptionScreen = ({
))} ))}
</View> </View>
</View> </View>
<View style={{flexDirection: 'row', marginTop: 10}}>
<View style={{flex: 1}}>
<Text style={[styles.body2]}>{I18n.t('PRESTATION')}</Text>
</View>
<View style={{flex: 1, alignItems: 'flex-end'}}>
{historyItemDetail.performances.map(performance => (
<Text
style={[Typography.caption1, Color.grayColor]}>{`${performance.act.name} \n ${performance.amount} \n`}</Text>
))}
</View>
</View>
</View> </View>
</ScrollView> </ScrollView>
@ -912,7 +945,7 @@ const ExecuterPrescriptionScreen = ({
<View style={styles.lineSwipeDown}/> <View style={styles.lineSwipeDown}/>
</View> </View>
<Text body2 style={{marginTop: 10}}>{I18n.t('EXAMEN')}</Text> <Text body2 style={{marginTop: 10}}>{I18n.t('MEDICAMENTS')}</Text>
<FlatList data={consultation.prescriptions} <FlatList data={consultation.prescriptions}
extraData={consultation.prescriptions} extraData={consultation.prescriptions}
@ -992,7 +1025,7 @@ const ExecuterPrescriptionScreen = ({
onSubmit: values => { onSubmit: values => {
fetchExecutionPrescription({ fetchExecutionPrescription({
health_care_sheet_id: consultation.id, health_care_sheet_id: consultation.id,
network_agent_id: user.agentId, network_agent_id: wallet.network_agent_id,
password: values.password, password: values.password,
practitioner_lastname: values.practitioner_lastname, practitioner_lastname: values.practitioner_lastname,
practitioner_firstname: values.practitioner_firstname, practitioner_firstname: values.practitioner_firstname,

File diff suppressed because it is too large Load Diff

View File

@ -1213,6 +1213,7 @@ const SaisirFeuilleSoinScreen = ({
<FlatList data={getUserByNameOrNumber.result?.response} <FlatList data={getUserByNameOrNumber.result?.response}
extraData={getUserByNameOrNumber.result?.response} extraData={getUserByNameOrNumber.result?.response}
keyExtractor={(item, index) => index} keyExtractor={(item, index) => index}
ListEmptyComponent={<Text body2>{I18n.t('NO_ASSURE_MATCH_SEARCH')}</Text>}
renderItem={({item, index}) => { renderItem={({item, index}) => {
return ( return (
<View style={{ <View style={{
@ -1392,7 +1393,7 @@ const SaisirFeuilleSoinScreen = ({
} else { } else {
fetchCreateConsultation({ fetchCreateConsultation({
insured_id: assure.insured_id, insured_id: assure.insured_id,
network_agent_id: user.agentId, network_agent_id: wallet.network_agent_id,
password: values.password, password: values.password,
beneficiary_id: beneficiary !== null ? beneficiary.id : null, beneficiary_id: beneficiary !== null ? beneficiary.id : null,
practitioner_lastname: values.practitioner_lastname, practitioner_lastname: values.practitioner_lastname,

View File

@ -624,6 +624,11 @@ export const optionNanoSanteAgentScreen = {
screen: route.executerPrescriptionScreen, screen: route.executerPrescriptionScreen,
icon: 'edit', icon: 'edit',
title: 'EXECUTER_PRESCRIPTION', title: 'EXECUTER_PRESCRIPTION',
},
{
screen: route.modifierFeuilleSoinScreen,
icon: 'edit',
title: 'MODIFY_CONSULTATION',
} }
] ]
} }

View File

@ -663,6 +663,7 @@
"PRESTATION_SUCCESSFULLY_ADD": "Prestation ajouté avec succès", "PRESTATION_SUCCESSFULLY_ADD": "Prestation ajouté avec succès",
"EXAMENS_SUCCESSFULLY_ADD": "Examens ajouté avec succès", "EXAMENS_SUCCESSFULLY_ADD": "Examens ajouté avec succès",
"PRESCRIPTIONS_SUCCESSFULLY_ADD": "Prescription ajouté avec succès", "PRESCRIPTIONS_SUCCESSFULLY_ADD": "Prescription ajouté avec succès",
"PRESCRIPTIONS_SUCCESSFULLY_MODIFY": "Prescription modifié avec succès",
"YOU_MUST_ADD_AT_LEAST_ONE_PRESTATION": "Vous devez ajouter au moins une prestation", "YOU_MUST_ADD_AT_LEAST_ONE_PRESTATION": "Vous devez ajouter au moins une prestation",
"NO_DRUG_MATCH_YOU_SEARCH": "Aucun médicament ne correspond à votre rechercher, voulez-vous en ajouter ?", "NO_DRUG_MATCH_YOU_SEARCH": "Aucun médicament ne correspond à votre rechercher, voulez-vous en ajouter ?",
"COMPRESSED": "Comprimé", "COMPRESSED": "Comprimé",
@ -680,5 +681,15 @@
"REJECT": "Rejeter", "REJECT": "Rejeter",
"DETAIL": "Détail", "DETAIL": "Détail",
"NO_CONSULTATION_DEMAND": "Aucune demande de consultation", "NO_CONSULTATION_DEMAND": "Aucune demande de consultation",
"LIST_CONSULTATION": "Liste des consultations" "LIST_CONSULTATION": "Liste des consultations",
"MODIFY_CONSULTATION": "Modifier une consultation",
"MEDICAMENTS": "Médicaments",
"MODIFIER_MEDICAMENT": "Modifier médicament",
"MODIFIER_EXAMEN": "Modifier examen",
"EXAMENS_SUCCESSFULLY_MODIFY": "Examen modifié avec succès",
"PRESTATION_SUCCESSFULLY_MODIFY": "Prestation modifié avec succès",
"MODIFY_PRESTATION": "Modifier une prestation",
"LIST_PRESTATION": "Liste des prestations",
"NO_CONSULTATION": "Aucune consultation",
"LISTE_CONSULTATION": "Liste des consultations"
} }