agentsclimarketplace

Generate fastapi business logic service class

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

AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution

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.

What its author says it does

Copied from the file, not written here

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

SKILL.md

2.7 KB, 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

Keep looking

Skills are one crate of 328,083. 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.