From 65253b35fdae001da6f11d5a78589926854bcc40 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Tue, 18 Dec 2018 20:27:31 +0000 Subject: [PATCH] --- server/AyaNova/biz/TagUtil.cs | 2 +- server/AyaNova/models/AyContext.cs | 1 + server/AyaNova/models/Tag.cs | 21 +++++++++++++++++++++ server/AyaNova/util/AySchema.cs | 17 +++++++++++++---- server/AyaNova/util/DbUtil.cs | 1 + 5 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 server/AyaNova/models/Tag.cs diff --git a/server/AyaNova/biz/TagUtil.cs b/server/AyaNova/biz/TagUtil.cs index b67f5c83..6aa61986 100644 --- a/server/AyaNova/biz/TagUtil.cs +++ b/server/AyaNova/biz/TagUtil.cs @@ -44,7 +44,7 @@ namespace AyaNova.Biz { //Add / increase reference count for added tags //remove / decrease reference count for removed tags - var v=ct.Event.Any(x=>x.Textra=="word"); + // var v=ct.Event.Any(x=>x.Textra=="word"); //https://stackoverflow.com/questions/10233298/increment-a-value-in-postgres /* ONE SHOT WAY WHICH IS BOSS!! diff --git a/server/AyaNova/models/AyContext.cs b/server/AyaNova/models/AyContext.cs index dee52be8..6be43950 100644 --- a/server/AyaNova/models/AyContext.cs +++ b/server/AyaNova/models/AyContext.cs @@ -21,6 +21,7 @@ namespace AyaNova.Models public virtual DbSet Locale { get; set; } public virtual DbSet LocaleItem { get; set; } public virtual DbSet DataFilter { get; set; } + public virtual DbSet Tag { get; set; } //Note: had to add this constructor to work with the code in startup.cs that gets the connection string from the appsettings.json file //and commented out the above on configuring diff --git a/server/AyaNova/models/Tag.cs b/server/AyaNova/models/Tag.cs new file mode 100644 index 00000000..6ad4307a --- /dev/null +++ b/server/AyaNova/models/Tag.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using AyaNova.Biz; + +using System.ComponentModel.DataAnnotations; + +namespace AyaNova.Models +{ + + public partial class Tag + { + public long Id { get; set; } + public uint ConcurrencyToken { get; set; } + + [Required, MaxLength(255)] + public string Name { get; set; }//max 255 characters + + public long RefCount { get; set; } + + } +} diff --git a/server/AyaNova/util/AySchema.cs b/server/AyaNova/util/AySchema.cs index 1fd612d8..4e4a428a 100644 --- a/server/AyaNova/util/AySchema.cs +++ b/server/AyaNova/util/AySchema.cs @@ -19,13 +19,13 @@ namespace AyaNova.Util ///////////////////////////////////////////////////////////////// /////////// CHANGE THIS ON NEW SCHEMA UPDATE //////////////////// - //!!!!WARNING: BE SURE TO UPDATE THE DbUtil::PrepareDatabaseForSeeding WHEN NEW TABLES ADDED!!!! + //!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!! private const int DESIRED_SCHEMA_LEVEL = 8; - internal const long EXPECTED_COLUMN_COUNT = 95; - internal const long EXPECTED_INDEX_COUNT = 20; + internal const long EXPECTED_COLUMN_COUNT = 98; + internal const long EXPECTED_INDEX_COUNT = 22; - //!!!!WARNING: BE SURE TO UPDATE THE DbUtil::PrepareDatabaseForSeeding WHEN NEW TABLES ADDED!!!! + //!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!! ///////////////////////////////////////////////////////////////// @@ -302,7 +302,16 @@ namespace AyaNova.Util exec("CREATE TABLE adatafilter (id BIGSERIAL PRIMARY KEY, ownerid bigint not null, name varchar(255) not null, public bool not null," + "listkey varchar(255) not null, filter text, sort text, UNIQUE(name))"); + setSchemaLevel(++currentSchema); + } + + ////////////////////////////////////////////////// + // TAGS repository + if (currentSchema < 9) + { + LogUpdateMessage(log); + exec("CREATE TABLE atag (id BIGSERIAL PRIMARY KEY, name varchar(255) not null, refcount bigint not null, UNIQUE(name))"); setSchemaLevel(++currentSchema); } diff --git a/server/AyaNova/util/DbUtil.cs b/server/AyaNova/util/DbUtil.cs index a745a313..2418b0e8 100644 --- a/server/AyaNova/util/DbUtil.cs +++ b/server/AyaNova/util/DbUtil.cs @@ -291,6 +291,7 @@ namespace AyaNova.Util EraseTable("adatafilter", conn); EraseTable("asearchkey", conn); EraseTable("asearchdictionary", conn); + EraseTable("atag", conn); conn.Close(); }