Property system: - Rename belonging → property throughout (model, controller, routes, service) - Add property sub-models: buildingModel, landModel, belongingModel - Add property lifecycle events: createProperty, deleteProperty - Add propertyStatus component (model, controller, routes, service, seeder) - Add commodity and commodityTransaction model stubs Infrastructure: - Update transactionModel and transactionService - Update events/index.js for new property events - Update seeder (seederDBConnection, seederRunner) - Update typesense client configuration - Update upload utilities (bucket, minio) - Update featureModel and featureSeeder - Update categorySeeder - Update TsApiFeatures utility - Remove docker-compose.yml (moved to root) - Remove legacy belonging component files
31 lines
814 B
JavaScript
31 lines
814 B
JavaScript
const mongoose = require('mongoose')
|
|
const Property = require('./propertyModel')
|
|
|
|
const landSchema = new mongoose.Schema({
|
|
landArea: {
|
|
type: Number, // مساحت زمین به متر مربع
|
|
},
|
|
zoningType: {
|
|
type: String, // نوع کاربری (مسکونی، کشاورزی، تجاری و ...)
|
|
},
|
|
boundaryCoordinates: {
|
|
type: [[Number]], // مختصات چندضلعی حدود ملک
|
|
},
|
|
streetWidth: {
|
|
type: Number, // عرض گذر (متر)
|
|
},
|
|
facadeCount: {
|
|
type: Number, // تعداد بر
|
|
},
|
|
landLength: {
|
|
type: Number, // طول زمین (متر)
|
|
},
|
|
landWidth: {
|
|
type: Number, // عرض زمین (متر)
|
|
},
|
|
})
|
|
|
|
const Land = Property.discriminator('Land', landSchema)
|
|
|
|
module.exports = Land
|