Files
CRM-OLD-API/app/api/v1/barcode/template/attribute.py
2025-07-24 20:13:47 +03:00

94 lines
2.0 KiB
Python

import json
from time import time
from fastapi import APIRouter
from app.config import config
from app.utils.logger_util import logger
from app.utils.response_util import response
from app import mongo
router = APIRouter()
@router.get("/get-all", tags=[""])
async def template_get_all():
start_time = time()
attributes = await mongo.template_attributes_collection.find({}, {
"_id": False
}).sort("id", mongo.asc).to_list()
return response({
"attributes": attributes
}, start_time=start_time)
@router.post("/create", tags=[""])
async def create(params: dict):
start_time = time()
data = params["attribute"]
data["id"] = await mongo.get_next_id(mongo.template_attributes_collection)
logger.json(data)
try:
await mongo.template_attributes_collection.insert_one(data)
return response({
"message": "Атрибут создан",
"ok": True
}, start_time=start_time)
except Exception as e:
return response({
"message": str(e),
"ok": False
}, start_time=start_time, code=400)
@router.post("/update", tags=[""])
async def update(params: dict):
start_time = time()
data = params["data"]
logger.json(data)
try:
await mongo.template_attributes_collection.update_one({
"id": data["id"]
}, {
"$set": data
})
return response({
"message": "Данные атрибута обновлены",
"ok": True
}, start_time=start_time)
except Exception as e:
return response({
"message": str(e),
"ok": False
}, start_time=start_time, code=400)
@router.post("/delete", tags=[""])
async def delete(params: dict):
start_time = time()
attribute_id = params["attributeId"]
logger.json(attribute_id)
try:
await mongo.template_attributes_collection.delete_one({
"id": attribute_id
})
return response({
"message": "Атрибут удален",
"ok": True
}, start_time=start_time)
except Exception as e:
return response({
"message": str(e),
"ok": False
}, start_time=start_time, code=400)