const { user } = req;
const { db } = appwriteClient(req, res);
const requiredFields = ['documentOf', 'documentType'];
const {
documentOf,
entityId,
documentType,
identifiedBy,
identificationNo,
VIN,
description,
category,
status,
amount,
address,
issuedBy,
issuedDate,
expiryDate,
renewalDate,
notes,
fileIds
} = req.body;
if (!user || !user.id) {
return res.json({ message: "User ID is required" }, 400);
}
for (const field of requiredFields) {
if (!req.body[field]) {
return res.json({ message: `${field} is required` }, 400);
}
}
const newData = {
documentOf,
entityId: entityId || null,
documentType,
identifiedBy: identifiedBy || null,
identificationNo: identificationNo || null,
VIN: VIN || null,
description: description || null,
category: category || null,
status: status || null,
amount: amount || null,
address: address || null,
issuedBy: issuedBy || null,
issuedDate: issuedDate || null,
expiryDate: expiryDate || null,
renewalDate: renewalDate || null,
notes: notes || null,
fileIds: fileIds || [],
userId: user.id.toString()
};
const response = await db.createDocument(Env.dbId, Env.collectionId, ID.unique(), newData);
return res.json({ message: "Document created successfully", document: response }, 201);