diff --git a/src/components/Samples.css b/src/components/Samples.css new file mode 100644 index 0000000..4439adb --- /dev/null +++ b/src/components/Samples.css @@ -0,0 +1,38 @@ +#samples-table { + font-family: Arial, Helvetica, sans-serif; + border-collapse: collapse; + width: 100%; +} + +#samples-table td, +#samples-table th { + border: 1px solid #ddd; + padding: 8px; + width: 10vw; +} + +#samples-table td { + width: 15vw; +} + +#samples-table tr:nth-child(even) { + background-color: #f2f2f2; +} + +#samples-table tr:hover { + background-color: #ddd; +} + +#samples-table th { + padding-top: 12px; + padding-bottom: 12px; + text-align: center; + background-color: rgb(144, 183, 255); + color: black; + width: 5vw; +} + +.samples-container { + overflow-x: auto; + overflow-y: auto; +} \ No newline at end of file diff --git a/src/components/Samples.js b/src/components/Samples.js new file mode 100644 index 0000000..7f21605 --- /dev/null +++ b/src/components/Samples.js @@ -0,0 +1,75 @@ +import React, { useEffect, useState, useRef } from 'react'; +import { query, collection, onSnapshot, where, orderBy, limit } from 'firebase/firestore'; + +import './Samples.css'; +import db from '../firebase'; +import moment from 'moment'; + +const Samples = () => { + const [samples, setSamples] = useState([]); + + useEffect(() => { + if (!samples.length) { + const q = query(collection(db, "testData"), where("testTime", ">=", moment().format("YYYY-MM-DD").toString()), orderBy("testTime", "desc")); + + const unsub = onSnapshot(q, (querySnapshot) => { + const samples = []; + querySnapshot.forEach((document) => { + console.log(document.data()); + const alert = document.data(); + samples.push(alert); + }); + setSamples(samples); + }); + + return () => unsub; + } + }, []); + + return ( +
{alert.testTime}
+{moment(alert.testTime).fromNow()}
+| Sample Name | +Device | +led1Average | + {/*led2Average | */} +led3Average | +Dev ratio | +Time | +
|---|---|---|---|---|---|---|
| {sample.name} | +{sample.deviceId} | +{sample.led1Average} | + {/*{sample.led2Average || 'NA'} | */} +{sample.led3Average || 'NA'} | +{sample.deviceRatio} | +{sample.testTime} | +