364 lines
7.5 KiB
JSON
364 lines
7.5 KiB
JSON
{
|
|
"openapi": "3.0.4",
|
|
"info": {
|
|
"title": "BethanysPieShopHRM.Api",
|
|
"version": "1.0"
|
|
},
|
|
"paths": {
|
|
"/api/Country": {
|
|
"get": {
|
|
"tags": [
|
|
"Country"
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/Country/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Country"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/Employee": {
|
|
"get": {
|
|
"tags": [
|
|
"Employee"
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Employee"
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Employee"
|
|
}
|
|
},
|
|
"text/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Employee"
|
|
}
|
|
},
|
|
"application/*+json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Employee"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Employee"
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Employee"
|
|
}
|
|
},
|
|
"text/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Employee"
|
|
}
|
|
},
|
|
"application/*+json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Employee"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/Employee/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Employee"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Employee"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/JobCategory": {
|
|
"get": {
|
|
"tags": [
|
|
"JobCategory"
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/JobCategory/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"JobCategory"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"schemas": {
|
|
"Country": {
|
|
"type": "object",
|
|
"properties": {
|
|
"countryId": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"Employee": {
|
|
"required": [
|
|
"countryId",
|
|
"email",
|
|
"firstName",
|
|
"jobCategoryId",
|
|
"lastName"
|
|
],
|
|
"type": "object",
|
|
"properties": {
|
|
"employeeId": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"firstName": {
|
|
"maxLength": 50,
|
|
"minLength": 0,
|
|
"type": "string"
|
|
},
|
|
"lastName": {
|
|
"maxLength": 50,
|
|
"minLength": 0,
|
|
"type": "string"
|
|
},
|
|
"birthDate": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"email": {
|
|
"minLength": 1,
|
|
"type": "string",
|
|
"format": "email"
|
|
},
|
|
"street": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"zip": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"countryId": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"country": {
|
|
"$ref": "#/components/schemas/Country"
|
|
},
|
|
"phoneNumber": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"smoker": {
|
|
"type": "boolean"
|
|
},
|
|
"maritalStatus": {
|
|
"$ref": "#/components/schemas/MaritalStatus"
|
|
},
|
|
"gender": {
|
|
"$ref": "#/components/schemas/Gender"
|
|
},
|
|
"comment": {
|
|
"maxLength": 1000,
|
|
"minLength": 0,
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"joinedDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"exitDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"jobCategoryId": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"jobCategory": {
|
|
"$ref": "#/components/schemas/JobCategory"
|
|
},
|
|
"latitude": {
|
|
"type": "number",
|
|
"format": "double",
|
|
"nullable": true
|
|
},
|
|
"longitude": {
|
|
"type": "number",
|
|
"format": "double",
|
|
"nullable": true
|
|
},
|
|
"imageContent": {
|
|
"type": "string",
|
|
"format": "byte",
|
|
"nullable": true
|
|
},
|
|
"imageName": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"Gender": {
|
|
"enum": [
|
|
0,
|
|
1,
|
|
2
|
|
],
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"JobCategory": {
|
|
"type": "object",
|
|
"properties": {
|
|
"jobCategoryId": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"jobCategoryName": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"MaritalStatus": {
|
|
"enum": [
|
|
0,
|
|
1,
|
|
2
|
|
],
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"tags": [
|
|
{
|
|
"name": "Country"
|
|
},
|
|
{
|
|
"name": "Employee"
|
|
},
|
|
{
|
|
"name": "JobCategory"
|
|
}
|
|
]
|
|
} |