update compare plate 7
This commit is contained in:
parent
7bf9cf9f25
commit
ae07cb58d7
|
@ -57,18 +57,18 @@ function levenshtein(a, b) {
|
|||
|
||||
return matrix[b.length][a.length];
|
||||
}
|
||||
const db = makeDb(config);
|
||||
|
||||
var currentIn = {"plate": "", "time": 0};
|
||||
var currentOut = {"plate": "", "time": 0};
|
||||
|
||||
exports.SaveLogs = async function (req, res) {
|
||||
console.log("req: ", req.body.plate, " current: ", current);
|
||||
|
||||
var today = new Date();
|
||||
var currentDate = today.getDate();
|
||||
var currentMonth = today.getMonth() + 1;
|
||||
var currentYear = today.getFullYear();
|
||||
var rootDir = "/mnt/c/xampp/htdocs/AIParking_Intops_Server/web/data/uploads/";
|
||||
var rootDir = "/mnt/d/xampp/htdocs/AIParking_Intops_Server/web/data/uploads/";
|
||||
|
||||
if (!fs.existsSync(rootDir + currentYear))
|
||||
fs.mkdirSync(rootDir + currentYear);
|
||||
|
@ -86,6 +86,7 @@ exports.SaveLogs = async function (req, res) {
|
|||
|
||||
var canSaveLogs = true;
|
||||
var vehicleInfo = {"status": false};
|
||||
|
||||
if (req.body.type === "in" && (currentTimestamp - currentIn.time) < 600) {
|
||||
if (req.body.plate === currentIn.plate) {
|
||||
canSaveLogs = false;
|
||||
|
@ -100,6 +101,12 @@ exports.SaveLogs = async function (req, res) {
|
|||
canSaveLogs = false;
|
||||
}
|
||||
}
|
||||
if (req.body.type == "in") {
|
||||
console.log("req: ", req.body.plate, "\t type: ", req.body.type, " \t compare: ", currentIn.plate, "\t save: ", canSaveLogs);
|
||||
}
|
||||
if (req.body.type == "out") {
|
||||
console.log("req: ", req.body.plate, "\t type: ", req.body.type, " \t compare: ", currentOut.plate, "\t save: ", canSaveLogs);
|
||||
}
|
||||
if (canSaveLogs) {
|
||||
if (req.body.type === "in") {
|
||||
currentIn = {"plate": req.body.plate, "time": currentTimestamp};
|
||||
|
@ -107,6 +114,13 @@ exports.SaveLogs = async function (req, res) {
|
|||
if (req.body.type === "out") {
|
||||
currentOut = {"plate": req.body.plate, "time": currentTimestamp};
|
||||
}
|
||||
var query_plate_raw = await db.query("SELECT * FROM vehicle WHERE plate='" + req.body.plate + "'");
|
||||
|
||||
if (query_plate_raw.length == 0 && req.body.plate.length <= 7) {
|
||||
res.send(vehicleInfo);
|
||||
return;
|
||||
}
|
||||
|
||||
var fileName = req.body.plate + "_" + currentTimestamp + ".png";
|
||||
var plateSaved = currentYear + "/" + currentMonth + "/" + currentDate + "/" + req.body.type + "/plate/" + fileName;
|
||||
var frameSaved = currentYear + "/" + currentMonth + "/" + currentDate + "/" + req.body.type + "/frame/" + fileName;
|
||||
|
@ -114,8 +128,6 @@ exports.SaveLogs = async function (req, res) {
|
|||
await fs.writeFileSync(rootDir + plateSaved, req.body.plate_image, 'base64');
|
||||
await fs.writeFileSync(rootDir + frameSaved, req.body.frame_image, 'base64');
|
||||
|
||||
const db = makeDb(config);
|
||||
var query_plate_raw = await db.query("SELECT * FROM vehicle WHERE plate='" + req.body.plate + "'");
|
||||
if (query_plate_raw.length > 0) {
|
||||
vehicleInfo = {"status": true, "data": query_plate_raw[0]};
|
||||
if (req.body.type == "in") {
|
||||
|
@ -130,7 +142,7 @@ exports.SaveLogs = async function (req, res) {
|
|||
}
|
||||
}
|
||||
} else {
|
||||
var query_plate_levenshtein = await db.query("SELECT * FROM `vehicle` WHERE levenshtein('%" + req.body.plate + "', `plate`) BETWEEN 0 AND 1 LIMIT 0,1");
|
||||
var query_plate_levenshtein = await db.query("SELECT * FROM `vehicle` WHERE levenshtein('" + req.body.plate + "', `plate`) BETWEEN 0 AND 1 LIMIT 0,1");
|
||||
if (query_plate_levenshtein.length > 0) {
|
||||
vehicleInfo = {"status": true, "data": query_plate_levenshtein[0]};
|
||||
if (req.body.type == "in") {
|
||||
|
@ -153,7 +165,7 @@ exports.SaveLogs = async function (req, res) {
|
|||
if (checkIn_raw.length > 0) {
|
||||
await db.query("UPDATE logs_unknow SET `plate_image_out`='" + plateSaved + "',`frame_image_out`='" + frameSaved + "',`time_out`=" + currentTimestamp + " WHERE id=" + checkIn_raw[0].id);
|
||||
} else {
|
||||
var checkIn_levenshtein = await db.query("SELECT * FROM `logs_unknow` WHERE levenshtein('%" + req.body.plate + "', `plate`) BETWEEN 0 AND 1 AND time_out=0 ORDER BY time_in DESC LIMIT 0,1");
|
||||
var checkIn_levenshtein = await db.query("SELECT * FROM `logs_unknow` WHERE levenshtein('" + req.body.plate + "', `plate`) BETWEEN 0 AND 1 AND time_out=0 ORDER BY time_in DESC LIMIT 0,1");
|
||||
if (checkIn_levenshtein.length > 0) {
|
||||
await db.query("UPDATE logs_unknow SET `plate_image_out`='" + plateSaved + "',`frame_image_out`='" + frameSaved + "',`time_out`=" + currentTimestamp + " WHERE id=" + checkIn_levenshtein[0].id);
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue
Block a user