This commit is contained in:
2022-12-27 01:06:14 +00:00
parent c5d1350b6b
commit bf6554e568
4 changed files with 47 additions and 11 deletions

2
.vscode/launch.json vendored
View File

@@ -35,7 +35,7 @@
"SOCKEYE_DB_CONNECTION": "Server=localhost;Username=postgres;Password=sockeye;Database=sockeye;CommandTimeout=300;",
"SOCKEYE_DATA_PATH": "c:\\temp\\sockeye",
"SOCKEYE_USE_URLS": "http://*:7676;",
//"SOCKEYE_PERMANENTLY_ERASE_DATABASE":"true",
"SOCKEYE_PERMANENTLY_ERASE_DATABASE":"true",
//"SOCKEYE_REMOVE_LICENSE_FROM_DB":"true",
//"SOCKEYE_REPORT_RENDERING_TIMEOUT":"1",
"SOCKEYE_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_14\\bin"

View File

@@ -21,12 +21,12 @@ namespace Sockeye.Biz
//ILogger log = Sockeye.Util.ApplicationLogging.CreateLogger("PrimeData");
User u = new User();
u.Active = true;
u.AllowLogin=true;
u.AllowLogin = true;
u.Name = "Sockeye SuperUser";
u.Salt = Hasher.GenerateSalt();
u.Login = "ss";
u.Password = Hasher.hash(u.Salt, "ss");
u.Roles = AuthorizationRoles.Accounting | AuthorizationRoles.BizAdmin | AuthorizationRoles.Inventory | AuthorizationRoles.OpsAdmin | AuthorizationRoles.Sales | AuthorizationRoles.Service ;
u.Roles = AuthorizationRoles.Accounting | AuthorizationRoles.BizAdmin | AuthorizationRoles.Inventory | AuthorizationRoles.OpsAdmin | AuthorizationRoles.Sales | AuthorizationRoles.Service;
u.UserType = UserType.NotService;
@@ -37,6 +37,19 @@ namespace Sockeye.Biz
}
/// <summary>
/// Prime the database with SuperUser account
/// </summary>
public static async Task PrimeVendor(AyContext ct)
{
Vendor u = new Vendor();
u.Active = true;
u.Name = "MyCommerce";
await ct.Vendor.AddAsync(u);
await ct.SaveChangesAsync();
}
// //used during development so I don't need to keep installing licenses over and over
@@ -98,7 +111,7 @@ namespace Sockeye.Biz
Translation l = new Translation();
l.Name = translationCode;
l.BaseLanguage=translationCode;
l.BaseLanguage = translationCode;
l.Stock = true;
l.CjkIndex = false;

View File

@@ -1328,6 +1328,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
//Prime the db with the default SuperUser account
await Sockeye.Biz.PrimeData.PrimeSuperUserAccount(ct);
await Sockeye.Biz.PrimeData.PrimeVendor(ct);
}
}//eofunction

View File

@@ -354,7 +354,7 @@ namespace Sockeye.Util
}
/////////////////////////////////////////////////////////
@@ -394,14 +394,17 @@ namespace Sockeye.Util
cmd.Connection = conn;
cmd.CommandText = "update auser set customerid=null;";
await cmd.ExecuteNonQueryAsync();
cmd.CommandText = "update auser set headofficeid=null;";
await cmd.ExecuteNonQueryAsync();
cmd.CommandText = "update auser set vendorid=null;";
await cmd.ExecuteNonQueryAsync();
cmd.CommandText = "update alicense set customerid=null;";
await cmd.ExecuteNonQueryAsync();
//DELIBERATELY NOT ERASED:
@@ -450,7 +453,7 @@ namespace Sockeye.Util
//REMOVE ALL REMAINING DATA
await TruncateTableAsync("afileattachment", conn);
await TruncateTableAsync("aevent", conn);
await TruncateTableAsync("adatalistsavedfilter", conn);
@@ -462,10 +465,19 @@ namespace Sockeye.Util
await TruncateTableAsync("atag", conn);
await TruncateTableAsync("asubscriptionserver", conn);
await TruncateTableAsync("apurchase", conn);
await TruncateTableAsync("aproduct", conn);
//await TruncateTableAsync("avendor", conn);
await TruncateTableAsync("acustomernote", conn);
await TruncateTableAsync("acustomer", conn);
await TruncateTableAsync("aheadoffice", conn);
await TruncateTableAsync("agzcase", conn);
await TruncateTableAsync("atriallicenserequest", conn);
await TruncateTableAsync("alicense", conn);
//----- NOTIFICATION
await TruncateTableAsync("ainappnotification", conn);
await TruncateTableAsync("anotifyevent", conn);
@@ -518,7 +530,17 @@ namespace Sockeye.Util
}
//final housekeeping
using (var cmd = new Npgsql.NpgsqlCommand())
{
cmd.Connection = conn;
cmd.CommandText = $"ALTER SEQUENCE agzcase_caseid_seq RESTART WITH 2;";
await cmd.ExecuteNonQueryAsync();
}
await conn.CloseAsync();
}
@@ -584,9 +606,9 @@ namespace Sockeye.Util
//An empty db contains only one User
if (await ct.User.LongCountAsync() > 1) return false;
if (await ct.Customer.AnyAsync()) return false;
if (await ct.HeadOffice.AnyAsync()) return false;
return true;
}