More subscription license work allow logins addition
This commit is contained in:
@@ -20,7 +20,7 @@ namespace AyaNova.Util
|
||||
/////////// CHANGE THIS ON NEW SCHEMA UPDATE ////////////////////
|
||||
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImportingAsync WHEN NEW TABLES ADDED!!!!
|
||||
private const int DESIRED_SCHEMA_LEVEL = 5;
|
||||
private const int DESIRED_SCHEMA_LEVEL = 6;
|
||||
|
||||
internal const long EXPECTED_COLUMN_COUNT = 1376;
|
||||
internal const long EXPECTED_INDEX_COUNT = 161;
|
||||
@@ -1482,7 +1482,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
|
||||
|
||||
//////////////////////////////////////////////////
|
||||
//
|
||||
// 8.0.6 Subscription license trans keys
|
||||
// 8.0.7 Subscription license trans keys
|
||||
//
|
||||
if (currentSchema < 5)
|
||||
{
|
||||
@@ -1512,6 +1512,34 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////////////
|
||||
//
|
||||
// 8.0.7 additions for customer contact licensing (allowlogin)
|
||||
//
|
||||
if (currentSchema < 6)
|
||||
{
|
||||
LogUpdateMessage(log);
|
||||
|
||||
await ExecQueryAsync("ALTER TABLE auser ADD column allowlogin BOOL");
|
||||
await ExecQueryAsync("UPDTE TABLE auser SET allowlogin=true WHERE active=true");
|
||||
|
||||
|
||||
//english translations
|
||||
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'AllowLogin', 'Allow login' FROM atranslation t where t.baselanguage = 'en'");
|
||||
|
||||
//spanish translations
|
||||
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'AllowLogin', 'Permitir acceso' FROM atranslation t where t.baselanguage = 'es'");
|
||||
|
||||
//french translations
|
||||
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'AllowLogin', 'Autoriser la connexion' FROM atranslation t where t.baselanguage = 'fr'");
|
||||
|
||||
//german translations
|
||||
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'AllowLogin', 'Login erlauben' FROM atranslation t where t.baselanguage = 'de'");
|
||||
await SetSchemaLevelAsync(++currentSchema);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//#########################################
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!!
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace AyaNova.Util
|
||||
/// </summary>
|
||||
internal static class AyaNovaVersion
|
||||
{
|
||||
public const string VersionString = "8.0.6";
|
||||
public const string VersionString = "8.0.7";
|
||||
public const string FullNameAndVersion = "AyaNova server " + VersionString;
|
||||
public const string CurrentApiVersion="v8";
|
||||
}//eoc
|
||||
|
||||
@@ -123,7 +123,7 @@ namespace AyaNova.Core
|
||||
/// Fetch the license status of the feature in question
|
||||
/// </summary>
|
||||
/// <param name="Feature"></param>
|
||||
/// <returns>LicenseFeature object or null if there is no license</returns>
|
||||
/// <returns>LicenseFeature object or null if there is no matching license feature or license is missing</returns>
|
||||
public LicenseFeature GetLicenseFeature(string Feature)
|
||||
{
|
||||
if (IsEmpty)
|
||||
@@ -145,7 +145,7 @@ namespace AyaNova.Core
|
||||
{
|
||||
get
|
||||
{
|
||||
return GetLicenseFeature(SERVICE_TECHS_FEATURE_NAME).Count;
|
||||
return GetLicenseFeature(SERVICE_TECHS_FEATURE_NAME)?.Count ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -153,7 +153,7 @@ namespace AyaNova.Core
|
||||
{
|
||||
get
|
||||
{
|
||||
return GetLicenseFeature(ACTIVE_INTERNAL_USERS_FEATURE_NAME).Count;
|
||||
return GetLicenseFeature(ACTIVE_INTERNAL_USERS_FEATURE_NAME)?.Count ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -161,7 +161,7 @@ namespace AyaNova.Core
|
||||
{
|
||||
get
|
||||
{
|
||||
return GetLicenseFeature(ACTIVE_CUSTOMER_USERS_FEATURE_NAME).Count;
|
||||
return GetLicenseFeature(ACTIVE_CUSTOMER_USERS_FEATURE_NAME)?.Count ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -855,10 +855,10 @@ namespace AyaNova.Core
|
||||
|
||||
//SUBSCRIPTION USER COUNTS - new license causes exceeding counts?
|
||||
|
||||
long NewInsideUserLicensedCount = ParsedNewKey.GetLicenseFeature(ACTIVE_INTERNAL_USERS_FEATURE_NAME).Count;
|
||||
long ExistingActiveInsideUserCount = await AyaNova.Biz.UserBiz.ActiveInsideUserCountAsync();
|
||||
long NewInsideUserLicensedCount = ParsedNewKey.ActiveInternalUsersCount;
|
||||
long ExistingActiveInsideUserCount = await AyaNova.Biz.UserBiz.ActiveInternalUserCountAsync();
|
||||
|
||||
long NewCustomerLicensedCount = ParsedNewKey.GetLicenseFeature(ACTIVE_CUSTOMER_USERS_FEATURE_NAME).Count;
|
||||
long NewCustomerLicensedCount = ParsedNewKey.ActiveCustomerContactUsersCount;
|
||||
long ExistingCustomerUserCount = await AyaNova.Biz.UserBiz.ActiveCustomerContactUserCountAsync();
|
||||
string err = "E1020 - Can't install license: ";
|
||||
bool throwit = false;
|
||||
@@ -879,7 +879,7 @@ namespace AyaNova.Core
|
||||
|
||||
#else
|
||||
//PERPETUAL, vet the TECHCOUNT - new license causes exceeding count?
|
||||
long NewTechCount = ParsedNewKey.GetLicenseFeature(SERVICE_TECHS_FEATURE_NAME).Count;
|
||||
long NewTechCount = ParsedNewKey.ActiveTechsCount;
|
||||
if (await AyaNova.Biz.UserBiz.ActiveTechUserCountAsync() > NewTechCount)
|
||||
{
|
||||
//attempt to set enough of the eldest last login techs to inactive
|
||||
|
||||
Reference in New Issue
Block a user