Browse Source

Removed Store.Load and Store.List

Kenric Nugteren 1 year ago
parent
commit
c3016c8995

+ 10 - 2
prs.stores/DeliveryNotificationStore.cs

@@ -120,7 +120,11 @@ namespace Comal.Stores
             // Unlink the Rack from the Delivery, so it can be re-used
             if (deliveredracks.Any())
             {
-                var shipments = FindSubStore<Shipment>().Load(Filter<Shipment>.List(x => x.ID, ListOperator.Includes, deliveredracks));
+                var shipments = FindSubStore<Shipment>()
+                    .Query(
+                        Filter<Shipment>.List(x => x.ID, ListOperator.Includes, deliveredracks),
+                        new Columns<Shipment>(x => x.ID).Add(x => x.Delivery.ID))
+                    .ToObjects<Shipment>().ToList();
                 foreach (var shipment in shipments)
                     shipment.Delivery.ID = Guid.Empty;
                 FindSubStore<Shipment>().Save(shipments, "Marked As Delivered");
@@ -132,7 +136,11 @@ namespace Comal.Stores
 
             if (deliveredrequis.Any())
             {
-                var requis = FindSubStore<Requisition>().Load(new Filter<Requisition>(x => x.ID).InList(deliveredrequis.ToArray()));
+                var requis = FindSubStore<Requisition>()
+                    .Query(
+                        new Filter<Requisition>(x => x.ID).InList(deliveredrequis.ToArray()),
+                        new Columns<Requisition>(x => x.ID).Add(x => x.Archived))
+                    .ToObjects<Requisition>().ToList();
                 foreach (var requi in requis)
                     // Requis can remain associated with the delivery, bc they are one-shot (not reusable like racks)
                     //requi.Delivery.ID = Guid.Empty;

+ 7 - 1
prs.stores/EmailStore.cs

@@ -11,7 +11,13 @@ namespace Comal.Stores
         protected override void BeforeSave(Email entity)
         {
             base.BeforeSave(entity);
-            var user = FindSubStore<User>().Load(new Filter<User>(x => x.UserID).IsEqualTo(UserID)).FirstOrDefault();
+            var user = FindSubStore<User>().Query(
+                new Filter<User>(x => x.UserID).IsEqualTo(UserID),
+                new Columns<User>(x => x.EmailHost)
+                    .Add(x => x.EmailDomain)
+                    .Add(x => x.EmailUserID)
+                    .Add(x => x.EmailPassword))
+                .ToObjects<User>().FirstOrDefault();
             if (user != null)
             {
                 var mailer = new ExchangeMailer

+ 2 - 2
prs.stores/JobStageStore.cs

@@ -11,13 +11,13 @@ namespace Comal.Stores
         {
             if (stage.Parent.IsValid())
             {
-                var parent = Load(new Filter<JobStage>(x => x.ID).IsEqualTo(stage.Parent.ID)).FirstOrDefault();
+                var parent = Query(new Filter<JobStage>(x => x.ID).IsEqualTo(stage.Parent.ID), null).ToObjects<JobStage>().FirstOrDefault();
                 if (parent != null)
                 {
                     var start = DateTime.MaxValue;
                     var finish = DateTime.MinValue;
 
-                    var children = Load(new Filter<JobStage>(x => x.Parent.ID).IsEqualTo(stage.Parent.ID));
+                    var children = Query(new Filter<JobStage>(x => x.Parent.ID).IsEqualTo(stage.Parent.ID), null).ToObjects<JobStage>();
                     if (children.Any())
                     {
                         foreach (var child in children)

+ 4 - 3
prs.stores/JobStore.cs

@@ -68,9 +68,10 @@ namespace Comal.Stores
         {
             base.AfterDelete(entity);
             var setoutstore = FindSubStore<Setout>();
-            var setouts = setoutstore.Load(new Filter<Setout>(x => x.JobLink.ID).IsEqualTo(entity.ID));
-            foreach (var setout in setouts)
-                setoutstore.Delete(setout, "Cascaded Delete from Job");
+            var setouts = setoutstore.Query(
+                new Filter<Setout>(x => x.JobLink.ID).IsEqualTo(entity.ID),
+                null).ToObjects<Setout>();
+            setoutstore.Delete(setouts, "Cascaded Delete from Job");
         }
     }
 }

+ 44 - 44
prs.stores/SchedulableStore.cs

@@ -2,51 +2,51 @@
 using Comal.Classes;
 using InABox.Core;
 
-namespace Comal.Stores
+namespace Comal.Stores;
+
+public class SchedulableStore<T> : BaseStore<T> where T : Entity, ISchedulable, new()
 {
-    public class SchedulableStore<T> : BaseStore<T> where T : Entity, ISchedulable, new()
+    public Type DocumentType => typeof(T); //.Name;
+
+    private Schedule[] GetSchedules(Guid id)
+    {
+        var store = FindSubStore<Schedule>();
+        return store.Query(
+            new Filter<Schedule>(x => x.DocumentClass).IsEqualTo(DocumentType.EntityName())
+                .And(x => x.DocumentID).IsEqualTo(id),
+            new Columns<Schedule>(x => x.ID))
+            .ToArray<Schedule>();
+    }
+
+    //protected override void BeforeSave(T entity)
+    //{
+    //	base.BeforeSave(entity);
+    //	Schedule schedule = GetSchedule(entity.ID);
+    //	if (schedule != null)
+    //		entity.ScheduleEnabled = schedule.Enabled;
+    //}
+
+    //protected override void AfterSave(T entity)
+    //{
+    //	base.AfterSave(entity);
+
+    //	Schedule schedule = GetSchedule(entity.ID);
+    //	if (schedule == null)
+    //	{
+    //		schedule = new Schedule();
+    //		schedule.DocumentID = entity.ID;
+    //		schedule.DocumentType = DocumentType;
+    //		FindSubStore<Schedule>().Save(ref schedule, "Updated from Master Record");
+    //	}
+
+    //}
+
+    protected override void BeforeDelete(T entity)
     {
-        public Type DocumentType => typeof(T); //.Name;
-
-        private Schedule[] GetSchedules(Guid id)
-        {
-            var store = FindSubStore<Schedule>();
-            return store.Load(
-                new Filter<Schedule>(x => x.DocumentClass).IsEqualTo(DocumentType.EntityName())
-                    .And(x => x.DocumentID).IsEqualTo(id)
-            );
-        }
-
-        //protected override void BeforeSave(T entity)
-        //{
-        //	base.BeforeSave(entity);
-        //	Schedule schedule = GetSchedule(entity.ID);
-        //	if (schedule != null)
-        //		entity.ScheduleEnabled = schedule.Enabled;
-        //}
-
-        //protected override void AfterSave(T entity)
-        //{
-        //	base.AfterSave(entity);
-
-        //	Schedule schedule = GetSchedule(entity.ID);
-        //	if (schedule == null)
-        //	{
-        //		schedule = new Schedule();
-        //		schedule.DocumentID = entity.ID;
-        //		schedule.DocumentType = DocumentType;
-        //		FindSubStore<Schedule>().Save(ref schedule, "Updated from Master Record");
-        //	}
-
-        //}
-
-        protected override void BeforeDelete(T entity)
-        {
-            var schedules = GetSchedules(entity.ID);
-            foreach (var schedule in schedules)
-                FindSubStore<Schedule>().Delete(schedule, "Updated from Master Record");
-
-            base.BeforeDelete(entity);
-        }
+        var schedules = GetSchedules(entity.ID);
+        foreach (var schedule in schedules)
+            FindSubStore<Schedule>().Delete(schedule, "Updated from Master Record");
+
+        base.BeforeDelete(entity);
     }
 }

+ 3 - 1
prs.stores/ScheduleActionStore.cs

@@ -15,7 +15,9 @@ namespace Comal.Stores
                 entity.ScheduleLink.Rollover == ScheduleRollover.FromActualDate)
             {
                 var schedulestore = FindSubStore<Schedule>();
-                var schedule = schedulestore.Load(new Filter<Schedule>(x => x.ID).IsEqualTo(entity.ScheduleLink.ID)).FirstOrDefault();
+                var schedule = schedulestore.Query(
+                    new Filter<Schedule>(x => x.ID).IsEqualTo(entity.ScheduleLink.ID),
+                    null).ToObjects<Schedule>().FirstOrDefault();
                 if (schedule != null)
                 {
                     schedule.DueDate = schedule.GetNextDate(entity.Completed);