cloud-ide-model-schema 1.1.124 → 1.1.125

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,8 @@
1
+ import { FeeStructureItem } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CFeeStructureItem: mongoose.Model<FeeStructureItem, {}, {}, {}, mongoose.Document<unknown, {}, FeeStructureItem, {}> & FeeStructureItem & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CFeeStructureItem };
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CFeeStructureItem = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ /* SCHEMA START */
6
+ var fee_structure_item = new mongoose_1.Schema({
7
+ feesi_structure_id_fees: {
8
+ type: mongoose_1.default.Schema.Types.ObjectId,
9
+ ref: "fee_structures",
10
+ required: true,
11
+ comment: "Fee structure this item belongs to"
12
+ },
13
+ feesi_category_id_sygms: {
14
+ type: mongoose_1.default.Schema.Types.ObjectId,
15
+ ref: "core_general_master",
16
+ required: true,
17
+ comment: "Fee category from general master (Tuition, Library, Lab, Sports, Transport, Hostel, etc.)"
18
+ },
19
+ feesi_item_code: {
20
+ type: String,
21
+ maxlength: 50,
22
+ trim: true,
23
+ comment: "Fee item code (auto-populated from category config)"
24
+ },
25
+ feesi_item_name: {
26
+ type: String,
27
+ required: true,
28
+ minlength: 1,
29
+ maxlength: 200,
30
+ trim: true,
31
+ comment: "Fee item name (auto-populated from category title)"
32
+ },
33
+ feesi_description: {
34
+ type: String,
35
+ maxlength: 500,
36
+ trim: true,
37
+ comment: "Fee item description"
38
+ },
39
+ feesi_amount: {
40
+ type: Number,
41
+ required: true,
42
+ min: 0,
43
+ comment: "Fee amount (default/base amount)"
44
+ },
45
+ feesi_is_amount_editable: {
46
+ type: Boolean,
47
+ default: false,
48
+ comment: "Allow amount to be edited when applying to student (e.g., transport fee based on distance)"
49
+ },
50
+ feesi_min_amount: {
51
+ type: Number,
52
+ default: null,
53
+ min: 0,
54
+ comment: "Minimum amount allowed if editable (null = no minimum)"
55
+ },
56
+ feesi_max_amount: {
57
+ type: Number,
58
+ default: null,
59
+ min: 0,
60
+ comment: "Maximum amount allowed if editable (null = no maximum)"
61
+ },
62
+ feesi_due_date: {
63
+ type: Date,
64
+ default: null,
65
+ comment: "Fixed due date (alternative to offset)"
66
+ },
67
+ feesi_due_date_offset_days: {
68
+ type: Number,
69
+ default: 0,
70
+ comment: "Days from start of term/year"
71
+ },
72
+ feesi_collection_start_offset_days: {
73
+ type: Number,
74
+ default: 0,
75
+ comment: "Collection window start offset"
76
+ },
77
+ feesi_collection_end_offset_days: {
78
+ type: Number,
79
+ default: 30,
80
+ comment: "Collection window end offset"
81
+ },
82
+ feesi_is_mandatory: {
83
+ type: Boolean,
84
+ default: true,
85
+ comment: "Is this fee mandatory"
86
+ },
87
+ feesi_is_refundable: {
88
+ type: Boolean,
89
+ default: false,
90
+ comment: "Is this fee refundable"
91
+ },
92
+ feesi_is_installment_allowed: {
93
+ type: Boolean,
94
+ default: false,
95
+ comment: "Allow installments for this fee"
96
+ },
97
+ feesi_installment_count: {
98
+ type: Number,
99
+ default: 1,
100
+ min: 1,
101
+ comment: "Number of installments if allowed"
102
+ },
103
+ feesi_tax_applicable: {
104
+ type: Boolean,
105
+ default: false,
106
+ comment: "Is tax applicable"
107
+ },
108
+ feesi_tax_percentage: {
109
+ type: Number,
110
+ default: 0,
111
+ min: 0,
112
+ max: 100,
113
+ comment: "Tax percentage if applicable"
114
+ },
115
+ feesi_display_order: {
116
+ type: Number,
117
+ default: 0,
118
+ comment: "Display order in list"
119
+ },
120
+ feesi_is_active: {
121
+ type: Boolean,
122
+ default: true,
123
+ comment: "Active status flag"
124
+ }
125
+ }, {
126
+ collection: 'fee_structure_items',
127
+ timestamps: false
128
+ });
129
+ // Indexes for performance
130
+ fee_structure_item.index({ feesi_structure_id_fees: 1 });
131
+ fee_structure_item.index({ feesi_category_id_sygms: 1 });
132
+ fee_structure_item.index({ feesi_structure_id_fees: 1, feesi_display_order: 1 });
133
+ var CFeeStructureItem = mongoose_1.default.model("fee_structure_items", fee_structure_item);
134
+ exports.CFeeStructureItem = CFeeStructureItem;
@@ -1,2 +1,3 @@
1
1
  export * from './fee_assignment';
2
2
  export * from './fee_structure';
3
+ export * from './fee_structure_item';
@@ -16,3 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./fee_assignment"), exports);
18
18
  __exportStar(require("./fee_structure"), exports);
19
+ __exportStar(require("./fee_structure_item"), exports);
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "typescript": "^5.8.3"
10
10
  },
11
11
  "name": "cloud-ide-model-schema",
12
- "version": "1.1.124",
12
+ "version": "1.1.125",
13
13
  "description": "Pachage for schema management of Cloud IDEsys LMS",
14
14
  "main": "lib/index.js",
15
15
  "types": "lib/index.d.ts",