|
|
|
@ -102,43 +102,43 @@ exports.createTeamMember = async (req, reply) => {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
exports.getTeamMembers = async (request, reply) => {
|
|
|
|
|
try {
|
|
|
|
|
const { departmentId } = request.params; // ✅ Get departmentId from request params
|
|
|
|
|
// exports.getTeamMembers = async (request, reply) => {
|
|
|
|
|
// try {
|
|
|
|
|
// const { departmentId,officeName,city } = request.params; // ✅ Get departmentId from request params
|
|
|
|
|
|
|
|
|
|
// ✅ Find the department using departmentId
|
|
|
|
|
const department = await Deparments.findOne({ departmentId });
|
|
|
|
|
// // ✅ Find the department using departmentId
|
|
|
|
|
// const department = await Deparments.findOne({ departmentId });
|
|
|
|
|
|
|
|
|
|
if (!department) {
|
|
|
|
|
return reply.status(404).send({
|
|
|
|
|
simplydata: {
|
|
|
|
|
error: true,
|
|
|
|
|
message: "Department not found",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
// if (!department) {
|
|
|
|
|
// return reply.status(404).send({
|
|
|
|
|
// simplydata: {
|
|
|
|
|
// error: true,
|
|
|
|
|
// message: "Department not found",
|
|
|
|
|
// },
|
|
|
|
|
// });
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// ✅ Extract team members from department schema
|
|
|
|
|
const teamMembers = department.team_member.team_member;
|
|
|
|
|
// // ✅ Extract team members from department schema
|
|
|
|
|
// const teamMembers = department.team_member.team_member;
|
|
|
|
|
|
|
|
|
|
return reply.send({
|
|
|
|
|
simplydata: {
|
|
|
|
|
error: false,
|
|
|
|
|
message: "Team members retrieved successfully",
|
|
|
|
|
teamMembers, // ✅ Return the list of team members
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
// return reply.send({
|
|
|
|
|
// simplydata: {
|
|
|
|
|
// error: false,
|
|
|
|
|
// message: "Team members retrieved successfully",
|
|
|
|
|
// teamMembers, // ✅ Return the list of team members
|
|
|
|
|
// },
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error("Error fetching team members:", err);
|
|
|
|
|
reply.status(500).send({
|
|
|
|
|
simplydata: {
|
|
|
|
|
error: true,
|
|
|
|
|
message: "Internal server error",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
// } catch (err) {
|
|
|
|
|
// console.error("Error fetching team members:", err);
|
|
|
|
|
// reply.status(500).send({
|
|
|
|
|
// simplydata: {
|
|
|
|
|
// error: true,
|
|
|
|
|
// message: "Internal server error",
|
|
|
|
|
// },
|
|
|
|
|
// });
|
|
|
|
|
// }
|
|
|
|
|
// };
|
|
|
|
|
|
|
|
|
|
// exports.getAllDepartments = async (request, reply) => {
|
|
|
|
|
// try {
|
|
|
|
@ -414,6 +414,51 @@ exports.createTeamMember = async (req, reply) => {
|
|
|
|
|
// }
|
|
|
|
|
// };
|
|
|
|
|
|
|
|
|
|
// Controller
|
|
|
|
|
exports.getTeamMembers = async (request, reply) => {
|
|
|
|
|
try {
|
|
|
|
|
const { departmentId, officeName, city,departmentName } = request.params; // ✅ Get from path params
|
|
|
|
|
|
|
|
|
|
// ✅ Find the department using all three fields
|
|
|
|
|
const department = await Deparments.findOne({
|
|
|
|
|
departmentId,
|
|
|
|
|
officeName,
|
|
|
|
|
city,
|
|
|
|
|
departmentName
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if (!department) {
|
|
|
|
|
return reply.status(404).send({
|
|
|
|
|
simplydata: {
|
|
|
|
|
error: true,
|
|
|
|
|
message: "Department not found for given office and city",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ✅ Extract team members
|
|
|
|
|
const teamMembers = department.team_member?.team_member || [];
|
|
|
|
|
|
|
|
|
|
return reply.send({
|
|
|
|
|
simplydata: {
|
|
|
|
|
error: false,
|
|
|
|
|
message: "Team members retrieved successfully",
|
|
|
|
|
teamMembers,
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error("Error fetching team members:", err);
|
|
|
|
|
reply.status(500).send({
|
|
|
|
|
simplydata: {
|
|
|
|
|
error: true,
|
|
|
|
|
message: "Internal server error",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
exports.getAllDepartments = async (request, reply) => {
|
|
|
|
|
try {
|
|
|
|
|
const { officeName, city } = request.params;
|
|
|
|
|