Initial
This commit is contained in:
		
							
								
								
									
										33
									
								
								Datamodels/BusinessModels/ResultModel.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								Datamodels/BusinessModels/ResultModel.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Text; | ||||
|  | ||||
| namespace Datamodels.BusinessModels | ||||
| { | ||||
|     public enum GeneralResults | ||||
|     { | ||||
|         Success = 0, | ||||
|         DatabaseError = 1, | ||||
|         GeneralError = 2,  | ||||
|         LogicWarning = 3, | ||||
|         Created = 4, | ||||
|         Updated = 5, | ||||
|         Deleted = 6 | ||||
|     } | ||||
|  | ||||
|     public class ResultObject | ||||
|     { | ||||
|         public GeneralResults GeneralResult { get; set; } = GeneralResults.Success; | ||||
|         public string UserMessage { get; set; } | ||||
|         public string ServerMessage { get; set; } | ||||
|         public string StackTrace { get; set; } | ||||
|     } | ||||
|  | ||||
|     public class DataResult<T> : ResultObject | ||||
|     { | ||||
|         public T Data { get; set; } | ||||
|         public long TotalCount { get; set; } | ||||
|         public long Skip { get; set; } | ||||
|         public long Take { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										17
									
								
								Datamodels/BusinessModels/SortModel.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								Datamodels/BusinessModels/SortModel.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| namespace Datamodels.BusinessModels | ||||
| { | ||||
|  | ||||
|     public enum SortDirections | ||||
|     { | ||||
|         Ascending, | ||||
|         Descending | ||||
|     } | ||||
|  | ||||
|     public sealed class SortModel | ||||
|     { | ||||
|         public int SortFieldOrder { get; set; } | ||||
|         public string SortFieldName { get; set; } | ||||
|         public SortDirections SortDirection { get; set; } = SortDirections.Ascending; | ||||
|  | ||||
|     } | ||||
| } | ||||
							
								
								
									
										18
									
								
								Datamodels/DatabaseModels/Address.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								Datamodels/DatabaseModels/Address.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| using System; | ||||
| using Datamodels.Lookups; | ||||
|  | ||||
| namespace Datamodels.DatabaseModels | ||||
| { | ||||
|     public class Address: IEntityClass | ||||
|     { | ||||
|         public long Id { get; set; } | ||||
|         public string StreetName { get; set; } | ||||
|         public int StreetNumber { get; set; } | ||||
|         public string Zip { get; set; } | ||||
|         public string City { get; set; } | ||||
|         public DateTime CreatedAt { get; set; } | ||||
|         public DateTime ChangedAt { get; set; } | ||||
|         public LookupValue AddressType { get; set; } //something like "Job" or "Private" | ||||
|         public Person Person { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										15
									
								
								Datamodels/DatabaseModels/Communication.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Datamodels/DatabaseModels/Communication.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| using System; | ||||
| using Datamodels.Lookups; | ||||
|  | ||||
| namespace Datamodels.DatabaseModels | ||||
| { | ||||
|     public class Communication | ||||
|     { | ||||
|         public long Id { get; set; } | ||||
|         public string CommunicationValue { get; set; } //mobile phone, home phone, job mail, etc. | ||||
|         public LookupValue CommunicationType { get; set; } | ||||
|         public DateTime CreatedAt { get; set; } | ||||
|         public DateTime ChangedAt { get; set; } | ||||
|         public Person Person { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										10
									
								
								Datamodels/DatabaseModels/IEntityClass.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								Datamodels/DatabaseModels/IEntityClass.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Text; | ||||
|  | ||||
| namespace Datamodels.DatabaseModels | ||||
| { | ||||
|     public interface IEntityClass | ||||
|     { | ||||
|     } | ||||
| } | ||||
							
								
								
									
										20
									
								
								Datamodels/DatabaseModels/Person.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								Datamodels/DatabaseModels/Person.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,20 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using Datamodels.Lookups; | ||||
|  | ||||
| namespace Datamodels.DatabaseModels | ||||
| { | ||||
|     public class Person | ||||
|     { | ||||
|         public long Id { get; set; } | ||||
|         public string LastName { get; set; } | ||||
|         public string FirstName { get; set; } | ||||
|         public DateTime? Birthday { get; set; } | ||||
|         public bool IsActive { get; set; } | ||||
|         public DateTime CreatedAt { get; set; } | ||||
|         public DateTime ChangedAt { get; set; } | ||||
|         public LookupValue Gender { get; set; } | ||||
|         public List<Address> Addresses { get; set; } | ||||
|         public List<Communication> Communications { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Datamodels/Datamodels.csproj
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Datamodels/Datamodels.csproj
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| <Project Sdk="Microsoft.NET.Sdk"> | ||||
|  | ||||
|   <PropertyGroup> | ||||
|     <TargetFramework>netstandard2.1</TargetFramework> | ||||
|   </PropertyGroup> | ||||
|  | ||||
|   <ItemGroup> | ||||
|     <PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> | ||||
|   </ItemGroup> | ||||
|  | ||||
| </Project> | ||||
							
								
								
									
										12
									
								
								Datamodels/Lookups/LookupCategory.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								Datamodels/Lookups/LookupCategory.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| using System.Collections.Generic; | ||||
|  | ||||
| namespace Datamodels.Lookups | ||||
| { | ||||
|     public sealed class LookupCategory | ||||
|     { | ||||
|         public long Id { get; set; } | ||||
|         public string CategoryName { get; set; } | ||||
|         public bool IsActive { get; set; } = true; | ||||
|         public List<LookupValue> LookupValues { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										14
									
								
								Datamodels/Lookups/LookupValue.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								Datamodels/Lookups/LookupValue.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| using Newtonsoft.Json; | ||||
|  | ||||
| namespace Datamodels.Lookups | ||||
| { | ||||
|     public sealed class LookupValue { | ||||
|          | ||||
|         public long Id { get; set; } | ||||
|         public string Value { get; set; } | ||||
|         public bool IsActive { get; set; } = true; | ||||
|         [JsonIgnore] | ||||
|         public LookupCategory LookupCategory { get; set; } | ||||
|  | ||||
|     } | ||||
| } | ||||
							
								
								
									
										21
									
								
								Datamodels/SearchModels/FieldModel.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								Datamodels/SearchModels/FieldModel.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| using System; | ||||
|  | ||||
| namespace Datamodels.SearchModels | ||||
| { | ||||
|  | ||||
|     public enum FieldTypes | ||||
|     { | ||||
|         String, | ||||
|         Integer, | ||||
|         Double, | ||||
|         Boolean, | ||||
|         DateTime, | ||||
|         Currency, | ||||
|         Blob | ||||
|     } | ||||
|     public sealed class FieldModel | ||||
|     { | ||||
|         public string FieldName { get; set; } | ||||
|         public FieldTypes FieldType { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										14
									
								
								Datamodels/SearchModels/FilterModel.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								Datamodels/SearchModels/FilterModel.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Text; | ||||
|  | ||||
| namespace Datamodels.SearchModels | ||||
| { | ||||
|     public class FilterModel | ||||
|     { | ||||
|         public TableModel TableName { get; set; } | ||||
|         public List<SearchDescription> SearchDescriptions { get; set; } | ||||
|         public long Skip { get; set; } | ||||
|         public long Take { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										19
									
								
								Datamodels/SearchModels/SearchDescription.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								Datamodels/SearchModels/SearchDescription.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Text; | ||||
|  | ||||
| namespace Datamodels.SearchModels | ||||
| { | ||||
|     public enum JoinTypes | ||||
|     { | ||||
|         And, | ||||
|         Or | ||||
|     } | ||||
|     public class SearchDescription | ||||
|     { | ||||
|         public string TableName { get; set; } | ||||
|         public SearchObject SearchData { get; set; } | ||||
|         public JoinTypes JoinType { get; set; } | ||||
|          | ||||
|     } | ||||
| } | ||||
							
								
								
									
										36
									
								
								Datamodels/SearchModels/SearchObject.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								Datamodels/SearchModels/SearchObject.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Text; | ||||
|  | ||||
| namespace Datamodels.SearchModels | ||||
| { | ||||
|     public enum SearchTypes | ||||
|     { | ||||
|         Phrase, | ||||
|         Range, | ||||
|         Terms | ||||
|     } | ||||
|  | ||||
|     public enum PhraseOperators | ||||
|     { | ||||
|         Equal, | ||||
|         NotEqual, | ||||
|         LowerThan, | ||||
|         LowerThanOrEqual, | ||||
|         GreaterThan, | ||||
|         GreaterThanOrEqual, | ||||
|         StartsWith, | ||||
|         Contains, | ||||
|         EndsWith | ||||
|     } | ||||
|  | ||||
|     public class SearchObject | ||||
|     { | ||||
|         public List<string> Values { get; set; } | ||||
|         public string FieldName { get; set; } | ||||
|         public SearchTypes SearchType { get; set; } | ||||
|         public PhraseOperators PhraseOperator { get; set; } | ||||
|  | ||||
|  | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Datamodels/SearchModels/TableModel.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Datamodels/SearchModels/TableModel.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
|  | ||||
| namespace Datamodels.SearchModels | ||||
| { | ||||
|     public sealed class TableModel | ||||
|     { | ||||
|         public string TableName { get; set; } | ||||
|         public List<FieldModel> Fields { get; set; } = new List<FieldModel>(); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user