zone creation
This commit is contained in:
13
src/api-server/Routes/zone-Routes.ts
Normal file
13
src/api-server/Routes/zone-Routes.ts
Normal file
@@ -0,0 +1,13 @@
|
||||
import express from 'express';
|
||||
|
||||
import { zone } from '../controller/lines/zone-Controller';
|
||||
|
||||
|
||||
const router = express.Router();
|
||||
router.post('/setZone',zone.setZone)
|
||||
router.delete('/deleteZone',zone.deleteZone)
|
||||
router.get('/findZones/:organization',zone.getZones)
|
||||
|
||||
|
||||
|
||||
export default router;
|
||||
@@ -9,6 +9,8 @@ import flooritemRoutes from './Routes/flooritem-Routes'
|
||||
import WallitemRoutes from './Routes/wallItems-Routes'
|
||||
import userRoutes from './Routes/user-Routes'
|
||||
import shareRoutes from './Routes/share-Routes'
|
||||
import zoneRoutes from './Routes/zone-Routes'
|
||||
|
||||
|
||||
const app = express();
|
||||
app.use(cors());
|
||||
@@ -28,4 +30,5 @@ app.use('/api/v1', flooritemRoutes);
|
||||
app.use('/api/v1', WallitemRoutes);
|
||||
app.use('/api/v1', userRoutes);
|
||||
app.use('/api/v1', shareRoutes);
|
||||
app.use('/api/v2', zoneRoutes);
|
||||
export default app;
|
||||
|
||||
71
src/api-server/controller/lines/zone-Controller.ts
Normal file
71
src/api-server/controller/lines/zone-Controller.ts
Normal file
@@ -0,0 +1,71 @@
|
||||
import { Request, Response } from "express";
|
||||
import zoneModel from "../../../shared/model/lines/zone-Model";
|
||||
export class zone {
|
||||
static async setZone(req: Request, res: Response) {
|
||||
try {
|
||||
const {organization,userId,zoneData}=req.body
|
||||
const zoneId =zoneData.zoneId
|
||||
const points =zoneData.points
|
||||
const zoneName =zoneData.zoneName
|
||||
const layer =zoneData.layer
|
||||
const findZoneId= await zoneModel(organization).findOne({zoneId:zoneId})
|
||||
if (findZoneId) {
|
||||
const updateZone= await zoneModel(organization).findOneAndUpdate(
|
||||
{zoneId:zoneId},{points:points},{new:true}
|
||||
).select("-_id -__v")
|
||||
res.status(201).json({message: 'zone updated', data: updateZone,organization:organization})
|
||||
} else {
|
||||
const zoneCreate = await zoneModel(organization).create({
|
||||
zoneId,createBy:userId,zoneName:zoneName,points,layer
|
||||
})
|
||||
const createdZone = await zoneModel(organization)
|
||||
.findById(zoneCreate._id)
|
||||
.select('-_id -__v')
|
||||
.lean();
|
||||
res.status(201).json({message: 'zone created', data: createdZone,organization:organization})
|
||||
}
|
||||
} catch (error) {
|
||||
console.log('error: ', error);
|
||||
res.status(500).json({ message: 'Zone not found',error })
|
||||
}
|
||||
}
|
||||
static async deleteZone(req: Request, res: Response) {
|
||||
try {
|
||||
const { organization, userId, zoneId } = req.body
|
||||
|
||||
const findZoneId = await zoneModel(organization).findOne({ zoneId: zoneId })
|
||||
if (findZoneId) {
|
||||
const deleteZone = await zoneModel(organization).findOneAndDelete(
|
||||
{ zoneId: zoneId, createBy: userId }
|
||||
).select("-_id -__v")
|
||||
res.status(201).json({ message: 'zone deleted', data: deleteZone, organization: organization })
|
||||
} else {
|
||||
|
||||
res.status(500).json({ message: 'Invalid zone ID' })
|
||||
|
||||
}
|
||||
} catch (error) {
|
||||
console.log('error: ', error);
|
||||
res.status(500).json({ message: 'Zone not found', error })
|
||||
}
|
||||
}
|
||||
static async getZones(req: Request, res: Response) {
|
||||
try {
|
||||
const { organization, userId } = req.params
|
||||
|
||||
|
||||
const findZoneId = await zoneModel(organization)
|
||||
.find()
|
||||
.select("zoneId zoneName layer points -_id");
|
||||
|
||||
if (!findZoneId) {
|
||||
res.status(500).json({ message: 'Invalid zone' })
|
||||
|
||||
}
|
||||
res.status(201).json({ data: findZoneId, organization: organization })
|
||||
} catch (error) {
|
||||
console.log('error: ', error);
|
||||
res.status(500).json({ message: 'Zone not found', error })
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,7 +19,7 @@ try {
|
||||
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
|
||||
const organization = process.env.ORGANIZATION_NAME || 'defaultOrganization'; // Replace with your logic
|
||||
|
||||
mongoAdminCreation()
|
||||
// mongoAdminCreation()
|
||||
if (!organization) {
|
||||
throw new Error('ORGANIZATION_NAME is not defined in the environment');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user