cloud-ide-lms-model
Version:
Package for Model management of Cloud IDEsys LMS
129 lines (128 loc) • 4.32 kB
TypeScript
/**
* Admission Fee Snapshot Model - Response Types
*
* Purpose: Response type definitions with populated references for fee snapshots
* Stores complete fee structure snapshot at the time of admission confirmation/conversion
* Prefix: adfsn_ (admission fee snapshot)
*/
import { AdmissionFeeSnapshot } from "../../schema/admission/admission_fee_snapshot";
import { controllerResponse } from "../../utilities";
/**
* Response type with populated references
* Using Omit to avoid type conflicts when overriding properties
*/
type AdmissionAdmissionFeeSnapshot = Omit<AdmissionFeeSnapshot, 'adfsn_admission_id_admap' | 'adfsn_user_id_auth' | 'adfsn_entity_id_syen' | 'adfsn_academic_year_id_acayr' | 'adfsn_class_program_id_acacpm' | 'adfsn_class_program_term_id_acapt' | 'adfsn_class_program_branch_id_acabrn' | 'adfsn_section_id_acapts' | 'adfsn_fee_structure_id_feest' | 'adfsn_currency_id_sycr' | 'adfsn_created_by_user' | 'adfsn_modified_by_user'> & {
adfsn_admission_id_admap?: {
_id: string;
admap_application_number?: string;
admap_first_name?: string;
admap_last_name?: string;
} | string;
adfsn_user_id_auth?: {
_id: string;
user_first_name?: string;
user_last_name?: string;
user_fullname?: string;
user_email?: string;
} | string;
adfsn_entity_id_syen?: {
_id: string;
syen_name?: string;
syen_entity_code?: string;
} | string;
adfsn_academic_year_id_acayr?: {
_id: string;
acayr_name?: string;
acayr_code?: string;
acayr_title?: string;
} | string;
adfsn_class_program_id_acacpm?: {
_id: string;
acacpm_alise_title?: string;
acacpm_name?: string;
acacpm_title?: string;
} | string;
adfsn_class_program_term_id_acapt?: {
_id: string;
acapt_name?: string;
acapt_code?: string;
} | string | null;
adfsn_class_program_branch_id_acabrn?: {
_id: string;
acabrn_name?: string;
acabrn_code?: string;
} | string | null;
adfsn_section_id_acapts?: {
_id: string;
acapts_name?: string;
acapts_code?: string;
} | string | null;
adfsn_fee_structure_id_feest?: {
_id: string;
feest_structure_name?: string;
feest_structure_code?: string;
} | string | null;
adfsn_currency_id_sycr?: {
_id: string;
syic_currency_code?: string;
syic_currency_name?: string;
syic_currency_symbol?: string;
} | string | null;
adfsn_created_by_user?: {
_id: string;
user_first_name?: string;
user_last_name?: string;
user_fullname?: string;
} | string | null;
adfsn_modified_by_user?: {
_id: string;
user_first_name?: string;
user_last_name?: string;
user_fullname?: string;
} | string | null;
};
/**
* Controller response type for list operations
*/
interface admissionFeeSnapshotControllerResponse extends controllerResponse {
data?: AdmissionAdmissionFeeSnapshot[] | AdmissionAdmissionFeeSnapshot | null;
totalDocument?: number;
}
/**
* Controller response for single operations
*/
interface AdmissionFeeSnapshotResponse extends AdmissionAdmissionFeeSnapshot {
}
/**
* Get by ID payload
*/
interface MAdmissionFeeSnapshotGetByIdPayload {
adfsn_id?: string;
adfsn_admission_id_admap?: string;
adfsn_student_id?: string;
}
/**
* List payload
*/
interface MAdmissionFeeSnapshotListPayload {
adfsn_admission_id_admap?: string;
adfsn_student_id?: string;
adfsn_entity_id_syen?: string;
adfsn_academic_year_id_acayr?: string;
adfsn_class_program_id_acacpm?: string;
adfsn_applied_at_stage?: 'CONFIRMATION' | 'CONVERSION';
adfsn_isactive?: boolean;
pageIndex?: number;
pageSize?: number;
query?: string;
}
/**
* Insert/Update payload
*/
interface MAdmissionFeeSnapshotInsertUpdatePayload extends AdmissionFeeSnapshot {
adfsn_id?: string;
}
export { AdmissionAdmissionFeeSnapshot, // Main response type
AdmissionFeeSnapshotResponse, // Single response
admissionFeeSnapshotControllerResponse, // List response
MAdmissionFeeSnapshotGetByIdPayload, MAdmissionFeeSnapshotListPayload, MAdmissionFeeSnapshotInsertUpdatePayload };