Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d327fecf8c | ||
|
|
43375556bf | ||
|
|
92feb4081c | ||
|
|
bb968b4781 | ||
|
|
a751b55647 | ||
|
|
099b3f08fa | ||
|
|
c20197c40a | ||
|
|
ca5106d613 | ||
|
|
9c782b7cd1 | ||
|
|
707e338d3a | ||
|
|
367c36e3f8 | ||
|
|
fc31aea95b | ||
|
|
920858a523 | ||
|
|
16aa545862 | ||
|
|
65723718c6 | ||
|
|
fb3d715831 | ||
|
|
683c6049af | ||
|
|
34a770ceed | ||
|
|
67a7414d5c |
@@ -10,6 +10,9 @@
|
|||||||
],
|
],
|
||||||
"qa": [
|
"qa": [
|
||||||
"hpos-qa"
|
"hpos-qa"
|
||||||
|
],
|
||||||
|
"dev": [
|
||||||
|
"hpos-dev"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
# misc
|
# misc
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
.env
|
||||||
.env.local
|
.env.local
|
||||||
.env.development.local
|
.env.development.local
|
||||||
.env.test.local
|
.env.test.local
|
||||||
@@ -30,4 +31,5 @@ public/india-states.json
|
|||||||
*.apk
|
*.apk
|
||||||
|
|
||||||
scripts/reports
|
scripts/reports
|
||||||
scripts/data
|
scripts/data
|
||||||
|
firebase-debug.log
|
||||||
|
|||||||
@@ -30,6 +30,6 @@
|
|||||||
|
|
||||||
### deploy
|
### deploy
|
||||||
|
|
||||||
firebase deploy --only hosting:dev1
|
firebase deploy --only hosting:dev
|
||||||
|
|
||||||
pyinstaller --noconfirm --noconsole -i "smi.ico" --windowed --clean hemocube.py
|
pyinstaller --noconfirm --noconsole -i "smi.ico" --windowed --clean hemocube.py
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"hosting": {
|
"hosting": {
|
||||||
"target": "qa",
|
"target": "preprod",
|
||||||
"public": "build",
|
"public": "build",
|
||||||
"ignore": [
|
"ignore": [
|
||||||
"firebase.json",
|
"firebase.json",
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ function Accuracy({ show }) {
|
|||||||
'YYYY-MM-DD'
|
'YYYY-MM-DD'
|
||||||
)}&end_date=${moment(endDate).format('YYYY-MM-DD')}`;
|
)}&end_date=${moment(endDate).format('YYYY-MM-DD')}`;
|
||||||
|
|
||||||
const url = `https://asia-south1-hpos-qa.cloudfunctions.net/performance?${queryString}`;
|
const url = `https://asia-south1-hpos-af3cc.cloudfunctions.net/performance?${queryString}`;
|
||||||
|
|
||||||
// Make a POST request using the Fetch API
|
// Make a POST request using the Fetch API
|
||||||
const response = await fetch(url, {
|
const response = await fetch(url, {
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ function ExportData({ url, show }) {
|
|||||||
const [endDate, setEndDate] = useState("");
|
const [endDate, setEndDate] = useState("");
|
||||||
|
|
||||||
const fetchFile = (start_date, end_date) => {
|
const fetchFile = (start_date, end_date) => {
|
||||||
window.location.href = `https://asia-south1-hpos-qa.cloudfunctions.net/consolidation?start_date=${moment(startDate).format("YYYY-MM-DD")}&end_date=${moment(endDate).format("YYYY-MM-DD")}`;
|
window.location.href = `https://asia-south1-${process.env.REACT_APP_FIREBASE_PROJECT_ID}.cloudfunctions.net/consolidation?start_date=${moment(startDate).format("YYYY-MM-DD")}&end_date=${moment(endDate).format("YYYY-MM-DD")}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ function Registration() {
|
|||||||
setCounter(counter + 1);
|
setCounter(counter + 1);
|
||||||
axios({
|
axios({
|
||||||
method: 'post',
|
method: 'post',
|
||||||
url: "https://asia-south1-hpos-qa.cloudfunctions.net/registerUser",
|
url: `https://asia-south1-${process.env.REACT_APP_FIREBASE_PROJECT_ID}.cloudfunctions.net/registerUser`,
|
||||||
data: {
|
data: {
|
||||||
"_id": id,
|
"_id": id,
|
||||||
"aadharId": "2808202300001",
|
"aadharId": "2808202300001",
|
||||||
@@ -65,7 +65,7 @@ function Registration() {
|
|||||||
setMessage("");
|
setMessage("");
|
||||||
axios({
|
axios({
|
||||||
method: 'get',
|
method: 'get',
|
||||||
url: "https://asia-south1-hpos-qa.cloudfunctions.net/clearUsers",
|
url: `https://asia-south1-${process.env.REACT_APP_FIREBASE_PROJECT_ID}.cloudfunctions.net/clearUsers`,
|
||||||
withCredentials: false,
|
withCredentials: false,
|
||||||
secure: false,
|
secure: false,
|
||||||
headers: {
|
headers: {
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
font-family: Arial, Helvetica, sans-serif;
|
font-family: Arial, Helvetica, sans-serif;
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
#samples-table td,
|
#samples-table td,
|
||||||
|
|||||||
@@ -15,9 +15,10 @@ const Samples = () => {
|
|||||||
const unsub = onSnapshot(q, (querySnapshot) => {
|
const unsub = onSnapshot(q, (querySnapshot) => {
|
||||||
const samples = [];
|
const samples = [];
|
||||||
querySnapshot.forEach((document) => {
|
querySnapshot.forEach((document) => {
|
||||||
console.log(document.data());
|
console.log(document.id);
|
||||||
const alert = document.data();
|
const data = document.data();
|
||||||
samples.push(alert);
|
const id = document.id;
|
||||||
|
samples.push({id, ...data});
|
||||||
});
|
});
|
||||||
setSamples(samples);
|
setSamples(samples);
|
||||||
});
|
});
|
||||||
@@ -48,24 +49,35 @@ const Samples = () => {
|
|||||||
<table id="samples-table">
|
<table id="samples-table">
|
||||||
<tr>
|
<tr>
|
||||||
<th>Sample Name</th>
|
<th>Sample Name</th>
|
||||||
<th>Device</th>
|
<th>Pdr Class</th>
|
||||||
<th>Classification</th>
|
<th>Dev Ratio Class</th>
|
||||||
<th>abs1</th>
|
<th>SR Class</th>
|
||||||
<th>abs2</th>
|
|
||||||
<th>abs3</th>
|
|
||||||
<th>PDR</th>
|
<th>PDR</th>
|
||||||
|
<th>Dev Ratio</th>
|
||||||
|
<th>Slope Ratio</th>
|
||||||
|
<th>led1Sample</th>
|
||||||
|
{/* <th>led2Average</th> */}
|
||||||
|
<th>led2Sample</th>
|
||||||
|
<th>led3Sample</th>
|
||||||
|
<th>led4Sample</th>
|
||||||
|
<th>Device</th>
|
||||||
<th>Time</th>
|
<th>Time</th>
|
||||||
</tr>
|
</tr>
|
||||||
{samples.map((sample, index) => (
|
{samples.map((sample, index) => (
|
||||||
<tr key={index} className='samples-table-tr'>
|
<tr key={index} className='samples-table-tr'>
|
||||||
<td>{sample.name}</td>
|
<td>{sample.name || sample._id}</td>
|
||||||
<td>{sample.prdClassification | 'NA'}</td>
|
<td>{sample.prdClassification}</td>
|
||||||
|
<td>{sample.deviceRatioClass}</td>
|
||||||
|
<td>{sample.slopeRatioClass}</td>
|
||||||
|
<td>{sample?.predictedDenovixRatio?.toFixed(4)}</td>
|
||||||
|
<td>{sample?.deviceRatio?.toFixed(4)}</td>
|
||||||
|
<td>{sample?.slopeRatio?.toFixed(4)}</td>
|
||||||
|
<td>{sample.led1Sample || 'NA'}</td>
|
||||||
|
<td>{sample.led2Sample || 'NA'}</td>
|
||||||
|
<td>{sample.led3Sample || 'NA'}</td>
|
||||||
|
<td>{sample.led4Sample || 'NA'}</td>
|
||||||
<td>{sample.deviceId}</td>
|
<td>{sample.deviceId}</td>
|
||||||
<td>{sample.abs1}</td>
|
<td>{moment(sample.testTime).format('HH:MM:SS')}</td>
|
||||||
<td>{sample.abs2 || 'NA'}</td>
|
|
||||||
<td>{sample.abs3 || 'NA'}</td>
|
|
||||||
<td>{sample.predictedDenovixRatio}</td>
|
|
||||||
<td>{sample.testTime}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
))}
|
))}
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -53,7 +53,10 @@ const TestAnalytics = () => {
|
|||||||
const dailyCountsList = Object.entries(dailyCounts).sort().map(x => {
|
const dailyCountsList = Object.entries(dailyCounts).sort().map(x => {
|
||||||
return { date: x[0], count: x[1] };
|
return { date: x[0], count: x[1] };
|
||||||
});
|
});
|
||||||
setDailyResults(dailyCountsList);
|
if (dailyCountsList?.length > 7)
|
||||||
|
setDailyResults(dailyCountsList.slice(dailyCountsList.length - 7, dailyCountsList.length));
|
||||||
|
else
|
||||||
|
setDailyResults(dailyCountsList);
|
||||||
const rss = _.groupBy(hposTests, function (test) {
|
const rss = _.groupBy(hposTests, function (test) {
|
||||||
return moment(test.testTime).startOf('day').format();
|
return moment(test.testTime).startOf('day').format();
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ class TestAnalyticsGraph extends Component {
|
|||||||
data.reverse();
|
data.reverse();
|
||||||
|
|
||||||
var margin = { top: 30, right: 20, bottom: 50, left: 15 },
|
var margin = { top: 30, right: 20, bottom: 50, left: 15 },
|
||||||
width = 1500 - margin.left - margin.right,
|
width = 400 - margin.left - margin.right,
|
||||||
height = 180 - margin.top - margin.bottom;
|
height = 180 - margin.top - margin.bottom;
|
||||||
|
|
||||||
var svg = d3.select("#tests-count-graph").append('svg')
|
var svg = d3.select("#tests-count-graph").append('svg')
|
||||||
@@ -113,7 +113,7 @@ class TestAnalyticsGraph extends Component {
|
|||||||
drawChart(data) {
|
drawChart(data) {
|
||||||
if (!data) return;
|
if (!data) return;
|
||||||
var margin = { top: 20, right: 20, bottom: 30, left: 50 },
|
var margin = { top: 20, right: 20, bottom: 30, left: 50 },
|
||||||
width = 960 - margin.left - margin.right,
|
width = 420 - margin.left - margin.right,
|
||||||
height = 500 - margin.top - margin.bottom;
|
height = 500 - margin.top - margin.bottom;
|
||||||
|
|
||||||
const INNER_WIDTH = width;// - margin.left - margin.right;
|
const INNER_WIDTH = width;// - margin.left - margin.right;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ const Topbar = () => {
|
|||||||
>
|
>
|
||||||
<Toolbar>
|
<Toolbar>
|
||||||
<Typography variant="h6">
|
<Typography variant="h6">
|
||||||
HPOS Web - Quality / QA
|
HPOS Web - {process.env.REACT_APP_TOPBAR_TITLE}
|
||||||
</Typography>
|
</Typography>
|
||||||
</Toolbar>
|
</Toolbar>
|
||||||
</AppBar>
|
</AppBar>
|
||||||
|
|||||||
@@ -14,16 +14,39 @@ import { getAnalytics } from "firebase/analytics";
|
|||||||
// measurementId: "G-6JHQ47S9DD"
|
// measurementId: "G-6JHQ47S9DD"
|
||||||
// };
|
// };
|
||||||
|
|
||||||
/* qa: hpos-qa */
|
// /* qa: hpos-qa */
|
||||||
|
// const firebaseConfig = {
|
||||||
|
// apiKey: "AIzaSyCF7BNZ5vOMQIpKRi_vxquzWP5pIjcb59I",
|
||||||
|
// authDomain: "hpos-qa.firebaseapp.com",
|
||||||
|
// projectId: "hpos-qa",
|
||||||
|
// storageBucket: "hpos-qa.appspot.com",
|
||||||
|
// messagingSenderId: "1004619739289",
|
||||||
|
// appId: "1:1004619739289:web:c3ee0c0127f0d073e5c808",
|
||||||
|
// measurementId: "G-4MSTJHE64W"
|
||||||
|
// };
|
||||||
|
|
||||||
|
|
||||||
|
/* preprod */
|
||||||
const firebaseConfig = {
|
const firebaseConfig = {
|
||||||
apiKey: "AIzaSyCF7BNZ5vOMQIpKRi_vxquzWP5pIjcb59I",
|
apiKey: "AIzaSyBFl_YkJ5PMIvMY3G70313SyrqemjFnUv8",
|
||||||
authDomain: "hpos-qa.firebaseapp.com",
|
authDomain: "hpos-af3cc.firebaseapp.com",
|
||||||
projectId: "hpos-qa",
|
projectId: "hpos-af3cc",
|
||||||
storageBucket: "hpos-qa.appspot.com",
|
storageBucket: "hpos-af3cc.appspot.com",
|
||||||
messagingSenderId: "1004619739289",
|
messagingSenderId: "650071678820",
|
||||||
appId: "1:1004619739289:web:c3ee0c0127f0d073e5c808",
|
appId: "1:650071678820:web:ce50538bf46632d46c6471",
|
||||||
measurementId: "G-4MSTJHE64W"
|
measurementId: "G-6JHQ47S9DD"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// /* qa: hpos-qa */
|
||||||
|
// const firebaseConfig = {
|
||||||
|
// apiKey: "AIzaSyCF7BNZ5vOMQIpKRi_vxquzWP5pIjcb59I",
|
||||||
|
// authDomain: "hpos-qa.firebaseapp.com",
|
||||||
|
// projectId: "hpos-qa",
|
||||||
|
// storageBucket: "hpos-qa.appspot.com",
|
||||||
|
// messagingSenderId: "1004619739289",
|
||||||
|
// appId: "1:1004619739289:web:c3ee0c0127f0d073e5c808",
|
||||||
|
// measurementId: "G-4MSTJHE64W"
|
||||||
|
// };
|
||||||
|
|
||||||
|
|
||||||
// /* preprod */
|
// /* preprod */
|
||||||
|
|||||||
Reference in New Issue
Block a user