Activities of "liangshiwei"

Hi,

It works for me, Can you try it again? ps: make sure you can access the github.

Hi,

I find a way to show the UI, it can work with https://support.abp.io/QA/Questions/1613#answer-4bbf3269-2b57-ae99-3c1d-39fde434f0fb

[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(AuditLogsAppService), typeof(IAuditLogsAppService))]
public class MyAuditLogsAppService : AuditLogsAppService
{
    public MyAuditLogsAppService(IAuditLogRepository auditLogRepository, IJsonSerializer jsonSerializer, IPermissionChecker permissionChecker, IPermissionDefinitionManager permissionDefinitionManager) : base(auditLogRepository, jsonSerializer, permissionChecker, permissionDefinitionManager)
    {
    }

    public override async Task<AuditLogDto> GetAsync(Guid id)
    {
        var log = await AuditLogRepository.GetAsync(id);
        return ObjectMapper.Map<AuditLog, AuditLogDto>(log);
    }
}

Hi,

Thanks, we will consider it.

Hi,

You can refer to the following code:

$(function(){
    
    function setPage(){
        $(".page-link").click(function(){
             var url = $(this).attr("page-href");
             $.ajax({
                url:url,
                dataType:"html"
             }).done(function(result){
                $("$YourModelId").html(result); 
                setPage();
             })
        })
    }
    
    setPage();
})
<div class="row mt-3">
    <div class="col-sm-12 col-md-5"> Showing 1 to 10 of 216 entries</div>
    <div class="col-sm-12 col-md-7">
        <nav aria-label="Page navigation">
            <ul class="pagination justify-content-end">
                <li class="page-item disabled">
                    <a tabindex="-1" class="page-link" page-href="/Resvoyage/HotelSearch/HotelSearchModal?id=6c6e5e1a-d82d-e402-667a-39fda21caa9e&currentPage=1">Previous</a>
                </li>
                <li class="page-item active">
                    <span class="page-link">
                        1
                        <span class="sr-only">(current)</span>
                    </span>
                </li>
                <li class="page-item ">
                    <a tabindex="-1" class="page-link" page-href="/Resvoyage/HotelSearch/HotelSearchModal?id=6c6e5e1a-d82d-e402-667a-39fda21caa9e&currentPage=2">2</a>
                </li>
           </ul>
           <!-- nav-->
     </nav>
  </div></div>

Hi,

I have checked the source code, and yes, this is by design. you can not truncate the Parameters.

You can use the change Parameters max length for the solution:

public class MigrationDbContext
{
    ......

    protected override void OnModelCreating(ModelBuilder builder)
    {
        .......

        builder.Entity<AuditLogAction>(b =>
        {
            b.Property(x => x.Parameters).HasMaxLength(int.MaxValue);
        });
    }
}

HI,

You should send a Ajax request when click page button.

e.g:

$(function(){
    $(".pagedButton").click(function(){
         $.ajax({
            ...
         }).done(function(result){
            $(".travelModel").html(result); 
         })
    })
})

Hi,

But now the Frontend crashes (Blazor), because the Page (AuditLogs -> Action -> Details) seems to expect a valid JSON:

Can you provide steps to reproduce? thanks.

Hi,

This is by design.

but you can change it in your application:

 public class YourProjectNamePermissionDefinitionProvider : PermissionDefinitionProvider
{
    public override void Define(IPermissionDefinitionContext context)
    {
        ......

        var settingManagement = context.GetPermissionOrNull(SettingManagementPermissions.Emailing);
        settingManagement.MultiTenancySide = MultiTenancySides.Both;
   
        .....
    }

    .....
}
[Authorize(SettingManagementPermissions.Emailing)]
[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(EmailSettingsAppService), typeof(IEmailSettingsAppService))]
public class MyEmailSettingsAppService : EmailSettingsAppService
{
    public MyEmailSettingsAppService(ISettingManager settingManager) : base(settingManager)
    {
    }

    public override async Task<EmailSettingsDto> GetAsync()
    {
        return new EmailSettingsDto {
            SmtpHost = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Host),
            SmtpPort = Convert.ToInt32(await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Port)),
            SmtpUserName = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.UserName),
            SmtpPassword = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Password),
            SmtpDomain = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Domain),
            SmtpEnableSsl = Convert.ToBoolean(await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.EnableSsl)),
            SmtpUseDefaultCredentials = Convert.ToBoolean(await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.UseDefaultCredentials)),
            DefaultFromAddress = await SettingProvider.GetOrNullAsync(EmailSettingNames.DefaultFromAddress),
            DefaultFromDisplayName = await SettingProvider.GetOrNullAsync(EmailSettingNames.DefaultFromDisplayName),
        };
    }

    public override async Task UpdateAsync(UpdateEmailSettingsDto input)
    {
        if (!CurrentTenant.IsAvailable)
        {
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.Host, input.SmtpHost);
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.Port, input.SmtpPort.ToString());
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.UserName, input.SmtpUserName);
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.Password, input.SmtpPassword);
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.Domain, input.SmtpDomain);
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.EnableSsl, input.SmtpEnableSsl.ToString());
            await SettingManager.SetGlobalAsync(EmailSettingNames.Smtp.UseDefaultCredentials, input.SmtpUseDefaultCredentials.ToString().ToLowerInvariant());
            await SettingManager.SetGlobalAsync(EmailSettingNames.DefaultFromAddress, input.DefaultFromAddress);
            await SettingManager.SetGlobalAsync(EmailSettingNames.DefaultFromDisplayName, input.DefaultFromDisplayName);
        }
        else
        {
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.Host, input.SmtpHost);
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.Port, input.SmtpPort.ToString());
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.UserName, input.SmtpUserName);
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.Password, input.SmtpPassword);
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.Domain, input.SmtpDomain);
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.EnableSsl, input.SmtpEnableSsl.ToString());
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.Smtp.UseDefaultCredentials, input.SmtpUseDefaultCredentials.ToString().ToLowerInvariant());
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.DefaultFromAddress, input.DefaultFromAddress);
            await SettingManager.SetForCurrentTenantAsync(EmailSettingNames.DefaultFromDisplayName, input.DefaultFromDisplayName);
        }
    }

Hi,

Do you mean how to configure IdentityServer in mobile app?

You can check this: https://stackoverflow.com/questions/57042378/xamarin-forms-identityserver-external-providers-facebook-google

I create a new solution with Template type is Module template.

ABP suite current only supported add module to application template, You can install it manually: https://docs.abp.io/en/commercial/latest/modules/file-management

How to migrate FmDirectoryDescriptors, FmFileDescriptors tables into Oracle?

See https://docs.abp.io/en/abp/latest/Entity-Framework-Core-Oracle

Showing 4981 to 4990 of 5968 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 11, 2024, 11:11