@chevre/domain
Version:
Chevre Domain Library for Node.js
76 lines (75 loc) • 3.15 kB
TypeScript
import type { Connection, FilterQuery } from 'mongoose';
import * as factory from '../../factory';
import { IDocType } from '../mongoose/schemas/civicStructure';
export type IScreeningRoomFoundByBranchCode = Pick<factory.place.screeningRoom.IPlace, 'typeOf' | 'branchCode' | 'name' | 'containsPlace' | 'seatCount' | 'parentOrganization'>;
export type IMovieTheaterIncludingScreeningRooms = Pick<factory.place.movieTheater.IPlace, 'additionalProperty' | 'branchCode' | 'kanaName' | 'name' | 'offers' | 'parentOrganization' | 'project' | 'telephone' | 'typeOf'> & {
containsPlace: factory.place.screeningRoom.IPlace[];
};
type IKeyOfProjection = keyof factory.place.movieTheater.IPlace;
/**
* 施設リポジトリ
*/
export declare class MovieTheaterRepo {
private readonly civicStructureModel;
constructor(connection: Connection);
static CREATE_MOVIE_THEATER_MONGO_CONDITIONS(params: factory.place.movieTheater.ISearchConditions): FilterQuery<import("@chevre/factory/lib/place/movieTheater").IPlace>[];
/**
* 施設を保管する
*/
saveMovieTheater(params: factory.place.movieTheater.IPlace): Promise<{
id: string;
}>;
saveMovieTheaterByBranchCode4coa(params: IMovieTheaterIncludingScreeningRooms): Promise<void>;
/**
* 施設のpublic属性検索
* 2024-09-18~
*/
projectPublicFields(params: factory.place.movieTheater.ISearchConditions): Promise<Omit<factory.place.movieTheater.IPlace, 'screenCount'>[]>;
/**
* 施設検索
* redefine(2024-09-18~)
*/
projectFields(params: factory.place.movieTheater.ISearchConditions, inclusion: IKeyOfProjection[]): Promise<Omit<factory.place.movieTheater.IPlace, 'screenCount'>[]>;
deleteMovieTheaterById(params: {
project: {
id: string;
};
id: string;
}): Promise<void>;
/**
* 販売者に属する施設を全削除
*/
deleteMovieTheatersByParentOrganizationId(params: {
project: {
id: string;
};
parentOrganization: {
/**
* 販売者ID
*/
id: string;
};
}): Promise<import("mongodb").DeleteResult>;
/**
* プロジェクトに属する施設を全削除
*/
deleteMovieTheatersByProject(params: {
project: {
id: string;
};
}): Promise<void>;
getCursor(conditions: FilterQuery<any>, projection: any): import("mongoose").Cursor<import("mongoose").Document<unknown, {}, IDocType> & Omit<import("@chevre/factory/lib/place/movieTheater").IPlace, "id"> & {
hasPOS?: factory.place.movieTheater.IPOS[];
} & {
_id: import("mongoose").Types.ObjectId;
}, import("mongoose").QueryOptions<import("mongoose").Document<unknown, {}, IDocType> & Omit<import("@chevre/factory/lib/place/movieTheater").IPlace, "id"> & {
hasPOS?: factory.place.movieTheater.IPOS[];
} & {
_id: import("mongoose").Types.ObjectId;
}>>;
unsetUnnecessaryFields(params: {
filter: any;
$unset: any;
}): Promise<import("mongoose").UpdateWriteOpResult>;
}
export {};