/// <summary> /// Get CompanyLogo /// </summary> /// <returns></returns> public async Task <CompanyImageOutputDto> GetCompanyLogo() { var tenant = await(from tenantextended in _tenantExtendedUnitRepository.GetAll() join binaryobj in _binaryObjectRepository.GetAll() on tenantextended.CompanyLogoId equals binaryobj.Id select binaryobj).FirstOrDefaultAsync(); CompanyImageOutputDto companylogo = new CompanyImageOutputDto { CompanyLogo = !ReferenceEquals(tenant, null)? Convert.ToBase64String(tenant.Bytes):null }; return(companylogo); }
public async Task <CompanyImageOutputDto> UpdateCompanyUnit(TenantExtendedUnitInput input) { int tenantid = AbpSession.GetTenantId(); byte[] byteArray = null; //using (_unitOfWorkManager.Current.SetTenantId(null)) //{ // var tenant = await TenantManager.GetByIdAsync(tenantid); // tenant.Name = input.TenantName; // CheckErrors(await TenantManager.UpdateAsync(tenant)); //} CompanyImageOutputDto companyLogo = new CompanyImageOutputDto(); using (_unitOfWorkManager.Current.SetTenantId(tenantid)) { if (input.TenantExtendedId > 0) { if (!ReferenceEquals(input.ComapanyLogo, null)) { byteArray = await UpdateCompanyLogo(input); } var tenant = await _tenantExtendedUnitRepository.GetAsync(input.TenantExtendedId); Mapper.Map(input, tenant); await _tenantExtendedManager.UpdateAsync(tenant); companyLogo.TenantExtendedId = tenant.Id; // update address Information if (!ReferenceEquals(input.Address, null)) { if (input.Address.AddressId != 0) { input.Address.TypeofObjectId = TypeofObject.OrganizationUnit; await _addressAppService.UpdateAddressUnit(input.Address); companyLogo.AddressId = input.Address.AddressId; } else { if (!string.IsNullOrEmpty(input.Address.Line1) || !string.IsNullOrEmpty(input.Address.Line2) || !string.IsNullOrEmpty(input.Address.Line3) || !string.IsNullOrEmpty(input.Address.Line4) || !string.IsNullOrEmpty(input.Address.State) || !string.IsNullOrEmpty(input.Address.Country) || !string.IsNullOrEmpty(input.Address.Email) || !string.IsNullOrEmpty(input.Address.Phone1) || !string.IsNullOrEmpty(input.Address.Website)) { input.Address.TypeofObjectId = TypeofObject.OrganizationUnit; input.Address.ObjectId = input.TenantExtendedId; // AutoMapper.Mapper.CreateMap<UpdateAddressUnitInput, CreateAddressUnitInput>(); //var config = new MapperConfiguration(cfg => { // cfg.CreateMap<UpdateAddressUnitInput, CreateAddressUnitInput>(); //}); var addr = await _addressAppService.CreateAddressUnit( AutoMapper.Mapper.Map <UpdateAddressUnitInput, CreateAddressUnitInput>(input.Address)); companyLogo.AddressId = addr.AddressId; } } } } else { if (!ReferenceEquals(input.ComapanyLogo, null)) { byteArray = await UpdateCompanyLogo(input); } var tenantExtended = input.MapTo <TenantExtendedUnit>(); int id = await _tenantExtendedManager.CreateAsync(tenantExtended); companyLogo.TenantExtendedId = id; //address Information if (!ReferenceEquals(input.Address, null)) { if (!string.IsNullOrEmpty(input.Address.Line1) || !string.IsNullOrEmpty(input.Address.Line2) || !string.IsNullOrEmpty(input.Address.Line4) || !string.IsNullOrEmpty(input.Address.Line4) || !string.IsNullOrEmpty(input.Address.State) || !string.IsNullOrEmpty(input.Address.Country) || !string.IsNullOrEmpty(input.Address.Email) || !string.IsNullOrEmpty(input.Address.Phone1) || !string.IsNullOrEmpty(input.Address.ContactNumber)) { input.Address.TypeofObjectId = TypeofObject.OrganizationUnit; input.Address.ObjectId = id; // AutoMapper.Mapper.CreateMap<UpdateAddressUnitInput, CreateAddressUnitInput>(); var config = new MapperConfiguration(cfg => { cfg.CreateMap <UpdateAddressUnitInput, CreateAddressUnitInput>(); }); var addr = await _addressAppService.CreateAddressUnit( AutoMapper.Mapper.Map <UpdateAddressUnitInput, CreateAddressUnitInput>(input.Address)); companyLogo.AddressId = addr.AddressId; } } } await CurrentUnitOfWork.SaveChangesAsync(); if (byteArray != null) { companyLogo.CompanyLogo = Convert.ToBase64String(byteArray); companyLogo.CompanyLogoId = input.CompanyLogoId; } return(companyLogo); } }