const express = require('express');
const app = express();
const bodyParser = require('body-parser');
app.use(bodyParser.json());
const cors = require('cors');
const dotenv = require('dotenv');
dotenv.config();
//! add db hear
const dbService = require('./dbService');
const connection = require('./dbService');
app.use(cors());
app.use(express.json());
app.use(express.urlencoded({ extended : false }));
// //! create data-base connection
// app.post('/insert', (request, response) => {
// const { name } = request.body;
// const db = dbService.getDbServiceInstance();
// const result = db.insertNewName(name);
// result
// .then(data => response.json({ data: data}))
// .catch(err => console.log(err));
// });
// //! read data-base connection
// app.get('/getAll', (request, response) => {
// const db = dbService.getDbServiceInstance();
// const result = db.getAllData();
// result
// .then(data => response.json({data : data}))
// .catch(err => console.log(err));
// })
// // update
// app.patch('/update', (request, response) => {
// const { id, name } = request.body;
// const db = dbService.getDbServiceInstance();
// const result = db.updateNameById(id, name);
// result
// .then(data => response.json({success : data}))
// .catch(err => console.log(err));
// });
// // delete
// app.delete('/delete/:id', (request, response) => {
// const { id } = request.params;
// const db = dbService.getDbServiceInstance();
// const result = db.deleteRowById(id);
// result
// .then(data => response.json({success : data}))
// .catch(err => console.log(err));
// });
// app.get('/search/:name', (request, response) => {
// const { name } = request.params;
// const db = dbService.getDbServiceInstance();
// const result = db.searchByName(name);
// result
// .then(data => response.json({data : data}))
// .catch(err => console.log(err));
// })
// const connection = require('./dbService');
// Now you can use the 'connection' variable in your app.js file
// For example, you can query the database using this connection
// connection.query('SELECT * FROM names;', (err, results) => {
// if (err) {
// console.error(err);
// return;
// }
// console.log(results);
// });
app.post('/login', (req, res) => {
const { ao_name, ao_status } = req.body;
console.log('Received login data:', req.body);
var sql = "INSERT INTO app_occasion ( ao_name, ao_status ) VALUES ?";
var values = [[ao_name, ao_status]];
connection.query(sql, [values], function (err, result) {
if (err) throw err;
console.log("Records inserted: " + result.affectedRows);
// Show alert message
res.status(200).send('Login data received');
});
});
app.put('/update-application-status/:userId', async (req, res) => {
const { userId } = req.params;
const { application_status } = req.body;
// Update logic for the database (example using a fictitious database function)
// await database.updateApplicationStatus(userId, application_status);
// var sql = "UPDATE leave_from_rgpl SET application_status = 1 WHERE id = ?",[userId];
connection.query('UPDATE leave_from_rgpl SET ? WHERE id = ?', [{ application_status: "1" }, userId]);
// connection.query(sql, function (err, result) {
// if (err) throw err;
// console.log("Records updated: " + result.affectedRows);
// // Show alert message
// res.status(200).send('Login data received');
// });
console.log("working")
});
app.put('/rejected/:userId', async (req, res) => {
const { userId } = req.params;
const { application_status } = req.body;
// Update logic for the database (example using a fictitious database function)
// await database.updateApplicationStatus(userId, application_status);
// var sql = "UPDATE leave_from_rgpl SET application_status = 1 WHERE id = ?",[userId];
connection.query('UPDATE leave_from_rgpl SET ? WHERE id = ?', [{ application_status: "2" }, userId]);
// connection.query(sql, function (err, result) {
// if (err) throw err;
// console.log("Records updated: " + result.affectedRows);
// // Show alert message
// res.status(200).send('Login data received');
// });
console.log("working")
});
// app_super_section
// login_table_rgpl
// ! login from app_super_section
app.post('/aa', (req, res) => {
const sql = "SELECT * FROM app_super_section WHERE email = ? AND password = ?";
// const values = [
// req.body.email,
// req.body.password
// ];
connection.query(sql, [ req.body.email, req.body.password], (err, data) => {
if (err) return res.json("Login Failed");
if(data.length > 0){
return res.json("Login Successful")
}else {
return res.json("INCORRECT EMAIL OR PASSWORD");
}
});
});
// var sql = "INSERT INTO leave_from_rgpl (name, college_name, class_coordinator_name, leave_date_from, leave_time_from, leave_date_up_to, leave_time_up_to, leave_type, reason_for_leave) VALUES ?";
// var values = [
// [name, college_name, class_coordinator_name, `DATE_FORMAT('${leave_date_from}', '%Y-%m-%d`, // Format the date `TIME_FORMAT('${leave_time_from}', '%H:%i:%s.%f`, // Format the time `DATE_FORMAT('${leave_date_up_to}', '%Y-%m-%d`, // Format the date `TIME_FORMAT('${leave_time_up_to}', '%H:%i:%%f')`, // Format the time leave_type, reason_for_leave,
// ],
// ];
// connection.query(sql, [values], function (err, result) {
// if (err) throw err;
// console.log("Records inserted: " + result.affectedRows);
// // Show alert message
// res.status(200).send('Login data received');
// });
// !my code
// app.post('/login', (req, res) => {
// const { username, password } = req.body;
// console.log('Received login data:');
// // console.log('Username:', username);
// // console.log('Password:', password);
// var q = req.body.username;
// var w = req.body.password;
// // console.log(q,w);
// // module.exports =q;
// // Export q and w variables
// res.status(200).send('Login data received');
// });
// connection.connect((err) => {
// if (err) {
// console.log(err.message);
// }
// // //! this is i added for database state
// console.log('db ' + connection.state);
// // console.log(q)
// // console.log(msg);
// // });
// var sql = "INSERT INTO login (name,user_name,password) VALUES ?";
// // var { q, w } = require('./app');
// // console.log(q,w);
// var values =[[q,w,'123456']];
// connection.query(sql, [values], function (err, result) {
// if (err) throw err;
// console.log("records inserted: "+result.affectedRows);
// });
// });
// // Get all beers
// app.get('', (req, res) => {
// pool.getConnection((err, connection) => {
// if (err) throw err;
// console.log(`connected as id ${connection.threadId}`);
// connection.query('SELECT * from login', (err, rows) => {
// connection.release(); // return the connection to the pool
// if (err) {
// res.send(rows);
// } else {
// console.log(err);
// }
// });
// });
// });
app.get('/get-all-data', (req, res) => {
const query = 'SELECT * FROM leave_from_rgpl';
connection.query(query, (err, results) => {
if (err) {
console.error(err.message);
return res.status(500).send(err);
}
res.json(results);
});
});
app.put('/update-data/:id', (req, res) => {
const { id } = req.params;
const { newData } = req.body; // Replace `newData` with actual fields you want to update
const query = 'UPDATE login SET ? WHERE id = ?'; // Replace with your table and field names
connection.query(query, [newData, id], (err, results) => {
if (err) {
console.error(err.message);
return res.status(500).send(err);
}
res.json({ success: true, message: 'Data updated successfully', results });
});
});
// Endpoint to delete data
app.delete('/delete-data/:id', (req, res) => {
const { id } = req.params;
const query = 'DELETE FROM login WHERE id = ?';
connection.query(query, [id], (err, results) => {
if (err) {
console.error(err.message);
return res.status(500).send(err);
}
res.json({ success: true, message: 'Data deleted successfully', results });
});
});
app.listen(process.env.PORT, () => console.log('app is running -->',process.env.PORT));
// module.exports = 'hello world';