using System; using System.Linq.Expressions; using Luticate2.Utils.DataAccess; using Luticate2.Utils.Dbo.Filter; using Test.Utils.DataAccess.Models; using Test.Utils.Dbo.PkBigSerial; namespace Test.Utils.DataAccess { public class LuUtilsPkBigSerialDataAccess : LuEfCrudDataAccess { public LuUtilsPkBigSerialDataAccess(LuUtilsDbContext db) : base(db, db.pk_bigserial) { } protected override pk_bigserial GetModelFromTCreate(PkBigSerialAddDbo obj) { return GetModelFromTUpdate(obj, new pk_bigserial()); } protected override void EditModelFromTUpdate(PkBigSerialAddDbo obj, pk_bigserial model) { model.some_int = obj.SomeInt; model.some_text = obj.SomeText; } protected override PkBigSerialDbo GetDboFromModel(pk_bigserial model) { return new PkBigSerialDbo { CreatedAt = model.created_at, Id = model.id, SomeInt = model.some_int, SomeText = model.some_text }; } protected override Expression> GetFilterExpression(LuFilterDbo filter) { var query = filter.Query.ToLower(); return model => model.some_text.ToLower().Contains(query) || model.some_int.ToString().Contains(query); } } }