fix(room_number): remove department relation
This commit is contained in:
@ -7,7 +7,6 @@ import CommonHelper from "../helpers/common";
|
|||||||
import { ReturnHelper } from "../helpers/express/return";
|
import { ReturnHelper } from "../helpers/express/return";
|
||||||
import { Language } from "../langs/lang";
|
import { Language } from "../langs/lang";
|
||||||
import { RoomNumberModel } from "../model/room_number";
|
import { RoomNumberModel } from "../model/room_number";
|
||||||
import { DepartmentModel } from "../model/department";
|
|
||||||
import { OrmHelper } from "../helpers/orm";
|
import { OrmHelper } from "../helpers/orm";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
|
||||||
@ -54,7 +53,6 @@ export class RoomNumberController {
|
|||||||
const offset = (param.page - 1) * param.limit;
|
const offset = (param.page - 1) * param.limit;
|
||||||
const res_count = query;
|
const res_count = query;
|
||||||
const res_list = query
|
const res_list = query
|
||||||
.leftJoinAndSelect("RoomNumber.department", "department")
|
|
||||||
.orderBy("RoomNumber." + param.order_field, param.order_direction)
|
.orderBy("RoomNumber." + param.order_field, param.order_direction)
|
||||||
.offset(offset)
|
.offset(offset)
|
||||||
.limit(param.limit);
|
.limit(param.limit);
|
||||||
@ -88,7 +86,6 @@ export class RoomNumberController {
|
|||||||
try {
|
try {
|
||||||
const schema = Joi.object().keys({
|
const schema = Joi.object().keys({
|
||||||
number: Joi.string().max(256).required().label("Room Number"),
|
number: Joi.string().max(256).required().label("Room Number"),
|
||||||
department_id: Joi.string().uuid().required().label("Department ID"),
|
|
||||||
});
|
});
|
||||||
|
|
||||||
let param: any = await schema.validateAsync(req.body);
|
let param: any = await schema.validateAsync(req.body);
|
||||||
@ -96,12 +93,8 @@ export class RoomNumberController {
|
|||||||
let exist = await RoomNumberModel.list({ number: param.number }).then((q) => q.getOne());
|
let exist = await RoomNumberModel.list({ number: param.number }).then((q) => q.getOne());
|
||||||
if (exist) throw { message: "Room Number " + Language.lang.failed_duplicate };
|
if (exist) throw { message: "Room Number " + Language.lang.failed_duplicate };
|
||||||
|
|
||||||
let department = await DepartmentModel.list({ id: param.department_id }).then((q) => q.getOne());
|
|
||||||
if (!department) throw { message: "Department not found" };
|
|
||||||
|
|
||||||
let roomNumber = new RoomNumber();
|
let roomNumber = new RoomNumber();
|
||||||
roomNumber.number = param.number;
|
roomNumber.number = param.number;
|
||||||
roomNumber.department = department;
|
|
||||||
roomNumber.created_by = req.auth?.data.name;
|
roomNumber.created_by = req.auth?.data.name;
|
||||||
roomNumber.updated_by = req.auth?.data.name;
|
roomNumber.updated_by = req.auth?.data.name;
|
||||||
await queryRunner.manager.save(roomNumber);
|
await queryRunner.manager.save(roomNumber);
|
||||||
@ -129,7 +122,7 @@ export class RoomNumberController {
|
|||||||
id: Joi.string().uuid().required().label("Room Number Id"),
|
id: Joi.string().uuid().required().label("Room Number Id"),
|
||||||
});
|
});
|
||||||
let param: any = await schema.validateAsync(req.params);
|
let param: any = await schema.validateAsync(req.params);
|
||||||
let roomNumber = await RoomNumberModel.list({ "RoomNumber.id": param.id }).then((q) => q.leftJoinAndSelect("RoomNumber.department", "department").getOne());
|
let roomNumber = await RoomNumberModel.list({ "RoomNumber.id": param.id }).then((q) => q.getOne());
|
||||||
if (!roomNumber) throw { message: "Room Number Not Found" };
|
if (!roomNumber) throw { message: "Room Number Not Found" };
|
||||||
return ReturnHelper.successResponseAny(res, 200, Language.lang.success_view, roomNumber);
|
return ReturnHelper.successResponseAny(res, 200, Language.lang.success_view, roomNumber);
|
||||||
} catch (e: unknown) {
|
} catch (e: unknown) {
|
||||||
@ -153,21 +146,16 @@ export class RoomNumberController {
|
|||||||
const schema = Joi.object().keys({
|
const schema = Joi.object().keys({
|
||||||
id: Joi.string().uuid().required().label("ID"),
|
id: Joi.string().uuid().required().label("ID"),
|
||||||
number: Joi.string().max(256).required().label("Room Number"),
|
number: Joi.string().max(256).required().label("Room Number"),
|
||||||
department_id: Joi.string().uuid().required().label("Department ID"),
|
|
||||||
});
|
});
|
||||||
let param: any = await schema.validateAsync(req.body);
|
let param: any = await schema.validateAsync(req.body);
|
||||||
|
|
||||||
let exist = await RoomNumberModel.list({ number: param.number }).then((q) => q.getOne());
|
let exist = await RoomNumberModel.list({ number: param.number }).then((q) => q.getOne());
|
||||||
if (exist && exist.id != param.id) throw { message: "Room Number " + Language.lang.failed_duplicate };
|
if (exist && exist.id != param.id) throw { message: "Room Number " + Language.lang.failed_duplicate };
|
||||||
|
|
||||||
let department = await DepartmentModel.list({ id: param.department_id }).then((q) => q.getOne());
|
|
||||||
if (!department) throw { message: "Department not found" };
|
|
||||||
|
|
||||||
let roomNumber = await RoomNumberModel.list({ "RoomNumber.id": param.id }).then((q) => q.getOne());
|
let roomNumber = await RoomNumberModel.list({ "RoomNumber.id": param.id }).then((q) => q.getOne());
|
||||||
if (!roomNumber) throw { message: "Room Number " + Language.lang.failed_not_found };
|
if (!roomNumber) throw { message: "Room Number " + Language.lang.failed_not_found };
|
||||||
|
|
||||||
roomNumber.number = param.number;
|
roomNumber.number = param.number;
|
||||||
roomNumber.department = department;
|
|
||||||
roomNumber.updated_by = req.auth?.data.name;
|
roomNumber.updated_by = req.auth?.data.name;
|
||||||
await queryRunner.manager.save(roomNumber);
|
await queryRunner.manager.save(roomNumber);
|
||||||
|
|
||||||
|
|||||||
@ -140,7 +140,6 @@ const doc = {
|
|||||||
},
|
},
|
||||||
room_number: {
|
room_number: {
|
||||||
$number: "101",
|
$number: "101",
|
||||||
$department_id: "uuid-string",
|
|
||||||
},
|
},
|
||||||
laboratory: {
|
laboratory: {
|
||||||
$room: "Room name",
|
$room: "Room name",
|
||||||
|
|||||||
Reference in New Issue
Block a user