From 9383a2fb09ffb60cfe63683106945bd688affa59 Mon Sep 17 00:00:00 2001 From: ivarlovlie Date: Wed, 1 Jun 2022 21:13:43 +0200 Subject: feat: Initial commit after clean slate --- src/Data/Database/Category.cs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/Data/Database/Category.cs (limited to 'src/Data/Database/Category.cs') diff --git a/src/Data/Database/Category.cs b/src/Data/Database/Category.cs new file mode 100644 index 0000000..6e0d324 --- /dev/null +++ b/src/Data/Database/Category.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using IOL.Helpers; +using VSH.Data.Enums; +using VSH.Utilities; + +namespace VSH.Data.Database; + +public class Category : Base +{ + public Category(string name = default) { + if (name.IsNullOrWhiteSpace()) + return; + Name = name; + Slug = name.Slugified(); + } + + public string Name { get; set; } + public string Slug { get; set; } + public CategoryVisibility VisibilityState { get; set; } + public ICollection Products { get; set; } + public bool Disabled => VisibilityState == CategoryVisibility.DISABLED; + public bool Deleted => VisibilityState == CategoryVisibility.DELETED; + + public void Update(Category update = default) { + Name = update?.Name ?? Name; + VisibilityState = update?.VisibilityState ?? VisibilityState; + Updated = DateTime.UtcNow; + } +} \ No newline at end of file -- cgit v1.3