protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5BD_SB_1359 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); bool editedVersion = false; ORM_RES_BLD_Building building = new ORM_RES_BLD_Building(); if (Parameter.RES_BLD_BuildingID != Guid.Empty) { var result = building.Load(Connection, Transaction, Parameter.RES_BLD_BuildingID); if (result.Status != FR_Status.Success || building.RES_BLD_BuildingID == Guid.Empty) { var error = new FR_Guid(); error.ErrorMessage = "No Such ID"; error.Status = FR_Status.Error_Internal; return(error); } List <ORM_RES_DUD_Revision> revisions = new List <ORM_RES_DUD_Revision>(); revisions = ORM_RES_DUD_Revision.Query.Search(Connection, Transaction, new ORM_RES_DUD_Revision.Query() { RES_BLD_Building_RefID = Parameter.RES_BLD_BuildingID, Tenant_RefID = securityTicket.TenantID, IsDeleted = false }); if (revisions.Count > 0) { //building is connected to revision. create new with same properties if IsBuildingForEdit returns 0. if (IsBuildingForEdit(Connection, Transaction, Parameter, building, securityTicket) == 0) { building = new ORM_RES_BLD_Building(); editedVersion = true; } else { var noEdit = new FR_Guid(); noEdit.ErrorMessage = "No need to be edited."; noEdit.Status = FR_Status.Success; return(noEdit); } } } if (building.BuildingRevisionHeader_RefID == Guid.Empty) { ORM_RES_BLD_Building_RevisionHeader revisionHeader = new ORM_RES_BLD_Building_RevisionHeader(); revisionHeader.RES_BLD_Building_RevisionHeaderID = Guid.NewGuid(); revisionHeader.CurrentBuildingVersion_RefID = building.RES_BLD_BuildingID; revisionHeader.RealestateProperty_RefID = Parameter.RealestatePropertyID; revisionHeader.Tenant_RefID = securityTicket.TenantID; revisionHeader.Save(Connection, Transaction); building.BuildingRevisionHeader_RefID = revisionHeader.RES_BLD_Building_RevisionHeaderID; ORM_DOC_Structure_Header structureHeader = new ORM_DOC_Structure_Header(); structureHeader.Save(Connection, Transaction); building.Building_DocumentationStructure_RefID = structureHeader.DOC_Structure_HeaderID; } building.Building_BalconyPortionPercent = Parameter.Building_BalconyPortionPercent; //if building is connected with revision, copied building has to have different name. building.Building_Name = editedVersion ? Parameter.Building_Name + " edit" : Parameter.Building_Name; building.IsContaminationSuspected = Parameter.IsContaminationSuspected; building.Building_NumberOfFloors = Parameter.Building_NumberOfFloors; building.Building_ElevatorCoveragePercent = Parameter.Building_ElevatorCoveragePercent; building.Building_NumberOfAppartments = Parameter.Building_NumberOfAppartments; building.Building_NumberOfOccupiedAppartments = Parameter.Building_NumberOfOccupiedAppartments; building.Building_NumberOfOffices = Parameter.Building_NumberOfOffices; building.Building_NumberOfRetailUnits = Parameter.Building_NumberOfRetailUnits; building.Building_NumberOfProductionUnits = Parameter.Building_NumberOfProductionUnits; building.Building_NumberOfOtherUnits = Parameter.Building_NumberOfOtherUnits; building.Tenant_RefID = securityTicket.TenantID; building.Save(Connection, Transaction); ORM_RES_BLD_Building_2_GarbageContainerType.Query build2GarbQuery = new ORM_RES_BLD_Building_2_GarbageContainerType.Query(); build2GarbQuery.RES_BLD_Building_RefID = building.RES_BLD_BuildingID; build2GarbQuery.Tenant_RefID = securityTicket.TenantID; List <ORM_RES_BLD_Building_2_GarbageContainerType> buildingsToGarbage = ORM_RES_BLD_Building_2_GarbageContainerType.Query.Search(Connection, Transaction, build2GarbQuery); if (buildingsToGarbage.Count != 0) { ORM_RES_BLD_Building_2_GarbageContainerType garbage = buildingsToGarbage[0]; garbage.RES_BLD_GarbageContainerType_RefID = Parameter.RES_BLD_GarbageContainerTypeID; garbage.Save(Connection, Transaction); } else { ORM_RES_BLD_Building_2_GarbageContainerType garbage = new ORM_RES_BLD_Building_2_GarbageContainerType(); garbage.RES_BLD_GarbageContainerType_RefID = Parameter.RES_BLD_GarbageContainerTypeID; garbage.RES_BLD_Building_RefID = building.RES_BLD_BuildingID; garbage.Tenant_RefID = securityTicket.TenantID; garbage.Save(Connection, Transaction); } ORM_RES_BLD_Building_2_BuildingType.Query buildTypeQuery = new ORM_RES_BLD_Building_2_BuildingType.Query(); buildTypeQuery.RES_BLD_Building_RefID = building.RES_BLD_BuildingID; buildTypeQuery.Tenant_RefID = securityTicket.TenantID; List <ORM_RES_BLD_Building_2_BuildingType> buildingsType = ORM_RES_BLD_Building_2_BuildingType.Query.Search(Connection, Transaction, buildTypeQuery); if (buildingsType.Count != 0) { ORM_RES_BLD_Building_2_BuildingType buildingType = buildingsType[0]; buildingType.RES_BLD_Building_Type_RefID = Parameter.RES_BLD_Building_TypeID; buildingType.RES_BLD_Building_RefID = building.RES_BLD_BuildingID; buildingType.Save(Connection, Transaction); } else { ORM_RES_BLD_Building_2_BuildingType buildingType = new ORM_RES_BLD_Building_2_BuildingType(); buildingType.RES_BLD_Building_RefID = building.RES_BLD_BuildingID; buildingType.RES_BLD_Building_Type_RefID = Parameter.RES_BLD_Building_TypeID; buildingType.Tenant_RefID = securityTicket.TenantID; buildingType.Save(Connection, Transaction); } if (Parameter.RES_BLD_BuildingID == Guid.Empty || editedVersion) { for (int i = 0; i < Parameter.AppartmentCount; i++) { ORM_RES_BLD_Apartment newAppartment = new ORM_RES_BLD_Apartment(); newAppartment.Building_RefID = building.RES_BLD_BuildingID; newAppartment.Tenant_RefID = securityTicket.TenantID; newAppartment.Save(Connection, Transaction); } for (int i = 0; i < Parameter.staircasesCount; i++) { ORM_RES_BLD_Staircase newStaircase = new ORM_RES_BLD_Staircase(); newStaircase.Building_RefID = building.RES_BLD_BuildingID; newStaircase.Tenant_RefID = securityTicket.TenantID; newStaircase.Save(Connection, Transaction); } for (int i = 0; i < Parameter.outdoorfacilitiesCount; i++) { ORM_RES_BLD_OutdoorFacility newOutdoorfacility = new ORM_RES_BLD_OutdoorFacility(); newOutdoorfacility.Building_RefID = building.RES_BLD_BuildingID; newOutdoorfacility.Tenant_RefID = securityTicket.TenantID; newOutdoorfacility.Save(Connection, Transaction); } for (int i = 0; i < Parameter.facadesCount; i++) { ORM_RES_BLD_Facade newFacade = new ORM_RES_BLD_Facade(); newFacade.Building_RefID = building.RES_BLD_BuildingID; newFacade.Tenant_RefID = securityTicket.TenantID; newFacade.Save(Connection, Transaction); } for (int i = 0; i < Parameter.roofCount; i++) { ORM_RES_BLD_Roof newRoof = new ORM_RES_BLD_Roof(); newRoof.Building_RefID = building.RES_BLD_BuildingID; newRoof.Tenant_RefID = securityTicket.TenantID; newRoof.Save(Connection, Transaction); } for (int i = 0; i < Parameter.atticsCount; i++) { ORM_RES_BLD_Attic newAttic = new ORM_RES_BLD_Attic(); newAttic.Building_RefID = building.RES_BLD_BuildingID; newAttic.Tenant_RefID = securityTicket.TenantID; newAttic.Save(Connection, Transaction); } for (int i = 0; i < Parameter.basementsCount; i++) { ORM_RES_BLD_Basement newBasement = new ORM_RES_BLD_Basement(); newBasement.Building_RefID = building.RES_BLD_BuildingID; newBasement.Tenant_RefID = securityTicket.TenantID; newBasement.Save(Connection, Transaction); } for (int i = 0; i < Parameter.hvarcsCount; i++) { ORM_RES_BLD_HVACR newHvacr = new ORM_RES_BLD_HVACR(); newHvacr.Building_RefID = building.RES_BLD_BuildingID; newHvacr.Tenant_RefID = securityTicket.TenantID; newHvacr.Save(Connection, Transaction); } } else { ORM_RES_BLD_Apartment.Query appartmentQuery = new ORM_RES_BLD_Apartment.Query(); appartmentQuery.Building_RefID = Parameter.RES_BLD_BuildingID; appartmentQuery.Tenant_RefID = securityTicket.TenantID; appartmentQuery.IsDeleted = false; List <ORM_RES_BLD_Apartment> appartmentList = ORM_RES_BLD_Apartment.Query.Search(Connection, Transaction, appartmentQuery); if (appartmentList.Count > Parameter.AppartmentCount) { int counts = appartmentList.Count - Parameter.AppartmentCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Apartment deleteAppartment = appartmentList[i]; deleteAppartment.Remove(Connection, Transaction); } } else if (appartmentList.Count < Parameter.AppartmentCount) { int counts = Parameter.AppartmentCount - appartmentList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Apartment newAppartment = new ORM_RES_BLD_Apartment(); newAppartment.Building_RefID = Parameter.RES_BLD_BuildingID; newAppartment.Tenant_RefID = securityTicket.TenantID; newAppartment.Save(Connection, Transaction); } } ORM_RES_BLD_OutdoorFacility.Query outdoorfacilitiesQuery = new ORM_RES_BLD_OutdoorFacility.Query(); outdoorfacilitiesQuery.Building_RefID = Parameter.RES_BLD_BuildingID; outdoorfacilitiesQuery.Tenant_RefID = securityTicket.TenantID; outdoorfacilitiesQuery.IsDeleted = false; List <ORM_RES_BLD_OutdoorFacility> outdoorfacilitiesList = ORM_RES_BLD_OutdoorFacility.Query.Search(Connection, Transaction, outdoorfacilitiesQuery); if (outdoorfacilitiesList.Count > Parameter.outdoorfacilitiesCount) { int counts = outdoorfacilitiesList.Count - Parameter.outdoorfacilitiesCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_OutdoorFacility deleteOutdoor = outdoorfacilitiesList[i]; deleteOutdoor.Remove(Connection, Transaction); } } else if (outdoorfacilitiesList.Count < Parameter.outdoorfacilitiesCount) { int counts = Parameter.outdoorfacilitiesCount - outdoorfacilitiesList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_OutdoorFacility newOutdoorFacility = new ORM_RES_BLD_OutdoorFacility(); newOutdoorFacility.Building_RefID = building.RES_BLD_BuildingID; newOutdoorFacility.Tenant_RefID = securityTicket.TenantID; newOutdoorFacility.Save(Connection, Transaction); } } ORM_RES_BLD_Staircase.Query staircaseQuery = new ORM_RES_BLD_Staircase.Query(); staircaseQuery.Building_RefID = Parameter.RES_BLD_BuildingID; staircaseQuery.Tenant_RefID = securityTicket.TenantID; staircaseQuery.IsDeleted = false; List <ORM_RES_BLD_Staircase> staircaseList = ORM_RES_BLD_Staircase.Query.Search(Connection, Transaction, staircaseQuery); if (staircaseList.Count > Parameter.staircasesCount) { int counts = staircaseList.Count - Parameter.staircasesCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Staircase deleteStaircase = staircaseList[i]; deleteStaircase.Remove(Connection, Transaction); } } else if (staircaseList.Count < Parameter.staircasesCount) { int counts = Parameter.staircasesCount - staircaseList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Staircase newStaircase = new ORM_RES_BLD_Staircase(); newStaircase.Building_RefID = building.RES_BLD_BuildingID; newStaircase.Tenant_RefID = securityTicket.TenantID; newStaircase.Save(Connection, Transaction); } } ORM_RES_BLD_Facade.Query facadesQuery = new ORM_RES_BLD_Facade.Query(); facadesQuery.Building_RefID = Parameter.RES_BLD_BuildingID; facadesQuery.Tenant_RefID = securityTicket.TenantID; facadesQuery.IsDeleted = false; List <ORM_RES_BLD_Facade> facadesList = ORM_RES_BLD_Facade.Query.Search(Connection, Transaction, facadesQuery); if (facadesList.Count > Parameter.facadesCount) { int counts = facadesList.Count - Parameter.facadesCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Facade deleteFacade = facadesList[i]; deleteFacade.Remove(Connection, Transaction); } } else if (facadesList.Count < Parameter.facadesCount) { int counts = Parameter.facadesCount - facadesList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Facade newFacade = new ORM_RES_BLD_Facade(); newFacade.Building_RefID = building.RES_BLD_BuildingID; newFacade.Tenant_RefID = securityTicket.TenantID; newFacade.Save(Connection, Transaction); } } ORM_RES_BLD_Roof.Query roofQuery = new ORM_RES_BLD_Roof.Query(); roofQuery.Building_RefID = Parameter.RES_BLD_BuildingID; roofQuery.Tenant_RefID = securityTicket.TenantID; roofQuery.IsDeleted = false; List <ORM_RES_BLD_Roof> roofList = ORM_RES_BLD_Roof.Query.Search(Connection, Transaction, roofQuery); if (roofList.Count > Parameter.roofCount) { int counts = roofList.Count - Parameter.roofCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Roof deleteRoof = roofList[i]; deleteRoof.Remove(Connection, Transaction); } } else if (roofList.Count < Parameter.roofCount) { int counts = Parameter.roofCount - roofList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Roof newRoof = new ORM_RES_BLD_Roof(); newRoof.Building_RefID = building.RES_BLD_BuildingID; newRoof.Tenant_RefID = securityTicket.TenantID; newRoof.Save(Connection, Transaction); } } ORM_RES_BLD_Attic.Query atticsQuery = new ORM_RES_BLD_Attic.Query(); atticsQuery.Building_RefID = Parameter.RES_BLD_BuildingID; atticsQuery.Tenant_RefID = securityTicket.TenantID; atticsQuery.IsDeleted = false; List <ORM_RES_BLD_Attic> atticsList = ORM_RES_BLD_Attic.Query.Search(Connection, Transaction, atticsQuery); if (atticsList.Count > Parameter.atticsCount) { int counts = atticsList.Count - Parameter.atticsCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Attic deleteAttic = atticsList[i]; deleteAttic.Remove(Connection, Transaction); } } else if (atticsList.Count < Parameter.atticsCount) { int counts = Parameter.atticsCount - atticsList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Attic newAttic = new ORM_RES_BLD_Attic(); newAttic.Building_RefID = building.RES_BLD_BuildingID; newAttic.Tenant_RefID = securityTicket.TenantID; newAttic.Save(Connection, Transaction); } } ORM_RES_BLD_Basement.Query basementQuery = new ORM_RES_BLD_Basement.Query(); basementQuery.Building_RefID = Parameter.RES_BLD_BuildingID; basementQuery.Tenant_RefID = securityTicket.TenantID; basementQuery.IsDeleted = false; List <ORM_RES_BLD_Basement> basementList = ORM_RES_BLD_Basement.Query.Search(Connection, Transaction, basementQuery); if (basementList.Count > Parameter.basementsCount) { int counts = basementList.Count - Parameter.basementsCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Basement deleteBasement = basementList[i]; deleteBasement.Remove(Connection, Transaction); } } else if (basementList.Count < Parameter.basementsCount) { int counts = Parameter.basementsCount - basementList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_Basement newBasement = new ORM_RES_BLD_Basement(); newBasement.Building_RefID = building.RES_BLD_BuildingID; newBasement.Tenant_RefID = securityTicket.TenantID; newBasement.Save(Connection, Transaction); } } ORM_RES_BLD_HVACR.Query hvacrQuery = new ORM_RES_BLD_HVACR.Query(); hvacrQuery.Building_RefID = Parameter.RES_BLD_BuildingID; hvacrQuery.Tenant_RefID = securityTicket.TenantID; hvacrQuery.IsDeleted = false; List <ORM_RES_BLD_HVACR> hvacrList = ORM_RES_BLD_HVACR.Query.Search(Connection, Transaction, hvacrQuery); if (hvacrList.Count > Parameter.hvarcsCount) { int counts = hvacrList.Count - Parameter.hvarcsCount; for (int i = 0; i < counts; i++) { ORM_RES_BLD_HVACR deleteHvacr = hvacrList[i]; deleteHvacr.Remove(Connection, Transaction); } } else if (hvacrList.Count < Parameter.hvarcsCount) { int counts = Parameter.hvarcsCount - hvacrList.Count; for (int i = 0; i < counts; i++) { ORM_RES_BLD_HVACR newHvacr = new ORM_RES_BLD_HVACR(); newHvacr.Building_RefID = building.RES_BLD_BuildingID; newHvacr.Tenant_RefID = securityTicket.TenantID; newHvacr.Save(Connection, Transaction); } } } returnValue.Result = building.RES_BLD_BuildingID; //Put your code here return(returnValue); #endregion UserCode }
protected static FR_L5BL_GBIfBI_1159 Execute(DbConnection Connection, DbTransaction Transaction, P_L5BL_GBIfBI_1159 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_L5BL_GBIfBI_1159(); //Put your code here var building = new ORM_RES_BLD_Building(); building.Load(Connection, Transaction, Parameter.BuildingID); if (building == null || building.RES_BLD_BuildingID == Guid.Empty) { return(null); } returnValue.Result = new L5BL_GBIfBI_1159(); returnValue.Result.Building_BalconyPortionPercent = building.Building_BalconyPortionPercent; returnValue.Result.Building_DocumentationStructure_RefID = building.Building_DocumentationStructure_RefID; returnValue.Result.Building_ElevatorCoveragePercent = building.Building_ElevatorCoveragePercent; returnValue.Result.Building_Name = building.Building_Name; returnValue.Result.Building_NumberOfAppartments = building.Building_NumberOfAppartments; returnValue.Result.Building_NumberOfOccupiedAppartments = building.Building_NumberOfOccupiedAppartments; returnValue.Result.Building_NumberOfFloors = building.Building_NumberOfFloors; returnValue.Result.Building_NumberOfOffices = building.Building_NumberOfOffices; returnValue.Result.Building_NumberOfOtherUnits = building.Building_NumberOfOtherUnits; returnValue.Result.Building_NumberOfProductionUnits = building.Building_NumberOfProductionUnits; returnValue.Result.Building_NumberOfRetailUnits = building.Building_NumberOfRetailUnits; returnValue.Result.BuildingRevisionHeader_RefID = building.BuildingRevisionHeader_RefID; returnValue.Result.IsContaminationSuspected = building.IsContaminationSuspected; returnValue.Result.RES_BLD_BuildingID = building.RES_BLD_BuildingID; ORM_RES_BLD_Building_2_BuildingType type = ORM_RES_BLD_Building_2_BuildingType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Building_2_BuildingType.Query { RES_BLD_Building_RefID = building.RES_BLD_BuildingID, Tenant_RefID = securityTicket.TenantID, IsDeleted = false }).FirstOrDefault(); if (type != null) { returnValue.Result.BuildingType_RefID = type.RES_BLD_Building_Type_RefID; } ORM_RES_BLD_Building_2_GarbageContainerType garbageType = ORM_RES_BLD_Building_2_GarbageContainerType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Building_2_GarbageContainerType.Query { RES_BLD_Building_RefID = building.RES_BLD_BuildingID, Tenant_RefID = securityTicket.TenantID, IsDeleted = false }).FirstOrDefault(); if (type != null) { returnValue.Result.GarbageContainerType_RefID = garbageType.RES_BLD_GarbageContainerType_RefID; } var apartments = new List <L5BL_GBIfBI_1159_Apartment>(); var basements = new List <L5BL_GBIfBI_1159_Basement>(); var attics = new List <L5BL_GBIfBI_1159_Attic>(); var outdoorFascilities = new List <L5BL_GBIfBI_1159_OutdoorFacility>(); var facades = new List <L5BL_GBIfBI_1159_Facade>(); var HVACRs = new List <L5BL_GBIfBI_1159_HVACR>(); var staircases = new List <L5BL_GBIfBI_1159_Staircase>(); var roofs = new List <L5BL_GBIfBI_1159_Roof>(); #region apartments var ormApartments = ORM_RES_BLD_Apartment.Query.Search(Connection, Transaction, new ORM_RES_BLD_Apartment.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormApartment in ormApartments) { var apt = new L5BL_GBIfBI_1159_Apartment() { ApartmentSize_Unit_RefID = ormApartment.ApartmentSize_Unit_RefID, ApartmentSize_Value = ormApartment.ApartmentSize_Value, RES_BLD_ApartmentID = ormApartment.RES_BLD_ApartmentID, IsAppartment_ForRent = ormApartment.IsAppartment_ForRent, Appartment_HeatingType = ormApartment.TypeOfHeating_RefID, Appartment_FlooringType = ormApartment.TypeOfFlooring_RefID, Appartment_WallCoveringType = ormApartment.TypeOfWallCovering_RefID, RES_BLD_Apartment_TypeID = ORM_RES_BLD_Apartment_2_ApartmentType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Apartment_2_ApartmentType.Query() { RES_BLD_Apartment_RefID = ormApartment.RES_BLD_ApartmentID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(a => a.RES_BLD_Apartment_Type_RefID).FirstOrDefault() }; apartments.Add(apt); } #endregion #region attics var ormAttics = ORM_RES_BLD_Attic.Query.Search(Connection, Transaction, new ORM_RES_BLD_Attic.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormAttic in ormAttics) { var attic = new L5BL_GBIfBI_1159_Attic() { RES_BLD_AtticID = ormAttic.RES_BLD_AtticID, RES_BLD_Attic_TypeID = ORM_RES_BLD_Attic_2_AtticType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Attic_2_AtticType.Query() { RES_BLD_Attic_RefID = ormAttic.RES_BLD_AtticID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(a => a.RES_BLD_Attic_Type_RefID).FirstOrDefault() }; attics.Add(attic); } #endregion #region roofs var ormRoofs = ORM_RES_BLD_Roof.Query.Search(Connection, Transaction, new ORM_RES_BLD_Roof.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormRoof in ormRoofs) { var roof = new L5BL_GBIfBI_1159_Roof() { RES_BLD_RoofID = ormRoof.RES_BLD_RoofID, RES_BLD_RoofTypeID = ORM_RES_BLD_Roof_2_RoofType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Roof_2_RoofType.Query() { RES_BLD_Roof_RefID = ormRoof.RES_BLD_RoofID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(r => r.RES_BLD_Roof_Type_RefID).FirstOrDefault() }; roofs.Add(roof); } #endregion #region staircases var ormStaircases = ORM_RES_BLD_Staircase.Query.Search(Connection, Transaction, new ORM_RES_BLD_Staircase.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormStaircase in ormStaircases) { var staircase = new L5BL_GBIfBI_1159_Staircase() { StaircaseSize_Unit_RefID = ormStaircase.StaircaseSize_Unit_RefID, StaircaseSize_Value = ormStaircase.StaircaseSize_Value, RES_BLD_StaircaseID = ormStaircase.RES_BLD_StaircaseID, RES_BLD_Staircase_TypeID = ORM_RES_BLD_Staircase_2_StaircaseType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Staircase_2_StaircaseType.Query() { RES_BLD_Staircase_RefID = ormStaircase.RES_BLD_StaircaseID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(s => s.RES_BLD_Staircase_Type_RefID).FirstOrDefault() }; staircases.Add(staircase); } #endregion #region basements var ormBasements = ORM_RES_BLD_Basement.Query.Search(Connection, Transaction, new ORM_RES_BLD_Basement.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormBasement in ormBasements) { var basement = new L5BL_GBIfBI_1159_Basement() { RES_BLD_BasementID = ormBasement.RES_BLD_BasementID, Basement_FloorType = ormBasement.TypeOfFloor_RefID, RES_BLD_Basement_TypeID = ORM_RES_BLD_Basement_2_BasementType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Basement_2_BasementType.Query() { RES_BLD_Basement_RefID = ormBasement.RES_BLD_BasementID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(b => b.RES_BLD_Basement_Type_RefID).FirstOrDefault() }; basements.Add(basement); } #endregion #region HVACRs var ormHVACRs = ORM_RES_BLD_HVACR.Query.Search(Connection, Transaction, new ORM_RES_BLD_HVACR.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormHVACR in ormHVACRs) { var hvacr = new L5BL_GBIfBI_1159_HVACR() { RES_BLD_HVACRID = ormHVACR.RES_BLD_HVACRID, RES_BLD_HVACR_TypeID = ORM_RES_BLD_HVACR_2_HVACR_Type.Query.Search(Connection, Transaction, new ORM_RES_BLD_HVACR_2_HVACR_Type.Query() { RES_BLD_HVACR_RefID = ormHVACR.RES_BLD_HVACRID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(h => h.RES_BLD_HVACR_Type_RefID).FirstOrDefault() }; HVACRs.Add(hvacr); } #endregion #region facades var ormFacades = ORM_RES_BLD_Facade.Query.Search(Connection, Transaction, new ORM_RES_BLD_Facade.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormFacade in ormFacades) { var facade = new L5BL_GBIfBI_1159_Facade() { RES_BLD_FacadeID = ormFacade.RES_BLD_FacadeID, RES_BLD_Facade_TypeID = ORM_RES_BLD_Facade_2_FacadeType.Query.Search(Connection, Transaction, new ORM_RES_BLD_Facade_2_FacadeType.Query() { RES_BLD_Facade_RefID = ormFacade.RES_BLD_FacadeID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(f => f.RES_BLD_Facade_Type_RefID).FirstOrDefault() }; facades.Add(facade); } #endregion #region outdoorFascilitys var ormOutdoorFascilitys = ORM_RES_BLD_OutdoorFacility.Query.Search(Connection, Transaction, new ORM_RES_BLD_OutdoorFacility.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, Building_RefID = Parameter.BuildingID }); foreach (var ormOutdoorFascility in ormOutdoorFascilitys) { var outdoorFascility = new L5BL_GBIfBI_1159_OutdoorFacility() { RES_BLD_OutdoorFacilityID = ormOutdoorFascility.RES_BLD_OutdoorFacilityID, NumberOfGaragePlaces = ormOutdoorFascility.NumberOfGaragePlaces, NumberOfRentedGaragePlaces = ormOutdoorFascility.NumberOfRentedGaragePlaces, OutdoorFacility_AccessRoadType = ormOutdoorFascility.TypeOfAccessRoad_RefID, OutdoorFacility_FenceType = ormOutdoorFascility.TypeOfFence_RefID, RES_BLD_OutdoorFacility_TypeID = ORM_RES_BLD_OutdoorFacility_2_OutdoorFacilityType.Query.Search(Connection, Transaction, new ORM_RES_BLD_OutdoorFacility_2_OutdoorFacilityType.Query() { RES_BLD_OutdoorFacility_RefID = ormOutdoorFascility.RES_BLD_OutdoorFacilityID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Select(o => o.RES_BLD_OutdoorFacility_Type_RefID).FirstOrDefault() }; outdoorFascilities.Add(outdoorFascility); } #endregion returnValue.Result.Apartment = apartments.ToArray(); returnValue.Result.Attic = attics.ToArray(); returnValue.Result.Basement = basements.ToArray(); returnValue.Result.OutdoorFacility = outdoorFascilities.ToArray(); returnValue.Result.Facade = facades.ToArray(); returnValue.Result.HVACR = HVACRs.ToArray(); returnValue.Result.Staircase = staircases.ToArray(); returnValue.Result.Roof = roofs.ToArray(); return(returnValue); #endregion UserCode }