Skip to content

Commit d213c6a

Browse files
committed
moved validation + removed redundant id checks
1 parent a1cbdd0 commit d213c6a

3 files changed

Lines changed: 7 additions & 31 deletions

File tree

src/backend/src/routes/projects.routes.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ import {
55
nonEmptyString,
66
projectValidators,
77
validateInputs,
8-
materialValidators,
9-
copyMaterialsValidators
8+
materialValidators
109
} from '../utils/validation.utils.js';
10+
import { validateWBS } from 'shared';
1111
import ProjectsController from '../controllers/projects.controllers.js';
1212

1313
const projectRouter = express.Router();
@@ -96,7 +96,11 @@ projectRouter.post('/bom/material/:wbsNum/create', ...materialValidators, valida
9696
projectRouter.post('/bom/material/:materialId/edit', ...materialValidators, validateInputs, ProjectsController.editMaterial);
9797
projectRouter.post(
9898
'/bom/material/copy',
99-
...copyMaterialsValidators,
99+
body('materialIds').isArray({ min: 1 }),
100+
nonEmptyString(body('materialIds.*')),
101+
body('destinationWbsNum').customSanitizer((value) => {
102+
return validateWBS(value);
103+
}),
100104
validateInputs,
101105
ProjectsController.copyMaterialsToProject
102106
);

src/backend/src/services/boms.services.ts

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -200,27 +200,6 @@ export default class BillOfMaterialsService {
200200
const newMaterialIds: string[] = [];
201201

202202
for (const material of materials) {
203-
const materialType = await tx.material_Type.findUnique({
204-
where: { id: material.materialTypeId }
205-
});
206-
if (!materialType) throw new NotFoundException('Material Type', material.materialTypeId);
207-
if (materialType.dateDeleted) throw new DeletedException('Material Type', materialType.name);
208-
209-
if (material.manufacturerId) {
210-
const manufacturer = await tx.manufacturer.findUnique({
211-
where: { id: material.manufacturerId }
212-
});
213-
if (!manufacturer) throw new NotFoundException('Manufacturer', material.manufacturerId);
214-
if (manufacturer.dateDeleted) throw new DeletedException('Manufacturer', manufacturer.name);
215-
}
216-
217-
if (material.unitId) {
218-
const unit = await tx.unit.findUnique({
219-
where: { id: material.unitId }
220-
});
221-
if (!unit) throw new NotFoundException('Unit', material.unitId);
222-
}
223-
224203
const newMaterial = await tx.material.create({
225204
data: {
226205
name: material.name,

src/backend/src/utils/validation.utils.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -209,13 +209,6 @@ export const materialValidators = [
209209
nonEmptyString(body('reimbursementRequestId')).optional(),
210210
body('notes').isString().optional()
211211
];
212-
export const copyMaterialsValidators = [
213-
body('materialIds').isArray({ min: 1 }),
214-
nonEmptyString(body('materialIds.*')),
215-
body('destinationWbsNum').customSanitizer((value) => {
216-
return validateWBS(value);
217-
})
218-
];
219212
export const validateInputs = (req: Request, res: Response, next: Function): void => {
220213
const errors = validationResult(req);
221214
if (!errors.isEmpty()) {

0 commit comments

Comments
 (0)