From a95dfc6d01ccda84c7ed898bdad6f0d63f8f8bfb Mon Sep 17 00:00:00 2001 From: Brice Zele Date: Thu, 7 Apr 2022 18:27:54 +0100 Subject: [PATCH] Execution et modification des prestations --- .../agent/ExecuterPrescriptionScreen.js | 171 ++++++++++++------ .../ModifierExecutionPrescriptionScreen.js | 127 +++++++++++-- utils/i18n/fr.json | 4 +- 3 files changed, 232 insertions(+), 70 deletions(-) diff --git a/screens/wallet/agent/ExecuterPrescriptionScreen.js b/screens/wallet/agent/ExecuterPrescriptionScreen.js index bfac2a8c..4c868825 100644 --- a/screens/wallet/agent/ExecuterPrescriptionScreen.js +++ b/screens/wallet/agent/ExecuterPrescriptionScreen.js @@ -78,7 +78,7 @@ import * as Utils from "../../../utils/UtilsFunction"; import {displayToast, uppercaseFirstLetter} from "../../../utils/UtilsFunction"; import {store} from "../../../redux/store"; import Fontisto from "react-native-vector-icons/Fontisto"; -import {FontWeight, Typography} from "../../../config/typography"; +import {Typography} from "../../../config/typography"; let moment = require('moment-timezone'); @@ -531,6 +531,12 @@ const ExecuterPrescriptionScreen = ({ const PriceModal = Yup.object().shape({ price: Yup.number().required(I18n.t('THIS_FIELD_IS_REQUIRED')), examen_quantite: Yup.number(), + unit_quantity_condition: Yup.boolean(), + unit_quantity: Yup.number().when('unit_quantity_condition', { + is: true, + then: Yup.number().required(I18n.t('THIS_FIELD_IS_REQUIRED')), + otherwise: Yup.number() + }), code_acte: Yup.object() }); @@ -566,7 +572,9 @@ const ExecuterPrescriptionScreen = ({ const renderPriceModal = () => ( { return elementToSetPrice.id === exam.id ? { ...exam, - unit_price: values.price + unit_price: values.price, + quantity: values.examen_quantity, + unit_quantity: values.unit_quantity === '' ? null : values.unit_quantity } : exam; }) }); @@ -592,7 +602,7 @@ const ExecuterPrescriptionScreen = ({ exams: [ { unit_price: values.price, - quantity: consultation.exams.filter(exam => elementToSetPrice.id === exam.id)[0].quantity + quantity: values.examen_quantity } ], tmp_sheet_id: tmpSheetId, @@ -617,7 +627,7 @@ const ExecuterPrescriptionScreen = ({ prescriptions: [ { unit_price: values.price, - quantity: consultation.prescriptions.filter(prescription => elementToSetPrice.id === prescription.id)[0].quantity + quantity: values.examen_quantity } ], }); @@ -654,22 +664,104 @@ const ExecuterPrescriptionScreen = ({ - {I18n.t('AMOUNT_LABEL')} + {elementToSetPrice.examen ? + <> + {I18n.t('EXECUTION')} - + + + { + elementToSetPrice.act.billing_type === "UNIT_PRICE" ? + + {`${elementToSetPrice.act.unit_value} = `} + + + + X + + + + : + + } + + : + <> + {I18n.t('AMOUNT_LABEL')} + + + + } - {values.code_acte !== '' ? + {/* {values.code_acte !== '' ? values.code_acte.billing_type === 'UNIT_PRICE' && () : null} + />) : null}*/} - - - - - {values.code_acte.code} - -