This commit is contained in:
zlwu committed 2026-08-21 16:50:47 +08:00
1 parent 6dc8cfb2c1
commit d26fb23fcf
181 files changed
+25727 -24557

No files matched your search

+68 -7
View File
@@ -18,6 +18,7 @@ from app.core.storage import storage
from app.crud import tenant as tenant_svc
from app.crud import dict_type as dict_type_svc
from app.crud import dict_data as dict_data_svc
from app.services import dict_ensure as dict_ensure_svc
from app.crud import dept as dept_svc
from app.crud import site as site_svc
from app.crud import post as post_svc
@@ -148,7 +149,7 @@ class TenantUpdateBody(BaseModel):
@router.get("/tenants")
def list_tenants(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
_user: dict = Depends(require_admin_or_super_admin),
db: Session = Depends(get_db),
@@ -279,7 +280,7 @@ class UserUpdateBody(BaseModel):
@router.get("/users")
def list_users(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
deptId: Optional[str] = Query(None, alias="deptId"),
status: Optional[str] = None,
@@ -469,7 +470,7 @@ class DictTypeUpdateBody(BaseModel):
@router.get("/dict-types")
def list_dict_types(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
user: dict = Depends(require_menu_code("system:dict:list")),
db: Session = Depends(get_db),
@@ -571,7 +572,7 @@ class DictDataUpdateBody(BaseModel):
@router.get("/dict-data")
def list_dict_data(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
dictType: Optional[str] = None,
keyword: Optional[str] = None,
user: dict = Depends(require_menu_code("system:dict:list")),
@@ -683,6 +684,66 @@ def dict_data_all(
return success_response(grouped)
class DictEnsureBody(BaseModel):
model_config = ConfigDict(populate_by_name=True)
dict_type: str = Field(..., alias="dictType")
label: str
preferred_value: Optional[str] = Field(None, alias="preferredValue")
class DictEnsureRemoveBody(BaseModel):
model_config = ConfigDict(populate_by_name=True)
dict_type: str = Field(..., alias="dictType")
value: str
@router.post("/dict-data/ensure")
def ensure_dict_data_api(
body: DictEnsureBody,
user: dict = Depends(require_admin_or_super_admin),
db: Session = Depends(get_db),
):
try:
tenant_no = _get_tenant_no(db, user)
data = dict_ensure_svc.ensure_dict_data(
db,
tenant_no=tenant_no,
dict_type=body.dict_type,
label=body.label,
user_id=user.get("user_id") or user.get("id") or "",
preferred_value=body.preferred_value,
)
db.commit()
return success_response(data, message="已保存")
except dict_ensure_svc.DictEnsureError as e:
db.rollback()
return error_response(400, str(e))
@router.post("/dict-data/ensure-remove")
def ensure_remove_dict_data_api(
body: DictEnsureRemoveBody,
user: dict = Depends(require_admin_or_super_admin),
db: Session = Depends(get_db),
):
try:
tenant_no = _get_tenant_no(db, user)
dict_ensure_svc.ensure_remove_dict_data(
db,
tenant_no=tenant_no,
dict_type=body.dict_type,
value=body.value,
user_id=user.get("user_id") or user.get("id") or "",
)
db.commit()
return success_response(None, message="已删除")
except dict_ensure_svc.DictEnsureError as e:
db.rollback()
return error_response(400, str(e))
# ---------------------------------------------------------------------------
# 组织管理
# ---------------------------------------------------------------------------
@@ -827,7 +888,7 @@ class SiteUpdateBody(BaseModel):
@router.get("/sites")
def list_sites(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
user: dict = Depends(require_menu_code("system:site:list")),
db: Session = Depends(get_db),
@@ -936,7 +997,7 @@ class PostUpdateBody(BaseModel):
@router.get("/posts")
def list_posts(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
user: dict = Depends(require_menu_code("system:post:list")),
db: Session = Depends(get_db),
@@ -1206,7 +1267,7 @@ class RoleDataScopeBody(BaseModel):
@router.get("/role-management")
def list_role_management(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
user: dict = Depends(require_menu_code("system:role:list")),
db: Session = Depends(get_db),
+5 -5
View File
@@ -1,6 +1,6 @@
from typing import List, Optional
from fastapi import APIRouter, Depends, HTTPException, status
from fastapi import APIRouter, Depends, HTTPException, status, Query
from sqlalchemy import or_
from sqlalchemy.orm import Session
@@ -41,7 +41,7 @@ def _fill_offset_amounts(db: Session, tenant_no: str, rows, out_rows: List[Advan
@router.get("/", response_model=ApiResponse[PagedData[AdvanceApplyOut]])
def list_advances(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
status: Optional[str] = None,
keyword: str = "",
applicantId: Optional[str] = None,
@@ -80,7 +80,7 @@ def list_advances(
@router.get("/my", response_model=ApiResponse[PagedData[AdvanceApplyOut]])
def my_advances(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
status: Optional[str] = None,
keyword: str = "",
applyDate: Optional[str] = None,
@@ -140,7 +140,7 @@ def advance_status_counts(
@router.get("/pending-approval", response_model=ApiResponse[PagedData[AdvanceApplyOut]])
def pending_approval(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
applicantId: Optional[str] = None,
applyDate: Optional[str] = None,
@@ -180,7 +180,7 @@ def advance_pending_approval_stats(
@router.get("/approved-by-me", response_model=ApiResponse[PagedData[AdvanceApplyOut]])
def approved_by_me(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
applicantId: Optional[str] = None,
applyDate: Optional[str] = None,
+3 -3
View File
@@ -1,7 +1,7 @@
import mimetypes
from typing import List, Optional, Set
from fastapi import APIRouter, Depends, HTTPException, Request, status
from fastapi import APIRouter, Depends, HTTPException, Request, status, Query
from sqlalchemy.orm import Session
from starlette.datastructures import UploadFile as StarletteUploadFile
@@ -27,7 +27,7 @@ def get_mine_wallet_summary(
@router.get("/invoice-wallets", response_model=ApiResponse[PagedData[WalletSummaryOut]])
def list_invoice_wallets(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
db: Session = Depends(get_db),
user: BxUserContext = Depends(get_bx_current_user),
@@ -42,7 +42,7 @@ def list_invoice_wallets(
@router.get("/invoices", response_model=ApiResponse[PagedData[InvoiceOut]])
def list_invoices(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
userId: Optional[str] = None,
db: Session = Depends(get_db),
user: BxUserContext = Depends(get_bx_current_user),
+4 -4
View File
@@ -4,7 +4,7 @@ from datetime import datetime
from typing import Any, List, Optional
from urllib.parse import quote
from fastapi import APIRouter, Depends, HTTPException, status
from fastapi import APIRouter, Depends, HTTPException, status, Query
from fastapi.responses import StreamingResponse
from sqlalchemy import or_
from sqlalchemy.orm import Session
@@ -47,7 +47,7 @@ def _wrap_reimburse_rows(outs: List[ReimburseApplyOut]) -> List[dict]:
@router.get("/pending", response_model=ApiResponse[PagedData[Any]])
def list_pending_payments(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
applicantId: Optional[str] = None,
applyDate: Optional[str] = None,
@@ -94,7 +94,7 @@ def payment_finance_stats(
@router.get("/processed", response_model=ApiResponse[PagedData[Any]])
def list_processed_payments(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
applicantId: Optional[str] = None,
applyDate: Optional[str] = None,
@@ -197,7 +197,7 @@ def batch_offset(
@router.get("/advance-issues", response_model=ApiResponse[PagedData[AdvanceIssueOut]])
def list_advance_issues(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
issue_status: Optional[str] = None,
keyword: str = "",
applicantId: Optional[str] = None,
+3 -3
View File
@@ -146,7 +146,7 @@ def import_reimburses(
@router.get("/", response_model=ApiResponse[PagedData[ReimburseApplyOut]])
def list_reimburses(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
status: Optional[str] = None,
keyword: str = "",
expense_id: Optional[str] = None,
@@ -256,7 +256,7 @@ def reimburse_status_counts(
@router.get("/pending-approval", response_model=ApiResponse[PagedData[ReimburseApplyOut]])
def pending_approval(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
applicantId: Optional[str] = None,
expenseName: Optional[str] = None,
@@ -298,7 +298,7 @@ def pending_approval_stats(
@router.get("/approved-by-me", response_model=ApiResponse[PagedData[ReimburseApplyOut]])
def approved_by_me(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
keyword: str = "",
applicantId: Optional[str] = None,
expenseName: Optional[str] = None,
+2 -2
View File
@@ -1,6 +1,6 @@
from typing import List
from fastapi import APIRouter, Depends, HTTPException, status
from fastapi import APIRouter, Depends, HTTPException, status, Query
from sqlalchemy.orm import Session
from app.core.bx_auth import BxUserContext, get_bx_current_user
@@ -21,7 +21,7 @@ router = APIRouter(prefix="/workflows", tags=["工作流配置"])
@router.get("/", response_model=ApiResponse[PagedData[WorkflowDefOut]])
def list_workflows(
page: int = 1,
pageSize: int = 10,
pageSize: int = Query(10, ge=1, le=500),
db: Session = Depends(get_db),
user: BxUserContext = Depends(get_bx_current_user),
):
+4
View File
@@ -618,6 +618,8 @@ def product_list(
status=body.status,
supplier_id=body.supplier_id,
user_info=user_info,
match_product_no=True if body.match_product_no is None else bool(body.match_product_no),
match_model=bool(body.match_model) if body.match_model is not None else False,
)
tp = total_pages(total, body.pageSize)
return success_response(
@@ -888,6 +890,8 @@ def product_export(
category_id=body.category_id,
status=body.status,
supplier_id=body.supplier_id,
match_product_no=True if body.match_product_no is None else bool(body.match_product_no),
match_model=bool(body.match_model) if body.match_model is not None else False,
)
date_str = datetime.now().strftime("%Y%m%d")
return export_rows_to_xlsx_response(
+1 -1
View File
@@ -79,7 +79,7 @@ def register_contract_routes(router):
@router.get("/contract/list")
async def contract_list(
pageNum: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100),
pageSize: int = Query(10, ge=1, le=500),
keyword: Optional[str] = Query(
None, description="即时检索:合同编号/合同产品名称/产品拼音首字母"
),
+3 -3
View File
@@ -70,7 +70,7 @@ def register_contract_sub_routes(router):
@router.get("/contract/change/list")
async def contract_change_list(
pageNum: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100),
pageSize: int = Query(10, ge=1, le=500),
contractId: Optional[str] = None,
contractNo: Optional[str] = None,
contractName: Optional[str] = None,
@@ -293,7 +293,7 @@ def register_contract_sub_routes(router):
@router.get("/contract/template/list")
async def contract_template_list(
pageNum: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100),
pageSize: int = Query(10, ge=1, le=500),
templateNo: Optional[str] = None,
templateName: Optional[str] = None,
templateType: Optional[str] = None,
@@ -494,7 +494,7 @@ def register_contract_sub_routes(router):
@router.get("/contract/approval/list")
async def contract_approval_list(
pageNum: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100),
pageSize: int = Query(10, ge=1, le=500),
contractId: Optional[str] = None,
contractNo: Optional[str] = None,
contractName: Optional[str] = None,
+1 -1
View File
@@ -38,7 +38,7 @@ register_local_callback("/api/admin/leave/callback", _leave_local_callback)
@router.get("")
def list_leaves(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100),
pageSize: int = Query(10, ge=1, le=500),
keyword: Optional[str] = Query(None),
status: Optional[str] = Query(None),
_user: dict = Depends(require_admin_or_super_admin),
+4 -4
View File
@@ -76,7 +76,7 @@ def list_carriers(
status: Optional[str] = Query(default=None, description="状态"),
audit_status: Optional[str] = Query(default=None, alias="auditStatus", description="审核状态"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> CarrierListResponse:
@@ -283,7 +283,7 @@ def list_vehicles(
description="排除资质不全或协议过期的承运商车辆",
),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleListResponse:
@@ -611,7 +611,7 @@ def list_personnel(
default=None, alias="personnelType", description="人员类型 driver/escort"
),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> PersonnelListResponse:
@@ -837,7 +837,7 @@ def _personnel_to_driver_read(personnel: PlPersonnel) -> DriverRead:
def list_drivers(
q: Optional[str] = Query(default=None, description="模糊搜索姓名/手机号"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> DriverListResponse:
+2 -2
View File
@@ -52,7 +52,7 @@ def list_unsettled_plans(
plan_type: Optional[str] = Query(default=None, alias="planType"),
license_plate: Optional[str] = Query(default=None, alias="licensePlate"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> UnsettledPlanListResponse:
@@ -81,7 +81,7 @@ def list_settlements(
description="bills|approval_pending|approval_done|disburse|settled",
),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> FreightSettlementListResponse:
+2 -2
View File
@@ -50,7 +50,7 @@ router = APIRouter(prefix="/inventory", tags=["运输计划-盘存统计"])
def get_inventory_ledger(
product_name: Optional[str] = Query(default=None, alias="productName", description="产品名称"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> InventoryLedgerResponse:
@@ -198,7 +198,7 @@ def list_transactions(
date_from: Optional[date] = Query(default=None, alias="dateFrom", description="开始日期"),
date_to: Optional[date] = Query(default=None, alias="dateTo", description="结束日期"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> InventoryTransactionResponse:
+2 -2
View File
@@ -227,7 +227,7 @@ def list_inbound(
plan_date_from: Optional[str] = Query(default=None, alias="planDateFrom"),
plan_date_to: Optional[str] = Query(default=None, alias="planDateTo"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> IoOrderListResponse:
@@ -305,7 +305,7 @@ def list_outbound(
plan_date_from: Optional[str] = Query(default=None, alias="planDateFrom"),
plan_date_to: Optional[str] = Query(default=None, alias="planDateTo"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> IoOrderListResponse:
+2 -2
View File
@@ -310,7 +310,7 @@ def list_plans(
description="incomplete=至少一张必需危化证书未上传",
),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> PlanListResponse:
@@ -517,7 +517,7 @@ def count_plans_by_contract(
@router.get("/contract-gaps", response_model=PlanContractGapListResponse)
def list_contract_gaps(
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
plan_no: Optional[str] = Query(default=None, alias="planNo", description="计划编号"),
gap_type: Optional[str] = Query(
default=None,
+2 -2
View File
@@ -175,7 +175,7 @@ def _build_history_page(
merged.sort(key=lambda x: x[0] or datetime.min, reverse=True)
total = len(merged)
page = max(1, int(page or 1))
page_size = min(max(1, int(page_size or 20)), 100)
page_size = min(max(1, int(page_size or 20)), 500)
start = (page - 1) * page_size
page_rows = merged[start : start + page_size]
return PublicIoOrderHistoryPageRead(
@@ -218,7 +218,7 @@ def _make_handlers(kind: str):
date: str = Query(..., description="筛选日 YYYY-MM-DD"),
q: Optional[str] = Query(None, description="供方/需方名称模糊"),
page: int = Query(1, ge=1, description="页码,从 1 开始"),
page_size: int = Query(20, ge=1, le=100, alias="pageSize", description="每页条数"),
page_size: int = Query(20, ge=1, le=500, alias="pageSize", description="每页条数"),
db: Session = Depends(get_db),
):
try:
+1 -1
View File
@@ -384,7 +384,7 @@ def list_transports(
vehicle_id: Optional[str] = Query(default=None, alias="vehicleId", description="车辆ID"),
driver_id: Optional[str] = Query(default=None, alias="driverId", description="司机ID"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> TransportListResponse:
+1 -1
View File
@@ -57,7 +57,7 @@ def list_transport_addresses(
q: Optional[str] = Query(default=None, description="搜索名称或地址"),
status: Optional[str] = Query(default=None, description="状态 1-启用 0-停用"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> TransportAddressListResponse:
+2 -2
View File
@@ -34,7 +34,7 @@ def list_applies(
apply_date_to: Optional[date] = Query(default=None, alias="applyDateTo"),
applicant_id: Optional[str] = Query(default=None, alias="applicantId"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleMaintenanceApplyListResponse:
@@ -136,7 +136,7 @@ def list_process_board(
process_date_from: Optional[date] = Query(default=None, alias="processDateFrom"),
process_date_to: Optional[date] = Query(default=None, alias="processDateTo"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleMaintenanceProcessBoardListResponse:
+3 -3
View File
@@ -35,7 +35,7 @@ def list_applies(
apply_date_to: Optional[date] = Query(default=None, alias="applyDateTo"),
applicant_id: Optional[str] = Query(default=None, alias="applicantId"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleRechargeApplyListResponse:
@@ -129,7 +129,7 @@ def list_records(
gas_station: Optional[str] = Query(default=None, alias="gasStation"),
apply_no: Optional[str] = Query(default=None, alias="applyNo"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleRechargeRecordListResponse:
@@ -162,7 +162,7 @@ def list_disburse_board(
recharge_date_from: Optional[date] = Query(default=None, alias="rechargeDateFrom"),
recharge_date_to: Optional[date] = Query(default=None, alias="rechargeDateTo"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleRechargeDisburseBoardListResponse:
+2 -2
View File
@@ -32,7 +32,7 @@ def list_applies(
apply_date_to: Optional[date] = Query(default=None, alias="applyDateTo"),
applicant_id: Optional[str] = Query(default=None, alias="applicantId"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleUreaApplyListResponse:
@@ -115,7 +115,7 @@ def list_disburse_board(
disburse_date_from: Optional[date] = Query(default=None, alias="disburseDateFrom"),
disburse_date_to: Optional[date] = Query(default=None, alias="disburseDateTo"),
page: int = Query(default=1, ge=1),
page_size: int = Query(default=20, ge=1, le=100, alias="pageSize"),
page_size: int = Query(default=20, ge=1, le=500, alias="pageSize"),
db: Session = Depends(get_db),
user: DbUserContext = Depends(get_db_current_user),
) -> VehicleUreaDisburseBoardListResponse:
+4 -4
View File
@@ -175,7 +175,7 @@ class TaskActionBody(BaseModel):
@router.get("/defs")
def list_process_defs(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
status: Optional[str] = None,
_user: dict = Depends(require_admin_or_super_admin),
@@ -362,7 +362,7 @@ def start_instance(
@router.get("/instances/my")
def list_my_instances(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
status: Optional[str] = None,
user: dict = Depends(require_admin_or_super_admin),
@@ -446,7 +446,7 @@ def get_instance_detail(
@router.get("/tasks/pending")
def list_pending_tasks(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
user: dict = Depends(require_admin_or_super_admin),
db: Session = Depends(get_db),
@@ -464,7 +464,7 @@ def list_pending_tasks(
@router.get("/tasks/completed")
def list_completed_tasks(
page: int = Query(1, ge=1),
pageSize: int = Query(10, ge=1, le=100, alias="pageSize"),
pageSize: int = Query(10, ge=1, le=500, alias="pageSize"),
keyword: Optional[str] = None,
user: dict = Depends(require_admin_or_super_admin),
db: Session = Depends(get_db),