Browse Source

Implemented "Fixed" and "Movable" EntityForms

frogsoftware 1 month ago
parent
commit
78bc60c5f2

+ 1 - 1
prs.classes/Entities/Assignment/AssignmentForm.cs

@@ -4,7 +4,7 @@ namespace Comal.Classes
 {
     [Caption("Digital Forms")]
     [UserTracking("Digital Forms")]
-    public class AssignmentForm : EntityForm<Assignment, AssignmentLink, AssignmentForm>
+    public class AssignmentForm : MovableEntityForm<Assignment, AssignmentLink, AssignmentForm>
     {
         public override string AutoIncrementPrefix() => "AF";
     }

+ 1 - 1
prs.classes/Entities/DeliveryItem/Delivery.cs

@@ -11,7 +11,7 @@ namespace Comal.Classes
     
     [Caption("Digital Forms")]
     [UserTracking("Digital Forms")]
-    public class DeliveryForm : EntityForm<Delivery, DeliveryLink, DeliveryForm>, IDigitalForm<Delivery>
+    public class DeliveryForm : FixedEntityForm<Delivery, DeliveryLink, DeliveryForm>, IDigitalForm<Delivery>
     {
         public override string AutoIncrementPrefix() => "DF";
     }

+ 1 - 1
prs.classes/Entities/Employee/EmployeeForm.cs

@@ -3,7 +3,7 @@ using System;
 
 namespace Comal.Classes
 {
-    public class EmployeeForm : EntityForm<Employee, EmployeeLink, EmployeeForm>, IDigitalForm<Employee>
+    public class EmployeeForm : FixedEntityForm<Employee, EmployeeLink, EmployeeForm>, IDigitalForm<Employee>
     {
         public override string AutoIncrementPrefix() => "EF";
     }

+ 1 - 1
prs.classes/Entities/Job/DocumentSet/JobDocumentSetMileStoneForm.cs

@@ -5,7 +5,7 @@ using System.Text;
 
 namespace Comal.Classes
 {
-    public class JobDocumentSetMileStoneForm : EntityForm<JobDocumentSetMileStone, JobDocumentSetMileStoneLink, JobDocumentSetMileStoneForm>, IDigitalForm<JobDocumentSetMileStone>
+    public class JobDocumentSetMileStoneForm : FixedEntityForm<JobDocumentSetMileStone, JobDocumentSetMileStoneLink, JobDocumentSetMileStoneForm>, IDigitalForm<JobDocumentSetMileStone>
     {
         public override string AutoIncrementPrefix() => "JDSMF";
     }

+ 1 - 1
prs.classes/Entities/Job/ITP/JobITPForm.cs

@@ -3,7 +3,7 @@ using System.Linq;
 
 namespace Comal.Classes
 {
-    public class JobITPForm : EntityForm<JobITP, JobITPLink, JobITPForm>, IDigitalForm<JobITP>, ILicense<ProjectManagementLicense>
+    public class JobITPForm : FixedEntityForm<JobITP, JobITPLink, JobITPForm>, IDigitalForm<JobITP>, ILicense<ProjectManagementLicense>
     {
         public override string AutoIncrementPrefix() => "IF";
     }

+ 1 - 1
prs.classes/Entities/Job/JobForm.cs

@@ -2,7 +2,7 @@
 
 namespace Comal.Classes
 {
-    public class JobForm : EntityForm<Job, JobLink, JobForm>, IDigitalForm<Job>, ILicense<ProjectManagementLicense>
+    public class JobForm : MovableEntityForm<Job, JobLink, JobForm>, IDigitalForm<Job>, ILicense<ProjectManagementLicense>
     {
         [EditorSequence(998)]
         [EntityRelationship(DeleteAction.Cascade)]

+ 1 - 1
prs.classes/Entities/Kanban/KanbanForm.cs

@@ -2,7 +2,7 @@
 
 namespace Comal.Classes
 {
-    public class KanbanForm : EntityForm<Kanban, KanbanLink, KanbanForm>, ILicense<TaskManagementLicense>
+    public class KanbanForm : FixedEntityForm<Kanban, KanbanLink, KanbanForm>, ILicense<TaskManagementLicense>
     {
         public override string AutoIncrementPrefix() => "KF";
     }

+ 1 - 1
prs.classes/Entities/LeaveRequest/LeaveRequestForm.cs

@@ -3,7 +3,7 @@
 namespace Comal.Classes
 {
     [Caption("Digital Forms")]
-    public class LeaveRequestForm : EntityForm<LeaveRequest, LeaveRequestLink, LeaveRequestForm>, ILicense<LeaveManagementLicense>
+    public class LeaveRequestForm : FixedEntityForm<LeaveRequest, LeaveRequestLink, LeaveRequestForm>, ILicense<LeaveManagementLicense>
     {
         public override string AutoIncrementPrefix() => "LF";
     }

+ 1 - 1
prs.classes/Entities/PurchaseOrder/PurchaseOrderItemForm.cs

@@ -2,7 +2,7 @@
 
 namespace Comal.Classes
 {
-    public class PurchaseOrderItemForm : EntityForm<PurchaseOrderItem, PurchaseOrderItemLink, PurchaseOrderItemForm>, IDigitalForm<PurchaseOrderItem>
+    public class PurchaseOrderItemForm : FixedEntityForm<PurchaseOrderItem, PurchaseOrderItemLink, PurchaseOrderItemForm>, IDigitalForm<PurchaseOrderItem>
     {
         public override string AutoIncrementPrefix() => "PF";
     }

+ 1 - 1
prs.classes/Entities/Quote/QuoteForm.cs

@@ -3,7 +3,7 @@ using InABox.Core;
 
 namespace Comal.Classes
 {
-    public class QuoteForm : EntityForm<Quote, QuoteLink, QuoteForm>, IDigitalForm<Quote>, ILicense<QuotesManagementLicense>
+    public class QuoteForm : FixedEntityForm<Quote, QuoteLink, QuoteForm>, IDigitalForm<Quote>, ILicense<QuotesManagementLicense>
     {
         public override string AutoIncrementPrefix() => "QF";
     }

+ 1 - 1
prs.classes/Entities/Timesheet/TimeSheetForm.cs

@@ -2,7 +2,7 @@
 
 namespace Comal.Classes
 {
-    public class TimeSheetForm : EntityForm<TimeSheet, TimeSheetLink, TimeSheetForm>
+    public class TimeSheetForm : FixedEntityForm<TimeSheet, TimeSheetLink, TimeSheetForm>
     {
         public override string AutoIncrementPrefix() => "TF";
     }

+ 1 - 1
prs.desktop/Dashboards/Common/DigitalFormsDashboard.xaml.cs

@@ -1240,7 +1240,7 @@ public partial class DigitalFormsDashboard : UserControl,
             FormType = null;
             return;
         }
-        IsEntityForm = formType.IsSubclassOfRawGeneric(typeof(EntityForm<,,>));
+        IsEntityForm = formType.IsSubclassOfRawGeneric(typeof(BaseEntityForm<,,>));
         ParentType = parentType;
         FormType = formType;
     }

+ 1 - 1
prs.desktop/MainWindow.xaml.cs

@@ -2197,7 +2197,7 @@ public partial class MainWindow : IPanelHostControl
     }
 
     private void StartForm<TEntityForm, TEntity, TEntityLink>(DigitalForm form)
-        where TEntityForm : EntityForm<TEntity, TEntityLink, TEntityForm>, new()
+        where TEntityForm : BaseEntityForm<TEntity, TEntityLink, TEntityForm>, new()
         where TEntity : Entity, new()
         where TEntityLink : EntityLink<TEntity>, new()
     {

+ 2 - 2
prs.server/Engines/WebEngine/WebListener.cs

@@ -523,9 +523,9 @@ namespace PRSServer
             if (remaining.Parts.Count < 2) return request.Respond().Status(ResponseStatus.NotFound);
             var formTypeName = remaining.Parts[1].Value;
             var formType = GetPersistentRemotableEntities(formTypeName).FirstOrDefault();
-            if (formType == null || !formType.IsSubclassOfRawGeneric(typeof(EntityForm<,,>))) return request.Respond().Status(ResponseStatus.NotFound);
+            if (formType == null || !formType.IsSubclassOfRawGeneric(typeof(BaseEntityForm<,,>))) return request.Respond().Status(ResponseStatus.NotFound);
 
-            var entityTypes = formType.GetSuperclassDefinition(typeof(EntityForm<,,>)).GetGenericArguments();
+            var entityTypes = formType.GetSuperclassDefinition(typeof(BaseEntityForm<,,>)).GetGenericArguments();
 
             var genericMethod = typeof(WebHandler).GetMethod(nameof(HandleFormSubmissionResolvedGeneric), BindingFlags.Instance | BindingFlags.NonPublic);
             return genericMethod.MakeGenericMethod(formType, entityTypes[1], entityTypes[0]).Invoke(this, new object[] { request, user }) as

+ 1 - 1
prs.shared/Database Update Scripts/Update_7_77.cs

@@ -11,7 +11,7 @@ public class Update_7_77 : DatabaseUpdateScript
     public override bool Update()
     {
         var formtypes = CoreUtils.Entities
-            .Where(x => x.IsSubclassOfRawGeneric(typeof(EntityForm<,,>)))
+            .Where(x => x.IsSubclassOfRawGeneric(typeof(BaseEntityForm<,,>)))
             .ToList();
 
         int iType = 0;

+ 1 - 1
prs.stores/EntityForms/EntityFormStore.cs

@@ -24,7 +24,7 @@ namespace Comal.Stores
     }
 
     public abstract class EntityFormStore<TEntity, TParent, TParentLink> : BaseStore<TEntity>
-        where TEntity : EntityForm<TParent, TParentLink, TEntity>, new()
+        where TEntity : BaseEntityForm<TParent, TParentLink, TEntity>, new()
         where TParent : Entity, new()
         where TParentLink : BaseObject, IEntityLink<TParent>, new()
     {