Operational Endpoints for Admin, Products, Assignments, Location, Vendor, Venue completed. Geofence Testing PEnding

This commit is contained in:
Shibi Chakkaravarthy
2026-06-14 08:04:31 +05:30
parent 5326235183
commit 36e1bf664f
26 changed files with 1392 additions and 25 deletions
+34
View File
@@ -226,6 +226,40 @@ export default {
},
},
},
"/admin/role/{id}": {
patch: {
tags: ["Admin"],
summary: "Edit New Role",
parameters: [
{
in: "path",
name: "id",
},
],
requestBody: {
required: true,
content: {
"application/json": {
schema: {
type: "object",
properties: {
name: {
type: "string",
required: true,
},
},
},
},
},
},
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
"/admin/employee/{id}": {
get: {
tags: ["Admin"],
+454
View File
@@ -244,6 +244,20 @@
}
}
},
"/location/venues/assigned/me": {
"get": {
"tags": [
"Location"
],
"summary": "Get Assigned Venues for creating Geofence",
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
},
"/uploads/single/{folder}": {
"post": {
"tags": [
@@ -521,6 +535,42 @@
}
}
},
"/admin/role/{id}": {
"patch": {
"tags": [
"Admin"
],
"summary": "Edit New Role",
"parameters": [
{
"in": "path",
"name": "id"
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"required": true
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
},
"/admin/employee/{id}": {
"get": {
"tags": [
@@ -1116,6 +1166,410 @@
}
}
}
},
"/product": {
"post": {
"summary": "Create a New Product",
"tags": [
"Product"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"required": true
},
"name": {
"type": "string",
"required": true
},
"stock": {
"type": "number",
"required": true
},
"buyingPrice": {
"type": "number",
"required": true
},
"sellingPrice": {
"type": "number",
"required": true
},
"description": {
"type": "string",
"required": true
},
"gst": {
"type": "number",
"required": true
},
"hsn": {
"type": "string",
"required": true
},
"vendors": {
"type": "array",
"items": {
"type": "string"
},
"required": true
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
},
"get": {
"summary": "Get All Products",
"tags": [
"Product"
],
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
},
"/product/{id}": {
"patch": {
"summary": "Update a Product",
"tags": [
"Product"
],
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"description": "Product ID",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"required": true
},
"name": {
"type": "string",
"required": true
},
"stock": {
"type": "number",
"required": true
},
"buyingPrice": {
"type": "number",
"required": true
},
"sellingPrice": {
"type": "number",
"required": true
},
"description": {
"type": "string",
"required": true
},
"gst": {
"type": "number",
"required": true
},
"hsn": {
"type": "string",
"required": true
},
"vendors": {
"type": "array",
"items": {
"type": "string"
},
"required": true
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
},
"delete": {
"summary": "Delete a Product",
"tags": [
"Product"
],
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"description": "Product ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
},
"/vendor/all": {
"get": {
"summary": "Get All Vendors",
"tags": [
"Vendor"
],
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
},
"/vendor/{id}": {
"get": {
"summary": "Get Vendor Details",
"tags": [
"Vendor"
],
"parameters": [
{
"in": "path",
"required": true,
"description": "Vendor ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
},
"patch": {
"summary": "Get Vendor Details",
"tags": [
"Vendor"
],
"parameters": [
{
"in": "path",
"required": true,
"description": "Vendor ID",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"required": true
},
"email": {
"type": "string",
"required": true
},
"mobile": {
"type": "string",
"required": true
},
"address": {
"type": "string",
"required": true
},
"city": {
"type": "string",
"required": true
},
"state": {
"type": "string",
"required": true
},
"picode": {
"type": "string",
"required": true
},
"isActive": {
"type": "boolean",
"required": true
},
"contactPersons": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"required": true
},
"email": {
"type": "string",
"required": true
},
"mobile": {
"type": "string",
"required": true
},
"designation": {
"type": "string",
"required": true
}
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
},
"delete": {
"summary": "Deactivate Vendor",
"tags": [
"Vendor"
],
"parameters": [
{
"in": "path",
"required": true,
"description": "Vendor ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
},
"/vendor": {
"post": {
"summary": "Create New Vendor",
"tags": [
"Vendor"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"required": true
},
"email": {
"type": "string",
"required": true
},
"mobile": {
"type": "string",
"required": true
},
"address": {
"type": "string",
"required": true
},
"city": {
"type": "string",
"required": true
},
"state": {
"type": "string",
"required": true
},
"picode": {
"type": "string",
"required": true
},
"isActive": {
"type": "boolean",
"required": true
},
"contactPersons": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"required": true
},
"email": {
"type": "string",
"required": true
},
"mobile": {
"type": "string",
"required": true
},
"designation": {
"type": "string",
"required": true
}
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {}
}
}
}
}
}
}
+4
View File
@@ -8,6 +8,8 @@ import location from "./location.js";
import assignment from "./assignment.js";
import partner from "./partner.js";
import venue from "./venue.js";
import product from "./product.js";
import vendor from "./vendor.js";
const GENERAL_CONFIG = {
openapi: "3.0.1",
@@ -53,6 +55,8 @@ let paths = {
...assignment,
...partner,
...venue,
...product,
...vendor,
};
const getSwaggerDocument = () => {
+14 -3
View File
@@ -27,12 +27,11 @@ export default {
coordinates: {
type: "array",
required: true,
},
},
venue: {
type: "string",
required: false,
},
},
},
},
},
@@ -46,4 +45,16 @@ export default {
},
},
},
"/location/venues/assigned/me": {
get: {
tags: ["Location"],
summary: "Get Assigned Venues for creating Geofence",
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
};
+176
View File
@@ -0,0 +1,176 @@
export default {
"/product": {
post: {
summary: "Create a New Product",
tags: ["Product"],
requestBody: {
content: {
"application/json": {
schema: {
type: "object",
properties: {
sku: {
type: "string",
required: true,
},
name: {
type: "string",
required: true,
},
stock: {
type: "number",
required: true,
},
buyingPrice: {
type: "number",
required: true,
},
sellingPrice: {
type: "number",
required: true,
},
description: {
type: "string",
required: true,
},
gst: {
type: "number",
required: true,
},
hsn: {
type: "string",
required: true,
},
stock: {
type: "number",
required: true,
},
vendors: {
type: "array",
items: {
type: "string",
},
required: true,
},
},
},
},
},
},
responses: {
200: {
description: "OK",
content: {},
},
},
},
get: {
summary: "Get All Products",
tags: ["Product"],
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
"/product/{id}": {
patch: {
summary: "Update a Product",
tags: ["Product"],
parameters: [
{
name: "id",
in: "path",
required: true,
description: "Product ID",
schema: {
type: "string",
},
},
],
requestBody: {
content: {
"application/json": {
schema: {
type: "object",
properties: {
sku: {
type: "string",
required: true,
},
name: {
type: "string",
required: true,
},
stock: {
type: "number",
required: true,
},
buyingPrice: {
type: "number",
required: true,
},
sellingPrice: {
type: "number",
required: true,
},
description: {
type: "string",
required: true,
},
gst: {
type: "number",
required: true,
},
hsn: {
type: "string",
required: true,
},
stock: {
type: "number",
required: true,
},
vendors: {
type: "array",
items: {
type: "string",
},
required: true,
},
},
},
},
},
},
responses: {
200: {
description: "OK",
content: {},
},
},
},
delete: {
summary: "Delete a Product",
tags: ["Product"],
parameters: [
{
name: "id",
in: "path",
required: true,
description: "Product ID",
schema: {
type: "string",
},
},
],
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
};
+222
View File
@@ -0,0 +1,222 @@
export default {
"/vendor/all": {
get: {
summary: "Get All Vendors",
tags: ["Vendor"],
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
"/vendor/{id}": {
get: {
summary: "Get Vendor Details",
tags: ["Vendor"],
parameters: [
{
in: "path",
required: true,
description: "Vendor ID",
schema: {
type: "string",
},
},
],
responses: {
200: {
description: "OK",
content: {},
},
},
},
patch: {
summary: "Get Vendor Details",
tags: ["Vendor"],
parameters: [
{
in: "path",
required: true,
description: "Vendor ID",
schema: {
type: "string",
},
},
],
requestBody: {
content: {
"application/json": {
schema: {
type: "object",
properties: {
name: {
type: "string",
required: true,
},
email: {
type: "string",
required: true,
},
mobile: {
type: "string",
required: true,
},
address: {
type: "string",
required: true,
},
city: {
type: "string",
required: true,
},
state: {
type: "string",
required: true,
},
picode: {
type: "string",
required: true,
},
isActive: {
type: "boolean",
required: true,
},
contactPersons: {
type: "array",
items: {
type: "object",
properties: {
name: {
type: "string",
required: true,
},
email: {
type: "string",
required: true,
},
mobile: {
type: "string",
required: true,
},
designation: {
type: "string",
required: true,
},
},
},
},
},
},
},
},
},
responses: {
200: {
description: "OK",
content: {},
},
},
},
delete: {
summary: "Deactivate Vendor",
tags: ["Vendor"],
parameters: [
{
in: "path",
required: true,
description: "Vendor ID",
schema: {
type: "string",
},
},
],
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
"/vendor": {
post: {
summary: "Create New Vendor",
tags: ["Vendor"],
requestBody: {
content: {
"application/json": {
schema: {
type: "object",
properties: {
name: {
type: "string",
required: true,
},
email: {
type: "string",
required: true,
},
mobile: {
type: "string",
required: true,
},
address: {
type: "string",
required: true,
},
city: {
type: "string",
required: true,
},
state: {
type: "string",
required: true,
},
picode: {
type: "string",
required: true,
},
isActive: {
type: "boolean",
required: true,
},
contactPersons: {
type: "array",
items: {
type: "object",
properties: {
name: {
type: "string",
required: true,
},
email: {
type: "string",
required: true,
},
mobile: {
type: "string",
required: true,
},
designation: {
type: "string",
required: true,
},
},
},
},
},
},
},
},
},
responses: {
200: {
description: "OK",
content: {},
},
},
},
},
};