public new void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { base.CustomizeModel(model, repository, node, filter, masterNode, kodPolozkyModulu); var eSAMRezim = repository.GetNastavenieI("cfe", "eSAMRezim"); var isoZdroj = repository.GetNastavenieI("cfe", "ISOZdroj"); var isoZdrojNazov = repository.GetNastavenieS("cfe", "ISOZdrojNazov"); if (model.Fields != null) { if (eSAMRezim != 1 && repository.Session.AdminLevel != AdminLevel.SysAdmin) { model.Fields.FirstOrDefault(p => p.Name == nameof(DCOM)).Text = "_DCOM"; } } if (eSAMRezim == 1) { var na = new NodeAction(NodeActionType.MenuButtonsAll) { ActionIcon = NodeActionIcons.Refresh, Caption = "DCOM", MenuButtons = new List <NodeAction>() { new NodeAction(NodeActionType.DoposlanieUhradDoDcomu) { SelectionMode = PfeSelection.Multi, IdField = "D_BiznisEntita_Id", Url = "/office/reg/long/DoposlanieUhradDoDcomu" } } }; node.Actions.Add(na); } if (isoZdroj > 0 && repository.Session.Roles.Where(w => w.Contains("REG_MIGRATOR")).Any() && model.Type != PfeModelType.Form) { if (node.Actions.Any(x => x.ActionType == NodeActionType.MenuButtonsAll)) { var polozkaMenuAll = node.Actions.Where(x => x.ActionType == NodeActionType.MenuButtonsAll && x.Caption == "ISO").FirstOrDefault(); if (polozkaMenuAll != null) { polozkaMenuAll.Caption = isoZdrojNazov; } } } else { node.Actions.RemoveAll(x => x.ActionType == NodeActionType.MenuButtonsAll && x.Caption == "ISO"); } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model?.Fields == null || node == null) { return; } Helpers.AddMzdyCaptions(model, repository, masterNode.Kod == "pol" && (repository.Session.AdminLevel == AdminLevel.SysAdmin) && kodPolozkyModulu == null, false); if (masterNode.Kod == "pol") { node.Actions.RemoveAll(x => x.ActionType == NodeActionType.MenuButtonsAll); } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model.Fields != null) { var kodField = model.Fields.FirstOrDefault(p => p.Name == nameof(KOD)); if (kodField != null) { kodField.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { new PfeSearchFieldDefinition { Code = "bds-kat-mat", NameField = nameof(V_MAT_0View.KOD), DisplayField = nameof(V_MAT_0View.KOD), /* * Condition = new List<PfeFilterAttribute> * { * new PfeFilterAttribute * { * Field = nameof(ExpenseBy), * ComparisonOperator = "eq", * Value = 2, //3D - to znamená, že vyberám z katalógu * } * }, */ }, /* * new PfeSearchFieldDefinition * { * Code = "bds-skl-sts", * NameField = nameof(V_MAT_0View.KOD), * DisplayField = nameof(V_MAT_0View.KOD), * Condition = new List<PfeFilterAttribute> * { * new PfeFilterAttribute * { * Field = nameof(ExpenseBy), * ComparisonOperator = "eq", * Value = 1, //Stock - to znamená, že vyberám zo stavu skladu * } * }, * } */ }; } } }
public void BeforeGetList(IWebEasRepositoryBase repository, HierarchyNode node, ref string sql, ref Filter filter, ref string sqlFromAlias, string sqlOrderPart) { if (!repository.GetNastavenieB("cfe", "PohladavkyDAP")) { filter.And(new FilterElement() { Key = nameof(Tree.C_Modul_Id), Operator = FilterOperator.Ne.Value, Value = (int)ModulEnum.DAP }); filter.And(new FilterElement() { Key = nameof(Tree.Kod), Operator = FilterOperator.NotLike.Value, Value = "%dap%" }); } ; }
public static void AddGuidRecordsToCache <T>(IWebEasRepositoryBase repository, IEnumerable <KeyValuePair <string, string> > recordsToCache, string hashId = null) { if (recordsToCache.Any()) { hashId ??= UrnId.Create <T>(repository.Session.Id); repository.Redis.Remove(hashId); repository.Redis.SetRangeInHash(hashId, recordsToCache); var sessionKey = SessionFeature.GetSessionKey(repository.Session.Id); var ttl = repository.Redis.GetTimeToLive(sessionKey); if (ttl.HasValue) { repository.Redis.ExpireEntryIn(hashId, ttl.Value); } } }
public static void AddFilterForUcetByStringOrId(IWebEasRepositoryBase repository, Filter filter, Dictionary <string, object> parameters) { string ucetIdsOd = parameters.ContainsKey("C_UCTROZVRH_ID_OD") ? parameters["C_UCTROZVRH_ID_OD"].ToString() : string.Empty; string ucetIdsDo = parameters.ContainsKey("C_UCTROZVRH_ID_DO") ? parameters["C_UCTROZVRH_ID_DO"].ToString() : string.Empty; string ucetOd = parameters.ContainsKey("ROZVRHUCET_OD") ? parameters["ROZVRHUCET_OD"].ToString() : string.Empty; string ucetDo = parameters.ContainsKey("ROZVRHUCET_DO") ? parameters["ROZVRHUCET_DO"].ToString() : string.Empty; if (ucetIdsOd.Contains(",") && (!ucetIdsDo.IsEmpty() || !ucetDo.IsEmpty())) //Nedovolím pri multiselecte druhú stranu { throw new WebEasValidationException(null, "Pri výbere viacerých účtov je možné použiť iba parameter 'Účet od'!"); } else if (ucetIdsOd.Contains(",")) { //Multiselect ID hodnôt, zmením na stringy var uct = repository.Db.Select <(int C_UctRozvrh_Id, string Ucet)>("SELECT C_UctRozvrh_Id, Ucet FROM uct.V_UctRozvrh WHERE C_UctRozvrh_Id IN (@ucetIdsOd)", new { ucetIdsOd = ucetIdsOd.FromJson <List <int> >() }); List <FilterElement> rue = new List <FilterElement>(); foreach (var u in uct) { rue.Add(FilterElement.Like("RozvrhUcet", string.Concat(u.Ucet, "%"))); } filter.And(Filter.OrElements(rue.ToArray())); } else { if (!ucetIdsOd.IsEmpty()) { //Zistim si ID-čko ucetOd = repository.Db.Scalar <string>("SELECT Ucet FROM uct.V_UctRozvrh WHERE C_UctRozvrh_Id = @Id", new { Id = ucetIdsOd }); } if (!ucetIdsDo.IsEmpty()) { //Zistim si ID-čko ucetDo = repository.Db.Scalar <string>("SELECT Ucet FROM uct.V_UctRozvrh WHERE C_UctRozvrh_Id = @Id", new { Id = ucetIdsDo }); } //Z FE chodia do filtra aj tieto dopĺňané znaky, ktoré v DB nie sú //Nepoužívam: RepositoryBase.OdstranitFormatovanieUctuFiltra("ROZVRHUCET_DO", ref filter); ucetOd = ucetOd.Replace(" ", "").Replace(".", "").Replace("-", "").Replace("/", ""); ucetDo = ucetDo.Replace(" ", "").Replace(".", "").Replace("-", "").Replace("/", ""); AddStringFilterOdDo(filter, ucetOd, ucetDo, "RozvrhUcet"); //Nemáme tento field zatiaľ oficiálne } }
public void ComboCustomize(IWebEasRepositoryBase repository, string column, string kodPolozky, Dictionary <string, string> requiredFields, ref PfeComboAttribute comboAttribute, HierarchyNode node) { if (column.ToLower() == "StavNazov".ToLower() && (kodPolozky.StartsWith("crm-dod-")) || kodPolozky.StartsWith("crm-odb-")) { comboAttribute.AdditionalWhereSql = "C_StavEntity_Id IN (-2, -1, 1, 7, 8, 10, 14, 15)"; } else if (column.ToLower() == "StavNazov".ToLower() && (kodPolozky.StartsWith("fin-pok-") || kodPolozky.StartsWith("fin-bnk-") || kodPolozky.StartsWith("all-evi-intd") || kodPolozky.StartsWith("uct-evi-exd-"))) { comboAttribute.AdditionalWhereSql = "C_StavEntity_Id IN (1, 7, 10, 14, 15)"; } else if (column.ToLower() == "StavNazov".ToLower() && (kodPolozky.StartsWith("maj-"))) { comboAttribute.AdditionalWhereSql = "C_StavEntity_Id IN (1,22,23,24,25,26)"; } }
public void BeforeGetList(IWebEasRepositoryBase repository, HierarchyNode node, ref string sql, ref Filter filter, ref string sqlFromAlias, string sqlOrderPart) { if (filter != null) { //Špeciálny filter na dap.V_Vymer - treba z filtra odstrániť polia z daní filter.ChangeFilterCondition("C_VymerTyp_Id =", "99 ="); //Špeciálny filter na doklady crm.V_DokladDFA/OFA/DZF/OZF - treba z filtra odstrániť filtrovanie polí, ktoré je platné pre faktúry filter.ChangeFilterCondition("R = 1", "1 = 2"); filter.ChangeFilterCondition("S = 1", "1 = 2"); filter.ChangeFilterCondition("DM_Suma < 0", "1 = 2"); filter.ChangeFilterCondition("D_Osoba_Id = null", "3 = 4"); //Špeciálny filter na fin.V_DokladPDK - treba z filtra odstrániť filtrovanie polí, ktoré je platné pre mzdy filter.ChangeFilterCondition("ISNULL(POS_V, 0) = 0", "4 = 5"); filter.ChangeFilterCondition("C_TypBiznisEntity_Kniha_Id = 53", "4 = 5"); } }
public static void RemoveActionsOnSync(this List <NodeAction> actions, IWebEasRepositoryBase repository, HierarchyNode node) { var dapRoz = node.KodPolozky == "dap-evi-roz"; var dapRozPol = node.KodPolozky == "dap-evi-roz-pol"; var dapCis = node.KodPolozky == "dap-cis-druh"; var dapCisPri = node.KodPolozky == "dap-cis-pri"; var dapCisKat = node.KodPolozky == "dap-cis-kat"; var eSAMRezim = repository.GetNastavenieI("cfe", "eSAMRezim"); var isoZdroj = repository.GetNastavenieI("cfe", "ISOZdroj"); if ((dapRoz || dapRozPol || dapCis || dapCisPri || dapCisKat) && (eSAMRezim > 0 || isoZdroj > 0)) { actions.RemoveAll(x => x.ActionType == NodeActionType.MenuButtonsAll || x.ActionType == NodeActionType.Delete); } }
public static void AddCMSumaDoklad_Validator(IWebEasRepositoryBase repository, PfeColumnAttribute cmSumaDoklad, bool pdk = false) { if (cmSumaDoklad != null) { bool crmSupervisor = repository.Session.HasRole(pdk ? "FIN_SUPERVISOR" : "CRM_SUPERVISOR"); cmSumaDoklad.Validator ??= new PfeValidator { Rules = new List <PfeRule>() }; if (crmSupervisor) { cmSumaDoklad.Validator.Rules.Add(new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = "C_StavEntity_Id", ComparisonOperator = "ne", Value = (int)StavEntityEnum.NOVY } } }); } //else //{ // cmSumaDoklad.Validator.Rules.Add(new PfeRule // { // ValidatorType = PfeValidatorType.Disable, // Condition = new List<PfeFilterAttribute> // { // new PfeFilterAttribute // { // Field = "DatumVytvorenia", // ComparisonOperator = "ne", // Value = null // } // } // }); //} } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model.Fields != null) { var typFld = model.Fields.FirstOrDefault(p => p.Name == nameof(TypNazov)); if (typFld != null) { typFld.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { new PfeSearchFieldDefinition { Code = "reg-cis-typ", NameField = nameof(TypView.C_Typ_Id), DisplayField = nameof(TypView.Nazov) } }; } } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model.Fields != null) { var kodField = model.Fields.FirstOrDefault(p => p.Name == nameof(KOD)); if (kodField != null) { kodField.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { new PfeSearchFieldDefinition { Code = "bds-kat-mat", NameField = nameof(V_MAT_0View.KOD), DisplayField = nameof(V_MAT_0View.KOD), //AdditionalFilterDesc = "(Platné zdroje)" } }; } } }
public void BeforeGetList(IWebEasRepositoryBase repository, HierarchyNode node, ref string sql, ref Filter filter, ref string sqlFromAlias, string sqlOrderPart) { if (filter?.Parameters != null) { var parameters = filter.Parameters; var newFilter = new Filter(nameof(D_Tenant_Id), repository.Session.TenantIdGuid); if (sqlFromAlias.Contains("@Rok")) { string sRok = (parameters.ContainsKey(nameof(Rok).ToUpper())) ? parameters[nameof(Rok).ToUpper()].ToString() : DateTime.Now.Year.ToString(); sqlFromAlias = sqlFromAlias.Replace("@Rok", sRok); } //ObdobieOd sa pri FIN 1-12 do funkcie nevyžíva - od je iba na ilustraciu pre usera na FE if (sqlFromAlias.Contains("@Obdobie")) { string sObdobie = parameters.ContainsKey("OBDOBIEDO") ? parameters["OBDOBIEDO"].ToString() : DateTime.Now.Month.ToString(); sqlFromAlias = sqlFromAlias.Replace("@Obdobie", sObdobie); } bool showP = parameters.ContainsKey("SHOWP"); bool showV = parameters.ContainsKey("SHOWV"); if ((showP || showV) && !(showP && showV)) { newFilter.AndEq(nameof(PrijemVydaj), showP ? 1 : 2); } bool ShowB = parameters.ContainsKey("SHOWB"); bool ShowK = parameters.ContainsKey("SHOWK"); bool ShowF = parameters.ContainsKey("SHOWF"); if ((ShowB || ShowK || ShowF) && !(ShowB && ShowK & ShowF)) { //1 - 'Bežný'; 2 - 'Kapitálový', 3 - 'Finančné operácie' newFilter.And(FilterElement.Custom($"{nameof(C_RzpTyp_Id)} IN ({(ShowB ? 1 : -1)}, {(ShowK ? 2 : -1)}, {(ShowF ? 3 : -1)})")); } filter = BookFilterGenerator.AddNoDialogFilters(filter, newFilter); } }
public static List <T> GetGuidRecordsFromCache <T>(IWebEasRepositoryBase repository, Guid id, string hashId = null) where T : class { hashId ??= UrnId.Create <T>(repository.Session.Id); var redisData = repository.Redis.GetValueFromHash(hashId, id.ToString()); var data = new List <T>(); if (!redisData.IsNullOrEmpty()) { //je to pole stringov if (redisData.StartsWith("[\"")) { var dataForGuid = repository.Redis.GetValuesFromHash(hashId, redisData.FromJson <List <string> >().ToArray()); dataForGuid.ForEach(x => data.AddRange(x.FromJson <List <T> >())); } else { data = redisData.FromJson <List <T> >(); } } return(data); }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { /* * if (model.Fields != null) * { * var icoField = model.Fields.FirstOrDefault(p => p.Name == nameof(ICO)); * if (icoField != null) * { * icoField.SearchFieldDefinition = new List<PfeSearchFieldDefinition> * { * new PfeSearchFieldDefinition * { * Code = "osa-oso-po", * NameField = nameof(PO_OsobaView.D_PO_Osoba_Id), * DisplayField = nameof(PO_OsobaView.ICO), * InputSearchField = nameof(PO_OsobaView.InputSearchField) * } * }; * } * } */ }
public void ComboCustomize(IWebEasRepositoryBase repository, string column, string kodPolozky, Dictionary <string, string> requiredFields, ref PfeComboAttribute comboAttribute, HierarchyNode node) { if (column.ToLower() == "idformatmeno" || column.ToLower() == "adresatpsidlo") { if (kodPolozky.StartsWith("crm-dod-")) // Dodávatelia { comboAttribute.AdditionalWhereSql = $"C_FakturaciaVztah_Id IN ({(int)FakturaciaVztahEnum.DOD}, {(int)FakturaciaVztahEnum.DOD_ODB})"; } else if (kodPolozky.StartsWith("crm-odb-")) // Odberatelia { comboAttribute.AdditionalWhereSql = $"C_FakturaciaVztah_Id IN ({(int)FakturaciaVztahEnum.ODB}, {(int)FakturaciaVztahEnum.DOD_ODB})"; } else if (kodPolozky.StartsWith("fin-pok-pdk") && column.ToLower() == "idformatmeno") // Pokladničné doklady { comboAttribute.Tpl = "{value};{AdresaTPSidlo};daň: {Danovnik};dod: {Dodavatel};odb: {Odberatel}"; var additionalFields = new[] { nameof(AdresaTPSidlo), nameof(Danovnik), nameof(Dodavatel), nameof(Odberatel) }; comboAttribute.AdditionalFields = comboAttribute.AdditionalFields != null?comboAttribute.AdditionalFields.Union(additionalFields).Distinct().ToArray() : additionalFields; } else if (kodPolozky.StartsWith("fin-pok-pdk") && column.ToLower() == "adresatpsidlo") // Pokladničné doklady { comboAttribute.Tpl = "{value};{IdFormatMeno};daň: {Danovnik};dod: {Dodavatel};odb: {Odberatel}"; var additionalFields = new[] { nameof(IdFormatMeno), nameof(Danovnik), nameof(Dodavatel), nameof(Odberatel) }; comboAttribute.AdditionalFields = comboAttribute.AdditionalFields != null?comboAttribute.AdditionalFields.Union(additionalFields).Distinct().ToArray() : additionalFields; } //Combo služba sa volá aj v špeciálnom prípade z dialógu P/Z. //Vtedy sa volá bez "!" a natvrdo sa má pridať filter na "Zákazník = 1" if (kodPolozky.Contains("fin-pok-pdk") && !kodPolozky.Contains("!")) { comboAttribute.AdditionalWhereSql += (!string.IsNullOrEmpty(comboAttribute.AdditionalWhereSql) ? " AND " : string.Empty) + nameof(Zakaznik) + " = 1"; } if (kodPolozky.StartsWith("all-prh-fa")) { byte typFakturacieId = requiredFields != null && requiredFields.ContainsKey("E_TypFakturacie_Id") ? byte.Parse(requiredFields["E_TypFakturacie_Id"]) : (byte)3; comboAttribute.AdditionalWhereSql += Helpers.GetTypFakturacieFilterSql(typFakturacieId); } } }
public static byte GetHighDph(DateTime datum, out int dphRezim, IWebEasRepositoryBase repository) { byte dphHigh = 0; dphRezim = (int)repository.GetNastavenieI("reg", "RezimDph"); if (dphRezim > 0) // 0 = neplatca; 1 = neplatca s evidenciou DPH na došlých dokladoch; 2 = mesačný platca; 4 = štvrťročný platca { // Nefungujuce riesenia: 1) nevedel vyskladat WHERE 2) Selectoval vsetky polia a filtroval az na BE // 1) repository.GetList<DphSadzbaView>(x => x.PlatnostOd <= DateTime.Today && x.PlatnostDo == null || x.PlatnostOd <= DateTime.Today && DateTime.Today <= x.PlatnostDo); // 2) repository.GetList<DphSadzbaView>().Where(x => x.PlatnostOd <= DateTime.Today && (x.PlatnostDo == null || DateTime.Today <= x.PlatnostDo)); // az toto vytvorilo korektny SELECT var flt = new Filter(); flt.And(FilterElement.LessThanOrEq("PlatnostOd", datum)); flt.And(new Filter(FilterElement.Eq("PlatnostDo", null)).Or(FilterElement.GreaterThanOrEq("PlatnostDo", datum))); var selectedFields = new List <string> { nameof(DphSadzbaView.DPH) }; dphHigh = repository.GetList <DphSadzbaView>(flt, null, selectedFields: selectedFields).OrderByDescending(x => x.DPH).Take(1).FirstOrDefault().DPH; } return(dphHigh); }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model.Fields != null) { var zdrojField = model.Fields.FirstOrDefault(p => p.Name == nameof(ZdrojFull)); if (zdrojField != null) { zdrojField.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { new PfeSearchFieldDefinition { Code = "rzp-cis-zdr", NameField = nameof(FRZdrojView.C_FRZdroj_Id), DisplayField = nameof(FRZdrojView.ZdrojFull), AdditionalFilterDesc = "(Platné zdroje)" } }; } } int isoZdroj = (int)repository.GetNastavenieI("cfe", "ISOZdroj"); var isoZdrojNazov = repository.GetNastavenieS("cfe", "ISOZdrojNazov"); if (isoZdroj == 1 && repository.Session.Roles.Where(w => w.Contains("REG_MIGRATOR")).Any() && model.Type != PfeModelType.Form) { var polozkaMenuAll = node.Actions.Where(x => x.ActionType == NodeActionType.MenuButtonsAll && x.Caption == "ISO").FirstOrDefault(); if (polozkaMenuAll != null) { polozkaMenuAll.Caption = isoZdrojNazov; } } else { node.Actions.RemoveAll(x => x.ActionType == NodeActionType.MenuButtonsAll && x.Caption == "ISO"); } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model.Fields != null) { } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model.Fields != null) { #region StavovyPriestor var stavovyPriestor = model.Fields.FirstOrDefault(p => p.Name == nameof(StavovyPriestor)); if (stavovyPriestor != null) { stavovyPriestor.Validator = new PfeValidator { Rules = new List <PfeRule> { new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "BAN", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "PDK", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "IND", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "DFA", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "OFA", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "PRI", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "VYD", LogicOperator = "AND" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "ne", Value = "PRE", LogicOperator = "AND" } } } } }; } #endregion #region strediskoNaHlavicke var strediskoNaHlavicke = model.Fields.FirstOrDefault(p => p.Name == nameof(StrediskoNaHlavicke)); if (strediskoNaHlavicke != null) { strediskoNaHlavicke.Validator = new PfeValidator { Rules = new List <PfeRule> { new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "BAN", LogicOperator = "OR" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "PPP", LogicOperator = "OR" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DAP", LogicOperator = "OR" } } } } }; } #endregion #region strediskoNaPolozke var strediskoNaPolozke = model.Fields.FirstOrDefault(p => p.Name == nameof(StrediskoNaPolozke)); if (strediskoNaPolozke != null) { strediskoNaPolozke.Validator = new PfeValidator { Rules = new List <PfeRule> { new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "PPP", LogicOperator = "OR" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "IND", LogicOperator = "OR" }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DAP", LogicOperator = "OR" } } } } }; } #endregion #region uctovatPolozkovite var uctovatPolozkovite = model.Fields.FirstOrDefault(p => p.Name == nameof(UctovatPolozkovite)); if (uctovatPolozkovite != null) { uctovatPolozkovite.Validator = new PfeValidator { Rules = new List <PfeRule> { new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "ODP", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DDP", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "OCP", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DCP", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "OOB", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DOB", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "OZM", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DZM", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "OZF", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DZF", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "PPP", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 }, new PfeFilterAttribute { Field = nameof(KodDokladu), ComparisonOperator = "eq", Value = "DOL", LogicOperator = "OR", LeftBrace = 1, RightBrace = 1 } } } } }; } #endregion #region cislovanieJedno var cislovanieJedno = model.Fields.FirstOrDefault(p => p.Name == nameof(CislovanieJedno)); if (cislovanieJedno != null) { cislovanieJedno.Validator = new PfeValidator { Rules = new List <PfeRule> { new PfeRule { ValidatorType = PfeValidatorType.SetValue, Value = true, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(StrediskoNaHlavicke), ComparisonOperator = "eq", Value = false } } }, new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(StrediskoNaHlavicke), ComparisonOperator = "eq", Value = false } } } } }; } #endregion } }
public static void UctDennik_BeforeGetList(IWebEasRepositoryBase repository, HierarchyNode node, ref string sql, ref Filter filter, ref string sqlFromAlias, string sqlOrderPart) { if (filter?.Parameters != null) { var parameters = filter.Parameters; bool zau = parameters.ContainsKey("ZAU"); bool notZau = parameters.ContainsKey("NOTZAU"); bool cinnost = parameters.ContainsKey("CINNOST"); var newFilter = new Filter(nameof(UctDennikRptHelper.D_Tenant_Id), repository.Session.TenantIdGuid); if (parameters.ContainsKey(nameof(UctDennikRptHelper.Rok).ToUpper())) { newFilter.AndEq(nameof(UctDennikRptHelper.Rok), parameters[nameof(UctDennikRptHelper.Rok).ToUpper()]); } AddIntOrDateFilterOdDo( newFilter, parameters.ContainsKey("OBDOBIEOD") ? parameters["OBDOBIEOD"].ToString() : string.Empty, parameters.ContainsKey("OBDOBIEDO") ? parameters["OBDOBIEDO"].ToString() : string.Empty, nameof(UctDennikRptHelper.UOMesiac)); AddIntOrDateFilterOdDo( newFilter, parameters.ContainsKey("DATUMOD") ? parameters["DATUMOD"].ToString() : string.Empty, parameters.ContainsKey("DATUMDO") ? parameters["DATUMDO"].ToString() : string.Empty, nameof(UctDennikRptHelper.DatumUctovania)); #region Hodnota Od - Do string valOd = parameters.ContainsKey("HODNOTAOD") ? parameters["HODNOTAOD"].ToString() : string.Empty; string valDo = parameters.ContainsKey("HODNOTADO") ? parameters["HODNOTADO"].ToString() : string.Empty; if (!string.IsNullOrEmpty(valDo) && (string.IsNullOrEmpty(valOd))) { valOd = "0.001"; //Zmena zabezpečí aby sa rátalo od 0 do valDo a nebralo stranu na ktorej je 0. } if (!string.IsNullOrEmpty(valOd) && (string.IsNullOrEmpty(valDo) || valDo == "0" || valOd == valDo)) { newFilter.And(Filter.OrElements(FilterElement.Eq(nameof(UctDennikRptHelper.SumaMD), valOd), FilterElement.Eq(nameof(UctDennikRptHelper.SumaDal), valOd))); } else if (!string.IsNullOrEmpty(valOd) && !string.IsNullOrEmpty(valDo)) { newFilter.And(Filter.OrElements(Filter.AndElements(FilterElement.GreaterThanOrEq(nameof(UctDennikRptHelper.SumaMD), valOd), FilterElement.LessThanOrEq(nameof(UctDennikRptHelper.SumaMD), valDo)), Filter.AndElements(FilterElement.GreaterThanOrEq(nameof(UctDennikRptHelper.SumaDal), valOd), FilterElement.LessThanOrEq(nameof(UctDennikRptHelper.SumaDal), valDo)))); } #endregion AddFilterForUcetByStringOrId(repository, newFilter, parameters); AddStringFilterOdDo( newFilter, parameters.ContainsKey("CISLOINTERNEOD") ? parameters["CISLOINTERNEOD"].ToString() : string.Empty, parameters.ContainsKey("CISLOINTERNEDO") ? parameters["CISLOINTERNEDO"].ToString() : string.Empty, nameof(UctDennikRptHelper.CisloInterne)); if (!zau && notZau || zau && !notZau) { newFilter.AndEq(nameof(UctDennikRptHelper.U), zau ? 1 : 0); } if (cinnost) { newFilter.AndEq(nameof(UctDennikRptHelper.PodnCinn), (parameters["CINNOST"].ToString() == "2") ? 1 : 0); } AddFilterForIDsDkl(newFilter, parameters); AddFilterForIDsUct(newFilter, parameters); filter = AddNoDialogFilters(filter, newFilter, true); } }
public static void AddFilterForIDsRzp(Filter filter, Dictionary <string, object> parameters, IWebEasRepositoryBase repository) { #region Rozpočtová položka if (parameters.ContainsKey("C_RZPPOL_ID")) { // JP: spadne ak sa zavola v "Zmeny rozpoctu" akcia na polozke "Zobrazit prehlad rozpoctu" - vieme o tom riesenie in progress (FE) filter.And(FilterElement.In("C_RzpPol_Id", parameters["C_RZPPOL_ID"].ToString().FromJson <List <int> >())); } if (parameters.ContainsKey("RZPUCETNAZOV")) // Zadaná časť textu rozpočtovej položky { filter.And(FilterElement.Like("RzpUcetNazov", string.Concat(parameters["RZPUCETNAZOV"].ToString(), "%"))); } #endregion #region FRZdroj string zdIds = parameters.ContainsKey("C_FRZDROJ_ID") ? parameters["C_FRZDROJ_ID"].ToString() : string.Empty; if (!zdIds.IsEmpty()) { //Multiselect ID hodnôt, filtrujem cez jednotlivé časti ZD var fks = repository.Db.Select(repository.Db.From <FRZdrojView>() .Select(x => new { x.C_FRZdroj_Id, x.ZD1, x.ZD2, x.ZD3, x.ZD4, x.ZD5, x.ZdrojKod, x.Platny }) .Where(x => Sql.In(x.C_FRZdroj_Id, zdIds.FromJson <List <int> >()))); List <FilterElement> rue = new List <FilterElement>(); //Stĺpce "ZD1, ZD2, ZD3, ZD4, ZD5" nie sú v modeli, iba fyzicky v rzp.V_RzpDennik foreach (var p in fks) { string flt = string.Empty; if (p.Platny || !p.ZdrojKod.IsNullOrEmpty()) { flt = $"C_FRZdroj_Id = {p.C_FRZdroj_Id}"; //Môžem ísť cez ID } else { flt = $"ZD1 = '{p.ZD1}'"; if (!p.ZD2.IsNullOrEmpty()) { flt += $" AND ZD2 = '{p.ZD2}'"; } if (!p.ZD3.IsNullOrEmpty()) { flt += $" AND ZD3 = '{p.ZD3}'"; } if (!p.ZD4.IsNullOrEmpty()) { flt += $" AND ZD4 = '{p.ZD4}'"; } //p.ZD5 - tieto sú platné vždy } rue.Add(FilterElement.Custom(flt)); } filter.And(Filter.OrElements(rue.ToArray())); } #endregion #region FR Ekonomická klasifikácia string ekIds = parameters.ContainsKey("C_FREK_ID") ? parameters["C_FREK_ID"].ToString() : string.Empty; if (!ekIds.IsEmpty()) { //Multiselect ID hodnôt, filtrujem cez jednotlivé časti FK var eks = repository.Db.Select(repository.Db.From <FREK>() .Select(x => new { x.C_FREK_Id, x.EKPolozka, x.EKPodpolozka, x.Platny }) .Where(x => Sql.In(x.C_FREK_Id, ekIds.FromJson <List <int> >()))); List <FilterElement> rue = new List <FilterElement>(); //Stĺpce "EKPolozka, EKPodpolozka" nie sú v modeli, iba fyzicky v rzp.V_RzpDennik foreach (var p in eks) { string flt = string.Empty; if (p.Platny || !p.EKPodpolozka.IsNullOrEmpty()) //všetky s podpoložkou { flt = $"C_FREK_ID = {p.C_FREK_Id}"; //Môžem ísť cez ID } else { flt = $"EKPolozka LIKE '{p.EKPolozka.TrimEnd('0')}%'"; //Nuly sprava odstraňujem } rue.Add(FilterElement.Custom(flt)); } filter.And(Filter.OrElements(rue.ToArray())); } #endregion #region FR Funkčná klasifikácia string fkIds = parameters.ContainsKey("C_FRFK_ID") ? parameters["C_FRFK_ID"].ToString() : string.Empty; if (!fkIds.IsEmpty()) { //Multiselect ID hodnôt, filtrujem cez jednotlivé časti FK var fks = repository.Db.Select(repository.Db.From <FRFK>() .Select(x => new { x.C_FRFK_Id, x.FKOddiel, x.FKSkupina, x.FKTrieda, x.FKPodtrieda, x.Platny }) .Where(x => Sql.In(x.C_FRFK_Id, fkIds.FromJson <List <int> >()))); List <FilterElement> rue = new List <FilterElement>(); //Stĺpce "FKOddiel, FKSkupina, FKTrieda, FKPodtrieda" nie sú v modeli, iba fyzicky v rzp.V_RzpDennik foreach (var p in fks) { string flt = string.Empty; if (p.Platny || !p.FKPodtrieda.IsNullOrEmpty()) { flt = $"C_FRFK_Id = {p.C_FRFK_Id}"; //Môžem ísť cez ID } else { flt = $"FKOddiel = '{p.FKOddiel}'"; if (!p.FKSkupina.IsNullOrEmpty()) { flt += $" AND FKSkupina = '{p.FKSkupina}'"; } if (!p.FKTrieda.IsNullOrEmpty()) { flt += $" AND FKTrieda = '{p.FKTrieda}'"; } //p.FKPodtrieda - tieto sú platné vždy } rue.Add(FilterElement.Custom(flt)); } filter.And(Filter.OrElements(rue.ToArray())); } #endregion #region Programy aj s podúrovňami string programIds = parameters.ContainsKey("D_PROGRAM_ID") ? parameters["D_PROGRAM_ID"].ToString() : string.Empty; if (!programIds.IsEmpty()) { //Multiselect ID hodnôt, filtrujem cez jednotlivé časti programu var prg = repository.Db.Select(repository.Db.From <ProgramCis>() .Select(x => new { x.D_Program_Id, x.Program, x.Podprogram, x.Prvok }) .Where(x => x.D_Tenant_Id == repository.Session.TenantIdGuid && Sql.In(x.D_Program_Id, programIds.FromJson <List <int> >()))); List <FilterElement> rue = new List <FilterElement>(); foreach (var p in prg) { //Stĺpce "Program, Podprogram, Prvok" nie sú v modeli, iba fyzicky v rzp.V_RzpDennik string flt = string.Empty; if (p.Prvok != null) { flt = $"D_Program_Id = {p.D_Program_Id}"; //Môžem ísť cez ID } else { flt = $"Program = {p.Program}"; if (p.Podprogram != null) { flt += $" AND Podprogram = {p.Podprogram}"; } } rue.Add(FilterElement.Custom(flt)); } filter.And(Filter.OrElements(rue.ToArray())); } #endregion #region Analytiky A1, A2, A3 if (parameters.ContainsKey("A1")) { filter.AndEq("A1", parameters["A1"].ToString()); } if (parameters.ContainsKey("A2")) { filter.AndEq("A2", parameters["A2"].ToString()); } if (parameters.ContainsKey("A3")) { filter.AndEq("A3", parameters["A3"].ToString()); } #endregion }
public void ComboCustomize(IWebEasRepositoryBase repository, string column, string kodPolozky, Dictionary <string, string> requiredFields, ref PfeComboAttribute comboAttribute, HierarchyNode node) { comboAttribute.CustomSortSqlExp = nameof(Poradie); }
public static void NastavZapnutePoliaPol(PfeDataModel model, IWebEasRepositoryBase repository, string masterCode) { string sCaption; bool zapnute; zapnute = masterCode == "POL" || masterCode == "VYP" || masterCode == "PAR" || (((IRepositoryBase)repository).GetTypBiznisEntityNastavView().FirstOrDefault(x => x.KodDokladu == masterCode)?.StrediskoNaPolozke ?? false); // zapnute "Stredisko na polozke" alebo som na "Polozkach dokladov" (rozne nastavenia pre rozne typy) if (zapnute) { sCaption = repository.GetNastavenieS("reg", "OrjNazovJC"); model.Fields.First(p => p.Name == "StrediskoNazov").Text = sCaption; } else { model.Fields.First(p => p.Name == "StrediskoNazov").Text = "_StrediskoNazov"; model.Fields.First(p => p.Name == "StrediskoNazov").LoadWhenVisible = true; model.Fields.First(p => p.Name == "StrediskoNazov").Xtype = PfeXType.Textfield; } zapnute = masterCode == "POL" || masterCode == "VYP" || masterCode == "PAR" || (((IRepositoryBase)repository).GetTypBiznisEntityNastavView().FirstOrDefault(x => x.KodDokladu == masterCode)?.ProjektNaPolozke ?? false); // zapnute "Projekt na polozke" alebo som na "Polozkach dokladov" (rozne nastavenia pre rozne typy) if (zapnute) { model.Fields.First(p => p.Name == "ProjektNazov").Text = "Projekt"; } else { model.Fields.First(p => p.Name == "ProjektNazov").Text = "_ProjektNazov"; model.Fields.First(p => p.Name == "ProjektNazov").LoadWhenVisible = true; model.Fields.First(p => p.Name == "ProjektNazov").Xtype = PfeXType.Textfield; } sCaption = repository.GetNastavenieS("uct", "UctKluc1Nazov"); zapnute = !string.IsNullOrEmpty(sCaption) && (masterCode == "POL" || masterCode == "VYP" || masterCode == "PAR" || (((IRepositoryBase)repository).GetTypBiznisEntityNastavView().FirstOrDefault(x => x.KodDokladu == masterCode)?.UctKluc1NaPolozke ?? false)); // zapnute "Účt. kľúč 1 na položku" || som na "Polozkach dokladov" (rozne nastavenia pre rozne typy) && mame zadany text if (zapnute) { model.Fields.First(p => p.Name == "KlucNazov1").Text = sCaption; } else { model.Fields.First(p => p.Name == "KlucNazov1").Hidden = true; model.Fields.First(p => p.Name == "KlucNazov1").Text = "_KlucNazov1"; model.Fields.First(p => p.Name == "KlucNazov1").LoadWhenVisible = true; model.Fields.First(p => p.Name == "KlucNazov1").Xtype = PfeXType.Textfield; } sCaption = repository.GetNastavenieS("uct", "UctKluc2Nazov"); zapnute = !string.IsNullOrEmpty(sCaption) && (masterCode == "POL" || masterCode == "VYP" || masterCode == "PAR" || (((IRepositoryBase)repository).GetTypBiznisEntityNastavView().FirstOrDefault(x => x.KodDokladu == masterCode)?.UctKluc2NaPolozke ?? false)); if (zapnute) { model.Fields.First(p => p.Name == "KlucNazov2").Text = sCaption; } else { model.Fields.First(p => p.Name == "KlucNazov2").Hidden = true; model.Fields.First(p => p.Name == "KlucNazov2").Text = "_KlucNazov2"; model.Fields.First(p => p.Name == "KlucNazov2").LoadWhenVisible = true; model.Fields.First(p => p.Name == "KlucNazov2").Xtype = PfeXType.Textfield; } sCaption = repository.GetNastavenieS("uct", "UctKluc3Nazov"); zapnute = !string.IsNullOrEmpty(sCaption) && (masterCode == "POL" || masterCode == "VYP" || masterCode == "PAR" || (((IRepositoryBase)repository).GetTypBiznisEntityNastavView().FirstOrDefault(x => x.KodDokladu == masterCode)?.UctKluc3NaPolozke ?? false)); if (zapnute) { model.Fields.First(p => p.Name == "KlucNazov3").Text = sCaption; } else { model.Fields.First(p => p.Name == "KlucNazov3").Hidden = true; model.Fields.First(p => p.Name == "KlucNazov3").Text = "_KlucNazov3"; model.Fields.First(p => p.Name == "KlucNazov3").LoadWhenVisible = true; model.Fields.First(p => p.Name == "KlucNazov3").Xtype = PfeXType.Textfield; } }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { if (model?.Fields == null || node == null) { return; } #region Browser dialog na osobu var nazov1Field = model.Fields.FirstOrDefault(p => p.Name == nameof(IdFormatMeno)); if (nazov1Field != null) { nazov1Field.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { new PfeSearchFieldDefinition { Code = "bds-kat-obp", NameField = nameof(V_OBP_0View.K_OBP_0), DisplayField = nameof(V_OBP_0View.IdFormatMeno), AdditionalFilterSql = $"K_TOB_0 IN (1, 2)", AdditionalFilterDesc = "Contractors" } }; } var adresaField = model.Fields.FirstOrDefault(p => p.Name == nameof(AdresaTPSidlo)); if (adresaField != null) { adresaField.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { new PfeSearchFieldDefinition { Code = "bds-kat-obp", NameField = nameof(V_OBP_0View.K_OBP_0), DisplayField = nameof(V_OBP_0View.AdresaTPSidlo), AdditionalFilterSql = $"K_TOB_0 IN (1, 2)", AdditionalFilterDesc = "Contractors" } }; } #endregion #region Disable polí - na základe stavu List <string> enblField = new() { "Poznamka", "DL_C" }; foreach (PfeColumnAttribute col in model.Fields.Where(f => !f.Text.StartsWith("_") && f.Editable && !enblField.Contains(f.Name) && (!f.ReadOnly || f.Xtype == PfeXType.Combobox || f.Xtype == PfeXType.SearchFieldSS || f.Xtype == PfeXType.SearchFieldMS))) { col.Validator ??= new PfeValidator { Rules = new List <PfeRule>() }; col.Validator.Rules.Add(new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(V), ComparisonOperator = "eq", Value = true } } }); } #endregion } }
public static void NastavZapnutePoliaPredkont(PfeDataModel model, IWebEasRepositoryBase repository, bool show, bool rzp) { if (!show) { model.Fields.First(p => p.Name == "SetStrediskoNazov").Text = "_SetStrediskoNazov"; model.Fields.First(p => p.Name == "SetStrediskoNazov").Xtype = PfeXType.Textfield; model.Fields.First(p => p.Name == "SetProjektNazov").Text = "_SetProjektNazov"; model.Fields.First(p => p.Name == "SetProjektNazov").Xtype = PfeXType.Textfield; if (!rzp) { model.Fields.First(p => p.Name == "SetKlucNazov1").Text = "_SetKlucNazov1"; model.Fields.First(p => p.Name == "SetKlucNazov1").Xtype = PfeXType.Textfield; model.Fields.First(p => p.Name == "SetKlucNazov2").Text = "_SetKlucNazov2"; model.Fields.First(p => p.Name == "SetKlucNazov2").Xtype = PfeXType.Textfield; model.Fields.First(p => p.Name == "SetKlucNazov3").Text = "_SetKlucNazov3"; model.Fields.First(p => p.Name == "SetKlucNazov3").Xtype = PfeXType.Textfield; } } else { model.Fields.First(p => p.Name == "SetStrediskoNazov").Text = "Účtovať na " + repository.GetNastavenieS("reg", "OrjNazovJC"); model.Fields.First(p => p.Name == "SetProjektNazov").Text = "Účtovať na Projekt"; if (!rzp) { string sCaption; sCaption = repository.GetNastavenieS("uct", "UctKluc1Nazov"); if (!string.IsNullOrEmpty(sCaption)) { model.Fields.First(p => p.Name == "SetKlucNazov1").Text = "Účtovať na " + sCaption; } else { model.Fields.First(p => p.Name == "SetKlucNazov1").Text = "_KlucNazov1"; model.Fields.First(p => p.Name == "SetKlucNazov1").Xtype = PfeXType.Textfield; } sCaption = repository.GetNastavenieS("uct", "UctKluc2Nazov"); if (!string.IsNullOrEmpty(sCaption)) { model.Fields.First(p => p.Name == "SetKlucNazov2").Text = "Účtovať na " + sCaption; } else { model.Fields.First(p => p.Name == "SetKlucNazov2").Text = "_KlucNazov2"; model.Fields.First(p => p.Name == "SetKlucNazov2").Xtype = PfeXType.Textfield; } sCaption = repository.GetNastavenieS("uct", "UctKluc3Nazov"); if (!string.IsNullOrEmpty(sCaption)) { model.Fields.First(p => p.Name == "SetKlucNazov3").Text = "Účtovať na " + sCaption; } else { model.Fields.First(p => p.Name == "SetKlucNazov3").Text = "_KlucNazov3"; model.Fields.First(p => p.Name == "SetKlucNazov3").Xtype = PfeXType.Textfield; } } } }
public static void SetVSSearchDefinition(PfeColumnAttribute vs, PfeColumnAttribute predpisId, IWebEasRepositoryBase repository, HierarchyNode masterNode) { string pppFAPlus = ""; string pppFAMinus = ""; string pppDPMinus = ""; if (masterNode.Kod == "ppp") { pppFAPlus = " & Neuhradené* > 0"; pppFAMinus = " & Neuhradené* < 0"; pppDPMinus = " & Neuhradené < 0"; } string fltPopisIn; string fltPopisInD; string fltPopisOut = $"(Spracované{pppFAMinus})"; string fltPopisOutD = $"(Dobropisy - spracované{pppFAMinus})"; if ((int)repository.GetNastavenieI("crm", "KontrolaNaRozpocet") == 0) { fltPopisIn = $"(Spracované{pppFAPlus})"; fltPopisInD = $"(Dobropisy - spracované{pppFAPlus})"; } else { fltPopisIn = $"(Potvrdené rozpočtom{pppFAPlus})"; fltPopisInD = $"(Dobropisy - potvrdené rozpočtom{pppFAPlus})"; } if (vs != null) { vs.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { // Úhrady UhrSearchFieldDefinition(TypEnum.UhradaDFA, "crm-dod-dfa", "D_BiznisEntita_Id", fltPopisIn), UhrSearchFieldDefinition(TypEnum.UhradaOFA, "crm-odb-ofa", "D_BiznisEntita_Id", fltPopisOut), UhrSearchFieldDefinition(TypEnum.UhradaDZF, "crm-dod-dzf", "D_BiznisEntita_Id", fltPopisIn), UhrSearchFieldDefinition(TypEnum.UhradaOZF, "crm-odb-ozf", "D_BiznisEntita_Id", fltPopisOut), //POS UhrSearchFieldDefinition(TypEnum.POSPlatba, "fin-pok-pdk", "D_BiznisEntita_Id", $"(Spracované a nevysporiadané PDK-T)", "CisloInterne", "CisloInterne"), //Mzdy UhrSearchFieldDefinition(TypEnum.MzdaPlatba, "uct-evi-exe-mzd-pol", "D_MzdaPol_Id", "Úhrady k dátumu pohybu", "VS", "MzdPol_Popis"), // Dobropisy UhrSearchFieldDefinition(TypEnum.DobropisDFA, "crm-dod-dfa", "D_BiznisEntita_Id", fltPopisInD), //UhrSearchFieldDefinition(TypEnum.DobropisDZF, "crm-dod-dzf", "D_BiznisEntita_Id", fltPopisInD), UhrSearchFieldDefinition(TypEnum.DobropisOFA, "crm-odb-ofa", "D_BiznisEntita_Id", fltPopisOutD), //UhrSearchFieldDefinition(TypEnum.DobropisOZF, "crm-odb-ozf", "D_BiznisEntita_Id", fltPopisOutD), UhrSearchFieldDefinition(TypEnum.DaPUhradaDane, "dap-evi-roz", "D_Vymer_Id", $"(Dane, poplatky{pppDPMinus})"), UhrSearchFieldDefinition(TypEnum.DaPUhradaPokutyZaOneskorenie, "dap-evi-roz", "D_Vymer_Id", $"(Pokuty za oneskorenie{pppDPMinus})"), UhrSearchFieldDefinition(TypEnum.DaPUhradaUrokuZOmeskania, "dap-evi-roz", "D_Vymer_Id", $"(Úroky z omeškania{pppDPMinus})"), UhrSearchFieldDefinition(TypEnum.DaPUhradaPokuty, "dap-evi-roz", "D_Vymer_Id", $"(Pokuty{pppDPMinus})"), UhrSearchFieldDefinition(TypEnum.DaPUhradaPokutyZaDodatocnePodanie, "dap-evi-roz", "D_Vymer_Id", $"(Pokuty za dodatočné priznanie{pppDPMinus})"), UhrSearchFieldDefinition(TypEnum.DaPUhradaUrokuZOdlozeniaSplatok, "dap-evi-roz", "D_Vymer_Id", $"(Úroky z odloženia splátok{pppDPMinus})") }; var uhradoveTypy = GetUhradoveTypy(); vs.Mandatory = false; //(masterNode.Kod != "pdk" && masterNode.Kod != "ppp"); //BAN a IND - povinne - ZRUŠENÉ 27.9.2021 - DTLNESAMINT-921 predpisId.Mandatory = vs.Mandatory; vs.Validator ??= new PfeValidator { Rules = new List <PfeRule>() }; var r = new PfeRule { ValidatorType = PfeValidatorType.SetMandatory, Condition = new List <PfeFilterAttribute>() }; r.Condition.Add(new PfeFilterAttribute { Field = "C_Typ_Id", ComparisonOperator = "in", Value = string.Join("|", uhradoveTypy.Select(x => (int)x)), LeftBrace = 0, RightBrace = 0, LogicOperator = "OR" }); vs.Validator.Rules.Add(r); } }
public List <NodeAction> CustomizeActions(List <NodeAction> actions, IWebEasRepositoryBase repository, HierarchyNode node) { return(actions.AddSyncActions(repository, node)); }
public static void AddMzdyCaptions(PfeDataModel model, IWebEasRepositoryBase repository, bool showAll, bool addMzdPrefix) { var ms = repository.GetNastavenieI("uct", "MzdySystem"); ParseMzdyCaptions(model, repository.GetNastavenieS("uct", "MzdyFormat" + Enum.GetName(typeof(MzdySystemEnum), ms)), showAll, addMzdPrefix); }
public void CustomizeModel(PfeDataModel model, IWebEasRepositoryBase repository, HierarchyNode node, string filter, HierarchyNode masterNode, string kodPolozkyModulu) { #region TypBeParovanieNazov var be = model.Fields.FirstOrDefault(p => p.Name == nameof(TypBeParovanieNazov)); if (be != null) { be.Validator = new PfeValidator { Rules = new List <PfeRule> { new PfeRule { ValidatorType = PfeValidatorType.Disable, Condition = new List <PfeFilterAttribute> { new PfeFilterAttribute { Field = nameof(DatumVytvorenia), ComparisonOperator = "ne", Value = null } } } } }; } var bep1 = model.Fields.FirstOrDefault(p => p.Name == nameof(BiznisEntitaPopis_1)); if (bep1 != null) { bep1.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { ParovanieSearchFieldDef(TypBiznisEntityEnum.DFA, "crm-dod-dfa", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DZF, "crm-dod-dzf", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DOB, "crm-dod-dob", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DZM, "crm-dod-dzm", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DCP, "crm-dod-dcp", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DDP, "crm-dod-ddp", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OFA, "crm-odb-ofa", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OZF, "crm-odb-ozf", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OOB, "crm-odb-oob", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OZM, "crm-odb-ozm", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OCP, "crm-odb-ocp", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), ParovanieSearchFieldDef(TypBiznisEntityEnum.ODP, "crm-odb-odp", nameof(C_TypBiznisEntity_Id_1), nameof(BiznisEntitaPopis_1)), }; } var bep2 = model.Fields.FirstOrDefault(p => p.Name == nameof(BiznisEntitaPopis_2)); if (bep2 != null) { bep2.SearchFieldDefinition = new List <PfeSearchFieldDefinition> { ParovanieSearchFieldDef(TypBiznisEntityEnum.DFA, "crm-dod-dfa", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DZF, "crm-dod-dzf", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DOB, "crm-dod-dob", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.DZM, "crm-dod-dzm", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), // ParovanieSearchFieldDef(TypBiznisEntityEnum.DCP, "crm-dod-dcp", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), // ParovanieSearchFieldDef(TypBiznisEntityEnum.DDP, "crm-dod-ddp", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OFA, "crm-odb-ofa", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OZF, "crm-odb-ozf", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OOB, "crm-odb-oob", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), ParovanieSearchFieldDef(TypBiznisEntityEnum.OZM, "crm-odb-ozm", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), // ParovanieSearchFieldDef(TypBiznisEntityEnum.OCP, "crm-odb-ocp", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), // ParovanieSearchFieldDef(TypBiznisEntityEnum.ODP, "crm-odb-odp", nameof(C_TypBiznisEntity_Id_2), nameof(BiznisEntitaPopis_2)), }; } #endregion #region Akcie if (masterNode.Kod == "par") { node.Actions.RemoveAll(x => x.ActionType != NodeActionType.ReadList); } #endregion }