case 4217
This commit is contained in:
6
.vscode/launch.json
vendored
6
.vscode/launch.json
vendored
@@ -64,10 +64,7 @@
|
||||
"AYANOVA_USE_URLS": "http://*:7575;",
|
||||
//"AYANOVA_PERMANENTLY_ERASE_DATABASE":"true",
|
||||
//"AYANOVA_REMOVE_LICENSE_FROM_DB":"true",
|
||||
//"AYANOVA_SERVER_TEST_MODE": "true",
|
||||
"AYANOVA_SERVER_TEST_MODE_TZ_OFFSET": "-8",
|
||||
//"AYANOVA_REPORT_RENDERING_TIMEOUT":"1",
|
||||
"AYANOVA_SERVER_TEST_MODE_SEEDLEVEL": "small",
|
||||
"AYANOVA_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_14\\bin"
|
||||
},
|
||||
"sourceFileMap": {
|
||||
@@ -121,9 +118,6 @@
|
||||
"AYANOVA_USE_URLS": "http://*:7575;",
|
||||
//"AYANOVA_PERMANENTLY_ERASE_DATABASE":"true",
|
||||
//"AYANOVA_REMOVE_LICENSE_FROM_DB":"true",
|
||||
//"AYANOVA_SERVER_TEST_MODE": "true",
|
||||
"AYANOVA_SERVER_TEST_MODE_TZ_OFFSET": "-7",
|
||||
"AYANOVA_SERVER_TEST_MODE_SEEDLEVEL": "small",
|
||||
"AYANOVA_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_14\\bin"
|
||||
},
|
||||
"sourceFileMap": {
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Welcome to AyaNova®
|
||||
|
||||
#### [Try AyaNova](ay-evaluate.md)
|
||||
#### [Try AyaNova now](ay-evaluate.md)
|
||||
|
||||
#### [Guided tours](tour-intro.md)
|
||||
|
||||
#### [User guide](ay-start-form-overview.md)
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ If you don't already have AyaNova available to follow along, everything you need
|
||||
|
||||
For this tutorial you should login as a User with a [full access Role](customers.md#authorization-roles-required) to edit a Customer record.
|
||||
|
||||
If you are using the AyaNova [sample data](ay-evaluate.md#generating-sample-data), we've provided a sample User for each type of Role so for this tour you should login as the `Service manager` sample User to follow along:
|
||||
If you are using the AyaNova [sample data](ay-evaluate.md#generating-sample-data), we've provided a sample User for each type of Role so for this tour you can login as the `Service manager` sample User to follow along:
|
||||
|
||||

|
||||
|
||||
@@ -106,7 +106,7 @@ The Customer edit form has a [Customer contacts](customers.md#contacts-tab) tab
|
||||
|
||||
### There are **too** many fields!!
|
||||
|
||||
Yes, there are a lot of fields and by default AyaNova shows **all** the fields you could possibly fill in for every form in AyaNova including the Customer edit form so Users know what is available to them up front.
|
||||
Yes, there are a lot of fields and by default AyaNova shows **all** the fields you could possibly fill in for every form in AyaNova including the Customer edit form so Users getting started with AyaNova know what is available to them up front.
|
||||
|
||||
Don't need a `Fax number` field? No problem, you're not stuck with all these extra fields, simply [customize the forms](ay-customize.md) and hide the fields that are not required.
|
||||
|
||||
|
||||
@@ -303,3 +303,13 @@ You can optionally create a [Customer contact User](cust-contacts.md) and give t
|
||||
Your Customers can also be automatically notified when service has completed or reached a particular status on one of their work orders through the optional [Customer notifications](customer-notify-subscriptions.md) feature of AyaNova.
|
||||
|
||||
These two features in combination can be used to eliminate paperwork and time spent by office staff by making the entire service cycle from the Customer requesting service to getting invoiced paperless and automatic.
|
||||
|
||||
## There are **too** many things here I don't need!!
|
||||
|
||||
Yes, there are a lot of sections and fields available in a work order, it can be overwhelming at first and by default AyaNova shows **all** the fields you could possibly fill in for every form in AyaNova so Users getting started with AyaNova know what is available to them up front.
|
||||
|
||||
Maybe you don't need an `Invoice number` or `Customer signature` field or maybe you don't even need an **entire section** of the work order like the `Work order item Travel` section?
|
||||
|
||||
No worries: you're not stuck with all these extra fields or sections you don't need, simply [customize the forms](ay-customize.md) and hide anything that isn't required.
|
||||
|
||||
We have a [hiding fields guided tour](tour-bizadmin-form-remove-fields.md).
|
||||
|
||||
@@ -7,7 +7,7 @@ theme:
|
||||
site_name: AyaNova manual
|
||||
site_dir: '../../../server/AyaNova/wwwroot/docs'
|
||||
strict: true
|
||||
copyright: Copyright © 2022 Ground Zero Tech-Works Inc. REV-2022-10-21
|
||||
copyright: Copyright © 2022 Ground Zero Tech-Works Inc. REV-2022-10-24
|
||||
extra:
|
||||
generator: false
|
||||
# Extensions
|
||||
|
||||
@@ -562,15 +562,6 @@ namespace AyaNova
|
||||
|
||||
|
||||
|
||||
#if (DEBUG)
|
||||
if (ServerBootConfig.AYANOVA_SERVER_TEST_MODE)
|
||||
{
|
||||
_newLog.LogWarning("AYANOVA_SERVER_TEST_MODE, dropping and recreating database");
|
||||
Util.DbUtil.DropAndRecreateDbAsync(_newLog).Wait();
|
||||
AySchema.CheckAndUpdateAsync(dbContext, _newLog).Wait();
|
||||
}
|
||||
else
|
||||
#endif
|
||||
|
||||
if (ServerBootConfig.AYANOVA_PERMANENTLY_ERASE_DATABASE)
|
||||
{
|
||||
@@ -651,16 +642,6 @@ namespace AyaNova
|
||||
TranslationBiz lb = new TranslationBiz(dbContext, 1, ServerBootConfig.AYANOVA_DEFAULT_TRANSLATION_ID, AuthorizationRoles.OpsAdmin);
|
||||
lb.ValidateTranslationsAsync().Wait();
|
||||
|
||||
#if (DEBUG)
|
||||
if (ServerBootConfig.AYANOVA_SERVER_TEST_MODE)
|
||||
{
|
||||
_newLog.LogInformation($"Server test mode seeding, level is {ServerBootConfig.AYANOVA_SERVER_TEST_MODE_SEEDLEVEL}, tz offset is {ServerBootConfig.AYANOVA_SERVER_TEST_MODE_TZ_OFFSET}");
|
||||
AyaNova.Core.License.FetchKeyAsync(apiServerState, dbContext, _newLog, true, true).Wait();
|
||||
var seed = new Util.Seeder();
|
||||
seed.SeedDatabaseAsync(Seeder.Level.StringToSeedLevel(ServerBootConfig.AYANOVA_SERVER_TEST_MODE_SEEDLEVEL), ServerBootConfig.AYANOVA_SERVER_TEST_MODE_TZ_OFFSET, null, null).Wait();
|
||||
// _newLog.LogInformation("Seeding completed");
|
||||
}
|
||||
#endif
|
||||
|
||||
//SPA FALLBACK ROUTE
|
||||
app.Use(async (context, next) =>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
//#define DEVELOPMENT_TEST_ROCKFISH
|
||||
#define DEVELOPMENT_TEST_ROCKFISH
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
@@ -519,11 +519,7 @@ namespace AyaNova.Core
|
||||
/// Fetch a key, validate it and install it in the db then initialize with it
|
||||
/// </summary>
|
||||
/// <returns>Result string</returns>
|
||||
#if (DEBUG)
|
||||
internal static async Task<string> FetchKeyAsync(AyaNova.Api.ControllerHelpers.ApiServerState apiServerState, AyContext ct, ILogger log, bool calledFromInternalJob, bool devTestTrial = false)
|
||||
#else
|
||||
internal static async Task<string> FetchKeyAsync(AyaNova.Api.ControllerHelpers.ApiServerState apiServerState, AyContext ct, ILogger log, bool calledFromInternalJob)
|
||||
#endif
|
||||
{
|
||||
if (calledFromInternalJob)
|
||||
log.LogDebug($"Fetching license for DBID {LicenseDbId} (called by job)");
|
||||
@@ -532,17 +528,17 @@ namespace AyaNova.Core
|
||||
|
||||
var FetchRequest = new dtoFetchRequest() { DbId = LicenseDbId };
|
||||
string LicenseUrlParameter = "rvf";
|
||||
#if (DEBUG)
|
||||
if (devTestTrial)
|
||||
{
|
||||
#if (SUBSCRIPTION_BUILD)
|
||||
LicenseUrlParameter += "?dtt=true&pp=false";//signal to rockfish to provide a key immediately for dev testing
|
||||
#else
|
||||
LicenseUrlParameter += "?dtt=true&pp=true";//signal to rockfish to provide a key immediately for dev testing
|
||||
#endif
|
||||
// #if (DEBUG)
|
||||
// if (devTestTrial)
|
||||
// {
|
||||
// #if (SUBSCRIPTION_BUILD)
|
||||
// LicenseUrlParameter += "?dtt=true&pp=false";//signal to rockfish to provide a key immediately for dev testing
|
||||
// #else
|
||||
// LicenseUrlParameter += "?dtt=true&pp=true";//signal to rockfish to provide a key immediately for dev testing
|
||||
// #endif
|
||||
|
||||
}
|
||||
#endif
|
||||
// }
|
||||
// #endif
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
@@ -44,12 +44,6 @@ namespace AyaNova.Util
|
||||
|
||||
#endif
|
||||
|
||||
#if (DEBUG)
|
||||
//TEST MODE - BOOT WILL ERASE DB AND GENERATE SAMPLE DATA EVERY TIME
|
||||
internal static bool AYANOVA_SERVER_TEST_MODE { get; set; }
|
||||
internal static decimal AYANOVA_SERVER_TEST_MODE_TZ_OFFSET { get; set; }
|
||||
internal static string AYANOVA_SERVER_TEST_MODE_SEEDLEVEL { get; set; }
|
||||
#endif
|
||||
|
||||
//CONTENTROOTPATH
|
||||
//** Not intended for end users but required in release mode
|
||||
@@ -119,15 +113,7 @@ namespace AyaNova.Util
|
||||
|
||||
#region SERVER BASICS
|
||||
|
||||
#if (DEBUG)
|
||||
bTemp = config.GetValue<bool?>("AYANOVA_SERVER_TEST_MODE");
|
||||
AYANOVA_SERVER_TEST_MODE = (null == bTemp) ? false : (bool)bTemp;
|
||||
AYANOVA_SERVER_TEST_MODE_SEEDLEVEL = config.GetValue<string>("AYANOVA_SERVER_TEST_MODE_SEEDLEVEL");
|
||||
AYANOVA_SERVER_TEST_MODE_SEEDLEVEL = string.IsNullOrWhiteSpace(AYANOVA_SERVER_TEST_MODE_SEEDLEVEL) ? "small" : AYANOVA_SERVER_TEST_MODE_SEEDLEVEL;
|
||||
decimal? dTemp = config.GetValue<decimal?>("AYANOVA_SERVER_TEST_MODE_TZ_OFFSET");
|
||||
AYANOVA_SERVER_TEST_MODE_TZ_OFFSET = (null == dTemp) ? 0 : (decimal)dTemp;
|
||||
|
||||
#endif
|
||||
//LANGUAGE
|
||||
//TranslationBiz will validate this later at boot pfc and ensure a sane default is set (English)
|
||||
AYANOVA_DEFAULT_TRANSLATION = config.GetValue<string>("AYANOVA_DEFAULT_TRANSLATION");
|
||||
|
||||
Reference in New Issue
Block a user