From d218c6cd3c44426d6b39ab4be38f6ef8692fb16c Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Thu, 18 Jun 2020 15:39:51 +0000 Subject: [PATCH] --- Controllers/CustomerController.cs | 34 +++++++++++++++++++++++-------- Controllers/RvlController.cs | 2 ++ wwwroot/js/app.customers.js | 9 +++++++- 3 files changed, 36 insertions(+), 9 deletions(-) diff --git a/Controllers/CustomerController.cs b/Controllers/CustomerController.cs index 2fa57c8..feaaf6b 100644 --- a/Controllers/CustomerController.cs +++ b/Controllers/CustomerController.cs @@ -86,18 +86,25 @@ namespace rockfishCore.Controllers /// private bool CustomerHasLapsed(long customerId) { + // if(customerId==117){ + // long l=customerId; + // } long EpochNow = DateUtil.NowAsEpoch(); - var count = ct.Purchase + var v7PurchasedSubscriptionCount = ct.Purchase .Where(c => c.CustomerId.Equals(customerId)) .Where(c => c.CancelDate == null || c.CancelDate > EpochNow) .Where(c => c.ExpireDate != null && c.ExpireDate > EpochNow) .Count(); //handle raven keys here - // var ravActiveMaintenanceCount=ct.License.Where(z=>z.CustomerId==customerId && z.) - return count < 1; + var ravActiveMaintenanceCount = ct.License.Where(z => z.CustomerId == customerId && z.DtMaintenanceExpiration > EpochNow).Count(); + if (ravActiveMaintenanceCount > 0 || v7PurchasedSubscriptionCount > 0) + { + return false; + } + return true; } @@ -133,12 +140,12 @@ namespace rockfishCore.Controllers }; //Force immediate query execution - var resList = res.ToList(); + var siteList = res.ToList(); - foreach (dtoNameIdChildrenItem child in resList) + foreach (dtoNameIdChildrenItem site in siteList) { var subs = from c in ct.Purchase - .Where(c => c.SiteId.Equals(child.id)) + .Where(c => c.SiteId.Equals(site.id)) .Where(c => c.CancelDate == null || c.CancelDate > EpochNow) .OrderByDescending(c => c.PurchaseDate) select new dtoNameIdItem @@ -149,11 +156,22 @@ namespace rockfishCore.Controllers foreach (dtoNameIdItem sub in subs) { - child.children.Add(sub); + site.children.Add(sub); } + + + var ActiveRavLicense = ct.License.Where(z => z.SiteId == site.id && z.DtMaintenanceExpiration > EpochNow).FirstOrDefault(); + if (ActiveRavLicense != null) + { + site.children.Add(new dtoNameIdItem() { id = 0, name = $"Raven license exp: { DateUtil.EpochToString(ActiveRavLicense.DtMaintenanceExpiration, "d")}" }); + } + } - return resList; + + + + return siteList; } diff --git a/Controllers/RvlController.cs b/Controllers/RvlController.cs index 496603f..81dbb4c 100644 --- a/Controllers/RvlController.cs +++ b/Controllers/RvlController.cs @@ -131,6 +131,8 @@ namespace rockfishCore.Controllers DBLicense.Code = "na"; DBLicense.Key = Key; DBLicense.RegTo = l.RegisteredTo; + DBLicense.DtLicenseExpiration=l.LicenseExpirationDate; + DBLicense.DtMaintenanceExpiration=l.MaintenanceExpirationDate; await ct.License.AddAsync(DBLicense); await ct.SaveChangesAsync(); diff --git a/wwwroot/js/app.customers.js b/wwwroot/js/app.customers.js index b34d06d..a5ac596 100644 --- a/wwwroot/js/app.customers.js +++ b/wwwroot/js/app.customers.js @@ -123,7 +123,14 @@ app.customers = (function() { //cardDisplay += "
  • " + sites[SitesIndex].children[SitePurchasesIndex].name + "
  • "; var PurchaseId=sites[SitesIndex].children[SitePurchasesIndex].id; var SiteId=sites[SitesIndex].id; - var PurchaseUrl='' + sites[SitesIndex].children[SitePurchasesIndex].name + ''; + var PurchaseUrl; + if(PurchaseId>0){ + PurchaseUrl='' + sites[SitesIndex].children[SitePurchasesIndex].name + ''; + }else{ + //raven key so go to site + //customerSiteEdit/122/117 + PurchaseUrl='' + sites[SitesIndex].children[SitePurchasesIndex].name + ''; + } cardDisplay += '
  • '+ PurchaseUrl + '
  • '; } cardDisplay += "";