From 48348d64b5bdd215daa2860fd614aceaece50517 Mon Sep 17 00:00:00 2001 From: Andy Howard Date: Tue, 26 Nov 2024 11:35:04 +0000 Subject: [PATCH] BusinessMgr --- SacsCoreWeb/Web/Components/SaController.cs | 1 + SacsStandardBase/Base/Bus/SysId.cs | 2 +- .../Base/ReferenceData/SaCurrency.cs | 4 +- .../Base/ReferenceData/SaLanguage.cs | 6 +- .../Base/ReferenceData/SaRegion.cs | 4 +- .../Base/ReferenceData/SaTaxCode.cs | 4 +- .../Base/ReferenceData/SaUnitMeasure.cs | 6 +- .../Base/Security/SaSecurityItem.cs | 6 +- SacsStandardBase/Base/Utils/StringListUtil.cs | 2 +- SacsStandardBase/Base/Utils/StringUtil.cs | 1 + .../Interfaces/SaInterfaceProcess_Db_Local.cs | 5 +- .../Dbas/Proc/SaDbProcess_ConvertDbSchema.cs | 3 +- .../SbmReferenceDataMgr_Dbas-Currency.cs | 78 ++++++++------- .../SbmReferenceDataMgr_Dbas-Language.cs | 81 ++++++++-------- .../SbmReferenceDataMgr_Dbas-Region.cs | 65 +++++++------ .../SbmReferenceDataMgr_Dbas-TaxCode.cs | 94 +++++++++---------- .../SbmReferenceDataMgr_Dbas-UnitMeasure.cs | 92 +++++++++--------- .../Dbas/Security/SaSecurityConsole_Dbas.cs | 10 +- .../SaSecurityMgr_Dbas-SecurityItem.cs | 44 +++++---- 19 files changed, 247 insertions(+), 261 deletions(-) diff --git a/SacsCoreWeb/Web/Components/SaController.cs b/SacsCoreWeb/Web/Components/SaController.cs index 3822044..6a10ddf 100644 --- a/SacsCoreWeb/Web/Components/SaController.cs +++ b/SacsCoreWeb/Web/Components/SaController.cs @@ -363,6 +363,7 @@ namespace Sacs.Web.Components /// Item code and desc values. public class ItemCodeDesc { + public ItemCodeDesc() { } public ItemCodeDesc(String code, String desc) { this.Code = code; diff --git a/SacsStandardBase/Base/Bus/SysId.cs b/SacsStandardBase/Base/Bus/SysId.cs index 0826166..a09b694 100644 --- a/SacsStandardBase/Base/Bus/SysId.cs +++ b/SacsStandardBase/Base/Bus/SysId.cs @@ -211,7 +211,7 @@ namespace Sarand.Net.Standard.Base.Bus /// public static String Concat(this ICollection values, String delimiter, bool ignoreInvalid = true) { - List ids = new List(); + HashSet ids = new HashSet(); foreach (SysId id in values.Where(id => !ignoreInvalid || SysId.IsValid(id))) ids.Add(id.ToString()); return ids.Concat(delimiter); diff --git a/SacsStandardBase/Base/ReferenceData/SaCurrency.cs b/SacsStandardBase/Base/ReferenceData/SaCurrency.cs index ab88476..439fa9b 100644 --- a/SacsStandardBase/Base/ReferenceData/SaCurrency.cs +++ b/SacsStandardBase/Base/ReferenceData/SaCurrency.cs @@ -263,8 +263,8 @@ namespace Sarand.Net.Standard.Base.ReferenceData public new class Params : SacsHierarchyItem.Params { // List filtering. - public List IncludedIds { get; } = new List(); - public List ExcludedIds { get; } = new List(); + public List IdsIncluded { get; } = new List(); + public List IdsExcluded { get; } = new List(); // Currency. public String Code { get; set; } public String CodePartial { get; set; } diff --git a/SacsStandardBase/Base/ReferenceData/SaLanguage.cs b/SacsStandardBase/Base/ReferenceData/SaLanguage.cs index bcf8dba..ba43db0 100644 --- a/SacsStandardBase/Base/ReferenceData/SaLanguage.cs +++ b/SacsStandardBase/Base/ReferenceData/SaLanguage.cs @@ -185,9 +185,9 @@ namespace Sarand.Net.Standard.Base.ReferenceData public new class Params : SacsHierarchyItem.Params { // List filtering. - public List IncludedIds { get; } = new List(); - public List ExcludedIds { get; } = new List(); - // Language. + public List IdsIncluded { get; } = new List(); + public List IdsExcluded { get; } = new List(); + // Item properties. public String Code { get; set; } public String CodePartial { get; set; } public String Name { get; set; } diff --git a/SacsStandardBase/Base/ReferenceData/SaRegion.cs b/SacsStandardBase/Base/ReferenceData/SaRegion.cs index 3cdd93d..5817d2d 100644 --- a/SacsStandardBase/Base/ReferenceData/SaRegion.cs +++ b/SacsStandardBase/Base/ReferenceData/SaRegion.cs @@ -178,8 +178,8 @@ namespace Sarand.Net.Standard.Base.ReferenceData public new class Params : SacsHierarchyItem.Params { // List filtering. - public List IncludedIds { get; } = new List(); - public List ExcludedIds { get; } = new List(); + public List IdsIncluded { get; } = new List(); + public List IdsExcluded { get; } = new List(); // Region. public SaRegionType RegionType { get; set; } = SaRegionType.Unknown; public String Name { get; set; } diff --git a/SacsStandardBase/Base/ReferenceData/SaTaxCode.cs b/SacsStandardBase/Base/ReferenceData/SaTaxCode.cs index dd48cd2..f0fed71 100644 --- a/SacsStandardBase/Base/ReferenceData/SaTaxCode.cs +++ b/SacsStandardBase/Base/ReferenceData/SaTaxCode.cs @@ -279,8 +279,8 @@ namespace Sarand.Net.Standard.Base.ReferenceData public new class Params : SacsHierarchyItem.Params { // List filtering. - public List IncludedIds { get; } = new List(); - public List ExcludedIds { get; } = new List(); + public List IdsIncluded { get; } = new List(); + public List IdsExcluded { get; } = new List(); // Tax Code properties. public String Code { get; set; } public String CodePartial { get; set; } diff --git a/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs b/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs index 16156ea..b841b21 100644 --- a/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs +++ b/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs @@ -319,15 +319,13 @@ namespace Sarand.Net.Standard.Base.ReferenceData public new class Params : SacsHierarchyItem.Params { // List filtering. - public List IncludedIds { get; } = new List(); - public List ExcludedIds { get; } = new List(); + public List IdsIncluded { get; } = new List(); + public List IdsExcluded { get; } = new List(); // UnitMeasure. public SaUomCategory Category { get; set; } public SaUomType UnitType { get; set; } public String Code { get; set; } public String CodePartial { get; set; } - public String Desc { get; set; } - public String DescPartial { get; set; } public String NotesPartial { get; set; } public StatusCat StatusCat { get; set; } = StatusCat.Any; } diff --git a/SacsStandardBase/Base/Security/SaSecurityItem.cs b/SacsStandardBase/Base/Security/SaSecurityItem.cs index 02da350..127244f 100644 --- a/SacsStandardBase/Base/Security/SaSecurityItem.cs +++ b/SacsStandardBase/Base/Security/SaSecurityItem.cs @@ -436,8 +436,8 @@ namespace Sarand.Net.Standard.Base.Security /// public new class Params : SacsHierarchyItem.Params { - public List IncludedIds { get; } = new List(); - public List ExcludedIds { get; } = new List(); + public HashSet IdsIncluded { get; } = new HashSet(); + public HashSet IdsExcluded { get; } = new HashSet(); public SaSecurity.ItemType SecurityItemType { get; set; } = SaSecurity.ItemType.Any; public String Code { get; set; } public String CodePartial { get; set; } @@ -445,7 +445,7 @@ namespace Sarand.Net.Standard.Base.Security public String EmailAddressPartial { get; set; } public String Description { get; set; } public String DescriptionPartial { get; set; } - public List IncludedGroupIds { get; } = new List(); + public HashSet GroupIdsIncluded { get; } = new HashSet(); public StatusCat StatusCat { get; set; } = StatusCat.EnabledOnly; } diff --git a/SacsStandardBase/Base/Utils/StringListUtil.cs b/SacsStandardBase/Base/Utils/StringListUtil.cs index 5bdf6d6..3b0078b 100644 --- a/SacsStandardBase/Base/Utils/StringListUtil.cs +++ b/SacsStandardBase/Base/Utils/StringListUtil.cs @@ -66,7 +66,7 @@ namespace Sarand.Net.Standard.Base.Utils /// Does the list have any entries. public static bool IsEmpty (this ICollection values) { - return (values.Count == 0); + return !values.Any(); } /// Case-insensitive contains. public static bool ContainsCI (this IEnumerable values, String value) diff --git a/SacsStandardBase/Base/Utils/StringUtil.cs b/SacsStandardBase/Base/Utils/StringUtil.cs index 0ab3a98..60e6163 100644 --- a/SacsStandardBase/Base/Utils/StringUtil.cs +++ b/SacsStandardBase/Base/Utils/StringUtil.cs @@ -207,6 +207,7 @@ namespace Sarand.Net.Standard.Base.Utils if (!Decimal.TryParse(value, out number)) return false; return (allowNegative || number >= 0); } + //------------------------------------------------------------------- /// Test for Hex character. public static bool IsHex(this char c) diff --git a/SacsStandardDbas/Dbas/Interfaces/SaInterfaceProcess_Db_Local.cs b/SacsStandardDbas/Dbas/Interfaces/SaInterfaceProcess_Db_Local.cs index 7212b30..43665d3 100644 --- a/SacsStandardDbas/Dbas/Interfaces/SaInterfaceProcess_Db_Local.cs +++ b/SacsStandardDbas/Dbas/Interfaces/SaInterfaceProcess_Db_Local.cs @@ -70,7 +70,6 @@ namespace Sarand.Net.Standard.Dbas.Interfaces } public override void PopulateFrom (DbDataReader dbDataReader) { - String fn = this.GetFn("PopulateFrom"); base.PopulateFrom(dbDataReader); // 'Process At' legacy fields: ProcDate (Int32) & ProcTime (Int32). if (!DateUtil.IsValid(_ProcessAt) && colExists_ProcDate && colExists_ProcTime) @@ -80,7 +79,7 @@ namespace Sarand.Net.Standard.Dbas.Interfaces // Populate Process datetime from 'ProcDate/Time' integer fields. _ProcessAt = DateUtil.SetTime(DateUtil.Int32ToDate(dbDataReader.GetInt32(GetColumnOrdinal(dbDataReader, colNameProcDate))), DateUtil.Int32ToTime(dbDataReader.GetInt32(GetColumnOrdinal(dbDataReader, colNameProcTime)))); } - catch (Exception exc) { SaLogger.Warn(fn + " " + ExceptionUtil.GetLogMessage(exc)); } + catch (Exception exc) { SaLogger.Warn($"{SysUtil.Fn} " + ExceptionUtil.GetLogMessage(exc)); } } // 'Batch At' legacy fields: BatchDate (Int32) & BatchTime (Int32). if (!DateUtil.IsValid(_BatchAt) && colExists_BatchDate && colExists_BatchTime) @@ -90,7 +89,7 @@ namespace Sarand.Net.Standard.Dbas.Interfaces // Populate Batch datetime from 'BatchDate/Time' integer fields. _BatchAt = DateUtil.SetTime(DateUtil.Int32ToDate(dbDataReader.GetInt32(GetColumnOrdinal(dbDataReader, colNameBatchDate))), DateUtil.Int32ToTime(dbDataReader.GetInt32(GetColumnOrdinal(dbDataReader, colNameBatchTime)))); } - catch (Exception exc) { SaLogger.Warn(fn + " " + ExceptionUtil.GetLogMessage(exc)); } + catch (Exception exc) { SaLogger.Warn($"{SysUtil.Fn} " + ExceptionUtil.GetLogMessage(exc)); } } } diff --git a/SacsStandardDbas/Dbas/Proc/SaDbProcess_ConvertDbSchema.cs b/SacsStandardDbas/Dbas/Proc/SaDbProcess_ConvertDbSchema.cs index 92eb71d..a88aa8e 100644 --- a/SacsStandardDbas/Dbas/Proc/SaDbProcess_ConvertDbSchema.cs +++ b/SacsStandardDbas/Dbas/Proc/SaDbProcess_ConvertDbSchema.cs @@ -63,7 +63,6 @@ namespace Sarand.Net.Standard.Dbas.Proc public List ConvertXmlToTables(String xmlSchemaData) { ClearProcessMessages(); - String fn = GetType().Name + ".ConvertXmlToTables"; Dictionary tables = new Dictionary(StringComparer.OrdinalIgnoreCase); try @@ -170,7 +169,7 @@ namespace Sarand.Net.Standard.Dbas.Proc catch (Exception exc) { AddErrorMessage(exc.GetErrorStateMessage()); - SaLogger.Warn(fn + " " + ExceptionUtil.GetLogMessage(exc)); + SaLogger.Warn($"{SysUtil.Fn} {ExceptionUtil.GetLogMessage(exc)}"); } return tables.Values.ToList(); diff --git a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Currency.cs b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Currency.cs index 8f7d431..b044894 100644 --- a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Currency.cs +++ b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Currency.cs @@ -21,19 +21,19 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // C u r r e n c i e s //******************************************************************* // Create Currency. - public override SaCurrency CreateCurrency () + public override SaCurrency CreateCurrency() { ClearErrorState(); return new SaCurrency_Dbas(null, 0); } - private SaCurrency_Dbas CreateCurrency (Currency_Db dbCurrency) + private SaCurrency_Dbas CreateCurrency(Currency_Db dbCurrency) { ClearErrorState(); SaCurrency_Dbas currency = new SaCurrency_Dbas(new SysId(dbCurrency._Id), 0); PopulateFrom(dbCurrency, currency); return currency; } - private SaCurrency CreateCurrency (DbDataReader dataReader) + private SaCurrency CreateCurrency(DbDataReader dataReader) { Currency_Db dbCurrency = new Currency_Db(DbInfo); dbCurrency.PopulateFrom(dataReader); @@ -42,13 +42,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Currency exists. - public override bool CurrencyExistsById (SysId id) + public override bool CurrencyExistsById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return false; return GetCurrencyCount(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Currency_Id, aliasCurrency) + "=" + SysId.ToString(id)) == 1; } - public override bool CurrencyExistsByCode (string code) + public override bool CurrencyExistsByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return false; @@ -57,11 +57,11 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Get Currency. - public override SaCurrency GetCurrency (SaCurrency.Params prm) + public override SaCurrency GetCurrency(SaCurrency.Params prm) { return GetCurrency(GetCurrencyQueryFilter(prm).Concat(" AND ", "(", ")")); } - private SaCurrency GetCurrency (String filter) + private SaCurrency GetCurrency(String filter) { ClearErrorState(); long count = GetCurrencyCount(filter); @@ -91,13 +91,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } return currency; } - public override SaCurrency GetCurrencyById (SysId id) + public override SaCurrency GetCurrencyById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return null; return GetCurrency("Id=" + SysId.ToString(id)); } - public override SaCurrency GetCurrencyByCode (string code) + public override SaCurrency GetCurrencyByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return null; @@ -106,7 +106,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Validate Currency. - public override bool IsValidCurrencyData (SaCurrency.Data data, SaCurrency.ErrField errField) + public override bool IsValidCurrencyData(SaCurrency.Data data, SaCurrency.ErrField errField) { ClearErrorState(); if (!base.IsValidCurrencyData(data, errField)) return false; @@ -115,7 +115,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Insert item. - public override bool InsertCurrency (SaCurrency currency, DbUpdateInfo dbUpdateInfo) + public override bool InsertCurrency(SaCurrency currency, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidCurrency(currency)) return false; @@ -143,7 +143,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Update item. - public override bool UpdateCurrency (SaCurrency currency, DbUpdateInfo dbUpdateInfo) + public override bool UpdateCurrency(SaCurrency currency, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidCurrency(currency)) return false; @@ -172,13 +172,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Delete item. - public override bool CurrencyCanBeDeleted (SaCurrency currency) + public override bool CurrencyCanBeDeleted(SaCurrency currency) { ClearErrorState(); if (!base.CurrencyCanBeDeleted(currency)) return false; return true; } - public override bool DeleteCurrency (SaCurrency currency, DbUpdateInfo dbUpdateInfo) + public override bool DeleteCurrency(SaCurrency currency, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!CurrencyCanBeDeleted(currency)) return false; @@ -203,7 +203,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Copy data properties to and from database. - private void PopulateTo (Currency_Db dbCurrency, SaCurrency currency, DbUpdateInfo dbUpdateInfo) + private void PopulateTo(Currency_Db dbCurrency, SaCurrency currency, DbUpdateInfo dbUpdateInfo) { dbCurrency._Id = currency.Id.ToInt(); dbCurrency._Code = currency.Code; @@ -231,7 +231,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData dbCurrency._UpdateBy = dbUpdateInfo.UserId.ToInt(); dbCurrency._UpdateHost = dbUpdateInfo.Host; } - private void PopulateFrom (Currency_Db dbCurrency, SaCurrency currency) + private void PopulateFrom(Currency_Db dbCurrency, SaCurrency currency) { //currency.Id = new SysId(dbCurrency._Id); currency.Code = dbCurrency._Code; @@ -255,7 +255,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Currency column definitions. - private static readonly String aliasCurrency = "aCur"; + private static readonly String aliasCurrency = "aCur"; private void SetCurrencyColDfn (ColumnDfn col, String caption, int width, SaReferenceDataDbDfn.ColumnIdx dbCol, ColumnAlignment align = ColumnAlignment.Default, DataValue.DataType dataType = DataValue.DataType.String, @@ -269,7 +269,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } //------------------------------------------------------------------- // Getting currency column definition. - public override ColumnDfn GetCurrencyColumnDfn (SaCurrency.Column columnId, string caption = "", int width = 0) + public override ColumnDfn GetCurrencyColumnDfn(SaCurrency.Column columnId, string caption = "", int width = 0) { ColumnDfn columnDfn = new ColumnDfn((int)columnId, caption, width); switch (columnId) @@ -338,37 +338,35 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Currency query filter. - public override List GetCurrencyQueryFilter (SaCurrency.Params prm) + public override List GetCurrencyQueryFilter(SaCurrency.Params prm) { List filter = new List(); // Currency Id. String colCurrency_Id = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Currency_Id, aliasCurrency); - String includedIds = prm.IncludedIds.Concat(","); - if (!includedIds.IsEmpty()) - filter.Add(colCurrency_Id + " IN (" + includedIds + ")"); - String excludedIds = prm.ExcludedIds.Concat(","); - if (!excludedIds.IsEmpty()) - filter.Add(colCurrency_Id + " NOT IN (" + excludedIds + ")"); + if (prm.IdsIncluded.HasValidIds()) + filter.Add($"{colCurrency_Id} IN ({prm.IdsIncluded.Concat(",")})"); + if (prm.IdsExcluded.HasValidIds()) + filter.Add($"{colCurrency_Id} NOT IN ({prm.IdsExcluded.Concat(",")})"); // Code. String colCurrency_Code = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Currency_Code, aliasCurrency); - if (!StringUtil.IsEmpty(prm.Code)) - filter.Add(colCurrency_Code + "='" + DbQuery.FormatForCondition(prm.Code) + "'"); - if (!StringUtil.IsEmpty(prm.CodePartial)) - filter.Add(colCurrency_Code + " LIKE '%" + DbQuery.FormatForLike(prm.CodePartial) + "%'"); + if (!StringUtil.IsBlank(prm.Code)) + filter.Add($"{colCurrency_Code}='{DbQuery.FormatForCondition(prm.Code)}'"); + else if (!StringUtil.IsBlank(prm.CodePartial)) + filter.Add($"{colCurrency_Code} LIKE '%{DbQuery.FormatForLike(prm.CodePartial)}%'"); // Name. String colCurrency_Name = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Currency_Name, aliasCurrency); - if (!StringUtil.IsEmpty(prm.Name)) - filter.Add(colCurrency_Name + "='" + DbQuery.FormatForCondition(prm.Name) + "'"); - if (!StringUtil.IsEmpty(prm.NamePartial)) - filter.Add(colCurrency_Name + " LIKE '%" + DbQuery.FormatForLike(prm.NamePartial) + "%'"); + if (!StringUtil.IsBlank(prm.Name)) + filter.Add($"{colCurrency_Name}='{DbQuery.FormatForCondition(prm.Name)}'"); + else if (!StringUtil.IsBlank(prm.NamePartial)) + filter.Add($"{colCurrency_Name} LIKE '%{DbQuery.FormatForLike(prm.NamePartial)}%'"); // RegionId. String colCurrency_Region = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Currency_Region, aliasCurrency); if (SysId.IsValid(prm.RegionId)) - filter.Add(colCurrency_Region + "=" + SysId.ToString(prm.RegionId)); + filter.Add($"{colCurrency_Region}={SysId.ToLong(prm.RegionId)}"); // Status - no status on currency. @@ -376,7 +374,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData return filter; } // Currency sort columns. - public List GetCurrencySortColumns (SaCurrency.Params prm) + public List GetCurrencySortColumns(SaCurrency.Params prm) { // Sort sequence: List sortColumnNames = new List(); @@ -411,12 +409,12 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Currency count. - private long GetCurrencyCount (String filter) + private long GetCurrencyCount(String filter) { ClearErrorState(); return Database.GetRowCount(ReferenceDataConsole.TableName_Currency + " As " + aliasCurrency, filter); } - public override long GetCurrencyCount (SaCurrency.Params prm) + public override long GetCurrencyCount(SaCurrency.Params prm) { ClearErrorState(); return GetCurrencyCount(GetCurrencyQueryFilter(prm).Concat(" AND ", "(", ")")); @@ -424,7 +422,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Currency list. - public override List GetCurrencyList (SaCurrency.Params prm) + public override List GetCurrencyList(SaCurrency.Params prm) { ClearErrorState(); List currencies = new List(); @@ -461,7 +459,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Currency query execution. - public override DbResultSet ExecuteCurrencyQuery (List columns, SaCurrency.Params prm) + public override DbResultSet ExecuteCurrencyQuery(List columns, SaCurrency.Params prm) { ClearErrorState(); @@ -508,7 +506,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // Populate filter. query.Filters.AddRange(GetCurrencyQueryFilter(prm)); - if (prm.IncludedIds.Count != 1) + if (prm.IdsIncluded.Count != 1) { // Configure sort sequence. foreach (String sortColumn in GetCurrencySortColumns(prm)) diff --git a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Language.cs b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Language.cs index 94615a7..0046d21 100644 --- a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Language.cs +++ b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Language.cs @@ -21,19 +21,19 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // L a n g u a g e s //******************************************************************* // Create Language. - public override SaLanguage CreateLanguage () + public override SaLanguage CreateLanguage() { ClearErrorState(); return new SaLanguage_Dbas(null, 0); } - private SaLanguage_Dbas CreateLanguage (Language_Db dbLanguage) + private SaLanguage_Dbas CreateLanguage(Language_Db dbLanguage) { ClearErrorState(); SaLanguage_Dbas language = new SaLanguage_Dbas(new SysId(dbLanguage._Id), 0); PopulateFrom(dbLanguage, language); return language; } - private SaLanguage CreateLanguage (DbDataReader dataReader) + private SaLanguage CreateLanguage(DbDataReader dataReader) { Language_Db dbLanguage = new Language_Db(DbInfo); dbLanguage.PopulateFrom(dataReader); @@ -42,13 +42,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Language exists. - public override bool LanguageExistsById (SysId id) + public override bool LanguageExistsById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return false; return GetLanguageCount(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Id, aliasLanguage) + "=" + SysId.ToString(id)) == 1; } - public override bool LanguageExistsByCode (string code) + public override bool LanguageExistsByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return false; @@ -57,11 +57,11 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Get Language. - public override SaLanguage GetLanguage (SaLanguage.Params prm) + public override SaLanguage GetLanguage(SaLanguage.Params prm) { return GetLanguage(GetLanguageQueryFilter(prm).Concat(" AND ", "(", ")")); } - private SaLanguage GetLanguage (String filter) + private SaLanguage GetLanguage(String filter) { ClearErrorState(); long count = GetLanguageCount(filter); @@ -91,13 +91,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } return language; } - public override SaLanguage GetLanguageById (SysId id) + public override SaLanguage GetLanguageById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return null; return GetLanguage("Id=" + SysId.ToString(id)); } - public override SaLanguage GetLanguageByCode (string code) + public override SaLanguage GetLanguageByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return null; @@ -106,7 +106,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Validate item. - public override bool IsValidLanguageData (SaLanguage.Data data, SaLanguage.ErrField errField) + public override bool IsValidLanguageData(SaLanguage.Data data, SaLanguage.ErrField errField) { ClearErrorState(); if (!base.IsValidLanguageData(data, errField)) return false; @@ -115,7 +115,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Insert item. - public override bool InsertLanguage (SaLanguage language, DbUpdateInfo dbUpdateInfo) + public override bool InsertLanguage(SaLanguage language, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidLanguage(language)) return false; @@ -143,7 +143,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Update item. - public override bool UpdateLanguage (SaLanguage language, DbUpdateInfo dbUpdateInfo) + public override bool UpdateLanguage(SaLanguage language, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidLanguage(language)) return false; @@ -172,13 +172,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Delete item. - public override bool LanguageCanBeDeleted (SaLanguage language) + public override bool LanguageCanBeDeleted(SaLanguage language) { ClearErrorState(); if (!base.LanguageCanBeDeleted(language)) return false; return true; } - public override bool DeleteLanguage (SaLanguage language, DbUpdateInfo dbUpdateInfo) + public override bool DeleteLanguage(SaLanguage language, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!LanguageCanBeDeleted(language)) return false; @@ -203,7 +203,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Copy data properties to and from database. - private void PopulateTo (Language_Db dbLanguage, SaLanguage language, DbUpdateInfo dbUpdateInfo) + private void PopulateTo(Language_Db dbLanguage, SaLanguage language, DbUpdateInfo dbUpdateInfo) { dbLanguage._Id = language.Id.ToInt(); dbLanguage._Code = language.Code; @@ -226,7 +226,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData dbLanguage._UpdateBy = dbUpdateInfo.UserId.ToInt(); dbLanguage._UpdateHost = dbUpdateInfo.Host; } - private void PopulateFrom (Language_Db dbLanguage, SaLanguage language) + private void PopulateFrom(Language_Db dbLanguage, SaLanguage language) { //language.Id = new SysId(dbLanguage._Id); //language.Code = dbLanguage._Code; @@ -245,7 +245,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Language column definitions. - private static readonly String aliasLanguage = "aLng"; + private static readonly String aliasLanguage = "aLng"; private void SetLanguageColDfn (ColumnDfn col, String caption, int width, SaReferenceDataDbDfn.ColumnIdx dbCol, ColumnAlignment align = ColumnAlignment.Default, DataValue.DataType dataType = DataValue.DataType.String, @@ -259,7 +259,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } //------------------------------------------------------------------- // Getting language column definition. - public override ColumnDfn GetLanguageColumnDfn (SaLanguage.Column columnId, string caption = "", int width = 0) + public override ColumnDfn GetLanguageColumnDfn(SaLanguage.Column columnId, string caption = "", int width = 0) { ColumnDfn columnDfn = new ColumnDfn((int)columnId, caption, width); switch (columnId) @@ -352,39 +352,40 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Language query filter. - public override List GetLanguageQueryFilter (SaLanguage.Params prm) + public override List GetLanguageQueryFilter(SaLanguage.Params prm) { List filter = new List(); // Language Id. - String includedIds = prm.IncludedIds.Concat(","); - if (!includedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Id, aliasLanguage) + " IN (" + includedIds + ")"); - String excludedIds = prm.ExcludedIds.Concat(","); - if (!excludedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Id, aliasLanguage) + " NOT IN (" + excludedIds + ")"); + String colId = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Id, aliasLanguage); + if (prm.IdsIncluded.HasValidIds()) + filter.Add($"{colId} IN ({prm.IdsIncluded.Concat(",")})"); + if (prm.IdsExcluded.HasValidIds()) + filter.Add($"{colId} NOT IN ({prm.IdsExcluded.Concat(",")})"); // Code. - if (!StringUtil.IsEmpty(prm.Code)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Code, aliasLanguage) + " = '" + DbQuery.FormatForCondition(prm.Code) + "'"); - if (!StringUtil.IsEmpty(prm.CodePartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Code, aliasLanguage) + " LIKE '%" + DbQuery.FormatForLike(prm.CodePartial) + "%'"); + String colCode = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Code, aliasLanguage); + if (!StringUtil.IsBlank(prm.Code)) + filter.Add($"{colCode}='{DbQuery.FormatForCondition(prm.Code)}'"); + else if (!StringUtil.IsBlank(prm.CodePartial)) + filter.Add($"{colCode} LIKE '%{DbQuery.FormatForLike(prm.CodePartial)}%'"); // Name. - if (!StringUtil.IsEmpty(prm.Name)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Name, aliasLanguage) + " = '" + DbQuery.FormatForCondition(prm.Name) + "'"); - if (!StringUtil.IsEmpty(prm.NamePartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Name, aliasLanguage) + " LIKE '%" + DbQuery.FormatForLike(prm.NamePartial) + "%'"); + String colName = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Name, aliasLanguage); + if (!StringUtil.IsBlank(prm.Name)) + filter.Add($"{colName}='{DbQuery.FormatForCondition(prm.Name)}'"); + else if (!StringUtil.IsBlank(prm.NamePartial)) + filter.Add($"{colName} LIKE '%{DbQuery.FormatForLike(prm.NamePartial)}%'"); // Lang Primary Id. if (SysId.IsValid(prm.LanguageIdPrimary)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Primary, aliasCurrency) + " = " + SysId.ToString(prm.LanguageIdPrimary,"0")); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Language_Primary, aliasLanguage)}={SysId.ToLong(prm.LanguageIdPrimary)}"); if (filter.Count < 1 && prm.IncludeDefaultFilter) filter.Add("1=1"); return filter; } // Language sort columns. - public List GetLanguageSortColumns (SaLanguage.Params prm) + public List GetLanguageSortColumns(SaLanguage.Params prm) { // Sort sequence: List sortColumnNames = new List(); @@ -419,12 +420,12 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Language count. - private long GetLanguageCount (String filter) + private long GetLanguageCount(String filter) { ClearErrorState(); return Database.GetRowCount(ReferenceDataConsole.TableName_Language + " As " + aliasLanguage, filter); } - public override long GetLanguageCount (SaLanguage.Params prm) + public override long GetLanguageCount(SaLanguage.Params prm) { ClearErrorState(); return GetLanguageCount(GetLanguageQueryFilter(prm).Concat(" AND ", "(", ")")); @@ -432,7 +433,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Language list. - public override List GetLanguageList (SaLanguage.Params prm) + public override List GetLanguageList(SaLanguage.Params prm) { ClearErrorState(); List languages = new List(); @@ -467,7 +468,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Language query execution. - public override DbResultSet ExecuteLanguageQuery (List columns, SaLanguage.Params prm) + public override DbResultSet ExecuteLanguageQuery(List columns, SaLanguage.Params prm) { ClearErrorState(); @@ -506,7 +507,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // Populate filter. query.Filters.AddRange(GetLanguageQueryFilter(prm)); - if (prm.IncludedIds.Count != 1) + if (prm.IdsIncluded.Count != 1) { // Configure sort sequence. foreach (String sortColumn in GetLanguageSortColumns(prm)) diff --git a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Region.cs b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Region.cs index 1852a64..233a9f1 100644 --- a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Region.cs +++ b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-Region.cs @@ -21,19 +21,19 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // R e g i o n s //******************************************************************* // Create Region. - public override SaRegion CreateRegion (SaRegionType regionType) + public override SaRegion CreateRegion(SaRegionType regionType) { ClearErrorState(); return new SaRegion_Dbas(null, regionType, 0); } - private SaRegion_Dbas CreateRegion (Region_Db dbRegion) + private SaRegion_Dbas CreateRegion(Region_Db dbRegion) { ClearErrorState(); SaRegion_Dbas region = new SaRegion_Dbas(new SysId(dbRegion._Id), (SaRegionType)regionTypes.GetTypeForCode(dbRegion._Type), (ushort)dbRegion._Flags); PopulateFrom(dbRegion, region); return region; } - private SaRegion CreateRegion (DbDataReader dataReader) + private SaRegion CreateRegion(DbDataReader dataReader) { Region_Db dbRegion = new Region_Db(DbInfo); dbRegion.PopulateFrom(dataReader); @@ -42,13 +42,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Region exists. - public override bool RegionExistsById (SysId id) + public override bool RegionExistsById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return false; return GetRegionCount(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Id, aliasRegion) + "=" + SysId.ToString(id)) == 1; } - public override bool RegionExistsByType (string code) + public override bool RegionExistsByType(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return false; @@ -57,11 +57,11 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Get Region. - public override SaRegion GetRegion (SaRegion.Params prm) + public override SaRegion GetRegion(SaRegion.Params prm) { return GetRegion(GetRegionQueryFilter(prm).Concat(" AND ", "(", ")")); } - private SaRegion GetRegion (String filter) + private SaRegion GetRegion(String filter) { ClearErrorState(); long count = GetRegionCount(filter); @@ -91,13 +91,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } return region; } - public override SaRegion GetRegionById (SysId id) + public override SaRegion GetRegionById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return null; return GetRegion("Id=" + SysId.ToString(id)); } - public override SaRegion GetRegionByType (string code) + public override SaRegion GetRegionByType(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return null; @@ -106,7 +106,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Validate item. - public override bool IsValidRegionData (SaRegion.Data data, SaRegion.ErrField errField) + public override bool IsValidRegionData(SaRegion.Data data, SaRegion.ErrField errField) { ClearErrorState(); if (!base.IsValidRegionData(data, errField)) return false; @@ -115,7 +115,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Insert item. - public override bool InsertRegion (SaRegion region, DbUpdateInfo dbUpdateInfo) + public override bool InsertRegion(SaRegion region, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidRegion(region)) return false; @@ -143,7 +143,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Update item. - public override bool UpdateRegion (SaRegion region, DbUpdateInfo dbUpdateInfo) + public override bool UpdateRegion(SaRegion region, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidRegion(region)) return false; @@ -172,13 +172,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Delete item. - public override bool RegionCanBeDeleted (SaRegion region) + public override bool RegionCanBeDeleted(SaRegion region) { ClearErrorState(); if (!base.RegionCanBeDeleted(region)) return false; return true; } - public override bool DeleteRegion (SaRegion region, DbUpdateInfo dbUpdateInfo) + public override bool DeleteRegion(SaRegion region, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!RegionCanBeDeleted(region)) return false; @@ -203,7 +203,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Copy data properties to and from database. - private void PopulateTo (Region_Db dbRegion, SaRegion region, DbUpdateInfo dbUpdateInfo) + private void PopulateTo(Region_Db dbRegion, SaRegion region, DbUpdateInfo dbUpdateInfo) { dbRegion._Id = region.Id.ToInt(); dbRegion._Type = regionTypes.GetCodeForType(region.RegionType); @@ -223,7 +223,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData dbRegion._UpdateBy = dbUpdateInfo.UserId.ToInt(); dbRegion._UpdateHost = dbUpdateInfo.Host; } - private void PopulateFrom (Region_Db dbRegion, SaRegion region) + private void PopulateFrom(Region_Db dbRegion, SaRegion region) { //region.Id = new SysId(dbRegion._Id); //region.RegionType = (SaRegionType)regionTypes.GetTypeForCode(dbRegion._Type); @@ -253,7 +253,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } //------------------------------------------------------------------- // Getting region column definition. - public override ColumnDfn GetRegionColumnDfn (SaRegion.Column columnId, string caption = "", int width = 0) + public override ColumnDfn GetRegionColumnDfn(SaRegion.Column columnId, string caption = "", int width = 0) { ColumnDfn columnDfn = new ColumnDfn((int)columnId, caption, width); switch (columnId) @@ -335,35 +335,34 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Region query filter. - public override List GetRegionQueryFilter (SaRegion.Params prm) + public override List GetRegionQueryFilter(SaRegion.Params prm) { List filter = new List(); // Region Id. - String includedIds = prm.IncludedIds.Concat(","); - if (!includedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Id, aliasRegion) + " IN (" + includedIds + ")"); - String excludedIds = prm.ExcludedIds.Concat(","); - if (!excludedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Id, aliasRegion) + " NOT IN (" + excludedIds + ")"); + String colId = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Id, aliasRegion); + if (prm.IdsIncluded.HasValidIds()) + filter.Add($"{colId} IN ({prm.IdsIncluded.Concat(",")})"); + if (prm.IdsExcluded.HasValidIds()) + filter.Add($"{colId} NOT IN ({prm.IdsExcluded.Concat(",")})"); // Type. if ((int)prm.RegionType > 0) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Type, aliasRegion) + "='" + regionTypes.GetCodeForType(prm.RegionType) + "'"); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Type, aliasRegion)}='{regionTypes.GetCodeForType(prm.RegionType)}'"); // Parent. if (SysId.IsValid(prm.RegionIdParent)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Parent, aliasCurrency) + "=" + SysId.ToInt(prm.RegionIdParent)); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Parent, aliasRegion)}={SysId.ToInt(prm.RegionIdParent)}"); // Status. if (prm.StatusCat == SaRegion.StatusCat.ActiveOnly) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Status, aliasRegion) + " In ('" + SacsSystem.GetStatusCode(SaStatus.Current) + "','" + SacsSystem.GetStatusCode(SaStatus.Active) + "')"); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.Region_Status, aliasRegion)} In ('{SacsSystem.GetStatusCode(SaStatus.Current)}','{SacsSystem.GetStatusCode(SaStatus.Active)}')"); if (filter.Count < 1 && prm.IncludeDefaultFilter) filter.Add("1=1"); return filter; } // Region sort columns. - public List GetRegionSortColumns (SaRegion.Params prm) + public List GetRegionSortColumns(SaRegion.Params prm) { // Sort sequence: List sortColumnNames = new List(); @@ -398,12 +397,12 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Region count. - private long GetRegionCount (String filter) + private long GetRegionCount(String filter) { ClearErrorState(); return Database.GetRowCount(ReferenceDataConsole.TableName_Region + " As " + aliasRegion, filter); } - public override long GetRegionCount (SaRegion.Params prm) + public override long GetRegionCount(SaRegion.Params prm) { ClearErrorState(); return GetRegionCount(GetRegionQueryFilter(prm).Concat(" AND ", "(", ")")); @@ -411,7 +410,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Region list. - public override List GetRegionList (SaRegion.Params prm) + public override List GetRegionList(SaRegion.Params prm) { ClearErrorState(); List regions = new List(); @@ -446,7 +445,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Region query execution. - public override DbResultSet ExecuteRegionQuery (List columns, SaRegion.Params prm) + public override DbResultSet ExecuteRegionQuery(List columns, SaRegion.Params prm) { ClearErrorState(); @@ -479,7 +478,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // Populate filter. query.Filters.AddRange(GetRegionQueryFilter(prm)); - if (prm.IncludedIds.Count != 1) + if (prm.IdsIncluded.Count != 1) { // Configure sort sequence. foreach (String sortColumn in GetRegionSortColumns(prm)) diff --git a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-TaxCode.cs b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-TaxCode.cs index 3404a56..56c243b 100644 --- a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-TaxCode.cs +++ b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-TaxCode.cs @@ -21,19 +21,19 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // T a x C o d e s //******************************************************************* // Create TaxCode. - public override SaTaxCode CreateTaxCode () + public override SaTaxCode CreateTaxCode() { ClearErrorState(); return new SaTaxCode_Dbas(null, 0); } - private SaTaxCode_Dbas CreateTaxCode (TaxCode_Db dbTaxCode) + private SaTaxCode_Dbas CreateTaxCode(TaxCode_Db dbTaxCode) { ClearErrorState(); SaTaxCode_Dbas taxCode = new SaTaxCode_Dbas(new SysId(dbTaxCode._Id), (ushort)dbTaxCode._Flags); PopulateFrom(dbTaxCode, taxCode); return taxCode; } - private SaTaxCode CreateTaxCode (DbDataReader dataReader) + private SaTaxCode CreateTaxCode(DbDataReader dataReader) { TaxCode_Db dbTaxCode = new TaxCode_Db(DbInfo); dbTaxCode.PopulateFrom(dataReader); @@ -42,13 +42,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // TaxCode exists. - public override bool TaxCodeExistsById (SysId id) + public override bool TaxCodeExistsById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return false; return GetTaxCodeCount(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Id, aliasTaxCode) + "=" + SysId.ToString(id)) == 1; } - public override bool TaxCodeExistsByCode (string code) + public override bool TaxCodeExistsByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return false; @@ -57,11 +57,11 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Get TaxCode. - public override SaTaxCode GetTaxCode (SaTaxCode.Params prm) + public override SaTaxCode GetTaxCode(SaTaxCode.Params prm) { return GetTaxCode(GetTaxCodeQueryFilter(prm).Concat(" AND ", "(", ")")); } - private SaTaxCode GetTaxCode (String filter) + private SaTaxCode GetTaxCode(String filter) { ClearErrorState(); long count = GetTaxCodeCount(filter); @@ -91,13 +91,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } return taxCode; } - public override SaTaxCode GetTaxCodeById (SysId id) + public override SaTaxCode GetTaxCodeById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return null; return GetTaxCode("Id=" + SysId.ToString(id)); } - public override SaTaxCode GetTaxCodeByCode (string code) + public override SaTaxCode GetTaxCodeByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return null; @@ -106,7 +106,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Validate item. - public override bool IsValidTaxCodeData (SaTaxCode.Data data, SaTaxCode.ErrField errField) + public override bool IsValidTaxCodeData(SaTaxCode.Data data, SaTaxCode.ErrField errField) { ClearErrorState(); if (!base.IsValidTaxCodeData(data, errField)) return false; @@ -115,7 +115,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Insert item. - public override bool InsertTaxCode (SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) + public override bool InsertTaxCode(SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidTaxCode(taxCode)) return false; @@ -143,7 +143,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Update item. - public override bool UpdateTaxCode (SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) + public override bool UpdateTaxCode(SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidTaxCode(taxCode)) return false; @@ -172,13 +172,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Delete item. - public override bool TaxCodeCanBeDeleted (SaTaxCode taxCode) + public override bool TaxCodeCanBeDeleted(SaTaxCode taxCode) { ClearErrorState(); if (!base.TaxCodeCanBeDeleted(taxCode)) return false; return true; } - public override bool DeleteTaxCode (SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) + public override bool DeleteTaxCode(SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!TaxCodeCanBeDeleted(taxCode)) return false; @@ -203,7 +203,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Copy data properties to and from database. - private void PopulateTo (TaxCode_Db dbTaxCode, SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) + private void PopulateTo(TaxCode_Db dbTaxCode, SaTaxCode taxCode, DbUpdateInfo dbUpdateInfo) { dbTaxCode._Id = taxCode.Id.ToInt(); dbTaxCode._Code = taxCode.Code; @@ -230,7 +230,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData dbTaxCode._UpdateBy = dbUpdateInfo.UserId.ToInt(); dbTaxCode._UpdateHost = dbUpdateInfo.Host; } - private void PopulateFrom (TaxCode_Db dbTaxCode, SaTaxCode taxCode) + private void PopulateFrom(TaxCode_Db dbTaxCode, SaTaxCode taxCode) { //taxCode.Id = new SysId(dbTaxCode._Id); //taxCode.Code = dbTaxCode._Code; @@ -268,7 +268,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Getting taxcode column definition. - public override ColumnDfn GetTaxCodeColumnDfn (SaTaxCode.Column columnId, string caption = "", int width = 0) + public override ColumnDfn GetTaxCodeColumnDfn(SaTaxCode.Column columnId, string caption = "", int width = 0) { ColumnDfn columnDfn = new ColumnDfn((int)columnId, caption, width); switch (columnId) @@ -355,56 +355,56 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // TaxCode query filter. - public override List GetTaxCodeQueryFilter (SaTaxCode.Params prm) + public override List GetTaxCodeQueryFilter(SaTaxCode.Params prm) { List filter = new List(); // TaxCode Id. - String includedIds = prm.IncludedIds.Concat(","); - if (!includedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Id, aliasTaxCode) + " IN (" + includedIds + ")"); - String excludedIds = prm.ExcludedIds.Concat(","); - if (!excludedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Id, aliasTaxCode) + " NOT IN (" + excludedIds + ")"); + String colId = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Id, aliasTaxCode); + if (prm.IdsIncluded.HasValidIds()) + filter.Add($"{colId} IN ({prm.IdsIncluded.Concat(",")})"); + if (prm.IdsExcluded.HasValidIds()) + filter.Add($"{colId} NOT IN ({prm.IdsExcluded.Concat(",")})"); // Code. - if (!StringUtil.IsEmpty(prm.Code)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Code, aliasTaxCode) + "='" + DbQuery.FormatForCondition(prm.Code) + "'"); - if (!StringUtil.IsEmpty(prm.CodePartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Code, aliasTaxCode) + " LIKE '%" + DbQuery.FormatForLike(prm.CodePartial) + "%'"); + String colCode = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Code, aliasTaxCode); + if (!StringUtil.IsBlank(prm.Code)) + filter.Add($"{colCode}='{DbQuery.FormatForCondition(prm.Code)}'"); + if (!StringUtil.IsBlank(prm.CodePartial)) + filter.Add($"{colCode} LIKE '%{DbQuery.FormatForLike(prm.CodePartial)}%'"); - // CodeAlt1. - if (!StringUtil.IsEmpty(prm.CodeAlt1)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_CodeAlt1, aliasTaxCode) + "='" + DbQuery.FormatForCondition(prm.CodeAlt1) + "'"); + // Code Alt 1. + if (!StringUtil.IsBlank(prm.CodeAlt1)) + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_CodeAlt1, aliasTaxCode)}='{DbQuery.FormatForCondition(prm.CodeAlt1)}'"); - // CodeAlt2. - if (!StringUtil.IsEmpty(prm.CodeAlt2)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_CodeAlt2, aliasTaxCode) + "='" + DbQuery.FormatForCondition(prm.CodeAlt2) + "'"); + // Code Alt 2. + if (!StringUtil.IsBlank(prm.CodeAlt2)) + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_CodeAlt2, aliasTaxCode)}='{DbQuery.FormatForCondition(prm.CodeAlt2)}'"); // RegionId. if (SysId.IsValid(prm.RegionId)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_RegionId, aliasTaxCode) + "=" + SysId.ToInt(prm.RegionId)); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_RegionId, aliasTaxCode)}={SysId.ToInt(prm.RegionId)}"); - // EffectOn. + // Effect On. if (DateUtil.IsValid(prm.EffectOn)) { - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_EffectFrom, aliasTaxCode) + ">" + DbQuery.FormatDateForCondition(prm.EffectOn)); - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_EffectTo, aliasTaxCode) + "<" + DbQuery.FormatDateForCondition(DateUtil.IncrementDate(prm.EffectOn,1))); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_EffectFrom, aliasTaxCode)}>{DbQuery.FormatDateForCondition(prm.EffectOn)}"); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_EffectTo, aliasTaxCode)}<{DbQuery.FormatDateForCondition(DateUtil.IncrementDate(prm.EffectOn, 1))}"); } // Notes. - if (!StringUtil.IsEmpty(prm.NotesPartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Notes, aliasTaxCode) + " LIKE '%" + DbQuery.FormatForLike(prm.NotesPartial) + "%'"); + if (!StringUtil.IsBlank(prm.NotesPartial)) + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Notes, aliasTaxCode)} LIKE '%{DbQuery.FormatForLike(prm.NotesPartial)}%'"); // Status. if (prm.StatusCat == SaTaxCode.StatusCat.ActiveOnly) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Status, aliasTaxCode) + " In ('" + SacsSystem.GetStatusCode(SaStatus.Current) + "','" + SacsSystem.GetStatusCode(SaStatus.Active) + "')"); + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Status, aliasTaxCode)} In ('{SacsSystem.GetStatusCode(SaStatus.Current)}','{SacsSystem.GetStatusCode(SaStatus.Active)}')"); if (filter.Count < 1 && prm.IncludeDefaultFilter) filter.Add("1=1"); return filter; } // TaxCode sort columns. - public List GetTaxCodeSortColumns (SaTaxCode.Params prm) + public List GetTaxCodeSortColumns(SaTaxCode.Params prm) { // Sort sequence: List sortColumnNames = new List(); @@ -439,12 +439,12 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // TaxCode count. - private long GetTaxCodeCount (String filter) + private long GetTaxCodeCount(String filter) { ClearErrorState(); return Database.GetRowCount(ReferenceDataConsole.TableName_TaxCode + " As " + aliasTaxCode, filter); } - public override long GetTaxCodeCount (SaTaxCode.Params prm) + public override long GetTaxCodeCount(SaTaxCode.Params prm) { ClearErrorState(); return GetTaxCodeCount(GetTaxCodeQueryFilter(prm).Concat(" AND ", "(", ")")); @@ -452,7 +452,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // TaxCode list. - public override List GetTaxCodeList (SaTaxCode.Params prm) + public override List GetTaxCodeList(SaTaxCode.Params prm) { ClearErrorState(); List taxCodes = new List(); @@ -487,7 +487,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // TaxCode query execution. - public override DbResultSet ExecuteTaxCodeQuery (List columns, SaTaxCode.Params prm) + public override DbResultSet ExecuteTaxCodeQuery(List columns, SaTaxCode.Params prm) { ClearErrorState(); @@ -534,7 +534,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // Populate filter. query.Filters.AddRange(GetTaxCodeQueryFilter(prm)); - if (prm.IncludedIds.Count != 1) + if (prm.IdsIncluded.Count != 1) { // Configure sort sequence. foreach (String sortColumn in GetTaxCodeSortColumns(prm)) diff --git a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-UnitMeasure.cs b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-UnitMeasure.cs index 4d10606..f81e247 100644 --- a/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-UnitMeasure.cs +++ b/SacsStandardDbas/Dbas/ReferenceData/SbmReferenceDataMgr_Dbas-UnitMeasure.cs @@ -21,19 +21,19 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // U n i t s o f M e a s u r e //******************************************************************* // Create UnitMeasure. - public override SaUnitMeasure CreateUnitMeasure () + public override SaUnitMeasure CreateUnitMeasure() { ClearErrorState(); return new SaUnitMeasure_Dbas(null, 0); } - private SaUnitMeasure_Dbas CreateUnitMeasure (UnitMeasure_Db dbUnitMeasure) + private SaUnitMeasure_Dbas CreateUnitMeasure(UnitMeasure_Db dbUnitMeasure) { ClearErrorState(); SaUnitMeasure_Dbas unitMeasure = new SaUnitMeasure_Dbas(new SysId(dbUnitMeasure._Id), (ushort)dbUnitMeasure._Flags); PopulateFrom(dbUnitMeasure, unitMeasure); return unitMeasure; } - private SaUnitMeasure CreateUnitMeasure (DbDataReader dataReader) + private SaUnitMeasure CreateUnitMeasure(DbDataReader dataReader) { UnitMeasure_Db dbUnitMeasure = new UnitMeasure_Db(DbInfo); dbUnitMeasure.PopulateFrom(dataReader); @@ -42,13 +42,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // UnitMeasure exists. - public override bool UnitMeasureExistsById (SysId id) + public override bool UnitMeasureExistsById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return false; return GetUnitMeasureCount(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Id, aliasUnitMeasure) + "=" + SysId.ToString(id)) == 1; } - public override bool UnitMeasureExistsByCode (string code) + public override bool UnitMeasureExistsByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return false; @@ -57,11 +57,11 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Get UnitMeasure. - public override SaUnitMeasure GetUnitMeasure (SaUnitMeasure.Params prm) + public override SaUnitMeasure GetUnitMeasure(SaUnitMeasure.Params prm) { return GetUnitMeasure(GetUnitMeasureQueryFilter(prm).Concat(" AND ", "(", ")")); } - private SaUnitMeasure GetUnitMeasure (String filter) + private SaUnitMeasure GetUnitMeasure(String filter) { ClearErrorState(); long count = GetUnitMeasureCount(filter); @@ -91,13 +91,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } return unitMeasure; } - public override SaUnitMeasure GetUnitMeasureById (SysId id) + public override SaUnitMeasure GetUnitMeasureById(SysId id) { ClearErrorState(); if (!SysId.IsValid(id)) return null; return GetUnitMeasure("Id=" + SysId.ToString(id)); } - public override SaUnitMeasure GetUnitMeasureByCode (string code) + public override SaUnitMeasure GetUnitMeasureByCode(string code) { ClearErrorState(); if (StringUtil.IsEmpty(code)) return null; @@ -106,7 +106,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Validate item. - public override bool IsValidUnitMeasureData (SaUnitMeasure.Data data, SaUnitMeasure.ErrField errField) + public override bool IsValidUnitMeasureData(SaUnitMeasure.Data data, SaUnitMeasure.ErrField errField) { ClearErrorState(); if (!base.IsValidUnitMeasureData(data, errField)) return false; @@ -115,7 +115,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Insert item. - public override bool InsertUnitMeasure (SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) + public override bool InsertUnitMeasure(SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidUnitMeasure(unitMeasure)) return false; @@ -143,7 +143,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Update item. - public override bool UpdateUnitMeasure (SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) + public override bool UpdateUnitMeasure(SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!IsValidUnitMeasure(unitMeasure)) return false; @@ -172,13 +172,13 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Delete item. - public override bool UnitMeasureCanBeDeleted (SaUnitMeasure unitMeasure) + public override bool UnitMeasureCanBeDeleted(SaUnitMeasure unitMeasure) { ClearErrorState(); if (!base.UnitMeasureCanBeDeleted(unitMeasure)) return false; return true; } - public override bool DeleteUnitMeasure (SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) + public override bool DeleteUnitMeasure(SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) { ClearErrorState(); if (!UnitMeasureCanBeDeleted(unitMeasure)) return false; @@ -203,7 +203,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // Copy data properties to and from database. - private void PopulateTo (UnitMeasure_Db dbUnitMeasure, SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) + private void PopulateTo(UnitMeasure_Db dbUnitMeasure, SaUnitMeasure unitMeasure, DbUpdateInfo dbUpdateInfo) { dbUnitMeasure._Id = unitMeasure.Id.ToInt(); dbUnitMeasure._Category = (short)unitMeasure.Category; @@ -232,7 +232,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData dbUnitMeasure._UpdateBy = dbUpdateInfo.UserId.ToInt(); dbUnitMeasure._UpdateHost = dbUpdateInfo.Host; } - private void PopulateFrom (UnitMeasure_Db dbUnitMeasure, SaUnitMeasure unitMeasure) + private void PopulateFrom(UnitMeasure_Db dbUnitMeasure, SaUnitMeasure unitMeasure) { //unitMeasure.Id = new SysId(dbUnitMeasure._Id); unitMeasure.Category = (SaUomCategory)dbUnitMeasure._Category; @@ -273,7 +273,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData } //------------------------------------------------------------------- // Getting uom column definition. - public override ColumnDfn GetUnitMeasureColumnDfn (SaUnitMeasure.Column columnId, string caption = "", int width = 0) + public override ColumnDfn GetUnitMeasureColumnDfn(SaUnitMeasure.Column columnId, string caption = "", int width = 0) { ColumnDfn columnDfn = new ColumnDfn((int)columnId, caption, width); switch (columnId) @@ -367,53 +367,45 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // UnitMeasure query filter. - public override List GetUnitMeasureQueryFilter (SaUnitMeasure.Params prm) + public override List GetUnitMeasureQueryFilter(SaUnitMeasure.Params prm) { List filter = new List(); // UnitMeasure Id. - String includedIds = prm.IncludedIds.Concat(","); - if (!includedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Id, aliasUnitMeasure) + " IN (" + includedIds + ")"); - String excludedIds = prm.ExcludedIds.Concat(","); - if (!excludedIds.IsEmpty()) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Id, aliasUnitMeasure) + " NOT IN (" + excludedIds + ")"); + String colId = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Id, aliasUnitMeasure); + if (prm.IdsIncluded.HasValidIds()) + filter.Add($"{colId} IN ({prm.IdsIncluded.Concat(",")})"); + if (prm.IdsExcluded.HasValidIds()) + filter.Add($"{colId} NOT IN ({prm.IdsExcluded.Concat(",")})"); // Category. - /* - if (!StringUtil.IsEmpty(prm.Category)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Category, aliasUnitMeasure) + " = '" + DbQuery.FormatForCondition(prm.Category) + "'"); - if (!StringUtil.IsEmpty(prm.CategoryPartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Category, aliasUnitMeasure) + " LIKE '%" + DbQuery.FormatForLike(prm.CategoryPartial) + "%'"); + if (prm.Category > 0) + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Category, aliasUnitMeasure)}={(int)prm.Category}"); - // UnitType. - if (!StringUtil.IsEmpty(prm.UnitType)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_UnitType, aliasUnitMeasure) + " = '" + DbQuery.FormatForCondition(prm.UnitType) + "'"); - if (!StringUtil.IsEmpty(prm.UnitTypePartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_UnitType, aliasUnitMeasure) + " LIKE '%" + DbQuery.FormatForLike(prm.UnitTypePartial) + "%'"); - */ + // Unit Type. + if (prm.UnitType > 0) + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_UnitType, aliasUnitMeasure)}={(int)prm.UnitType}"); // Code. - if (!StringUtil.IsEmpty(prm.Code)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Code, aliasUnitMeasure) + " = '" + DbQuery.FormatForCondition(prm.Code) + "'"); - if (!StringUtil.IsEmpty(prm.CodePartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Code, aliasUnitMeasure) + " LIKE '%" + DbQuery.FormatForLike(prm.CodePartial) + "%'"); + String colCode = SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Code, aliasUnitMeasure); + if (!StringUtil.IsBlank(prm.Code)) + filter.Add($"{colCode}='{DbQuery.FormatForCondition(prm.Code)}'"); + else if (!StringUtil.IsBlank(prm.CodePartial)) + filter.Add($"{colCode} LIKE '%{DbQuery.FormatForLike(prm.CodePartial)}%'"); // Notes. - /* - if (!StringUtil.IsEmpty(prm.NotesPartial)) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Notes, aliasUnitMeasure) + " LIKE '%" + DbQuery.FormatForLike(prm.NotesPartial) + "%'"); + if (!StringUtil.IsBlank(prm.NotesPartial)) + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Notes, aliasUnitMeasure)} LIKE '%{DbQuery.FormatForLike(prm.NotesPartial)}%'"); // Status. if (prm.StatusCat == SaUnitMeasure.StatusCat.ActiveOnly) - filter.Add(SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Status, aliasUnitMeasure) + " = '" + SacsSystem.GetStatusCode(SaStatus.Active) + "'"); - */ + filter.Add($"{SaReferenceDataDbDfn.GetColumnNameQual(SaReferenceDataDbDfn.ColumnIdx.UnitMeasure_Status, aliasUnitMeasure)}='{SacsSystem.GetStatusCode(SaStatus.Active)}'"); if (filter.Count < 1 && prm.IncludeDefaultFilter) filter.Add("1=1"); return filter; } // UnitMeasure sort columns. - public List GetUnitMeasureSortColumns (SaUnitMeasure.Params prm) + public List GetUnitMeasureSortColumns(SaUnitMeasure.Params prm) { // Sort sequence: List sortColumnNames = new List(); @@ -448,12 +440,12 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // UnitMeasure count. - private long GetUnitMeasureCount (String filter) + private long GetUnitMeasureCount(String filter) { ClearErrorState(); return Database.GetRowCount(ReferenceDataConsole.TableName_UnitMeasure + " As " + aliasUnitMeasure, filter); } - public override long GetUnitMeasureCount (SaUnitMeasure.Params prm) + public override long GetUnitMeasureCount(SaUnitMeasure.Params prm) { ClearErrorState(); return GetUnitMeasureCount(GetUnitMeasureQueryFilter(prm).Concat(" AND ", "(", ")")); @@ -461,7 +453,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // UnitMeasure list. - public override List GetUnitMeasureList (SaUnitMeasure.Params prm) + public override List GetUnitMeasureList(SaUnitMeasure.Params prm) { ClearErrorState(); List unitMeasures = new List(); @@ -496,7 +488,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData //------------------------------------------------------------------- // UnitMeasure query execution. - public override DbResultSet ExecuteUnitMeasureQuery (List columns, SaUnitMeasure.Params prm) + public override DbResultSet ExecuteUnitMeasureQuery(List columns, SaUnitMeasure.Params prm) { ClearErrorState(); @@ -547,7 +539,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData // Populate filter. query.Filters.AddRange(GetUnitMeasureQueryFilter(prm)); - if (prm.IncludedIds.Count != 1) + if (prm.IdsIncluded.Count != 1) { // Configure sort sequence. foreach (String sortColumn in GetUnitMeasureSortColumns(prm)) diff --git a/SacsStandardDbas/Dbas/Security/SaSecurityConsole_Dbas.cs b/SacsStandardDbas/Dbas/Security/SaSecurityConsole_Dbas.cs index 5c9701c..d358b58 100644 --- a/SacsStandardDbas/Dbas/Security/SaSecurityConsole_Dbas.cs +++ b/SacsStandardDbas/Dbas/Security/SaSecurityConsole_Dbas.cs @@ -286,8 +286,8 @@ namespace Sarand.Net.Standard.Dbas.Security // Retrieve security Group and Right items. SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.AddRange(groupLinks.GetTargetItemIds()); - prmSecItem.IncludedIds.AddRange(rightLinks.GetTargetItemIds()); + prmSecItem.IdsIncluded.UnionWith(groupLinks.GetTargetItemIds()); + prmSecItem.IdsIncluded.UnionWith(rightLinks.GetTargetItemIds()); List secItems = securityMgr.GetSecurityItemList(prmSecItem); // Add the Groups to the profile. @@ -437,7 +437,7 @@ namespace Sarand.Net.Standard.Dbas.Security // Filter. SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.Add(itemId); + prmSecItem.IdsIncluded.Add(itemId); prmSecItem.StatusCat = SaSecurityItem.StatusCat.Any; if (securityMgr.GetSecurityItemCount(prmSecItem) != 1) return null; @@ -469,7 +469,7 @@ namespace Sarand.Net.Standard.Dbas.Security // Filter. SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.Add(itemId); + prmSecItem.IdsIncluded.Add(itemId); prmSecItem.StatusCat = SaSecurityItem.StatusCat.Any; if (securityMgr.GetSecurityItemCount(prmSecItem) != 1) return null; @@ -498,7 +498,7 @@ namespace Sarand.Net.Standard.Dbas.Security // Filter. SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.AddRange(securityItemIds); + prmSecItem.IdsIncluded.UnionWith(securityItemIds); prmSecItem.StatusCat = SaSecurityItem.StatusCat.Any; // Execute query. diff --git a/SacsStandardDbas/Dbas/Security/SaSecurityMgr_Dbas-SecurityItem.cs b/SacsStandardDbas/Dbas/Security/SaSecurityMgr_Dbas-SecurityItem.cs index c3e72cf..1065248 100644 --- a/SacsStandardDbas/Dbas/Security/SaSecurityMgr_Dbas-SecurityItem.cs +++ b/SacsStandardDbas/Dbas/Security/SaSecurityMgr_Dbas-SecurityItem.cs @@ -61,7 +61,7 @@ namespace Sarand.Net.Standard.Dbas.Security ClearErrorState(); if (!SysId.IsValid(id)) return false; SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.Add(id); + prmSecItem.IdsIncluded.Add(id); prmSecItem.StatusCat = SaSecurityItem.StatusCat.Any; return GetSecurityItemCount(prmSecItem) == 1; } @@ -111,7 +111,7 @@ namespace Sarand.Net.Standard.Dbas.Security ClearErrorState(); if (!SysId.IsValid(id)) return null; SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.Add(id); + prmSecItem.IdsIncluded.Add(id); prmSecItem.StatusCat = SaSecurityItem.StatusCat.Any; return GetSecurityItem(GetSecurityItemQueryFilter(prmSecItem).Concat(" AND ", "(", ")")); } @@ -120,7 +120,7 @@ namespace Sarand.Net.Standard.Dbas.Security ClearErrorState(); if ((int)securityItemType < 1 || !SysId.IsValid(id)) return null; SaSecurityItem.Params prmSecItem = new SaSecurityItem.Params(); - prmSecItem.IncludedIds.Add(id); + prmSecItem.IdsIncluded.Add(id); prmSecItem.SecurityItemType = securityItemType; prmSecItem.StatusCat = SaSecurityItem.StatusCat.Any; return GetSecurityItem(GetSecurityItemQueryFilter(prmSecItem).Concat(" AND ", "(", ")")); @@ -421,43 +421,41 @@ namespace Sarand.Net.Standard.Dbas.Security // Security Item Id. String colId = SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecItem_Id, aliasSecurityItem); - String includedIds = prm.IncludedIds.Concat(","); - if (!includedIds.IsEmpty()) - filter.Add(colId + " IN (" + includedIds + ")"); - String excludedIds = prm.ExcludedIds.Concat(","); - if (!excludedIds.IsEmpty()) - filter.Add(colId + " NOT IN (" + excludedIds + ")"); + if (prm.IdsIncluded.HasValidIds()) + filter.Add($"{colId} IN ({prm.IdsIncluded.Concat(",")})"); + if (prm.IdsExcluded.HasValidIds()) + filter.Add($"{colId} NOT IN ({prm.IdsExcluded.Concat(",")})"); // Item type. String colType = SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecItem_Type, aliasSecurityItem); if (prm.SecurityItemType > 0) - filter.Add(colType + "=" + (int)prm.SecurityItemType); + filter.Add($"{colType}={(int)prm.SecurityItemType}"); // Code. String colCode = SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecItem_Code, aliasSecurityItem); if (!StringUtil.IsEmpty(prm.Code)) - filter.Add(colCode + "='" + DbQuery.FormatForCondition(prm.Code) + "'"); - if (!StringUtil.IsEmpty(prm.CodePartial)) - filter.Add(colCode + " LIKE '%" + DbQuery.FormatForLike(prm.CodePartial) + "%'"); + filter.Add($"{colCode}='{DbQuery.FormatForCondition(prm.Code)}'"); + else if (!StringUtil.IsEmpty(prm.CodePartial)) + filter.Add($"{colCode} LIKE '%{DbQuery.FormatForLike(prm.CodePartial)}%'"); // Email address. String colEmailAddress = SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecItem_EmailAddress, aliasSecurityItem); if (!StringUtil.IsEmpty(prm.EmailAddress)) - filter.Add(colEmailAddress + "='" + DbQuery.FormatForCondition(prm.EmailAddress) + "'"); - if (!StringUtil.IsEmpty(prm.EmailAddressPartial)) - filter.Add(colEmailAddress + " LIKE '%" + DbQuery.FormatForLike(prm.EmailAddressPartial) + "%'"); + filter.Add($"{colEmailAddress}='{DbQuery.FormatForCondition(prm.EmailAddress)}'"); + else if (!StringUtil.IsEmpty(prm.EmailAddressPartial)) + filter.Add($"{colEmailAddress} LIKE '%{DbQuery.FormatForLike(prm.EmailAddressPartial)}%'"); // Description. String colDesc = SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecItem_Description, aliasSecurityItem); if (!StringUtil.IsEmpty(prm.Description)) - filter.Add(colDesc + "='" + DbQuery.FormatForCondition(prm.Description) + "'"); + filter.Add($"{colDesc}='{DbQuery.FormatForCondition(prm.Description)}'"); if (!StringUtil.IsEmpty(prm.DescriptionPartial)) - filter.Add(colDesc + " LIKE '%" + DbQuery.FormatForLike(prm.DescriptionPartial) + "%'"); + filter.Add($"{colDesc} LIKE '%{DbQuery.FormatForLike(prm.DescriptionPartial)}%'"); // Security Groups. - String includedGroupIds = prm.IncludedGroupIds.Concat(","); + String includedGroupIds = prm.GroupIdsIncluded.Concat(","); if (!includedGroupIds.IsEmpty()) - filter.Add(colId + " IN " + + filter.Add($"{colId} IN " + "(Select " + SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecLink_ItemOwner) + " FROM " + SaSecurityDbDfn.GetTableName(SaSecurityDbDfn.TableIdx.SaSecLink) + " WHERE " + SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecLink_ItemTarget) + " IN (" + includedGroupIds + "))"); @@ -465,9 +463,9 @@ namespace Sarand.Net.Standard.Dbas.Security // Status. String colStatus = SaSecurityDbDfn.GetColumnNameQual(SaSecurityDbDfn.ColumnIdx.SaSecItem_Status, aliasSecurityItem); if (prm.StatusCat == SaSecurityItem.StatusCat.EnabledOnly) - filter.Add(colStatus + " = '" + SacsSystem.GetStatusCode(SaStatus.Enabled) + "'"); + filter.Add($"{colStatus}='{SacsSystem.GetStatusCode(SaStatus.Enabled)}'"); else if (prm.StatusCat == SaSecurityItem.StatusCat.DisabledOnly) - filter.Add(colStatus + " = '" + SacsSystem.GetStatusCode(SaStatus.Disabled) + "'"); + filter.Add($"{colStatus}='{SacsSystem.GetStatusCode(SaStatus.Disabled)}'"); if (filter.Count < 1 && prm.IncludeDefaultFilter) filter.Add("1=1"); return filter; @@ -655,7 +653,7 @@ namespace Sarand.Net.Standard.Dbas.Security // Populate filter. query.Filters.AddRange(GetSecurityItemQueryFilter(prm)); - if (prm.IncludedIds.Count != 1) + if (prm.IdsIncluded.Count != 1) { // Configure sort sequence. foreach (String sortColumn in GetSecurityItemSortColumns(prm))