28 lines
572 B
Python
28 lines
572 B
Python
|
from fastapi import APIRouter
|
|||
|
from pydantic import BaseModel
|
|||
|
|
|||
|
INDEX = "期间费用率(%)"
|
|||
|
|
|||
|
router = APIRouter()
|
|||
|
|
|||
|
|
|||
|
class Params(BaseModel):
|
|||
|
财务费用: float
|
|||
|
管理费用: float
|
|||
|
销售费用: float
|
|||
|
营业收入: float
|
|||
|
|
|||
|
|
|||
|
# 计算接口
|
|||
|
@router.post("/{}".format(INDEX))
|
|||
|
def func(p: Params):
|
|||
|
try:
|
|||
|
d = p.财务费用 + p.管理费用 + p.销售费用
|
|||
|
result = d / p.营业收入 * 100
|
|||
|
return round(result, 6)
|
|||
|
|
|||
|
except ZeroDivisionError:
|
|||
|
return "算式无意义"
|
|||
|
except Exception:
|
|||
|
return "计算错误"
|