enable public report
This commit is contained in:
parent
8f563d1058
commit
41c3093754
21 changed files with 307 additions and 19 deletions
|
@ -79,7 +79,10 @@ export async function getDamageReportById(req: Request, res: Response): Promise<
|
|||
*/
|
||||
export async function createDamageReport(req: Request, res: Response): Promise<any> {
|
||||
const description = req.body.description;
|
||||
const location = req.body.location;
|
||||
const note = req.body.note;
|
||||
const reportedBy = req.body.reportedBy;
|
||||
const images = req.files as Express.Multer.File[];
|
||||
const affectedId = req.body.affectedId;
|
||||
const affected = req.body.affected;
|
||||
|
||||
|
@ -88,8 +91,10 @@ export async function createDamageReport(req: Request, res: Response): Promise<a
|
|||
|
||||
let createDamageReport: CreateDamageReportCommand = {
|
||||
description,
|
||||
location,
|
||||
note,
|
||||
reportedBy,
|
||||
imageCount: 0,
|
||||
images: images.map((i) => i.filename),
|
||||
affectedId,
|
||||
affected,
|
||||
};
|
||||
|
|
|
@ -12,6 +12,17 @@ import { FileSystemHelper } from "../helpers/fileSystemHelper";
|
|||
import { SocketConnectionTypes } from "../enums/socketEnum";
|
||||
import SocketServer from "../websocket";
|
||||
import BadRequestException from "../exceptions/badRequestException";
|
||||
import EquipmentService from "../service/unit/equipment/equipmentService";
|
||||
import VehicleService from "../service/unit/vehicle/vehicleService";
|
||||
import WearableService from "../service/unit/wearable/wearableService";
|
||||
import EquipmentFactory from "../factory/admin/unit/equipment/equipment";
|
||||
import VehicleFactory from "../factory/admin/unit/vehicle/vehicle";
|
||||
import WearableFactory from "../factory/admin/unit/wearable/wearable";
|
||||
import { MinifiedEquipmentViewModel } from "../viewmodel/admin/unit/equipment/equipment.models";
|
||||
import { MinifiedVehicleViewModel } from "../viewmodel/admin/unit/vehicle/vehicle.models";
|
||||
import { MinifiedWearableViewModel } from "../viewmodel/admin/unit/wearable/wearable.models";
|
||||
import DamageReportCommandHandler from "../command/unit/damageReportCommandHandler";
|
||||
import { CreateDamageReportCommand } from "../command/unit/damageReportCommand";
|
||||
|
||||
/**
|
||||
* @description get all calendar items by types or nscdr
|
||||
|
@ -58,8 +69,8 @@ export async function getCalendarItemsByTypes(req: Request, res: Response): Prom
|
|||
}
|
||||
|
||||
/**
|
||||
* @description get all calendar items by types or nscdr
|
||||
* @summary passphrase is passed as value pair like `type:passphrase`
|
||||
* @description check if scanner session exists
|
||||
* @summary existance is checked by room exists
|
||||
* @param req {Request} Express req object
|
||||
* @param res {Response} Express res object
|
||||
* @returns {Promise<*>}
|
||||
|
@ -77,6 +88,58 @@ export async function checkScannerRoomExists(req: Request, res: Response): Promi
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @description get equipment, vehicle, wearable by code
|
||||
* @param req {Request} Express req object
|
||||
* @param res {Response} Express res object
|
||||
* @returns {Promise<*>}
|
||||
*/
|
||||
export async function searchStuffByCode(req: Request, res: Response): Promise<any> {
|
||||
let code = req.query.code.toString();
|
||||
|
||||
let e = await EquipmentService.getAllByCode(code);
|
||||
let v = await VehicleService.getAllByCode(code);
|
||||
let w = await WearableService.getAllByCode(code);
|
||||
|
||||
res.json([
|
||||
...EquipmentFactory.mapToBaseMinifed(e),
|
||||
...VehicleFactory.mapToBaseMinifed(v),
|
||||
...WearableFactory.mapToBaseMinifed(w),
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description create damagereport to equipment, vehicle, wearable
|
||||
* @param req {Request} Express req object
|
||||
* @param res {Response} Express res object
|
||||
* @returns {Promise<*>}
|
||||
*/
|
||||
export async function createDamageReport(req: Request, res: Response): Promise<any> {
|
||||
const related = (req.body.related ? JSON.parse(req.body.related) : undefined) as
|
||||
| undefined
|
||||
| MinifiedEquipmentViewModel
|
||||
| MinifiedVehicleViewModel
|
||||
| MinifiedWearableViewModel;
|
||||
const description = req.body.description;
|
||||
const location = req.body.location;
|
||||
const note = req.body.note;
|
||||
const reportedBy = req.body.reportedBy;
|
||||
const images = req.files as Express.Multer.File[];
|
||||
|
||||
let createDamageReport: CreateDamageReportCommand = {
|
||||
description: description,
|
||||
location: location,
|
||||
note: note,
|
||||
reportedBy: reportedBy,
|
||||
images: images.map((i) => i.filename),
|
||||
affectedId: related ? related.id : undefined,
|
||||
affected: related ? related.assigned : undefined,
|
||||
};
|
||||
await DamageReportCommandHandler.create(createDamageReport);
|
||||
|
||||
res.sendStatus(204);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description get configuration of UI
|
||||
* @param req {Request} Express req object
|
||||
|
@ -91,6 +154,7 @@ export async function getApplicationConfig(req: Request, res: Response): Promise
|
|||
"club.website": SettingHelper.getSetting("club.website"),
|
||||
"app.custom_login_message": SettingHelper.getSetting("app.custom_login_message"),
|
||||
"app.show_link_to_calendar": SettingHelper.getSetting("app.show_link_to_calendar"),
|
||||
"app.show_link_to_damagereport": SettingHelper.getSetting("app.show_link_to_damagereport"),
|
||||
};
|
||||
|
||||
res.json(config);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue