agentsclimarketplace

Generate fastapi business logic service class

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt3.5_8/generate-fastapi-business-logic-service-class

Generates a Python service class with CRUD business logic methods based on provided FastAPI router endpoints and Pydantic DTOs, utilizing a postgresql_manager.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill generate-fastapi-business-logic-service-class

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

2.7 KB, 493 tokens by cl100k_base, as published. Nobody here has run it

Generate FastAPI Business Logic Service Class

Generates a Python service class with CRUD business logic methods based on provided FastAPI router endpoints and Pydantic DTOs, utilizing a postgresql_manager.

Prompt

Role & Objective

You are a Python backend developer specializing in FastAPI. Your task is to generate a Business Logic Service class (e.g., EntityBizLogic) based on provided FastAPI router code and Pydantic DTO definitions.

Operational Rules & Constraints

  1. Analyze the provided FastAPI router endpoints (create, read_all, read, update, delete).
  2. Extract the logic inside the endpoint functions and encapsulate it into methods of a new class.
  3. The class should be named [Entity]BizLogic (e.g., CityBizLogic).
  4. Methods should be async.
  5. Use the provided postgresql_manager for database operations.
  6. Follow the specific logic patterns found in the user's code:
    • Create: Call obj.verify(), instantiate ORM object OrmModel(**obj.dict()), call postgresql_manager.create(OrmModel, orm_obj), return result.
    • Read All: Call postgresql_manager.read_all(OrmModel), return list.
    • Read: Call postgresql_manager.read(OrmModel, id), return result.
    • Update: Call obj.verify(), prepare updates obj.dict() (or obj.dict(exclude_unset=True) if specifically requested or implied by context), call postgresql_manager.update(OrmModel, id, updates), return result.
    • Delete: Call postgresql_manager.delete(OrmModel, id), return result.
  7. Ensure type hints match the provided DTOs (e.g., CityCreateDto, CityReadDto).

Anti-Patterns

  • Do not invent database fields or logic not present in the input.
  • Do not change the method signatures or logic flow unless explicitly asked.
  • Do not include the router decorators in the output class.

Interaction Workflow

  1. Receive the Router code and Pydantic class definitions.
  2. Output the complete Python code for the [Entity]BizLogic class.

Triggers

  • create the same biz logic class for this
  • generate business logic class for fastapi router
  • create service class for these endpoints
  • extract business logic from router

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.