using System.Linq;
using Infrastructure;
using OpenAuth.App.Interface;
using OpenAuth.Repository;
using OpenAuth.Repository.Core;
using SqlSugar;

namespace OpenAuth.App.Base
{
    public class LongTreeApp<T, TDbContext> : TreeApp<T, TDbContext, long>
    where T : TreeEntity<long>, new()
    where TDbContext : SugarUnitOfWork, new()
    {
        public LongTreeApp(ISugarUnitOfWork<TDbContext> unitWork, ISimpleClient<T> repository, IAuth auth)
            : base(unitWork, repository, auth)
        {
        }

        protected override long GetDefaultId()
        {
           
            return 0; // Define your default Id value for long type
        }

        protected override string GetDefaultCascadeId()
        {
            return "";
            //return "0."; // Define your default CascadeId value for long type
        }
    }
}