private void AddStorageParameter(User user, ParameterString param)
        {
            var list = user.Teams.SelectMany(x => x.Storages).Select(x => x.Id.ToString()).Distinct().ToList();

            // если список пуст - то добавляем несуществующее значение
            if (!list.Any())
            {
                list.Add("0");
            }

            if (param.Keys.Contains("Storage"))
            {
                var storageValue = param["Storage"].Value as string;
                if (!String.IsNullOrEmpty(storageValue))
                {
                    if (!list.Contains(param["Storage"].Value as string))
                    {
                        param["Storage"].Value = "0";   //т.к. указано МХ, на которое у пользователя нет прав
                    }
                }
                else
                {
                    param["Storage"].Value = list;
                }
            }
            else
            {
                param.Add("Storage", ParameterStringItem.OperationType.OneOf, list);
            }
        }
Пример #2
0
        public override bool Equals(object o)
        {
            if (!(o is Scripting))
            {
                return(false);
            }
            Scripting v = o as Scripting;

            if (!Enabled.Equals(v.Enabled))
            {
                return(false);
            }
            if (!ParameterString.Equals(v.ParameterString))
            {
                return(false);
            }
            if (!ScriptFile.Equals(v.ScriptFile))
            {
                return(false);
            }
            if (!WaitForScript.Equals(v.WaitForScript))
            {
                return(false);
            }

            return(true);
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkExaktInputs1(ICpDevice aDevice)
            : base("linn-co-uk", "ExaktInputs", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetAssociation = new OpenHome.Net.Core.Action("GetAssociation");
            param = new ParameterUint("InputIndex");
            iActionGetAssociation.AddInputParameter(param);
            param = new ParameterString("DeviceId", allowedValues);
            iActionGetAssociation.AddOutputParameter(param);

            iActionSetAssociation = new OpenHome.Net.Core.Action("SetAssociation");
            param = new ParameterUint("InputIndex");
            iActionSetAssociation.AddInputParameter(param);
            param = new ParameterString("DeviceId", allowedValues);
            iActionSetAssociation.AddInputParameter(param);

            iActionClearAssociation = new OpenHome.Net.Core.Action("ClearAssociation");
            param = new ParameterUint("InputIndex");
            iActionClearAssociation.AddInputParameter(param);

            iActionInputCount = new OpenHome.Net.Core.Action("InputCount");
            param             = new ParameterUint("InputCount");
            iActionInputCount.AddOutputParameter(param);

            iAssociations = new PropertyString("Associations", AssociationsPropertyChanged);
            AddProperty(iAssociations);

            iPropertyLock = new Mutex();
        }
Пример #4
0
        /// <summary>
        /// Constructor for string input argument for an action
        /// </summary>
        /// <remarks>Intended to be write only (its value is written on construction and not be later read)</remarks>
        /// <param name="aParameter">Defines the name plus any bounds to the value for the argument.
        /// Must have been previously added to the action using Action.AddInputParameter</param>
        /// <param name="aValue">Value for the argument</param>
        public ArgumentString(ParameterString aParameter, String aValue)
        {
            IntPtr value = InteropUtils.StringToHGlobalUtf8(aValue);

            iHandle = ActionArgumentCreateStringInput(aParameter.Handle(), value);
            Marshal.FreeHGlobal(value);
        }
Пример #5
0
        public IList <ProductionOrderPayment> GetPaymentsFilteredList(object state, ParameterString parameterString)
        {
            ReadState(state); // Читаем данные из объекта state

            ParameterString df = new ParameterString(filter);
            ParameterString dp = new ParameterString(parameters);

            var producerId = ValidationUtils.TryGetInt(dp["ProducerId"].Value as string);
            var productionOrderPaymentTypeId = ValidationUtils.TryGetInt(dp["ProductionOrderPaymentTypeId"].Value as string);

            #region Фильтр

            var crit = Query <ProductionOrderPayment>();

            crit.Where(x => x.Type == (ProductionOrderPaymentType)productionOrderPaymentTypeId);
            crit.Restriction <ProductionOrder>(x => x.ProductionOrder).Where(x => x.Producer.Id == producerId);

            CreateFilter(crit);

            #endregion

            int totalRowCount = crit.Count();
            WriteTotalRowCount(state, totalRowCount); // Записываем общее кол-во строк

            SortByCriteria(crit, sort);

            // Вычисляем начальную и конечную строку страницы
            int maxPage = (totalRowCount + pageSize - 1) / pageSize;
            currentPage = currentPage > maxPage ? maxPage : currentPage;

            return(crit.SetFirstResult((currentPage - 1) * pageSize).SetMaxResults(pageSize).ToList <ProductionOrderPayment>());
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyAvOpenhomeOrgNetworkMonitor1(CpDevice aDevice)
            : base("av-openhome-org", "NetworkMonitor", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionName = new OpenHome.Net.Core.Action("Name");
            param       = new ParameterString("Name", allowedValues);
            iActionName.AddOutputParameter(param);

            iActionPorts = new OpenHome.Net.Core.Action("Ports");
            param        = new ParameterUint("Sender");
            iActionPorts.AddOutputParameter(param);
            param = new ParameterUint("Receiver");
            iActionPorts.AddOutputParameter(param);
            param = new ParameterUint("Results");
            iActionPorts.AddOutputParameter(param);

            iName = new PropertyString("Name", NamePropertyChanged);
            AddProperty(iName);
            iSender = new PropertyUint("Sender", SenderPropertyChanged);
            AddProperty(iSender);
            iReceiver = new PropertyUint("Receiver", ReceiverPropertyChanged);
            AddProperty(iReceiver);
            iResults = new PropertyUint("Results", ResultsPropertyChanged);
            AddProperty(iResults);

            iPropertyLock = new Mutex();
        }
Пример #7
0
        private void InvokeUserDisconnect(object sender, EventArgs e)
        {
            NetCommand command = sender as NetCommand;

            if (command == null)
            {
                return;
            }

            ParameterInt32 hash = command.Parameters["hash"]
                                  as ParameterInt32;
            ParameterString un = command.Parameters["un"]
                                 as ParameterString;

            for (int i = 0; i < lvwUsers.Items.Count; i++)
            {
                if (hash.Value.Equals(lvwUsers.Items[i].Tag))
                {
                    lvwUsers.Items.RemoveAt(i);
                    break;
                }
            }

            _Manager.Disconnected(un.Value);

            command.Response = new NetResponse(true);
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkConfiguration1(ICpDevice aDevice)
            : base("linn-co-uk", "Configuration", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionConfigurationXml = new OpenHome.Net.Core.Action("ConfigurationXml");
            param = new ParameterString("aConfigurationXml", allowedValues);
            iActionConfigurationXml.AddOutputParameter(param);

            iActionParameterXml = new OpenHome.Net.Core.Action("ParameterXml");
            param = new ParameterString("aParameterXml", allowedValues);
            iActionParameterXml.AddOutputParameter(param);

            iActionSetParameter = new OpenHome.Net.Core.Action("SetParameter");
            param = new ParameterString("aTarget", allowedValues);
            iActionSetParameter.AddInputParameter(param);
            param = new ParameterString("aName", allowedValues);
            iActionSetParameter.AddInputParameter(param);
            param = new ParameterString("aValue", allowedValues);
            iActionSetParameter.AddInputParameter(param);

            iConfigurationXml = new PropertyString("ConfigurationXml", ConfigurationXmlPropertyChanged);
            AddProperty(iConfigurationXml);
            iParameterXml = new PropertyString("ParameterXml", ParameterXmlPropertyChanged);
            AddProperty(iParameterXml);

            iPropertyLock = new Mutex();
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkPrivacy1(ICpDevice aDevice)
            : base("linn-co-uk", "Privacy", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetPolicyVersion = new OpenHome.Net.Core.Action("GetPolicyVersion");
            param = new ParameterUint("Version");
            iActionGetPolicyVersion.AddOutputParameter(param);

            iActionGetPolicyAgreed = new OpenHome.Net.Core.Action("GetPolicyAgreed");
            param = new ParameterUint("Version");
            iActionGetPolicyAgreed.AddOutputParameter(param);

            iActionGetPolicyDetails = new OpenHome.Net.Core.Action("GetPolicyDetails");
            param = new ParameterString("Details", allowedValues);
            iActionGetPolicyDetails.AddOutputParameter(param);

            iActionSetPolicyDetails = new OpenHome.Net.Core.Action("SetPolicyDetails");
            param = new ParameterString("Details", allowedValues);
            iActionSetPolicyDetails.AddInputParameter(param);

            iPolicyVersion = new PropertyUint("PolicyVersion", PolicyVersionPropertyChanged);
            AddProperty(iPolicyVersion);
            iPolicyAgreed = new PropertyUint("PolicyAgreed", PolicyAgreedPropertyChanged);
            AddProperty(iPolicyAgreed);
            iPolicyDetails = new PropertyString("PolicyDetails", PolicyDetailsPropertyChanged);
            AddProperty(iPolicyDetails);

            iPropertyLock = new Mutex();
        }
Пример #10
0
 /// <summary>
 /// Парсинг параметров в дерево
 /// </summary>
 /// <param name="paramStr">парметры</param>
 /// <param name="separator">Символ разделитель элементов строки</param>
 public void Parse(ParameterString paramStr, char separator)
 {
     foreach (var key in paramStr.Keys)
     {
         ParseItem(paramStr[key], separator);
     }
 }
Пример #11
0
        public IList <CurrencyRate> GetCurrencyRateFilteredList(object state, Utils.ParameterString parameterString, bool ignoreDeletedRows = true)
        {
            ReadState(state);

            var crit = Query <CurrencyRate>(); //Создаем критерий

            var ps = new ParameterString(filter);

            filter = "";

            if (ps["Date"] != null)
            {
                var      dates = (ps["Date"].Value as string).Split('-');
                DateTime?date1 = null;
                if (dates[0].Length > 0)
                {
                    date1 = ValidationUtils.TryGetDate(dates[0]);
                    date1 = date1.Value.SetHoursMinutesAndSeconds(0, 0, 0);
                }
                DateTime?date2 = null;
                if (dates[1].Length > 0)
                {
                    date2 = ValidationUtils.TryGetDate(dates[1]);
                    date2 = date2.Value.SetHoursMinutesAndSeconds(23, 59, 59);
                }

                // Фильтруем записи
                if (date1 != null && date2 != null)
                {
                    crit.Where(x => (x.StartDate >= date1 && x.StartDate <= date2) || (x.EndDate >= date1 && x.EndDate <= date2));
                }
                else if (date1 != null && date2 == null)
                {
                    crit.Where(x => x.StartDate >= date1 || x.EndDate >= date1);
                }
                else if (date1 == null && date2 != null)
                {
                    crit.Where(x => x.StartDate <= date2 || (x.EndDate <= date2 && x.EndDate != null));
                }
            }

            parameterString.Delete("Date");
            this.parameterString = parameterString;
            CreateFilter(crit);

            int totalRowCount = crit.CountDistinct();

            WriteTotalRowCount(state, totalRowCount);                                    //Записываем общее кол-во строк

            SortByCriteria(crit, sort);                                                  //Сортируем выборку

            state.GetType().GetMethod("CheckAndCorrectCurrentPage").Invoke(state, null); //приводит текущую страницу к корректному значению
            currentPage = (int)state.GetType().GetProperty("CurrentPage").GetValue(state, null);

            crit.SetFirstResult((currentPage - 1) * pageSize).SetMaxResults(pageSize);

            this.parameterString = null;

            return(crit.ToList <CurrencyRate>());
        }
Пример #12
0
        /// <summary>
        /// Получение отфильтрованного списка контрагентов
        /// </summary>
        /// <param name="state"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public IEnumerable <Contractor> GetContractorByUser(object state, User user)
        {
            List <string> types = new List <string>();

            if (user.HasPermission(Permission.Provider_List_Details))
            {
                types.Add(EnumUtils.ValueToString(ContractorType.Provider));
            }
            if (user.HasPermission(Permission.Producer_List_Details))
            {
                types.Add(EnumUtils.ValueToString(ContractorType.Producer));
            }
            if (user.HasPermission(Permission.Client_List_Details))
            {
                types.Add(EnumUtils.ValueToString(ContractorType.Client));
            }

            if (types.Count == 0)   //Прав нет ни на один тип
            {
                return(new List <Contractor>());
            }

            var ps = new ParameterString("");

            ps.Add("ContractorType", ParameterStringItem.OperationType.OneOf, types);

            return(contractorRepository.GetFilteredList(state, ps));
        }
Пример #13
0
        public IEnumerable <ClientContract> GetFilteredList(object state, ParameterString param, User user, Permission permission)
        {
            Func <ISubCriteria <Deal>, ISubCriteria <Deal> > cond = null;

            switch (user.GetPermissionDistributionType(permission))
            {
            case PermissionDistributionType.None:
                return(new List <ClientContract>());

            case PermissionDistributionType.Personal:
                cond = x => x.PropertyIn(y => y.Id, dealRepository.GetSubQueryForDealIdOnPersonalPermission(user.Id)).Select(y => y.Id);
                break;

            case PermissionDistributionType.Teams:
                cond = x => x.PropertyIn(y => y.Id, dealRepository.GetSubQueryForDealIdOnTeamPermission(user.Id)).Select(y => y.Id);
                break;

            case PermissionDistributionType.All:
                break;
            }

            // получаем список договоров через область видимости сделок
            // (кол-во записей на странице может быть меньше необходимого, т.к. одна сделка может быть связана с несколькими договорами)
            return(dealRepository.GetFilteredList(state, param, cond: cond).Select(x => x.Contract).Distinct());
        }
Пример #14
0
        /* Метод пока не используется
         * public decimal ImportCurrencyRate(Currency currency)
         * {
         *  //var serv = new DailyInfoSoapClient();
         *  //var dataSet = serv.GetCursOnDate(DateTime.Now);
         *  decimal rate = 0;
         *
         *  //foreach (DataRow row in dataSet.Tables[0].Rows)
         *  //{
         *  //    var a = row;
         *  //}
         *
         *  return rate;
         * }*/

        public IList <CurrencyRate> GetCurrencyRateFilteredList(short currencyId, object state, bool ignoreDeletedRows = true)
        {
            var ps = new ParameterString(state.GetType().GetProperty("Filter").GetValue(state, null) as string);

            ps.Add("Currency.Id", ParameterStringItem.OperationType.Eq, currencyId.ToString());

            return(currencyRepository.GetCurrencyRateFilteredList(state, ps, ignoreDeletedRows));
        }
Пример #15
0
        public void ReadString()
        {
            var ps = new ParameterString("Key=qwerty;");

            Assert.AreEqual(1, ps.Keys.Count());
            Assert.AreEqual("Key", ps.Keys.ElementAt(0));
            Assert.AreEqual("qwerty", ps["Key"].Value as string);
        }
Пример #16
0
        public IEnumerable <Deal> GetFilteredList(object state, ParameterString param, User user)
        {
            if (param == null)
            {
                param = new ParameterString("");
            }

            return(dealRepository.GetFilteredList(state, param));
        }
Пример #17
0
        /// <summary>
        /// Converts parameter string into a List of strings
        /// </summary>
        private void ConvertParametersToList()
        {
            string[] parameterArray = ParameterString.Split(DelimeterArray, StringSplitOptions.None);

            foreach (string parameter in parameterArray)
            {
                parameters.Add(parameter);
            }
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyAvOpenhomeOrgExakt2(ICpDevice aDevice)
            : base("av-openhome-org", "Exakt", 2, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionDeviceList = new OpenHome.Net.Core.Action("DeviceList");
            param             = new ParameterString("List", allowedValues);
            iActionDeviceList.AddOutputParameter(param);

            iActionDeviceSettings = new OpenHome.Net.Core.Action("DeviceSettings");
            param = new ParameterString("DeviceId", allowedValues);
            iActionDeviceSettings.AddInputParameter(param);
            param = new ParameterString("Settings", allowedValues);
            iActionDeviceSettings.AddOutputParameter(param);

            iActionConnectionStatus = new OpenHome.Net.Core.Action("ConnectionStatus");
            param = new ParameterString("ConnectionStatus", allowedValues);
            iActionConnectionStatus.AddOutputParameter(param);

            iActionSet = new OpenHome.Net.Core.Action("Set");
            param      = new ParameterString("DeviceId", allowedValues);
            iActionSet.AddInputParameter(param);
            param = new ParameterUint("BankId");
            iActionSet.AddInputParameter(param);
            param = new ParameterString("FileUri", allowedValues);
            iActionSet.AddInputParameter(param);
            param = new ParameterBool("Mute");
            iActionSet.AddInputParameter(param);
            param = new ParameterBool("Persist");
            iActionSet.AddInputParameter(param);

            iActionReprogram = new OpenHome.Net.Core.Action("Reprogram");
            param            = new ParameterString("DeviceId", allowedValues);
            iActionReprogram.AddInputParameter(param);
            param = new ParameterString("FileUri", allowedValues);
            iActionReprogram.AddInputParameter(param);

            iActionReprogramFallback = new OpenHome.Net.Core.Action("ReprogramFallback");
            param = new ParameterString("DeviceId", allowedValues);
            iActionReprogramFallback.AddInputParameter(param);
            param = new ParameterString("FileUri", allowedValues);
            iActionReprogramFallback.AddInputParameter(param);

            iActionVersion = new OpenHome.Net.Core.Action("Version");
            param          = new ParameterString("Version", allowedValues);
            iActionVersion.AddOutputParameter(param);

            iDeviceList = new PropertyString("DeviceList", DeviceListPropertyChanged);
            AddProperty(iDeviceList);
            iConnectionStatus = new PropertyString("ConnectionStatus", ConnectionStatusPropertyChanged);
            AddProperty(iConnectionStatus);
            iVersion = new PropertyString("Version", VersionPropertyChanged);
            AddProperty(iVersion);

            iPropertyLock = new Mutex();
        }
Пример #19
0
        public void MergeWithNotEqualKeys_Empty_Value_Mast_Be_Null()
        {
            var ps1 = new ParameterString("Key=;");
            var ps2 = new ParameterString("Param=;");

            ps1.MergeWith(ps2);

            Assert.AreEqual(null, ps1["Param"].Value);
        }
Пример #20
0
        public IList <Article> GetFilteredList(object state, ParameterString param, bool ignoreDeletedRows = true)
        {
            if (param == null)
            {
                param = new ParameterString("");
            }

            return(articleRepository.GetFilteredList(state, param, ignoreDeletedRows));
        }
        public IList <AccountOrganization> GetFilteredList(object state, ParameterString param = null)
        {
            if (param == null)
            {
                param = new ParameterString("");
            }

            return(accountOrganizationRepository.GetFilteredList(state, param, true));
        }
Пример #22
0
        /// <summary>
        /// Получение списка записей с учетом фильтра
        /// </summary>
        protected IList <T> GetBaseFilteredList <T>(object state, ParameterString parameterString, bool ignoreDeletedRows = true, Func <ISubCriteria <T>, ISubCriteria <T> > cond = null) where T : class
        {
            this.parameterString = parameterString;
            var result = GetBaseFilteredList <T>(state, ignoreDeletedRows, cond);

            this.parameterString = null;

            return(result);
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyOpenhomeOrgTestLights1(ICpDevice aDevice)
            : base("openhome-org", "TestLights", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetCount = new OpenHome.Net.Core.Action("GetCount");
            param           = new ParameterUint("Count");
            iActionGetCount.AddOutputParameter(param);

            iActionGetRoom = new OpenHome.Net.Core.Action("GetRoom");
            param          = new ParameterUint("Index");
            iActionGetRoom.AddInputParameter(param);
            param = new ParameterString("RoomName", allowedValues);
            iActionGetRoom.AddOutputParameter(param);

            iActionGetName = new OpenHome.Net.Core.Action("GetName");
            param          = new ParameterUint("Index");
            iActionGetName.AddInputParameter(param);
            param = new ParameterString("FriendlyName", allowedValues);
            iActionGetName.AddOutputParameter(param);

            iActionGetPosition = new OpenHome.Net.Core.Action("GetPosition");
            param = new ParameterUint("Index");
            iActionGetPosition.AddInputParameter(param);
            param = new ParameterUint("X");
            iActionGetPosition.AddOutputParameter(param);
            param = new ParameterUint("Y");
            iActionGetPosition.AddOutputParameter(param);
            param = new ParameterUint("Z");
            iActionGetPosition.AddOutputParameter(param);

            iActionSetColor = new OpenHome.Net.Core.Action("SetColor");
            param           = new ParameterUint("Index");
            iActionSetColor.AddInputParameter(param);
            param = new ParameterUint("Color");
            iActionSetColor.AddInputParameter(param);

            iActionGetColor = new OpenHome.Net.Core.Action("GetColor");
            param           = new ParameterUint("Index");
            iActionGetColor.AddInputParameter(param);
            param = new ParameterUint("Color");
            iActionGetColor.AddOutputParameter(param);

            iActionGetColorComponents = new OpenHome.Net.Core.Action("GetColorComponents");
            param = new ParameterUint("Color");
            iActionGetColorComponents.AddInputParameter(param);
            param = new ParameterUint("Brightness");
            iActionGetColorComponents.AddOutputParameter(param);
            param = new ParameterUint("Red");
            iActionGetColorComponents.AddOutputParameter(param);
            param = new ParameterUint("Green");
            iActionGetColorComponents.AddOutputParameter(param);
            param = new ParameterUint("Blue");
            iActionGetColorComponents.AddOutputParameter(param);
        }
Пример #24
0
        public void MergeWithNullIntersectionItem()
        {
            var ps1 = new ParameterString("Key=1,2,3,4,5;");
            var ps2 = new ParameterString("Key=6,7,8,9,10;");

            ps1.MergeWith(ps2);

            Assert.AreEqual(1, ps1.Keys.Count());
            Assert.AreEqual("0", (ps1["Key"].Value as IList <string>)[0]);
        }
Пример #25
0
        /// <summary>
        /// Получение отфильтрованного списка задач
        /// </summary>
        /// <param name="state">Состояние грида</param>
        /// <param name="parameterString">Параметры грида</param>
        /// <param name="user">Пользователь</param>
        /// <param name="ignoreDeletedRows">Флаг, нужно ли игнорировать удаленные задачи</param>
        /// <returns>Коллекция задач</returns>
        public IList <Task> GetFilteredList(object state, ParameterString parameterString, User user, bool ignoreDeletedRows = true)
        {
            // Права на просмотр
            var r1 = RestrictOnUserByPermission("CreatedBy", user, Permission.Task_CreatedBy_List_Details);
            var r2 = RestrictOnUserByPermission("ExecutedBy", user, Permission.Task_ExecutedBy_List_Details);

            parameterString.Add(ParameterStringItem.OperationType.Or, r1, r2);

            return(taskRepository.GetFilteredList(state, parameterString, ignoreDeletedRows));
        }
Пример #26
0
        public void ParameterString()
        {
            var param = new ParameterString {
                Required = false, DefaultValue = "Default"
            };

            object actual = param.ParseFromString("Value");

            Assert.AreEqual("Value", actual);
        }
Пример #27
0
        public void MergeWithOneIntersectionItem()
        {
            var ps1 = new ParameterString("Key=1,2,3;");
            var ps2 = new ParameterString("Key=3,4,5;");

            ps1.MergeWith(ps2);

            Assert.AreEqual(1, ps1.Keys.Count());
            Assert.AreEqual("Key", ps1.Keys.ElementAt(0));
            Assert.AreEqual("3", (ps1["Key"].Value as IList <string>)[0]);
        }
Пример #28
0
        public override string ToString()
        {
            StringBuilder sb = new StringBuilder();

            sb.AppendLine("Enabled=" + Enabled.ToString());
            sb.AppendLine("ParameterString=" + ParameterString.ToString());
            sb.AppendLine("ScriptFile=" + ScriptFile.ToString());
            sb.AppendLine("WaitForScript=" + WaitForScript.ToString());

            return(sb.ToString());
        }
Пример #29
0
        public void MergeWithManyIntersectionItemAndOtherKeys()
        {
            var ps1 = new ParameterString("Key=1,2,3,4,5;");
            var ps2 = new ParameterString("Key=3,4,5,6,7;Param=qwerty;");

            ps1.MergeWith(ps2);

            Assert.AreEqual(2, ps1.Keys.Count());
            Assert.AreEqual(true, ps1.Keys.Contains("Key"));
            Assert.AreEqual(true, ps1.Keys.Contains("Param"));
        }
Пример #30
0
        public void CaseInsensitivity()
        {
            var param = new ParameterString {
                Required = true, Lowercase = true
            };

            var actual1 = (string)param.ParseFromString("VaLuE");
            var actual2 = (string)param.ParseFromString("vAlUe");

            Assert.IsTrue(actual1 == actual2);
        }