sozsoft-platform/ui/src/proxy/admin/models.ts
2026-05-05 20:59:30 +03:00

214 lines
4.7 KiB
TypeScript

import { ExtensibleEntityDto, ExtensibleObject } from '..'
export interface IdentityRoleDto extends ExtensibleEntityDto<string> {
name?: string
isDefault: boolean
isStatic: boolean
isPublic: boolean
concurrencyStamp?: string
}
export interface PermissionDefinitionRecord {
groupName: string
name: string
parentName: string
displayName: string
isEnabled: boolean
}
export interface PermissionGroupDto {
name?: string
displayName?: string
permissions: PermissionGrantInfoDto[]
}
export interface GetPermissionListResultDto {
entityDisplayName?: string
groups: PermissionGroupDto[]
}
export interface PermissionGrantInfoDto {
name?: string
displayName?: string
parentName?: string
isGranted: boolean
allowedProviders: string[]
grantedProviders: ProviderInfoDto[]
}
export type PermissionWithGroupName = PermissionGrantInfoDto & {
groupName: string
}
export type PermissionWithStyle = PermissionGrantInfoDto & {
class: string
}
export interface ProviderInfoDto {
providerName?: string
providerKey?: string
}
export interface UpdatePermissionDto {
name?: string
isGranted: boolean
}
export interface UpdatePermissionsDto {
permissions: UpdatePermissionDto[]
}
export interface IdentityUserDto extends ExtensibleFullAuditedEntityDto<string> {
tenantId?: string
userName?: string
name?: string
surname?: string
fullName?: string
email?: string
emailConfirmed: boolean
phoneNumber?: string
phoneNumberConfirmed: boolean
isActive: boolean
lockoutEnabled: boolean
lockoutEnd?: string
concurrencyStamp?: string
}
export class ExtensibleCreationAuditedEntityDto<
TPrimaryKey = string,
> extends ExtensibleEntityDto<TPrimaryKey> {
creationTime?: Date | string
creatorId?: string
constructor(initialValues: Partial<ExtensibleCreationAuditedEntityDto<TPrimaryKey>> = {}) {
super(initialValues)
}
}
export class ExtensibleAuditedEntityDto<
TPrimaryKey = string,
> extends ExtensibleCreationAuditedEntityDto<TPrimaryKey> {
lastModificationTime?: Date | string
lastModifierId?: string
constructor(initialValues: Partial<ExtensibleAuditedEntityDto<TPrimaryKey>> = {}) {
super(initialValues)
}
}
export class ExtensibleFullAuditedEntityDto<
TPrimaryKey = string,
> extends ExtensibleAuditedEntityDto<TPrimaryKey> {
isDeleted?: boolean
deleterId?: string
deletionTime?: Date | string
constructor(initialValues: Partial<ExtensibleFullAuditedEntityDto<TPrimaryKey>> = {}) {
super(initialValues)
}
}
export interface UserInfoViewModel extends ExtensibleObject {
id?: string
tenantId?: string
concurrencyStamp?: string
userName?: string
name?: string
surname?: string
fullName?: string
email?: string
phoneNumber?: string
isActive: boolean
lockoutEnabled: boolean
lockoutEnd?: string
loginEndDate?: Date | string
isVerified: boolean
userRoleNames: string[]
roles: AssignedRoleViewModel[]
branches: AssignedRoleViewModel[]
claims: AssignedClaimViewModel[]
workHours: AssignedWorkHourViewModel[]
departments: AssignedDepartmentViewModel[]
jobPositions: AssignedJobPositionViewModel[]
lockUser: boolean
lastPasswordChangeTime?: Date | string
emailConfirmed: boolean
phoneNumberConfirmed: boolean
accessFailedCount: number
shouldChangePasswordOnNextLogin: boolean
rocketUsername?: string
creationTime: Date | string
lastModificationTime: Date | string
workHour?: string
departmentId?: string
department?: AssignedDepartmentViewModel
jobPositionId?: string
nationality?: string
sskNo?: string
hireDate?: Date | string
terminationDate?: Date | string
identityNumber?: string
serialNo?: string
province?: string
district?: string
village?: string
volumeNo?: string
familySequenceNo?: string
sequenceNo?: string
issuedPlace?: string
issuedDate?: Date | string
birthPlace?: string
birthDate?: Date | string
fatherName?: string
motherName?: string
maritalStatus?: string
marriageDate?: Date | string
homeAddress?: string
educationLevel?: string
graduationSchool?: string
bloodType?: string
}
export interface AssignedRoleViewModel {
name?: string
isAssigned: boolean
}
export interface AssignedBranchViewModel {
name?: string
isAssigned: boolean
}
export interface AssignedClaimViewModel {
id: string
claimType: string
claimValue: string
isAssigned: boolean
}
export interface AssignedWorkHourViewModel {
id: string
name?: string
isAssigned: boolean
}
export interface AssignedDepartmentViewModel {
id: string
name?: string
isAssigned: boolean
}
export interface AssignedJobPositionViewModel {
id: string
name?: string
departmentId?: string
isAssigned: boolean
}
export interface UserClaimModel {
id?: string
userId?: string
claimType: string
claimValue: string
}