added new fields to permit model, removed changes endpoints

This commit is contained in:
2025-05-23 14:43:18 +05:30
parent 564bfc061e
commit b51e36ebad
4 changed files with 24 additions and 72 deletions

View File

@@ -1,9 +1,6 @@
import { orgModel } from "../organization/organization.schema";
import { getFilterObject, getSortObject, PageQueryParams } from "../pagination";
import { userModel } from "../user/user.schema";
import { generateId } from "../utils/id";
import {
changesModel,
CreatePermitInput,
permitFields,
permitModel,
@@ -13,6 +10,7 @@ import { ChangeEvent, dbEvents } from "../realtime";
import { permitPipeline } from "../utils/pipeline";
import { AuthenticatedUser } from "../auth";
import mongoose from "mongoose";
import { noteModel } from "../note/note.schema";
export async function createPermit(
input: CreatePermitInput,
@@ -121,6 +119,10 @@ export async function listPermits(
lastUpdateDate: 1,
statusUpdated: 1,
issuedDate: 1,
communityName: 1,
lot: 1,
jobNumber: 1,
startDate: 1,
assignedTo: {
$let: {
vars: { assigned: { $arrayElemAt: ["$assignedRec", 0] } },
@@ -180,13 +182,13 @@ export async function updatePermit(
if (updatePermitResult) {
for (const key in input) {
if (["manualStatus", "utility"].includes(key)) {
await changesModel.create({
await noteModel.create({
tenantId: user.tenantId,
permitId: permitId,
field: key,
value: input[key],
updatedBy: user.userId,
updatedAt: new Date(),
pid: generateId(),
resourceId: permitId,
content: `Updated ${key} to '${input[key]}'`,
createdAt: new Date(),
createdBy: user.userId,
});
}
}
@@ -303,6 +305,10 @@ export async function searchPermit(
lastUpdateDate: 1,
statusUpdated: 1,
issuedDate: 1,
communityName: 1,
lot: 1,
jobNumber: 1,
startDate: 1,
assignedTo: {
$let: {
vars: { assigned: { $arrayElemAt: ["$assignedRec", 0] } },
@@ -340,19 +346,3 @@ export async function searchPermit(
},
};
}
export async function getchanges(permitId: string, user: AuthenticatedUser) {
if (user.role == "client") {
const permit = await permitModel.findOne({
pid: permitId,
tenantId: user.tenantId,
});
if (!permit || permit.client.toString() !== user.orgId) return [];
}
return await changesModel
.find({
$and: [{ tenantId: user.tenantId }, { permitId: permitId }],
})
.populate({ path: "updatedBy", select: "_id pid name avatar" });
}