upd: add village active check on login and mobile user api
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,7 +7,7 @@ export async function POST(req: NextRequest) {
|
|||||||
const { phone }: ILogin = await req.json();
|
const { phone }: ILogin = await req.json();
|
||||||
const user = await prisma.user.findUnique({
|
const user = await prisma.user.findUnique({
|
||||||
where: { phone, isActive: true },
|
where: { phone, isActive: true },
|
||||||
select: { id: true, phone: true, isWithoutOTP: true },
|
select: { id: true, phone: true, isWithoutOTP: true, Village: { select: { isActive: true } } },
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!user) {
|
if (!user) {
|
||||||
@@ -17,6 +17,13 @@ export async function POST(req: NextRequest) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!user.Village?.isActive) {
|
||||||
|
return Response.json({
|
||||||
|
success: false,
|
||||||
|
message: "Akun anda tidak aktif, silahkan hubungi admin",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
return Response.json({
|
return Response.json({
|
||||||
success: true,
|
success: true,
|
||||||
message: "Sukses",
|
message: "Sukses",
|
||||||
|
|||||||
@@ -44,7 +44,8 @@ export async function GET(request: Request, context: { params: { id: string } })
|
|||||||
},
|
},
|
||||||
Village:{
|
Village:{
|
||||||
select:{
|
select:{
|
||||||
name:true
|
name:true,
|
||||||
|
isActive:true,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -57,8 +58,9 @@ export async function GET(request: Request, context: { params: { id: string } })
|
|||||||
const phone = users?.phone.substr(2)
|
const phone = users?.phone.substr(2)
|
||||||
const role = users?.UserRole.name
|
const role = users?.UserRole.name
|
||||||
const village = users?.Village.name
|
const village = users?.Village.name
|
||||||
|
const villageIsActive = users?.Village.isActive
|
||||||
|
|
||||||
const result = { ...userData, group, position, idUserRole, phone, role, village };
|
const result = { ...userData, group, position, idUserRole, phone, role, village, villageIsActive };
|
||||||
|
|
||||||
const omitData = _.omit(result, ["Group", "Position", "UserRole", "Village"]);
|
const omitData = _.omit(result, ["Group", "Position", "UserRole", "Village"]);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user