117 lines
4.2 KiB
JavaScript
117 lines
4.2 KiB
JavaScript
import ownConn from "../dbConfig.js";
|
|
|
|
//get single employee by id
|
|
export const getEmployeeById = async (id, result) => {
|
|
try {
|
|
let sql = `SELECT * FROM customeremployees WHERE primaryID = ?`;
|
|
const results = await ownConn.execute(sql, [id])
|
|
result(null, results[0]);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
//get employees by customer id
|
|
export const getEmployeesByCustomerId = async (customerId, result) => {
|
|
try {
|
|
let sql = `SELECT * FROM customeremployees WHERE customerID = ? ORDER BY name ASC`;
|
|
const results = await ownConn.query(sql, [customerId])
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
// Update employee to Database
|
|
export const updateEmployeeById = async (data, result) => {
|
|
const id = data.primaryID;
|
|
try {
|
|
let sql = `UPDATE customeremployees SET name = ?, pronouns = ?, title = ?, firstName = ?, lastName = ?, preferredName = ?, department = ?, departmentID = ?, jobTitle = ?, phonenumber = ?, eMail = ?, notes = ? WHERE primaryID = ?`;
|
|
const results = await ownConn.query(sql, [data.name, data.pronouns, data.title, data.firstName, data.lastName, data.preferredName, data.department, data.departmentID, data.jobTitle, data.phonenumber, data.eMail, data.notes, id]);
|
|
results.insertId = results.insertId.toString();
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
//insert employee to databased
|
|
export const insertEmployee = async (data, result) => {
|
|
try {
|
|
const results = await ownConn.query(`INSERT INTO customeremployees(customerID, customername, name, pronouns, title, firstName, lastName, preferredName, department, departmentID, jobTitle, phonenumber, eMail, notes) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, [data.customerID, data.customername, data.name, data.pronouns, data.title, data.firstName, data.lastName, data.preferredName, data.department, data.departmentID, data.jobTitle, data.phonenumber, data.eMail, data.notes])
|
|
results.insertId = results.insertId.toString();
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
//get all selected employees by name
|
|
export const getSelectedEmployeesByName = async (selected, result) => {
|
|
try {
|
|
let sql = `SELECT * FROM customeremployees WHERE LOWER(name) LIKE '%${selected.toLowerCase()}%' ORDER BY name ASC`;
|
|
const results = await ownConn.execute(sql)
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
//get all selected employees by department name
|
|
export const getSelectedEmployeesByDepartmentName = async (selected, result) => {
|
|
try {
|
|
let sql = `SELECT * FROM customeremployees WHERE LOWER(department) LIKE '%${selected.toLowerCase()}%' ORDER BY department ASC`;
|
|
const results = await ownConn.execute(sql)
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
//get all selected employees by departmentID
|
|
export const getSelectedEmployeesByDepartment = async (selected, result) => {
|
|
try {
|
|
let sql = `SELECT * FROM customeremployees WHERE departmentID = ? ORDER BY name ASC`;
|
|
const results = await ownConn.execute(sql)
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|
|
|
|
// Delete employee to Database
|
|
export const deleteEmployeeById = async (id, result) => {
|
|
try {
|
|
let sql = `DELETE FROM customeremployees WHERE primaryID = ?`;
|
|
const results = await ownConn.query(sql, [id])
|
|
results.insertId = results.insertId.toString();
|
|
result(null, results);
|
|
}
|
|
catch (err) {
|
|
// Manage Errors
|
|
console.log("SQL error : ", err);
|
|
result(err, null);
|
|
}
|
|
};
|