lead menu

nquiry menu
This commit is contained in:
phaichayon
2026-06-19 10:39:11 +07:00
parent 0650cf6297
commit c0cc880be2
46 changed files with 5985 additions and 420 deletions

View File

@@ -22,11 +22,18 @@ const followupRequestSchema = enquiryFollowupSchema.extend({
export async function PATCH(request: NextRequest, { params }: Params) {
try {
const { id, followupId } = await params;
const { organization, session } = await requireOrganizationAccess({
const { organization, session, membership } = await requireOrganizationAccess({
permission: PERMISSIONS.crmEnquiryFollowupUpdate
});
const payload = followupRequestSchema.parse(await request.json());
const before = (await listEnquiryFollowups(id, organization.id)).find(
const before = (
await listEnquiryFollowups(id, organization.id, {
organizationId: organization.id,
userId: session.user.id,
membershipRole: membership.role,
businessRole: membership.businessRole
})
).find(
(item) => item.id === followupId
);
@@ -39,7 +46,13 @@ export async function PATCH(request: NextRequest, { params }: Params) {
followupId,
organization.id,
session.user.id,
payload
payload,
{
organizationId: organization.id,
userId: session.user.id,
membershipRole: membership.role,
businessRole: membership.businessRole
}
);
await auditUpdate({
@@ -79,10 +92,17 @@ export async function PATCH(request: NextRequest, { params }: Params) {
export async function DELETE(_request: NextRequest, { params }: Params) {
try {
const { id, followupId } = await params;
const { organization, session } = await requireOrganizationAccess({
const { organization, session, membership } = await requireOrganizationAccess({
permission: PERMISSIONS.crmEnquiryFollowupDelete
});
const before = (await listEnquiryFollowups(id, organization.id)).find(
const before = (
await listEnquiryFollowups(id, organization.id, {
organizationId: organization.id,
userId: session.user.id,
membershipRole: membership.role,
businessRole: membership.businessRole
})
).find(
(item) => item.id === followupId
);
@@ -94,7 +114,13 @@ export async function DELETE(_request: NextRequest, { params }: Params) {
id,
followupId,
organization.id,
session.user.id
session.user.id,
{
organizationId: organization.id,
userId: session.user.id,
membershipRole: membership.role,
businessRole: membership.businessRole
}
);
await auditDelete({