@mobitel.ltd/orion-pro-api
Version:
my local service
123 lines (122 loc) • 3.25 kB
TypeScript
import * as Soap from 'soap';
export interface PersonFullInfo {
Id: number;
LastName: string;
FirstName: string;
MiddleName: string;
BirthDate: string;
Company: string;
Department: string;
Position: string;
CompanyId: number;
DepartmentId: number;
PositionId: number;
TabNum: string;
Phone?: number;
HomePhone?: number;
Address?: string;
AccessLevelId: number;
Status: number;
ContactIdIndex: number;
IsLockedDayCrossing: boolean;
IsFreeShedule: boolean;
ExternalId?: number;
IsInArchive: boolean;
DocumentType: number;
DocumentSerials?: string;
DocumentNumber?: number;
DocumentIssueDate: string;
DocumentEndingDate: string;
DocumentIsser?: string;
DocumentIsserCode?: string;
Sex: number;
Birthplace?: string;
EmailList?: string[];
ArchivingTimeStamp: string;
IsInBlackList: boolean;
IsDismissed: boolean;
BlackListComment?: string;
ChangeTime: string;
Itn?: string;
}
export interface EventData {
TabNum: string;
Description: string;
EventDate: string;
EventTypeId: number;
EventId: string;
AccessPointId: number;
PassMode: number;
}
export interface CardData {
AccessLevelId: number;
IsBlocked: boolean;
PersonId: number;
StartDate: string;
EndDate: string;
}
export interface PutPersonData {
Id: number;
FirstName: string;
MiddleName: string;
LastName: string;
CompanyId: number;
DepartmentId: number;
TabNum: string;
PositionId: number;
Photo: string;
}
export interface EventOptions {
beginTime: string;
endTime: string;
accessPoints?: number[];
eventTypes?: number[];
offset?: number;
count?: number;
}
export interface PersonOptions {
tabNum: string;
withoutPhoto?: boolean;
}
export interface PutPass {
cardNo: string;
tabNum: string;
dateBegin: string;
dateEnd: string;
defaultAccessLevel: number;
}
declare type LogFunction = (arg: any) => void;
export interface Logger {
log: LogFunction;
warn: LogFunction;
error: LogFunction;
debug: LogFunction;
}
export declare class OrionApi {
private url;
logger: Logger;
private lib;
private client;
constructor(url: string, logger?: Logger, lib?: typeof Soap);
private start;
getPersons(options?: {
count?: number;
offset?: number;
withoutPhoto?: boolean;
}): Promise<PersonFullInfo[] | undefined>;
getPersonByTabNumber(options: PersonOptions): Promise<PersonFullInfo | undefined>;
getPersonByPersonId(id: number): Promise<PersonFullInfo | undefined>;
getPersonForPutCard(options: PersonOptions): Promise<PutPersonData | undefined>;
getEvents(options: EventOptions): Promise<EventData[] | undefined>;
getCard(options: {
cardNo: string;
}): Promise<CardData | undefined>;
getAllCards(): Promise<CardData[]>;
ping(): Promise<number>;
getPersonAccessId(tabNum: string, personData?: PutPersonData): Promise<number | undefined>;
putPass({ tabNum, defaultAccessLevel, ...options }: PutPass): Promise<boolean>;
deletePass(options: {
cardNo: string;
}): Promise<boolean>;
}
export {};