public async Task <GetSupportItemForViewDto> GetSupportItemForView(int id)
        {
            var supportItem = await _supportItemRepository.GetAsync(id);

            var output = new GetSupportItemForViewDto {
                SupportItem = ObjectMapper.Map <SupportItemDto>(supportItem)
            };

            if (output.SupportItem != null)
            {
                var _lookupAsset = await _lookup_assetRepository.FirstOrDefaultAsync((int)output.SupportItem.AssetId);

                output.AssetReference = _lookupAsset.Reference.ToString();
            }

            if (output.SupportItem.AssetClassId != null)
            {
                var _lookupAssetClass = await _lookup_assetClassRepository.FirstOrDefaultAsync((int)output.SupportItem.AssetClassId);

                output.AssetClassClass = _lookupAssetClass.Class.ToString();
            }

            if (output.SupportItem != null)
            {
                var _lookupUom = await _lookup_uomRepository.FirstOrDefaultAsync((int)output.SupportItem.UomId);

                output.UomUnitOfMeasurement = _lookupUom.UnitOfMeasurement.ToString();
            }

            if (output.SupportItem.SupportContractId != null)
            {
                var _lookupSupportContract = await _lookup_supportContractRepository.FirstOrDefaultAsync((int)output.SupportItem.SupportContractId);

                output.SupportContractTitle = _lookupSupportContract.Title.ToString();
            }

            if (output.SupportItem.ConsumableTypeId != null)
            {
                var _lookupConsumableType = await _lookup_consumableTypeRepository.FirstOrDefaultAsync((int)output.SupportItem.ConsumableTypeId);

                output.ConsumableTypeType = _lookupConsumableType.Type.ToString();
            }

            if (output.SupportItem.SupportTypeId != null)
            {
                var _lookupSupportType = await _lookup_supportTypeRepository.FirstOrDefaultAsync((int)output.SupportItem.SupportTypeId);

                output.SupportTypeType = _lookupSupportType.Type.ToString();
            }

            return(output);
        }
 public async Task HandleEventAsync(EntityCreatedEventData <SupportItem> eventData)
 {
     TenantInfo tenantInfo = TenantManager.GetTenantInfo().Result;
     //List<int> crossTenantPermissions = await TenantManager.GetCrossTenantPermissions(tenantInfo, "SupportItem");
     GetSupportItemForViewDto entity = new GetSupportItemForViewDto {
         SupportItem = ObjectMapper.Map <SupportItemDto>(eventData.Entity)
     };
     await _backgroundJobManager.EnqueueAsync <CrossTenantPermissionManager, CrossTenantPermissionManagerArgs>(
         new CrossTenantPermissionManagerArgs
     {
         //CrossTenantPermissions = crossTenantPermissions,
         SupportItemDto = entity.SupportItem,
         EntityType     = "SupportItem",
         TenantInfo     = tenantInfo
     });
 }