优化mysql连接、页面调用接口逻辑 🎨

This commit is contained in:
gaofy 2023-11-16 14:20:47 +08:00
parent dd62dc394d
commit f85e4229ce
7 changed files with 51 additions and 98 deletions

View File

@ -12,15 +12,7 @@ const getTable = () => app.post('/getaiflag', function (req, res) {
const Clause = false;
const start = ~~req.body.start;
const end = ~~req.body.end;
connection(database).query(m_get(table, Clause, order, start, end), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
// connection(database).connect();
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_get(table, Clause, order, start, end));
});
const addTable = () => app.post('/addaiflag', (req, res) => {
@ -30,14 +22,7 @@ const addTable = () => app.post('/addaiflag', (req, res) => {
// `name, region, area, house_type, phone, create_time, remark`;
const values = Number(req.body.flag) ? 1 : 0; // ai给药 人工给药
// `'${v.name}', '${v.region}', '${v.area}', '${v.house_type}', '${v.phone}', '${nowTime()}', '${remark}'`;
connection(database).query(m_add(table, key, values), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_add(table, key, values));
})
export default {

View File

@ -12,15 +12,7 @@ const getTable = () => app.post('/getaimedicine', function (req, res) {
const Clause = false;
const start = ~~req.body.start;
const end = ~~req.body.end;
connection(database).query(m_get(table, Clause, order, start, end), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
// connection(database).connect();
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_get(table, Clause, order, start, end));
});
const addTable = () => app.post('/addaimedicine', (req, res) => {
@ -30,14 +22,7 @@ const addTable = () => app.post('/addaimedicine', (req, res) => {
// `name, region, area, house_type, phone, create_time, remark`;
const values = req.body.value;
// `'${v.name}', '${v.region}', '${v.area}', '${v.house_type}', '${v.phone}', '${nowTime()}', '${remark}'`;
connection(database).query(m_add(table, key, values), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_add(table, key, values));
})
export default {

View File

@ -74,7 +74,9 @@ const dateFormater = (formater, time) => {
.replace(/ss/g, (s < 10 ? '0' : '') + s)
}
// 获取数据库列表
const getDatabases = () => app.post('/getdatabases', function (req, res) {
con.connect();
con.query("SHOW DATABASES", function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
@ -83,12 +85,29 @@ const getDatabases = () => app.post('/getdatabases', function (req, res) {
res.send(results);
}
});
con.end();
});
// 公共查询方法
const mysqlQuery = (res, database, sql) => {
if(!database) return res.status(500).send('database is ' + database);
connection(database).connect();
connection(database).query(sql, (error, results, fields) => {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
return res.status(500).send(error);
} else {
res.send(results);
}
});
connection(database).end();
}
export default {
app,
connection,
con,
mysqlQuery,
m_get,
m_add,
m_update,

View File

@ -12,15 +12,7 @@ const getTable = () => app.post('/getdoctormedicine', function (req, res) {
const Clause = false;
const start = ~~req.body.start;
const end = ~~req.body.end;
connection(database).query(m_get(table, Clause, order, start, end), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
// connection(database).connect();
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_get(table, Clause, order, start, end));
});
const addTable = () => app.post('/adddoctormedicine', (req, res) => {
@ -28,14 +20,7 @@ const addTable = () => app.post('/adddoctormedicine', (req, res) => {
const table = `DoctorMedicineTable`;
const key = req.body.key;
const values = req.body.value;
connection(database).query(m_add(table, key, values), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_add(table, key, values));
})
export default {

View File

@ -11,14 +11,7 @@ const getTable = () => app.post('/getfeature', function (req, res) {
const Clause = false;
const start = ~~req.body.start;
const end = ~~req.body.end;
connection(database).query(m_get(table, Clause, order, start, end), function (error, results, fields) {
if (error) {
console.log(`${nowTime()} 错误:${JSON.stringify(error)}`);
return res.status(500).send(error);
} else {
res.send(results);
}
});
common.mysqlQuery(res, database, m_get(table, Clause, order, start, end));
});
export default {

View File

@ -24,7 +24,6 @@ app.use(bodyParser.json());
app.listen(3001, () => console.log('服务启动! ' + nowTime()));
common.con.connect();
common.getDatabases();
featureTable.getTable();
AIMedicineTable.getTable();

View File

@ -198,7 +198,10 @@ const medicineCustom: any[] = [
{ name: '阿托品', plus: 1, total: 100 },
{ name: '罗库溴铵', plus: 0.1, total: 10 }
];
let isRunAIFlag = true;
let featureTimer = 0;
let ecgTimer = 0;
let aiFlagTimer = 0;
const database = ref('');
const databaseOptions = ref([] as { value: string, label: string }[]);
const messageSum = ref(10);
@ -235,18 +238,19 @@ function initData() {
}
// AIFlagTable 2
function getAIFlag() {
setTimeout(() => {
if (isRunAIFlag) {
isRunAIFlag = false;
let isRunTimer = true;
clearInterval(aiFlagTimer);
aiFlagTimer = setInterval(() => {
if (isRunTimer) {
isRunTimer = false;
post('/getaiflag', { database: database.value, start: 0, end: 1 }, (res: any) => {
if (res.status === 200 && res.data.length > 0) {
const flag = Boolean(res.data[0].Flag);
if (isAIDose.value !== flag) getTableData(Boolean(res.data[0].Flag));
}
isRunAIFlag = true;
isRunTimer = true;
});
}
getAIFlag();
}, 2000);
}
function getFeatureTable() {
@ -269,32 +273,19 @@ function getFeatureTable() {
});
}
function getChartData() {
let isThrottle = true; //
throttle(2000);
getEEG();
function throttle(speed: number) {
if (isThrottle) {
isThrottle = false;
setTimeout(() => {
getData(() => {
isThrottle = true;
throttle(speed);
});
}, speed);
let isRunTimer = true; //
clearInterval(featureTimer);
clearInterval(ecgTimer);
setInterval(() => {
if(isRunTimer) {
getData()
}
}
//
function getEEG() {
setTimeout(() => {
// if (isStart.value) {
chartDom4.value.updateChart(0, new Date());
// }
getEEG();
}, 1000);
}
function getData(callback: () => void) {
// if (isStart.value) {
}, 2000);
setInterval(() => {
chartDom4.value.updateChart(0, new Date());
});
function getData() {
isRunTimer = false;
post('/getfeature', { database: database.value, start: 0, end: 1 }, (res: any) => {
const obj = (res.data && res.data[0]) || {};
if (obj.ID !== chartNowData.ID) {
@ -315,12 +306,8 @@ function getChartData() {
chartDom3.value.updateChart([obj.SPO2, obj.TEMP], obj.Time || obj.TIME);
// chartDom4.value.updateChart(obj.ST, obj.Time || obj.TIME);
}
callback();
isRunTimer = true;
});
// } else {
// callback();
// }
}
}
function getDatabases() {
@ -521,10 +508,10 @@ const tableItemCancel = (e: any) => {
};
getDatabases();
getAIFlag();
// getAIFlag();
onMounted(() => {
msgLogScrollBottom();
getChartData();
// getChartData();
initScale();
});