This commit is contained in:
2021-05-20 19:22:52 +01:00
parent edd6e39c35
commit 047e8b235a
94 changed files with 5417 additions and 286 deletions
@@ -239,15 +239,15 @@ namespace Saxonite.Net.Standard.Dbas.Mgr
//-------------------------------------------------------------------
// Item column definitions.
private static readonly String aliasUserOrganisation = "UsrRol";
private static readonly String aliasUserOrganisation_UserAccount = "UsrRol_Usr";
private static readonly String prefixUserOrganisation_UserAccount = "UsrRol_Usr_";
private static readonly String aliasUserOrganisation_Organisation = "UsrRol_Org";
private static readonly String prefixUserOrganisation_Organisation = "UsrRol_Org_";
private static readonly String aliasUserOrganisation_Organisation_Region = "UsrRol_Org_Rgn";
private static readonly String prefixUserOrganisation_Organisation_Region = "UsrRol_Org_Rgn_";
private static readonly String aliasUserOrganisation_Organisation_Sport = "UsrRol_Org_Spt";
private static readonly String prefixUserOrganisation_Organisation_Sport = "UsrRol_Org_Spt_";
private static readonly String aliasUserOrganisation = "UsrOrg";
private static readonly String aliasUserOrganisation_UserAccount = "UsrOrg_Usr";
private static readonly String prefixUserOrganisation_UserAccount = "UsrOrg_Usr_";
private static readonly String aliasUserOrganisation_Organisation = "UsrOrg_Org";
private static readonly String prefixUserOrganisation_Organisation = "UsrOrg_Org_";
private static readonly String aliasUserOrganisation_Organisation_Region = "UsrOrg_Org_Rgn";
private static readonly String prefixUserOrganisation_Organisation_Region = "UsrOrg_Org_Rgn_";
private static readonly String aliasUserOrganisation_Organisation_Sport = "UsrOrg_Org_Spt";
private static readonly String prefixUserOrganisation_Organisation_Sport = "UsrOrg_Org_Spt_";
private void SetUserOrganisationColDfn
(ColumnDfn col, String caption, int width, SaxDbDfn.ColumnIdx dbCol,
ColumnAlignment align = ColumnAlignment.Default, DataValue.DataType dataType = DataValue.DataType.String,
@@ -328,10 +328,18 @@ namespace Saxonite.Net.Standard.Dbas.Mgr
SetUserOrganisationColDfn(columnDfn, "Organisation", 160, SaxDbDfn.ColumnIdx.Organisation_Name, ColumnAlignment.Left, DataValue.DataType.String, aliasUserOrganisation_Organisation, prefixUserOrganisation_Organisation);
columnDfn.ReadOnly = true;
break;
case SaxUserOrganisation.Column.Organisation_RegionId:
SetUserOrganisationColDfn(columnDfn, "Organisation region Id", 80, SaxDbDfn.ColumnIdx.Organisation_RegionIdPrimary, ColumnAlignment.Right, DataValue.DataType.Long, aliasUserOrganisation_Organisation, prefixUserOrganisation_Organisation);
columnDfn.ReadOnly = true;
break;
case SaxUserOrganisation.Column.Organisation_Region_Name:
SetUserOrganisationColDfn(columnDfn, "Organisation region", 160, SaxDbDfn.ColumnIdx.Region_Name, ColumnAlignment.Left, DataValue.DataType.String, aliasUserOrganisation_Organisation_Region, prefixUserOrganisation_Organisation_Region);
columnDfn.ReadOnly = true;
break;
case SaxUserOrganisation.Column.Organisation_SportId:
SetUserOrganisationColDfn(columnDfn, "Organisation sport Id", 80, SaxDbDfn.ColumnIdx.Organisation_SportIdPrimary, ColumnAlignment.Right, DataValue.DataType.Long, aliasUserOrganisation_Organisation, prefixUserOrganisation_Organisation);
columnDfn.ReadOnly = true;
break;
case SaxUserOrganisation.Column.Organisation_Sport_Name:
SetUserOrganisationColDfn(columnDfn, "Organisation sport", 160, SaxDbDfn.ColumnIdx.Sport_Name, ColumnAlignment.Left, DataValue.DataType.String, aliasUserOrganisation_Organisation_Sport, prefixUserOrganisation_Organisation_Sport);
columnDfn.ReadOnly = true;
@@ -402,6 +410,16 @@ namespace Saxonite.Net.Standard.Dbas.Mgr
// Organisation roles.
if (prm.OrganisationMembersOnly)
filter.Add(SaxDbDfn.GetColumnNameQual(SaxDbDfn.ColumnIdx.UserOrganisation_OrganisationRoleCount, aliasUserOrganisation) + ">0");
if (!prm.OrganisationRoles.IsEmpty())
{
List<String> organisationRoleCodes = new List<string>();
foreach (Sax.OrganisationRole organisationRole in prm.OrganisationRoles)
{
String organisationRoleCode = OrganisationRoles.GetCodeForType(organisationRole).TrimAll();
if (!StringUtil.IsEmpty(organisationRoleCode))
filter.Add(SaxDbDfn.GetColumnNameQual(SaxDbDfn.ColumnIdx.UserOrganisation_OrganisationRoleCodes, aliasUserOrganisation) + " LIKE '%" + DbQuery.FormatForLike(organisationRoleCode) + "%'");
}
}
// Notes.
if (!StringUtil.IsEmpty(prm.NotesPartial))
@@ -517,7 +535,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr
bool hasUserAccountCols = (columns.HasId(SaxUserOrganisation.Column.User_EmailAddress) || columns.HasId(SaxUserOrganisation.Column.User_DisplayName) || columns.HasId(SaxUserOrganisation.Column.User_Title) || columns.HasId(SaxUserOrganisation.Column.User_FirstName) || columns.HasId(SaxUserOrganisation.Column.User_LastName));
if (columns.HasId(SaxUserOrganisation.Column.UserAccountId) || hasUserAccountCols)
query.Columns.Add(SaxDbDfn.GetColumnNameQual(SaxDbDfn.ColumnIdx.UserOrganisation_UserAccountId, aliasUserOrganisation));
bool hasOrganisationCols = (columns.HasId(SaxUserOrganisation.Column.Organisation_Name));
bool hasOrganisationCols = (columns.HasId(SaxUserOrganisation.Column.Organisation_Name) || columns.HasId(SaxUserOrganisation.Column.Organisation_RegionId) || columns.HasId(SaxUserOrganisation.Column.Organisation_SportId));
bool hasOrganisationRegionCols = (columns.HasId(SaxUserOrganisation.Column.Organisation_Region_Name));
bool hasOrganisationSportCols = (columns.HasId(SaxUserOrganisation.Column.Organisation_Sport_Name));
if (columns.HasId(SaxUserOrganisation.Column.OrganisationId) || hasOrganisationCols || hasOrganisationRegionCols || hasOrganisationSportCols)
@@ -565,6 +583,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr
query.Joins.Add(joinOrganisation);
List<SaxDbDfn.ColumnIdx> OrganisationCols = new List<SaxDbDfn.ColumnIdx>();
OrganisationCols.Add(SaxDbDfn.ColumnIdx.Organisation_Name);
OrganisationCols.Add(SaxDbDfn.ColumnIdx.Organisation_RegionIdPrimary);
OrganisationCols.Add(SaxDbDfn.ColumnIdx.Organisation_SportIdPrimary);
foreach (var col in OrganisationCols)
query.Columns.Add(SaxDbDfn.GetColumnNameQual(col, aliasUserOrganisation_Organisation), prefixUserOrganisation_Organisation + SaxDbDfn.GetColumnName(col, false));