@briswell/bw-domain
Version:
Domain Library for Node.js
27 lines (26 loc) • 840 B
TypeScript
import * as factory from '@briswell/bw-factory';
import * as Sequelize from 'sequelize';
import { ISalesInstance, ISalesModel } from '../model/sales';
export default class SalesRepository {
readonly salesModel: ISalesModel;
private salesDetailModel;
private billingModel;
private sequelize;
constructor(db: Sequelize.Sequelize);
search(params: factory.sales.searchCondition): Promise<{
rows: ISalesInstance[];
count: number;
}>;
/**
* 売上詳細検索
* @param salesId 売上ID
*/
searchDetail(salesId: number): Promise<ISalesInstance[]>;
/**
* IDがある場合更新する、ない場合新しい作成する
* @param params データ
*/
upsert(params: factory.sales.instance & {
userId: number;
}): Promise<ISalesInstance | null>;
}