import { prismaClient as prisma } from '../../prismaClient' import { clearResidentWithoutUnits } from '../../controllers/user' /** * Cleaning data that should have been deleted with a cascade delete * But since we don't have any cascade delete yet we do it manually */ async function startCleaning() { // const { count: numberOfbuildingDeleted } = await prisma.building.deleteMany({ // where: { project: null }, // }) // console.log(`DONE deleting ${numberOfbuildingDeleted} buildings`) // const { count: numberOfpropertyDeleted } = await prisma.property.deleteMany({ // where: { building: null }, // }) // console.log(`DONE deleting ${numberOfpropertyDeleted} properties`) // const { count: numberOflockerDeleted } = await prisma.locker.deleteMany({ // where: { project: null }, // }) // console.log(`DONE deleting ${numberOflockerDeleted} lockers`) // const { count: numberOfparkingDeleted } = await prisma.parking.deleteMany({ // where: { project: null }, // }) // console.log(`DONE deleting ${numberOfparkingDeleted} parkings`) // const { count: numberOfaccountStatementDeleted } = await prisma.accountStatement.deleteMany({ // where: { property: null }, // }) // console.log(`DONE deleting ${numberOfaccountStatementDeleted} account statements`) // const { count: numberOfphoneDeleted } = await prisma.phone.deleteMany({ // where: { number: { equals: '' } }, // }) // console.log(`DONE deleting ${numberOfphoneDeleted} phone numbers`) // const { count: numberOfFoldersDeleted } = await prisma.folder.deleteMany({ // where: { folderParent: null, name: { not: 'Root' } }, // }) // console.log(`DONE deleting ${numberOfFoldersDeleted} folders`) // For each project make sure all residents have a unit const allProjects = await prisma.project.findMany({ select: { id: true } }) for await (const project of allProjects) { await clearResidentWithoutUnits({ projectId: project.id }) } } startCleaning()