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);
            }
        }
Пример #2
0
 public void BeforeGetList(IWebEasRepositoryBase repository, HierarchyNode node, ref string sql, ref Filter filter, ref string sqlFromAlias, string sqlOrderPart)
 {
     BookFilterGenerator.UctDennik_BeforeGetList(repository, node, ref sql, ref filter, ref sqlFromAlias, sqlOrderPart);
 }