Files
dukang/server/dukang-api/src/modules/ops/dto/admin-query.dto.ts
T
2026-08-04 21:38:49 +08:00

553 lines
8.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { Type } from 'class-transformer';
import { IsIn, IsInt, IsOptional, IsString, Max, Min } from 'class-validator';
export class PaginationQueryDto {
@IsOptional()
@Type(() => Number)
@IsInt()
@Min(1)
page?: number = 1;
@IsOptional()
@Type(() => Number)
@IsInt()
@Min(1)
@Max(100)
pageSize?: number = 20;
}
export class AdminUsersQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
userNo?: string;
@IsOptional()
@IsString()
deviceKey?: string;
@IsOptional()
@IsIn(['0', '1'])
phoneVerified?: string;
@IsOptional()
@Type(() => Number)
@IsIn([0, 1])
status?: number;
}
export class AdminOrdersQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
orderNo?: string;
@IsOptional()
@IsString()
status?: string;
@IsOptional()
@IsIn(['NORMAL', 'PROXY'])
orderType?: string;
@IsOptional()
@IsString()
userId?: string;
@IsOptional()
@IsString()
cityId?: string;
@IsOptional()
@IsString()
receiverPhone?: string;
/** 仅看大单拦截待总部确认:true / 1 */
@IsOptional()
fulfillmentHold?: string | boolean;
@IsOptional()
@IsString()
createdFrom?: string;
@IsOptional()
@IsString()
createdTo?: string;
}
/** 概览页用户/订单 ECharts 聚合筛选 */
export class AdminDashboardAnalyticsQueryDto {
/** YYYY-MM-DD,默认近 30 天 */
@IsOptional()
@IsString()
dateFrom?: string;
@IsOptional()
@IsString()
dateTo?: string;
/** 开城城市 id`none` = 用户未选城 */
@IsOptional()
@IsString()
cityId?: string;
/** 推广码 id`none` = 无归因 / 订单无推广码 */
@IsOptional()
@IsString()
promoCodeId?: string;
/** 城市合伙人(主账号)id */
@IsOptional()
@IsString()
partnerAccountId?: string;
}
export class AdminStoresQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
name?: string;
@IsOptional()
@IsString()
status?: string;
@IsOptional()
@IsString()
cityId?: string;
@IsOptional()
@IsString()
partnerId?: string;
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
auditStatus?: string;
}
export class AdminStoreAccountsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
storeId?: string;
@IsOptional()
@IsString()
status?: string;
}
export class AdminPartnersQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
companyName?: string;
@IsOptional()
@IsString()
contactPhone?: string;
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
cityId?: string;
@IsOptional()
@IsString()
partnerId?: string;
}
export class AdminCityWarehousesQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
cityId?: string;
@IsOptional()
@IsString()
name?: string;
@IsOptional()
@IsString()
managerType?: string;
@IsOptional()
@IsString()
status?: string;
}
export class AdminPartnerAccountsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
partnerId?: string;
@IsOptional()
@IsString()
status?: string;
@IsOptional()
@IsString()
isPrimary?: string;
}
export class AdminBenefitCouponsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
couponNo?: string;
@IsOptional()
@IsString()
userId?: string;
@IsOptional()
@IsString()
status?: string;
}
export class AdminBenefitLedgersQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
userId?: string;
@IsOptional()
@IsString()
couponId?: string;
@IsOptional()
@IsString()
type?: string;
}
export class AdminRedeemRecordsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
redeemNo?: string;
@IsOptional()
@IsString()
storeId?: string;
@IsOptional()
@IsString()
userId?: string;
/** SCAN | PHONE */
@IsOptional()
@IsString()
channel?: string;
}
export class AdminStoreRatingsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
storeId?: string;
@IsOptional()
@IsString()
redeemNo?: string;
}
export class AdminDeliveriesQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
provider?: string;
@IsOptional()
@IsString()
trackingNo?: string;
@IsOptional()
@IsString()
orderNo?: string;
}
export class AdminHqAccountsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
adminRole?: string;
@IsOptional()
@IsString()
status?: string;
}
export class AdminCitiesQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
name?: string;
@IsOptional()
@IsString()
code?: string;
@IsOptional()
@IsString()
status?: string;
@IsOptional()
@IsString()
partnerId?: string;
}
export class AdminProductsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
name?: string;
@IsOptional()
@IsString()
status?: string;
@IsOptional()
@IsString()
aromaType?: string;
}
export class AdminProductDetailTemplatesQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
name?: string;
@IsOptional()
@IsString()
code?: string;
@IsOptional()
@IsString()
status?: string;
@IsOptional()
@IsString()
aromaType?: string;
}
export class AdminUserLogsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
userId?: string;
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
userNo?: string;
@IsOptional()
@IsString()
category?: string;
@IsOptional()
@IsString()
eventName?: string;
@IsOptional()
@IsString()
from?: string;
@IsOptional()
@IsString()
to?: string;
}
export class AdminStoreLogsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
storeId?: string;
@IsOptional()
@IsString()
storeAccountId?: string;
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
storeName?: string;
@IsOptional()
@IsString()
category?: string;
@IsOptional()
@IsString()
eventName?: string;
@IsOptional()
@IsString()
from?: string;
@IsOptional()
@IsString()
to?: string;
}
export class AdminPartnerLogsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
partnerId?: string;
@IsOptional()
@IsString()
partnerAccountId?: string;
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
companyName?: string;
@IsOptional()
@IsString()
category?: string;
@IsOptional()
@IsString()
eventName?: string;
@IsOptional()
@IsString()
from?: string;
@IsOptional()
@IsString()
to?: string;
}
export class AdminHqLogsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
hqAccountId?: string;
@IsOptional()
@IsString()
action?: string;
@IsOptional()
@IsString()
refType?: string;
@IsOptional()
@IsString()
from?: string;
@IsOptional()
@IsString()
to?: string;
}
export class AdminOssLogsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
scene?: string;
@IsOptional()
@IsIn(['SUCCESS', 'FAILED', 'PENDING'])
status?: string;
@IsOptional()
@IsString()
bizType?: string;
@IsOptional()
@IsString()
clientApp?: string;
@IsOptional()
@IsString()
refType?: string;
@IsOptional()
@IsString()
refId?: string;
}
export class AdminStoreMediaQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
storeId?: string;
@IsOptional()
@IsString()
mediaType?: string;
}
export class AdminPromoCodesQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
name?: string;
@IsOptional()
@IsString()
code?: string;
@IsOptional()
@IsIn(['ACTIVE', 'DISABLED'])
status?: string;
}
export class AdminWechatBindingsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsIn(['USER', 'STORE', 'PARTNER', 'HQ'])
actorType?: string;
@IsOptional()
@IsString()
phone?: string;
@IsOptional()
@IsString()
unionId?: string;
@IsOptional()
@IsString()
openId?: string;
}
export class AdminWecomBotLogsQueryDto extends PaginationQueryDto {
@IsOptional()
@IsString()
botId?: string;
@IsOptional()
@IsString()
wecomUserId?: string;
@IsOptional()
@IsString()
action?: string;
@IsOptional()
@IsString()
success?: string;
@IsOptional()
@IsString()
from?: string;
@IsOptional()
@IsString()
to?: string;
}