GWM : asset create api fix

This commit is contained in:
Gowtham M 2026-07-08 11:07:16 +05:30
parent ab3e0f0e1b
commit 22d25bf2f5
2 changed files with 1 additions and 32 deletions

View File

@ -8,7 +8,6 @@ const SOFT_DELETE_TABLES = new Set([
'users',
'purchase_orders',
'grn',
'grn_items',
'asset_categories',
'asset_subcategories',
]);

View File

@ -11,18 +11,7 @@ const {
resolveDepreciationRate,
calculateDepreciation,
} = require('./assets.depreciation');
const SOFT_DELETE_TABLES = new Set([
'vendors',
'locations',
'departments',
'users',
'purchase_orders',
'grn',
'grn_items',
'asset_categories',
'asset_subcategories',
]);
const { assertReference, toDateOnly } = require('./assets.helpers');
const assetInclude = {
asset_categories: { select: { id: true, code: true, name: true, code_prefix: true } },
@ -56,12 +45,6 @@ const transferInclude = {
users_asset_transfers_transferred_byTousers: { select: { id: true, full_name: true } },
};
const toDateOnly = (value) => {
if (!value) return null;
const date = new Date(value);
return new Date(Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate()));
};
const assetSeriesCode = (categoryCode) => `ASSET_${categoryCode}`;
const sanitizeAsset = (asset) => {
@ -158,19 +141,6 @@ const sanitizeTransfer = (row) => {
};
};
const assertReference = async (table, id, label, { requireActive = true } = {}) => {
if (!id) return null;
const row = await prisma[table].findFirst({
where: {
id: BigInt(id),
...(SOFT_DELETE_TABLES.has(table) ? { deleted_at: null } : {}),
},
});
if (!row) throw new ApiError(422, `Invalid ${label}`);
if (requireActive && row.is_active === false) throw new ApiError(422, `${label} is inactive`);
return row;
};
const assertDisposalFields = (status, disposalDate) => {
if (DISPOSAL_STATUSES.includes(status) && !disposalDate) {
throw new ApiError(422, 'disposal_date is required when status is DISPOSED or SCRAPPED');