REFACTOR: Belonging → Property system migration + utilities update

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
This commit is contained in:
2026-08-11 20:35:47 +03:30
parent a9432b96c0
commit ca911b97a0
35 changed files with 1504 additions and 1223 deletions
@@ -0,0 +1,42 @@
const PropertyStatus = require('./propertyStatusModel')
const AppError = require('../../globalErrorHandler/AppError')
const getAllStatuses = async () => {
return PropertyStatus.find({})
}
const getStatus = async (statusId) => {
const status = await PropertyStatus.findById(statusId)
if (!status) {
throw new AppError('NoPropertyStatusFound', 404, {})
}
return status
}
const createStatus = async (data) => {
return PropertyStatus.create(data)
}
const updateStatus = async (statusId, data) => {
const status = await PropertyStatus.findByIdAndUpdate(statusId, data, { new: true, runValidators: true })
if (!status) {
throw new AppError('NoPropertyStatusFound', 404, {})
}
return status
}
const deleteStatus = async (statusId) => {
const status = await PropertyStatus.findByIdAndDelete(statusId)
if (!status) {
throw new AppError('NoPropertyStatusFound', 404, {})
}
return null
}
module.exports = { getAllStatuses, getStatus, createStatus, updateStatus, deleteStatus }