更新登录页及优化相关功能

This commit is contained in:
焦龙言
2026-10-08 14:13:05 +08:00
parent 9a14b692e3
commit 56e646bcc1
139 changed files with 77587 additions and 811 deletions
@@ -0,0 +1,36 @@
from sqlalchemy import select
from sqlalchemy.ext.asyncio import AsyncSession
from common.vo import PageModel
from module_business.dao.operation_dao import OperationDao
from module_business.domain.test_batch_scope import TestBatchScope
from module_business.entity.do.operation_do import BizShipmentOrder
from module_business.entity.vo.shipment_receipt_vo import ShipmentReceiptQueryModel
from utils.page_util import PageUtil
class ShipmentReceiptDao:
@staticmethod
async def list_orders(
db: AsyncSession, query: ShipmentReceiptQueryModel, scope: TestBatchScope, site_ids: list[int] | None
) -> PageModel:
# 接收方只需要目标现场范围,不扩大原发货操作的双范围权限。
conditions = OperationDao._shipment_scope_conditions(None, site_ids, scope)
conditions.append(BizShipmentOrder.status == 'CONFIRMED')
if query.shipment_no:
conditions.append(BizShipmentOrder.shipment_no.like(f'%{query.shipment_no}%'))
if query.target_site_id:
conditions.append(BizShipmentOrder.target_site_id == query.target_site_id)
if query.source_warehouse_id:
conditions.append(BizShipmentOrder.source_warehouse_id == query.source_warehouse_id)
if query.receipt_state:
conditions.append(BizShipmentOrder.receipt_state == query.receipt_state)
conditions.extend(
OperationDao._time_conditions(BizShipmentOrder.confirmed_at, query.begin_time, query.end_time)
)
statement = (
select(BizShipmentOrder)
.where(*conditions)
.order_by(BizShipmentOrder.confirmed_at, BizShipmentOrder.shipment_id)
)
return await PageUtil.paginate(db, statement, query.page_num, query.page_size, is_page=True)