const app = require('express')();
const bodyParser = require('body-parser');
const https = require('https');
const fs = require('fs');
//to pass command line argmument as --key=value
const args = require('yargs').argv;
const sql = require("msnodesqlv8");
//get the body as json , while using POST json body
app.use(bodyParser.json());
//hardcode this value or pass to index.js as , node index.js --port=5000 --server=IE07LAPxxx3 --databse=xxx507 --driver=="SQL Server"
const port = args.port;
const server = args.server;
const database = args.database;
const driver = args.driver;
//console.log(`Trying to Connect to ${server}on port ${port} to database ${database}`)
https.createServer({
key: fs.readFileSync('./test_key.pem'),
cert: fs.readFileSync('./test_cert.pem'),
passphrase: 'test_secret_qa'
}, app)
.listen(port, '127.0.0.1', console.log(`The api service have started at port ${port}`));
//this will equate to const connectionString = `Server=IE07LAP00043; Database=Tmp507; Trusted_Connection=Yes;Driver==SQL Server;`
const connectionString = `Server=${server}; Database=${database}; Trusted_Connection=Yes;Driver=${driver};`
console.log(connectionString)
let query;
let get_controlchartgroups_query = "SELECT * FROM [dbo].[ControlChartsGroups]";
app.get('/controlchartgroups', (req, res) => {
query = get_controlchartgroups_query;
console.log(query)
sql.query(connectionString, query, (err, rows) => {
res.send({
rows: rows,
error: err,
links: ['/controlchartgroup',
'/controlcharts',
'/controlchartpoints',
'/updatecontrolchartstatus'
]
});
}
)
}
);
app.get('/deletecontrolchartpoints', (req, res) => {
let chrt_incid = (req.query.controlChartIncId).toString().replace(/[^a-zA-Z0-9]/g, "");
let chrt_sqlid = (req.query.controlChartSqlId).toString().replace(/[^a-zA-Z0-9]/g, "");
let delete_query;
let delete_result;
//query = update_controlcharts_query + "'" + status + "'" + " , [controlChartStatusSqlId] = 134" + " where controlChartGroupIncId=" + "'" + grp_incid + "'" + " and controlChartGroupSqlId = " + "'" + grp_sqlid + "'" + " and controlChartIncId=" + "'" + chrt_incid + "'" + " and controlChartSqlId = " + "'" + chrt_sqlid + "'";
delete_query = `${delete_controlcharts_points} '1' where controlChartIncId='${chrt_incid}' and controlChartSqlId = '${chrt_sqlid}'`;
console.log(delete_query)
sql.query(connectionString, delete_query, function (err, rows) {
delete_result = {
rows: rows,
error: err,
links: ['/controlchartgroup',
'/controlcharts',
'/controlchartpoints',
'/updatecontrolchartstatus'
]
}
delete_result = JSON.stringify(delete_result);
let get_query = `${get_ControlPoints_query} where controlChartIncId='${chrt_incid}' and controlChartSqlId = '${chrt_sqlid}' and isDeleted='0'`
console.log(get_query)
sql.query(connectionString, get_query, function (err, rows) {
res.send({
"Delete status": { error: JSON.parse(delete_result).error },
"Updated Chart points": rows,
error: err,
links: ['/controlchartgroup',
'/controlcharts',
'/controlchartpoints',
'/updatecontrolchartstatus'
]
});
});
})
});