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

120 lines
4.7 KiB
TypeScript

import { ApiProperty } from '@midwayjs/swagger';
import { Category } from '../entity/category.entity';
import { Order } from '../entity/order.entity';
import { Product } from '../entity/product.entty';
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_retund_item.entity';
import { OrderNote } from '../entity/order_note.entity';
import { PaymentMethodDTO } from './logistics.dto';
import { Flavors } from '../entity/flavors.entity';
import { Strength } from '../entity/strength.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 CategoryPaginatedResponse extends PaginatedWrapper(Category) {}
export class FlavorsPaginatedResponse extends PaginatedWrapper(Flavors) {}
export class StrengthPaginatedResponse extends PaginatedWrapper(Strength) {}
//产品分类返分页返回数据
export class ProductCatListRes extends SuccessWrapper(
CategoryPaginatedResponse
) {}
//产品分类返所有数据
export class ProductCatAllRes extends SuccessArrayWrapper(Category) {}
//产品分类返回数据
export class ProductCatRes extends SuccessWrapper(Category) {}
//产品分页数据
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
) {}