From 8161d77084cc41e629a228363f9f9c3aaad4f246 Mon Sep 17 00:00:00 2001 From: matv864 Date: Fri, 24 Jan 2025 02:22:12 +1000 Subject: [PATCH] api is ready, start connect to imei checking --- api/pyproject.toml | 1 + api/src/__init__.py | 0 api/src/api/__init__.py | 1 + api/src/api/check_imei.py | 15 +++++++++++++++ api/src/app.py | 7 ++++++- api/src/schemas/__init__.py | 2 ++ api/src/schemas/checking.py | 14 ++++++++++++++ 7 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 api/src/__init__.py create mode 100644 api/src/api/__init__.py create mode 100644 api/src/api/check_imei.py create mode 100644 api/src/schemas/__init__.py create mode 100644 api/src/schemas/checking.py diff --git a/api/pyproject.toml b/api/pyproject.toml index 07a03f6..ca61e59 100644 --- a/api/pyproject.toml +++ b/api/pyproject.toml @@ -7,6 +7,7 @@ authors = [ ] dependencies = [ "fastapi[standard]>=0.115.7", + "pydantic>=2.10.5", ] readme = "README.md" requires-python = ">= 3.12" diff --git a/api/src/__init__.py b/api/src/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/api/src/api/__init__.py b/api/src/api/__init__.py new file mode 100644 index 0000000..533cc6c --- /dev/null +++ b/api/src/api/__init__.py @@ -0,0 +1 @@ +from .check_imei import checking_router as checking_router \ No newline at end of file diff --git a/api/src/api/check_imei.py b/api/src/api/check_imei.py new file mode 100644 index 0000000..64effb1 --- /dev/null +++ b/api/src/api/check_imei.py @@ -0,0 +1,15 @@ +from fastapi import APIRouter, status + +from src.schemas import CheckingInput, CheckingOutput + + +checking_router = APIRouter() + + +@checking_router.post( + "/check-imei", + status_code=status.HTTP_200_OK, + response_model=CheckingOutput +) +async def check_imei(body: CheckingInput): + return CheckingOutput(result="OK") diff --git a/api/src/app.py b/api/src/app.py index b1c50b4..9c3519e 100644 --- a/api/src/app.py +++ b/api/src/app.py @@ -1,6 +1,8 @@ from fastapi import APIRouter, FastAPI from fastapi.middleware.cors import CORSMiddleware +from src.api import checking_router + app = FastAPI( title="hatiko-api", ) @@ -14,6 +16,9 @@ app.add_middleware( main_app_router = APIRouter(prefix="/api") -app.include_router(main_app_router) +main_app_router.include_router(checking_router, tags=["Check IMEI"]) + + +app.include_router(checking_router) diff --git a/api/src/schemas/__init__.py b/api/src/schemas/__init__.py new file mode 100644 index 0000000..c85d1d9 --- /dev/null +++ b/api/src/schemas/__init__.py @@ -0,0 +1,2 @@ +from .checking import CheckingInput as CheckingInput +from .checking import CheckingOutput as CheckingOutput \ No newline at end of file diff --git a/api/src/schemas/checking.py b/api/src/schemas/checking.py new file mode 100644 index 0000000..4d7c490 --- /dev/null +++ b/api/src/schemas/checking.py @@ -0,0 +1,14 @@ +from typing import Any +from pydantic import BaseModel, ConfigDict + +class CheckingOutput(BaseModel): + model_config = ConfigDict(from_attributes=True) + + result: Any + + +class CheckingInput(BaseModel): + model_config = ConfigDict(from_attributes=True) + + imei: str + token: str