add item quantity input

This commit is contained in:
np.w
2021-02-19 08:51:05 -06:00
parent 1fe9d50bb2
commit 5309c7e76f
2 changed files with 17 additions and 8 deletions
+15 -7
View File
@@ -23,7 +23,8 @@ function App() {
const [itemID, setItemID] = useState(undefined); const [itemID, setItemID] = useState(undefined);
const [itemName, setItemName] = useState(''); const [itemName, setItemName] = useState('');
const [itemDescription, setItemDescription] = useState(''); const [itemDescription, setItemDescription] = useState('');
const [itemQuantity, setItemQuantity] = useState(1);
const [filter, setFilter] = useState(''); const [filter, setFilter] = useState('');
const [filteredData, setFilteredData] = useState([]); const [filteredData, setFilteredData] = useState([]);
@@ -241,7 +242,7 @@ function App() {
setItemID(itemID); setItemID(itemID);
setItemName(item.name || ''); setItemName(item.name || '');
setItemDescription(item.description || ''); setItemDescription(item.description || '');
setItemQuantity(item.quantity || 1);
} }
const handleEditItem = (boxID, itemID) => { const handleEditItem = (boxID, itemID) => {
clearFormItem(); clearFormItem();
@@ -262,7 +263,8 @@ function App() {
const itemData = { const itemData = {
id: itemID, id: itemID,
name: itemName, name: itemName,
description: itemDescription description: itemDescription,
quantity: itemQuantity
} }
if (editItemBool) if (editItemBool)
editItem(boxID, itemID, itemData); editItem(boxID, itemID, itemData);
@@ -282,15 +284,17 @@ function App() {
setItemID(undefined); setItemID(undefined);
setItemName(''); setItemName('');
setItemDescription(''); setItemDescription('');
setItemQuantity(1);
} }
const handleNameItem = (e) => { const handleNameItem = (e) => {
setItemName(e.target.value) setItemName(e.target.value)
} }
const handleDescriptionItem = (e) => { const handleDescriptionItem = (e) => {
setItemDescription(e.target.value) setItemDescription(e.target.value)
} }
const handleQuantityItem = (e) => {
setItemQuantity(parseInt(e.target.value));
}
const itemHandler = { const itemHandler = {
handleSubmit: handleSubmitItem, handleSubmit: handleSubmitItem,
handleRemove: handleRemoveItem, handleRemove: handleRemoveItem,
@@ -299,6 +303,7 @@ function App() {
handleView: handleViewItem, handleView: handleViewItem,
handleName: handleNameItem, handleName: handleNameItem,
handleDescription: handleDescriptionItem, handleDescription: handleDescriptionItem,
handleQuantity: handleQuantityItem
}; };
const handleFilterChange = (event) => { const handleFilterChange = (event) => {
@@ -328,10 +333,13 @@ function App() {
<fieldset> <fieldset>
<input id="id" name="id" value={itemID} readOnly hidden></input> <input id="id" name="id" value={itemID} readOnly hidden></input>
<label htmlFor="item-name">name <label htmlFor="item-name">name
<input autoFocus onChange={itemHandler.handleName} value={itemName} id="item-name" name="name" type="text"></input> <input autoFocus onChange={itemHandler.handleName} value={itemName} id="item-name" name="name" type="text"></input>
</label> </label>
<label htmlFor="item-description">description <label htmlFor="item-description">description
<input onChange={itemHandler.handleDescription} value={itemDescription} id="item-description" name="description" type="text"></input> <input onChange={itemHandler.handleDescription} value={itemDescription} id="item-description" name="description" type="text"></input>
</label>
<label htmlFor="item-quantity">quantity
<input onChange={itemHandler.handleQuantity} value={itemQuantity} id="item-quantity" name="quantity" type="text"></input>
</label> </label>
</fieldset> </fieldset>
<button type="submit">submit</button> <button type="submit">submit</button>
+2 -1
View File
@@ -95,7 +95,8 @@ app.put('/box/:boxId/item/:itemId', async (request, response) => {
await Box.updateOne({ '_id': boxID, 'item._id': itemID }, { await Box.updateOne({ '_id': boxID, 'item._id': itemID }, {
$set: { $set: {
'item.$.name': request.body.name, 'item.$.name': request.body.name,
'item.$.description': request.body.description 'item.$.description': request.body.description,
'item.$.quantity': request.body.quantity
} }
}) })
const updatedBox = await getBox(boxID); const updatedBox = await getBox(boxID);