Skip to content

Commit

Permalink
fix Order rememberSiteName
Browse files Browse the repository at this point in the history
  • Loading branch information
abertnamanya committed Jul 3, 2023
1 parent 4874d07 commit a6932b1
Show file tree
Hide file tree
Showing 3 changed files with 106 additions and 27 deletions.
4 changes: 3 additions & 1 deletion react-ui/src/components/addOrder/Index.js
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,9 @@ const Index = () => {
{page === successMsgPageNumber &&
<OrderSuccessMessage orderFormValues={orderFormValues}
setOrderFormValues={setOrderFormValues}
samples={samples}/>}
setSamples={setSamples}
setPage={setPage}/>
}
<div className="navigationButtonsLayout">
{(page !== firstPageNumber && page <= orderPageNumber) &&
<Button kind="tertiary" onClick={() => navigateBackWards()}>Back</Button>}
Expand Down
115 changes: 91 additions & 24 deletions react-ui/src/components/addOrder/OrderSuccessMessage.js
Original file line number Diff line number Diff line change
@@ -1,28 +1,95 @@
import React, {Component} from 'react';
import {Button, Row} from "@carbon/react";

class OrderSuccessMessage extends Component {
render() {
return (
<div className="orderLegendBody">
<div className="orderEntrySuccessMsg">
<img
src={`images/success-icon.png`}
alt="Order Entry saved successfully"
width="120"
height="120"
/>
<h4>Save successful</h4>
<Row>
<Button className="printBarCodeBtn">Print Barcode</Button>
</Row>
<Row>
<Button className="placeAnotherOrderBtn" kind="tertiary">Place same site order</Button>
</Row>
</div>
</div>
);
import React, {useEffect, useState} from 'react';
import {Button, Row, TextInput} from "@carbon/react";
import config from "../../config.json";
import {SampleOrderFormValues} from "../formModel/innitialValues/OrderEntryFormValues";
import {sampleObject} from "./Index";


const OrderSuccessMessage = (props) => {
const {orderFormValues, setOrderFormValues, setSamples, setPage} = props;
const [allowPrintBarCodes, setAllowPrintBarCodes] = useState(false);
const [numberOfPrints, setNumberOfPrints] = useState(1);


const handlePrintBarCode = () => {
setAllowPrintBarCodes(true)
}
const handleNumberOfPrints = (e) => {
setNumberOfPrints(e.target.value);
}
const confirmPrintHandler = () => {
let barcodesPdf = config.serverBaseUrl + `/LabelMakerServlet?labNo=${orderFormValues.sampleOrderItems.labNo}&type=order&quantity=${numberOfPrints}`;
window.open(barcodesPdf);
}

const handleAnotherSiteOrder = () => {
const siteId = orderFormValues.sampleOrderItems.referringSiteId;
const siteName = orderFormValues.sampleOrderItems.referringSiteName;
const providerId = orderFormValues.sampleOrderItems.providerId;
const providerFirstName = orderFormValues.sampleOrderItems.providerFirstName;
const providerLastName = orderFormValues.sampleOrderItems.providerLastName;
const providerWorkPhone = orderFormValues.sampleOrderItems.providerWorkPhone;
const providerFax = orderFormValues.sampleOrderItems.providerFax;
const providerEmail = orderFormValues.sampleOrderItems.providerEmail;

setOrderFormValues(SampleOrderFormValues);

setOrderFormValues({
...SampleOrderFormValues,
rememberSiteAndRequester: true,
sampleOrderItems: {
...SampleOrderFormValues.sampleOrderItems,
referringSiteId: siteId,
referringSiteName: siteName,
providerId: providerId,
providerFirstName: providerFirstName,
providerLastName: providerLastName,
providerWorkPhone: providerWorkPhone,
providerFax: providerFax,
providerEmail: providerEmail
}
});
setPage(0);
}

useEffect(() => {
if (!orderFormValues.rememberSiteAndRequester) {
setOrderFormValues(SampleOrderFormValues);
}
setSamples([sampleObject]);
}, []);

return (<div className="orderLegendBody">
<div className="orderEntrySuccessMsg">
<img
src={`images/success-icon.png`}
alt="Order Entry saved successfully"
width="120"
height="120"
/>
<h4>Save successful</h4>
<Row>
<Button className="" onClick={handlePrintBarCode}>Print Barcode</Button>
</Row>
{allowPrintBarCodes &&
<Row>
<div className="inlineDiv">
<TextInput id="quatityOfBarCodes" value={numberOfPrints} onChange={(e) => {
handleNumberOfPrints(e)
}} labelText="Number to Print"/>
<Button kind="danger" className="confirmPrintCodeBtn" onClick={confirmPrintHandler}
size='sm'>Confirm</Button>
</div>
</Row>
}

<Row>
{orderFormValues.rememberSiteAndRequester &&
<Button className="placeAnotherOrderBtn" kind="tertiary" onClick={handleAnotherSiteOrder}>Place same
site order</Button>}
</Row>
</div>
</div>);
}

export default OrderSuccessMessage;
14 changes: 12 additions & 2 deletions react-ui/src/components/addOrder/add-order.scss
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
@use '@carbon/styles/scss/type';

.singleTest {
padding: 1rem 0.75rem;
}
Expand Down Expand Up @@ -116,7 +117,7 @@
color: red !important;
}
.orderEntrySuccessMsg{
width: 100px;
width: 240px;
top: 0;
bottom: 0;
left: 0;
Expand All @@ -127,7 +128,16 @@
width: 220px;
text-align: center;
}
.placeAnotherOrderBtn{

.confirmPrintCodeBtn {
height: 30px;
width: 70px;
text-align: center;
margin-top: 26px;
margin-left: 10px;
}

.placeAnotherOrderBtn {
width: 220px;
text-align: center;
margin-top: 10px;
Expand Down

0 comments on commit a6932b1

Please sign in to comment.