@tomei/product
Version:
NestJS package for product module
105 lines (104 loc) • 3.98 kB
TypeScript
import { ProductModel } from '../../entities/product.entity';
import { ProductRepository } from './product.repository';
import { IJewelleryProductAttr, IProductAttrBase } from '../../interfaces';
import { LoginUser } from '@tomei/sso';
import { ProductBrandModel } from '../../entities/product-brand.entity';
import { ObjectBase } from '@tomei/general';
export declare abstract class ProductBase extends ObjectBase {
ObjectId: string;
ObjectName: string;
TableName: string;
ObjectType: string;
private _ProductId;
private _Name;
private _SKU;
private _Description;
private _Type;
private _Remark;
private _IsTaxableYN;
private _TaxCode;
private _IsPriceInclusiveTaxYN;
private _Status;
private _VerifiedYN;
private _VerifiedById;
private _VerifiedAt;
private _VariantLevels;
private _VariantTypeLevel1;
private _VariantTypeLevel2;
private _VariantTypeLevel3;
private _CreatedById;
private _CreatedAt;
private _UpdatedById;
private _UpdatedAt;
private _UpdatedSSYN;
protected static _Repository: ProductRepository;
constructor(product?: IProductAttrBase);
get ProductId(): string;
set ProductId(value: string);
get Name(): string;
set Name(value: string);
get Description(): string;
set Description(value: string);
get SKU(): string;
set SKU(value: string);
get Type(): string;
set Type(value: string);
get Remark(): string;
set Remark(value: string);
get IsTaxableYN(): string;
set IsTaxableYN(value: string);
get TaxCode(): string;
set TaxCode(value: string);
get IsPriceInclusiveTaxYN(): string;
set IsPriceInclusiveTaxYN(value: string);
get Status(): string;
set Status(value: string);
get VerifiedYN(): string;
set VerifiedYN(value: string);
get VerifiedById(): string;
set VerifiedById(value: string);
get VerifiedAt(): Date;
set VerifiedAt(value: Date);
get VariantLevels(): number;
set VariantLevels(value: number);
get VariantTypeLevel1(): string;
set VariantTypeLevel1(value: string);
get VariantTypeLevel2(): string;
set VariantTypeLevel2(value: string);
get VariantTypeLevel3(): string;
set VariantTypeLevel3(value: string);
get CreatedById(): string;
set CreatedById(value: string);
get CreatedAt(): Date;
set CreatedAt(value: Date);
get UpdatedById(): string;
set UpdatedById(value: string);
get UpdatedAt(): Date;
set UpdatedAt(value: Date);
get UpdatedSSYN(): string;
set UpdatedSSYN(value: string);
create(loginUser: LoginUser, dbTransaction?: any): Promise<ProductModel | any>;
static findOne(searchOptions: any, dbTransaction?: any): Promise<any>;
static findAll(loginUser: LoginUser): Promise<any>;
findAllWithPagination(searchOptions: any, dbTransaction?: any): Promise<{
rows: ProductModel[];
count: number;
}>;
update(loginUser: LoginUser, productInfo: IJewelleryProductAttr, dbTransaction?: any): Promise<ProductModel | any>;
deactivate(loginUser: LoginUser, dbTransaction?: any): Promise<void>;
verify(loginUser: LoginUser, dbTransaction?: any): Promise<void>;
activate(loginUser: LoginUser, dbTransaction?: any): Promise<void>;
discontinue(loginUser: LoginUser, dbTransaction?: any): Promise<void>;
delete(loginUser: LoginUser, dbTransaction?: any): Promise<void>;
addTag(name: string, loginUser: LoginUser, dbTransaction?: any): Promise<void>;
getBrand(loginUser: LoginUser, dbTransaction?: any): Promise<{
rows: ProductBrandModel[];
count: number;
}>;
assignBrand(brand: string, loginUser: LoginUser, dbTransaction?: any): Promise<any>;
unassignBrand(brand: string, loginUser: LoginUser, dbTransaction?: any): Promise<any>;
getVariants(loginUser: LoginUser, dbTransaction?: any, page?: number, row?: number): Promise<{
count: any;
rows: any;
}>;
}