changes on update

master^2
Bhaskar 1 month ago
parent 92a8960bf2
commit c8b1f1d838

@ -770,11 +770,10 @@ exports.getBranchDetails = async (request, reply) => {
}; };
exports.editdepartment = async (request, reply) => { exports.editdepartment = async (request, reply) => {
try { try {
const { departmentId } = request.params; const { departmentId } = request.params;
const { const {
phone, phone,
alternativeContactNumber, alternativeContactNumber,
gender, gender,
@ -798,23 +797,42 @@ exports.getBranchDetails = async (request, reply) => {
officeName, officeName,
picture, picture,
employeeType employeeType
} = request.body; } = request.body;
const existing = await Deparments.findOne({ departmentId }); const existing = await Deparments.findOne({ departmentId });
if (!existing) { if (!existing) {
return reply.status(404).send({ message: 'Department not found' }); return reply.status(404).send({ message: "Department not found" });
} }
const phoneExists = await Deparments.findOne({ phone, departmentId: { $ne: departmentId } }); const phoneExists = await Deparments.findOne({
phone,
departmentId: { $ne: departmentId },
});
if (phoneExists) { if (phoneExists) {
return reply.status(400).send({ message: 'Phone is already registered to another user' }); return reply
.status(400)
.send({ message: "Phone is already registered to another user" });
} }
// 🟢 Handle reportingManager "Self"
let finalReportingManager = reportingManager || existing.reportingManager;
let finalReportingManagerMobile =
reportingManager_mobile_number || existing.reportingManager_mobile_number;
let finalReportingManagerEmail =
reportingManager_email || existing.reportingManager_email;
if (reportingManager?.toLowerCase() === "self") {
finalReportingManager = `${firstName || existing.firstName || ""} ${
lastName || existing.lastName || ""
} - (${phone || existing.phone}) - ${city || existing.city}`;
finalReportingManagerMobile = phone || existing.phone;
finalReportingManagerEmail = email || existing.email;
}
// 🔹 Update fields
existing.phone = phone || existing.phone; existing.phone = phone || existing.phone;
existing.alternativeContactNumber = alternativeContactNumber || existing.alternativeContactNumber; existing.alternativeContactNumber =
alternativeContactNumber || existing.alternativeContactNumber;
existing.personalEmail = personalEmail || existing.personalEmail; existing.personalEmail = personalEmail || existing.personalEmail;
existing.gender = gender || existing.gender; existing.gender = gender || existing.gender;
existing.city = city || existing.city; existing.city = city || existing.city;
@ -823,29 +841,31 @@ exports.getBranchDetails = async (request, reply) => {
existing.zone = zone || existing.zone; existing.zone = zone || existing.zone;
existing.desginationName = desginationName || existing.desginationName; existing.desginationName = desginationName || existing.desginationName;
existing.pincode = pincode || existing.pincode; existing.pincode = pincode || existing.pincode;
existing.address1 = address1 || existing.address1; existing.address1 = address1 || existing.address1;
existing.address2 = address2 || existing.address2; existing.address2 = address2 || existing.address2;
existing.email = email || existing.email; existing.email = email || existing.email;
existing.firstName = firstName || existing.firstName; existing.firstName = firstName || existing.firstName;
existing.lastName = lastName || existing.lastName; existing.lastName = lastName || existing.lastName;
existing.departmentName = departmentName || existing.departmentName; existing.departmentName = departmentName || existing.departmentName;
existing.reportingManager = reportingManager || existing.reportingManager
existing.personal_city = personal_city || existing.personal_city; existing.personal_city = personal_city || existing.personal_city;
existing.reportingManager_mobile_number = reportingManager_mobile_number || existing.reportingManager_mobile_number; existing.officeName = officeName || existing.officeName;
existing.reportingManager_email = reportingManager_email || existing.reportingManager_email; existing.picture = picture || existing.picture;
existing.officeName = officeName || existing.officeName existing.employeeType = employeeType || existing.employeeType;
existing.picture = picture || existing.picture
existing.employeeType = employeeType || existing.employeeType // 🔹 Assign formatted reportingManager
existing.reportingManager = finalReportingManager;
existing.reportingManager_mobile_number = finalReportingManagerMobile;
existing.reportingManager_email = finalReportingManagerEmail;
await existing.save(); await existing.save();
reply.send({ message: 'Department user updated successfully' }); reply.send({ message: "Department user updated successfully" });
} catch (err) { } catch (err) {
console.error("❌ Error in editdepartment:", err);
reply.status(500).send({ message: err.message }); reply.status(500).send({ message: err.message });
} }
}; };
// exports.getAllDesignationsParticularFields = async (req, reply) => { // exports.getAllDesignationsParticularFields = async (req, reply) => {
// try { // try {
// const departments = await Desgination.find().exec(); // const departments = await Desgination.find().exec();

Loading…
Cancel
Save