117 lines
2.6 KiB
TypeScript
117 lines
2.6 KiB
TypeScript
// database.schema.ts
|
|
|
|
export interface Customer {
|
|
id: number;
|
|
firstNameEn: string;
|
|
lastNameEn: string;
|
|
// firstNameJp: string;
|
|
// lastNameJp: string;
|
|
// firstNameJpKana: string;
|
|
// lastNameJpKana: string;
|
|
email: string;
|
|
// email2?: string;
|
|
mobile: string;
|
|
originAdd1: string;
|
|
// originAdd2: string;
|
|
// originAdd3: string;
|
|
// originCity: string;
|
|
// originState: string;
|
|
// originPostcode: string;
|
|
// originCountry: string;
|
|
localAdd1: string;
|
|
// localAdd2: string;
|
|
// localAdd3: string;
|
|
// localCity: string;
|
|
// localState: string;
|
|
// localPostcode: string;
|
|
// localCountry: string;
|
|
// preferLang: string;
|
|
// dob: string; // ISO string
|
|
// gender: string;
|
|
// martial: string;
|
|
// occupation: string;
|
|
// ecName: string;
|
|
// ecRelation: string;
|
|
// ecEmail: string;
|
|
// ecMobile: string;
|
|
// initialOutReach?: string;
|
|
// initialOutReachRemark?: string;
|
|
// consentGiven?: string;
|
|
// contentDate?: string;
|
|
// status: string;
|
|
// remarks: string;
|
|
// potcustId?: string;
|
|
// isDeleted: boolean;
|
|
}
|
|
|
|
export interface User {
|
|
id: number;
|
|
username: string;
|
|
email: string;
|
|
firstName: string;
|
|
lastName: string;
|
|
password: string;
|
|
isDeleted: boolean;
|
|
}
|
|
|
|
export interface UserPermission {
|
|
id: number;
|
|
userId: number;
|
|
permissionId: number;
|
|
}
|
|
|
|
export interface Permission {
|
|
id: number;
|
|
name: string;
|
|
description: string;
|
|
isActive: boolean;
|
|
}
|
|
|
|
export interface CustomerDependant {
|
|
id: number;
|
|
custId: number;
|
|
// deptSeq: number;
|
|
firstNameEn: string;
|
|
lastNameEn: string;
|
|
// firstNameJp: string;
|
|
// lastNameJp: string;
|
|
// firstNameJpKana: string;
|
|
// lastNameJpKana: string;
|
|
email: string;
|
|
// email2?: string;
|
|
mobile: string;
|
|
originAdd1: string;
|
|
// originAdd2: string;
|
|
// originAdd3: string;
|
|
// originCity: string;
|
|
// originState: string;
|
|
// originPostcode: string;
|
|
// originCountry: string;
|
|
localAdd1: string;
|
|
// localAdd2: string;
|
|
// localAdd3: string;
|
|
// localCity: string;
|
|
// localState: string;
|
|
// localPostcode: string;
|
|
// localCountry: string;
|
|
// preferLang: string;
|
|
// dob: string;
|
|
// gender: string;
|
|
// martial: string;
|
|
// occupation: string;
|
|
// ecName: string;
|
|
// ecRelation: string;
|
|
// ecEmail: string;
|
|
// ecMobile: string;
|
|
// isDeleted: boolean;
|
|
}
|
|
|
|
// Lowdb root schema
|
|
export interface DBSchema {
|
|
customers: Customer[];
|
|
users: User[];
|
|
userPermissions: UserPermission[];
|
|
permissions: Permission[];
|
|
customerDependants: CustomerDependant[];
|
|
}
|