This commit is contained in:
2022-08-26 20:40:44 +00:00
parent 8fcee1f57b
commit c66a48b641
3 changed files with 49 additions and 6 deletions

View File

@@ -53,7 +53,7 @@ todo: IMPORTANT UPDATE manual, screenshots regarding Customer contact user and r
Also license related info about how to free up a user for licensing and how users consume licenses
todo: move the dbid to the very first position in the shareit order additional fields as only the first two will show in email and reporting
todo: register domain name myayanova.com for hanging subscriber servers off of
todo: register domain name (not sure of domain yet for certain, kicking around "onayanova.com" or "myayanova.com" or "atayanova.com") for hanging subscriber servers off of
todo: update the test servers whichever are around, I've done my dev test.helloayanova.com, but should also do a261 and the eval ones
@@ -61,6 +61,12 @@ todo: rockfish, need ability to add quantities to raven license options, once kn
move the blocks of customer users stuff back into options again where it belongs, did it wrong before
todo: research stuff below, then website stuff and move on
REVISIT PRICING:
This is interesting
The HaveAByte AyaNova hosting rate is $15 per month per scheduleable user, with a minimum of $100/month. It doesnt matter which version youre on, which options you have, or add-ons you have purchased, which parts you use, or dont use. There is also a one-time setup fee of $299. Thats it!
I'm thinking of reducing the price, 50 seems way too high for most people, perhaps we too can do a minimum per month and lower the per user costs? Maybe more around the 25-30 dollar range??
L8ER >>>>>>>>>>>>>>>>>>>>

View File

@@ -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 = 6;
private const int DESIRED_SCHEMA_LEVEL = 7;
internal const long EXPECTED_COLUMN_COUNT = 1377;
internal const long EXPECTED_INDEX_COUNT = 161;
@@ -1523,7 +1523,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
await ExecQueryAsync("ALTER TABLE auser ADD column allowlogin BOOL");
await ExecQueryAsync("UPDATE 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'");
@@ -1536,9 +1536,40 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
//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);
}
//////////////////////////////////////////////////
//
// 8.0.8 additions for license related display
//
if (currentSchema < 7)
{
LogUpdateMessage(log);
//english translations
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveTechUserCount', 'Active scheduleable Users' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveCustomerContactUserCount', 'Active Customer Contact login Users' FROM atranslation t where t.baselanguage = 'en'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveInternalUserCount', 'Active internal Users' FROM atranslation t where t.baselanguage = 'en'");
//spanish translations
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveTechUserCount', 'Técnico de horario activo Usuarios' FROM atranslation t where t.baselanguage = 'es'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveCustomerContactUserCount', 'Usuarios de inicio de sesión de contacto de cliente activo' FROM atranslation t where t.baselanguage = 'es'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveInternalUserCount', 'Usuarios internos activos' FROM atranslation t where t.baselanguage = 'es'");
//french translations
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveTechUserCount', 'Utilisateurs planifiables actifs' FROM atranslation t where t.baselanguage = 'fr'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveCustomerContactUserCount', 'Utilisateurs de connexion de contact client actifs' FROM atranslation t where t.baselanguage = 'fr'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveInternalUserCount', 'Utilisateurs internes actifs' FROM atranslation t where t.baselanguage = 'fr'");
//german translations
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveTechUserCount', 'Aktive planbare Benutzer' FROM atranslation t where t.baselanguage = 'de'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveCustomerContactUserCount', 'Aktive Kundenkontakt-Login-Benutzer' FROM atranslation t where t.baselanguage = 'de'");
await ExecQueryAsync("INSERT INTO atranslationitem(translationid,key,display) SELECT t.id, 'ActiveInternalUserCount', 'Aktive interne Benutzer' FROM atranslation t where t.baselanguage = 'de'");
await SetSchemaLevelAsync(++currentSchema);
}
//#########################################
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!!

View File

@@ -453,9 +453,15 @@ namespace AyaNova.Core
Feature = f.Feature,
Count = f.Count
},
activeTechUserCount=AyaNova.Biz.UserBiz.ActiveTechUserCountAsync().Result,
activeCustomerContactUserCount=AyaNova.Biz.UserBiz.ActiveCustomerContactUserCountAsync().Result,
activeInternalUserCount=AyaNova.Biz.UserBiz.ActiveInternalUserCountAsync().Result
serverVersion = AyaNovaVersion.FullNameAndVersion,
#if (SUBSCRIPTION_BUILD)
build = "Subscription",
#else
build = "Perpetual",
#endif
activeTechUserCount = AyaNova.Biz.UserBiz.ActiveTechUserCountAsync().Result,
activeCustomerContactUserCount = AyaNova.Biz.UserBiz.ActiveCustomerContactUserCountAsync().Result,
activeInternalUserCount = AyaNova.Biz.UserBiz.ActiveInternalUserCountAsync().Result
}
});
return o;