From 920ccf7250ef3ec408ae94fe932e84f60c0cabda Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Fri, 10 Jul 2020 20:59:30 +0000 Subject: [PATCH] --- server/AyaNova/biz/NotifySubscriptionBiz.cs | 26 ++++++++++++++------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/server/AyaNova/biz/NotifySubscriptionBiz.cs b/server/AyaNova/biz/NotifySubscriptionBiz.cs index dcfb41e7..1aaa4b3e 100644 --- a/server/AyaNova/biz/NotifySubscriptionBiz.cs +++ b/server/AyaNova/biz/NotifySubscriptionBiz.cs @@ -53,7 +53,8 @@ namespace AyaNova.Biz await ct.NotifySubscription.AddAsync(newObject); await ct.SaveChangesAsync(); await EventLogProcessor.LogEventToDatabaseAsync(new Event(UserId, newObject.Id, BizType, AyaEvent.Created), ct); - // await SearchIndexAsync(newObject, true); + await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, newObject.InTags, null); + await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, newObject.OutTags, null); return newObject; } } @@ -63,7 +64,7 @@ namespace AyaNova.Biz // internal async Task DuplicateAsync(long id) { - throw new System.NotImplementedException("NotifySubscriptionBiz::Duplicateasync NOT IMPLEMENTED YET"); + NotifySubscription dbObject = await GetAsync(id, false); if (dbObject == null) { @@ -71,7 +72,7 @@ namespace AyaNova.Biz return null; } NotifySubscription newObject = new NotifySubscription(); - CopyObject.Copy(dbObject, newObject, "Wiki,Serial"); + CopyObject.Copy(dbObject, newObject); newObject.Id = 0; newObject.Concurrency = 0; @@ -79,7 +80,8 @@ namespace AyaNova.Biz await ct.SaveChangesAsync(); await EventLogProcessor.LogEventToDatabaseAsync(new Event(UserId, newObject.Id, BizType, AyaEvent.Created), ct); //await SearchIndexAsync(newObject, true); - // await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, newObject.Tags, null); + await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, newObject.InTags, null); + await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, newObject.OutTags, null); return newObject; } @@ -127,7 +129,8 @@ namespace AyaNova.Biz return null; } await EventLogProcessor.LogEventToDatabaseAsync(new Event(UserId, dbObject.Id, BizType, AyaEvent.Modified), ct); - + await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, dbObject.InTags, SnapshotOfOriginalDBObj.InTags); + await TagBiz.ProcessUpdateTagsInRepositoryAsync(ct, dbObject.OutTags, SnapshotOfOriginalDBObj.OutTags); return dbObject; } @@ -153,9 +156,11 @@ namespace AyaNova.Biz //Log event await EventLogProcessor.DeleteObjectLogAsync(UserId, BizType, dbObject.Id, dbObject.EventType.ToString(), ct); - await Search.ProcessDeletedObjectKeywordsAsync(dbObject.Id, BizType, ct); - - await FileUtil.DeleteAttachmentsForObjectAsync(BizType, dbObject.Id, ct); + // await Search.ProcessDeletedObjectKeywordsAsync(dbObject.Id, BizType, ct); + await TagBiz.ProcessDeleteTagsInRepositoryAsync(ct, dbObject.InTags); + await TagBiz.ProcessDeleteTagsInRepositoryAsync(ct, dbObject.OutTags); + //await FileUtil.DeleteAttachmentsForObjectAsync(BizType, dbObject.Id, ct); + //TODO: DELETE RELATED RECORDS HERE //all good do the commit await transaction.CommitAsync(); } @@ -178,6 +183,11 @@ namespace AyaNova.Biz // private async Task ValidateAsync(NotifySubscription proposedObj) { + + //todo: validate subscription is valid + //perhaps check if customer type user doesn't have non customer notification etc + + //NOTE: In DB schema only name and serial are not nullable //run validation and biz rules