zksu
/
API
forked from yoone/API
1
0
Fork 0
API/src/dto/reponse.dto.ts

155 lines
5.9 KiB
TypeScript

import { ApiProperty } from '@midwayjs/swagger';
import { Order } from '../entity/order.entity';
import { Product } from '../entity/product.entity';
import { StockPoint } from '../entity/stock_point.entity';
import { PaginatedWrapper } from '../utils/paginated-response.util';
import {
SuccessArrayWrapper,
SuccessWrapper,
} from '../utils/response-wrapper.util';
import { OrderStatusCountDTO } from './order.dto';
import { SiteConfig } from './site.dto';
import { PurchaseOrderDTO, StockDTO, StockRecordDTO } from './stock.dto';
import { LoginResDTO } from './user.dto';
import { WpProductDTO } from './wp_product.dto';
import { OrderSale } from '../entity/order_sale.entity';
import { Service } from '../entity/service.entity';
import { RateDTO } from './freightcom.dto';
import { ShippingAddress } from '../entity/shipping_address.entity';
import { OrderItem } from '../entity/order_item.entity';
import { OrderRefundItem } from '../entity/order_refund_item.entity';
import { OrderNote } from '../entity/order_note.entity';
import { PaymentMethodDTO } from './logistics.dto';
import { Subscription } from '../entity/subscription.entity';
import { Dict } from '../entity/dict.entity';
export class BooleanRes extends SuccessWrapper(Boolean) {}
//网站配置返回数据
export class WpSitesResponse extends SuccessArrayWrapper(SiteConfig) {}
//产品分页数据
export class ProductPaginatedResponse extends PaginatedWrapper(Product) {}
//产品分页返回数据
export class ProductListRes extends SuccessWrapper(ProductPaginatedResponse) {}
//产品返回数据
export class ProductRes extends SuccessWrapper(Product) {}
export class ProductsRes extends SuccessArrayWrapper(Product) {}
//产品品牌返分页数据
export class BrandPaginatedResponse extends PaginatedWrapper(Dict) {}
//产品品牌返分页返回数据
export class ProductBrandListRes extends SuccessWrapper(
BrandPaginatedResponse
) {}
//产品品牌返所有数据
export class ProductBrandAllRes extends SuccessArrayWrapper(Dict) {}
//产品品牌返回数据
export class ProductBrandRes extends SuccessWrapper(Dict) {}
//产品口味返分页数据
export class FlavorsPaginatedResponse extends PaginatedWrapper(Dict) {}
//产品口味返分页返回数据
export class ProductFlavorsListRes extends SuccessWrapper(
FlavorsPaginatedResponse
) {}
//产品口味返所有数据
export class ProductFlavorsAllRes extends SuccessArrayWrapper(Dict) {}
//产品口味返回数据
export class ProductFlavorsRes extends SuccessWrapper(Dict) {}
//产品规格返分页数据
export class StrengthPaginatedResponse extends PaginatedWrapper(Dict) {}
//产品规格返分页返回数据
export class ProductStrengthListRes extends SuccessWrapper(
StrengthPaginatedResponse
) {}
//产品规格返所有数据
export class ProductStrengthAllRes extends SuccessArrayWrapper(Dict) {}
//产品规格返返回数据
export class ProductStrengthRes extends SuccessWrapper(Dict) {}
// 产品尺寸返分页数据
export class SizePaginatedResponse extends PaginatedWrapper(Dict) {}
// 产品尺寸返分页返回数据
export class ProductSizeListRes extends SuccessWrapper(
SizePaginatedResponse
) {}
// 产品尺寸返所有数据
export class ProductSizeAllRes extends SuccessArrayWrapper(Dict) {}
// 产品尺寸返回数据
export class ProductSizeRes extends SuccessWrapper(Dict) {}
//产品分页数据
export class WpProductPaginatedResponse extends PaginatedWrapper(
WpProductDTO
) {}
//产品分页返回数据
export class WpProductListRes extends SuccessWrapper(
WpProductPaginatedResponse
) {}
export class LoginRes extends SuccessWrapper(LoginResDTO) {}
export class StockPaginatedRespone extends PaginatedWrapper(StockDTO) {}
export class StockListRes extends SuccessWrapper(StockPaginatedRespone) {}
export class StockRecordPaginatedRespone extends PaginatedWrapper(
StockRecordDTO
) {}
export class StockRecordListRes extends SuccessWrapper(
StockRecordPaginatedRespone
) {}
export class StockPointAllRespone extends SuccessArrayWrapper(StockPoint) {}
export class StockPointPaginatedRespone extends PaginatedWrapper(StockPoint) {}
export class StockPointListRes extends SuccessWrapper(
StockPointPaginatedRespone
) {}
export class PurchaseOrderPaginatedRespone extends PaginatedWrapper(
PurchaseOrderDTO
) {}
export class PurchaseOrderListRes extends SuccessWrapper(
PurchaseOrderPaginatedRespone
) {}
export class OrderStatusCountRes extends SuccessArrayWrapper(
OrderStatusCountDTO
) {}
export class OrderPaginatedRespone extends PaginatedWrapper(Order) {
@ApiProperty({ type: OrderStatusCountDTO, isArray: true })
count: OrderStatusCountDTO;
}
export class OrderListRes extends SuccessWrapper(OrderPaginatedRespone) {}
export class OrderSaleDTO extends OrderSale {
@ApiProperty()
totalQuantity: number;
}
export class OrderSalePaginatedRespone extends PaginatedWrapper(OrderSaleDTO) {}
export class OrderSaleListRes extends SuccessWrapper(
OrderSalePaginatedRespone
) {}
export class ServiceListRes extends SuccessArrayWrapper(Service) {}
export class RateLitRes extends SuccessArrayWrapper(RateDTO) {}
export class ShippingAddressListRes extends SuccessArrayWrapper(
ShippingAddress
) {}
export class OrderDetail extends Order {
@ApiProperty({ type: OrderItem, isArray: true })
items: OrderItem[];
@ApiProperty({ type: OrderSale, isArray: true })
sales: OrderSale[];
@ApiProperty({ type: OrderRefundItem, isArray: true })
refundItems: OrderRefundItem[];
// @ApiProperty({ type: Tracking, isArray: true })
// trackings: Tracking[];
@ApiProperty({ type: OrderNote, isArray: true })
notes: OrderNote[];
}
export class OrderDetailRes extends SuccessWrapper(OrderDetail) {}
export class PaymentMethodListRes extends SuccessArrayWrapper(
PaymentMethodDTO
) {}
// 订阅分页数据(列表 + 总数等分页信息)
export class SubscriptionPaginatedResponse extends PaginatedWrapper(Subscription) {}
// 订阅分页返回数据(统一成功包装)
export class SubscriptionListRes extends SuccessWrapper(SubscriptionPaginatedResponse) {}