Skip to content

Commit

Permalink
Merge pull request #392 from tcet-opensource/373-employee-bank-details
Browse files Browse the repository at this point in the history
added curd to employee bank details
  • Loading branch information
TejasNair9977 authored Oct 8, 2023
2 parents 3fa8509 + 774aaaf commit e440638
Show file tree
Hide file tree
Showing 2 changed files with 102 additions and 1 deletion.
56 changes: 55 additions & 1 deletion models/employee/emp_bank.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,58 @@ const employeeBankSchema = {
};

// eslint-disable-next-line no-unused-vars
const empBank = connector.model("Employee bank", employeeBankSchema);
const EmployeeBank = connector.model("Employee bank", employeeBankSchema);

///crud operation///

// employee personal details to the database
async function create(employeeBankData) {
const {
uid,
bank_name,
bank_acc,
bank_branch,
bank_ifsc,
bank_micr,
appointment_approve_sg_dte,
} = employeeBankData;

const empBank = new EmployeeBank({
uid,
bank_name,
bank_acc,
bank_branch,
bank_ifsc,
bank_micr,
appointment_approve_sg_dte,
});

const empBankDoc = await empBank.save();
return empBankDoc;
}

async function read(filter, limit = 1) {
const empBankDoc = employeeBankSchema.find(filter).limit(limit);
return empBankDoc;
}

async function update(filter, updateObject, options = { multi: true }) {
const updateResult = await employeeBankSchema.updateMany(
filter,
{ $set: updateObject },
options,
);
return updateResult.acknowledged;
}

async function remove(empBankId) {
const deleteResult = await employeeBankSchema.deleteMany(empBankId);
return deleteResult.acknowledged;
}

export default {
create,
read,
update,
remove,
};
47 changes: 47 additions & 0 deletions services/employee/emp_bank.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
import EmployeeBank from "#models/employee/empBank";
import databaseError from "#error/database";

export async function createEmployeeBank(
uid,
bank_name,
bank_acc,
bank_branch,
bank_ifsc,
bank_micr,
appointment_approve_sg_dte,
) {
const newEmployeeBank = await EmployeeBank.create({
uid,
bank_name,
bank_acc,
bank_branch,
bank_ifsc,
bank_micr,
appointment_approve_sg_dte,
});
if (newEmployeeBank.uid === uid) {
return newEmployeeBank;
}
throw new databaseError.DataEntryError("employee bank");
}

export async function updateEmployeeBankById(id, data) {
const updated = await EmployeeBank.update({ _id: id }, data);
if (updated) {
return updated;
}
throw new databaseError.DataEntryError("employee bank");
}

export async function employeeBankList(filter) {
const employeeBank = await EmployeeBank.read(filter, 0);
return employeeBank;
}

export async function deleteEmployeeBankById(employeeBankId) {
const deleted = await EmployeeBank.remove({ _id: employeeBankId });
if (deleted) {
return deleted;
}
throw new databaseError.DataDeleteError("employee bank");
}

0 comments on commit e440638

Please sign in to comment.