slope ratio
This commit is contained in:
@@ -137,7 +137,7 @@ exports.kitAlert = async (event, context) => {
|
||||
console.log('Function triggered by change to: ' + resource);
|
||||
// now log the full event object
|
||||
console.log(JSON.stringify(event));
|
||||
const { kitSerial, classificationResult, _id, led1Average, led3Average, deviceRatio } = event.value.fields;
|
||||
const { kitSerial, classificationResult, _id, led1Average, led2Average, led3Average, deviceRatio, abs1, abs2 } = event.value.fields;
|
||||
console.log('kitSerial', kitSerial);
|
||||
console.log('classificationResult', classificationResult);
|
||||
// if (classificationResult?.stringValue?.includes("Trait")) {
|
||||
@@ -173,8 +173,6 @@ exports.kitAlert = async (event, context) => {
|
||||
const led3Intercept = 0.001704;
|
||||
|
||||
console.log('_id', _id?.stringValue);
|
||||
console.log('led1Average', led1Average?.doubleValue);
|
||||
console.log('led3Average', led3Average?.doubleValue);
|
||||
const LED1Average = led1Average?.doubleValue;
|
||||
const LED3Average = led3Average?.doubleValue;
|
||||
|
||||
@@ -223,6 +221,26 @@ exports.kitAlert = async (event, context) => {
|
||||
devRatioClass = "Sickle Cell Disease";
|
||||
}
|
||||
|
||||
const slope = (led1Average?.doubleValue - led2Average?.doubleValue) / (435 - 415);
|
||||
const slopeRatio = Math.abs(led3Average?.doubleValue / slope);
|
||||
let slopeRatioClass = "INVALID";
|
||||
|
||||
if (slopeRatio > 0 && slopeRatio <= 35.0) {
|
||||
slopeRatioClass = "Normal";
|
||||
}
|
||||
if (slopeRatio > 35.0 && slopeRatio <= 40.0) {
|
||||
slopeRatioClass = "Negative Borderline";
|
||||
}
|
||||
if (slopeRatio > 40.0 && slopeRatio <= 70.0) {
|
||||
slopeRatioClass = "Sickle Cell Trait";
|
||||
}
|
||||
if (slopeRatio > 70.0 && slopeRatio <= 75.0) {
|
||||
slopeRatioClass = "Positive Borderline";
|
||||
}
|
||||
if (slopeRatio > 75.0 && slopeRatio <= 300.0) {
|
||||
slopeRatioClass = "Sickle Cell Disease";
|
||||
}
|
||||
|
||||
console.log(classification);
|
||||
|
||||
const docs = await admin.firestore().collection("testData").where("_id", "==", _id.stringValue).get();
|
||||
@@ -234,6 +252,8 @@ exports.kitAlert = async (event, context) => {
|
||||
// prdClassification: classification
|
||||
// incubationTime: admin.firestore.FieldValue.delete()
|
||||
deviceRatioClass: devRatioClass,
|
||||
slopeRatio: slopeRatio,
|
||||
slopeRatioClass: slopeRatioClass,
|
||||
});
|
||||
})
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user